{"version":3,"sources":["../node_modules/vue-functional-data-merge/dist/lib.esm.js","../src/vue.js","../src/utils/plugins.js","../src/constants/env.js","../src/constants/config.js","../src/constants/regex.js","../src/constants/safe-types.js","../src/utils/inspect.js","../src/utils/object.js","../src/utils/clone-deep.js","../src/utils/identity.js","../src/utils/get.js","../src/utils/env.js","../src/utils/warn.js","../src/utils/config-set.js","../src/constants/components.js","../src/constants/events.js","../src/constants/props.js","../src/constants/slots.js","../src/utils/array.js","../src/utils/number.js","../src/utils/string.js","../src/utils/dom.js","../src/utils/memoize.js","../src/utils/config.js","../src/utils/props.js","../src/utils/model.js","../src/utils/normalize-slot.js","../src/mixins/normalize-slot.js","../src/utils/events.js","../src/components/button/button-close.js","../src/components/transition/bv-transition.js","../src/components/alert/alert.js","../src/components/alert/index.js","../src/utils/math.js","../src/components/aspect/aspect.js","../src/components/aspect/index.js","../src/utils/router.js","../src/icons/helpers/icon-base.js","../src/icons/helpers/make-icon.js","../src/icons/icons.js","../src/icons/icon.js","../src/constants/key-codes.js","../src/utils/loose-equal.js","../src/utils/cache.js","../src/mixins/attrs.js","../src/mixins/listen-on-root.js","../src/mixins/listeners.js","../src/components/link/link.js","../src/components/button/button.js","../src/components/avatar/avatar.js","../src/components/avatar/avatar-group.js","../src/components/avatar/index.js","../src/components/badge/badge.js","../src/components/badge/index.js","../src/utils/html.js","../src/components/breadcrumb/breadcrumb-link.js","../src/components/breadcrumb/breadcrumb-item.js","../src/components/breadcrumb/breadcrumb.js","../src/components/breadcrumb/index.js","../src/components/button/index.js","../src/components/button-group/button-group.js","../src/components/button-group/index.js","../src/components/button-toolbar/button-toolbar.js","../src/components/button-toolbar/index.js","../src/constants/date.js","../src/utils/date.js","../src/utils/locale.js","../src/mixins/id.js","../src/components/calendar/calendar.js","../src/components/calendar/index.js","../src/mixins/card.js","../src/components/card/card-title.js","../src/components/card/card-sub-title.js","../src/components/card/card-body.js","../src/components/card/card-header.js","../src/components/card/card-footer.js","../src/components/image/img.js","../src/components/card/card-img.js","../src/components/card/card.js","../src/directives/visible/visible.js","../src/components/image/img-lazy.js","../src/components/card/card-img-lazy.js","../src/components/card/card-text.js","../src/components/card/card-group.js","../src/components/card/index.js","../src/utils/noop.js","../src/utils/observe-dom.js","../src/components/carousel/carousel.js","../src/components/carousel/carousel-slide.js","../src/components/carousel/index.js","../src/constants/classes.js","../src/components/collapse/helpers/bv-collapse.js","../src/components/collapse/collapse.js","../src/directives/toggle/toggle.js","../src/directives/toggle/index.js","../src/components/collapse/index.js","../node_modules/popper.js/dist/esm/popper.js","../src/constants/popper.js","../src/utils/bv-event.class.js","../src/mixins/click-out.js","../src/mixins/focus-in.js","../src/mixins/dropdown.js","../src/components/dropdown/dropdown.js","../src/components/dropdown/dropdown-item.js","../src/components/dropdown/dropdown-item-button.js","../src/components/dropdown/dropdown-header.js","../src/components/dropdown/dropdown-divider.js","../src/components/form/form.js","../src/components/dropdown/dropdown-form.js","../src/components/dropdown/dropdown-text.js","../src/components/dropdown/dropdown-group.js","../src/components/dropdown/index.js","../src/components/embed/embed.js","../src/components/embed/index.js","../src/mixins/form-options.js","../src/components/form/form-datalist.js","../src/components/form/form-text.js","../src/components/form/form-invalid-feedback.js","../src/components/form/form-valid-feedback.js","../src/components/layout/form-row.js","../src/components/form/index.js","../src/utils/loose-index-of.js","../src/mixins/form-control.js","../src/mixins/form-custom.js","../src/mixins/form-size.js","../src/mixins/form-state.js","../src/mixins/form-radio-check.js","../src/components/form-checkbox/form-checkbox.js","../src/components/form-radio/form-radio.js","../src/mixins/form-radio-check-group.js","../src/components/form-checkbox/form-checkbox-group.js","../src/components/form-checkbox/index.js","../src/directives/hover/hover.js","../src/components/form-btn-label-control/bv-form-btn-label-control.js","../src/components/form-datepicker/form-datepicker.js","../src/components/form-datepicker/index.js","../src/components/form-file/form-file.js","../src/components/form-file/index.js","../src/utils/css-escape.js","../src/components/layout/col.js","../src/components/form-group/form-group.js","../src/components/form-group/index.js","../src/mixins/form-selection.js","../src/mixins/form-text.js","../src/mixins/form-validity.js","../src/components/form-input/form-input.js","../src/components/form-input/index.js","../src/components/form-radio/form-radio-group.js","../src/components/form-radio/index.js","../src/components/form-rating/form-rating.js","../src/components/form-rating/index.js","../src/mixins/model.js","../src/components/form-select/helpers/mixin-options.js","../src/components/form-select/form-select-option.js","../src/components/form-select/form-select-option-group.js","../src/components/form-select/form-select.js","../src/components/form-select/index.js","../src/components/form-spinbutton/form-spinbutton.js","../src/components/form-spinbutton/index.js","../src/components/form-tags/form-tag.js","../src/components/form-tags/form-tags.js","../src/components/form-tags/index.js","../src/components/form-textarea/form-textarea.js","../src/components/form-textarea/index.js","../src/components/time/time.js","../src/components/form-timepicker/form-timepicker.js","../src/components/form-timepicker/index.js","../src/components/image/index.js","../src/components/input-group/input-group-text.js","../src/components/input-group/input-group-addon.js","../src/components/input-group/input-group-append.js","../src/components/input-group/input-group-prepend.js","../src/components/input-group/input-group.js","../src/components/input-group/index.js","../src/components/layout/container.js","../src/components/jumbotron/jumbotron.js","../src/components/jumbotron/index.js","../src/components/layout/row.js","../src/components/layout/index.js","../src/components/link/index.js","../src/components/list-group/list-group.js","../src/components/list-group/list-group-item.js","../src/components/list-group/index.js","../src/components/media/media-aside.js","../src/components/media/media-body.js","../src/components/media/media.js","../src/components/media/index.js","../src/mixins/listen-on-document.js","../src/mixins/listen-on-window.js","../src/utils/get-scope-id.js","../src/mixins/scoped-style.js","../src/components/transporter/transporter.js","../src/components/modal/helpers/bv-modal-event.class.js","../src/components/modal/helpers/modal-manager.js","../src/components/modal/modal.js","../src/directives/modal/modal.js","../src/components/modal/helpers/bv-modal.js","../src/components/modal/index.js","../src/components/nav/nav.js","../src/components/nav/nav-item.js","../src/components/nav/nav-text.js","../src/components/nav/nav-form.js","../src/components/nav/nav-item-dropdown.js","../src/components/nav/index.js","../src/components/navbar/navbar.js","../src/components/navbar/navbar-nav.js","../src/components/navbar/navbar-brand.js","../src/components/navbar/navbar-toggle.js","../src/components/navbar/index.js","../src/components/spinner/spinner.js","../src/components/overlay/overlay.js","../src/components/overlay/index.js","../src/mixins/pagination.js","../src/components/pagination/pagination.js","../src/components/pagination/index.js","../src/components/pagination-nav/pagination-nav.js","../src/components/pagination-nav/index.js","../src/components/tooltip/helpers/bv-popper.js","../src/components/tooltip/helpers/bv-tooltip-template.js","../src/components/tooltip/helpers/bv-tooltip.js","../src/components/tooltip/tooltip.js","../src/components/popover/helpers/bv-popover-template.js","../src/components/popover/helpers/bv-popover.js","../src/components/popover/popover.js","../src/directives/popover/popover.js","../src/directives/popover/index.js","../src/components/popover/index.js","../src/components/progress/progress-bar.js","../src/components/progress/progress.js","../src/components/progress/index.js","../src/components/sidebar/sidebar.js","../src/components/sidebar/index.js","../src/components/skeleton/skeleton.js","../src/components/skeleton/skeleton-icon.js","../src/icons/iconstack.js","../src/components/skeleton/skeleton-img.js","../src/mixins/has-listener.js","../src/components/table/tr.js","../src/components/table/helpers/mixin-bottom-row.js","../src/components/table/td.js","../src/components/table/helpers/mixin-busy.js","../src/components/table/helpers/mixin-caption.js","../src/components/table/helpers/mixin-colgroup.js","../src/components/table/helpers/mixin-empty.js","../src/utils/stringify-object-values.js","../src/components/table/helpers/constants.js","../src/components/table/helpers/sanitize-row.js","../src/components/table/helpers/mixin-filtering.js","../src/components/table/helpers/stringify-record-values.js","../src/components/table/helpers/normalize-fields.js","../src/components/table/helpers/mixin-items.js","../src/components/table/helpers/mixin-pagination.js","../src/components/table/helpers/mixin-provider.js","../src/components/table/helpers/mixin-selectable.js","../src/utils/stable-sort.js","../src/components/table/helpers/default-sort-compare.js","../src/components/table/helpers/mixin-sorting.js","../src/components/table/helpers/mixin-stacked.js","../src/components/table/helpers/mixin-table-renderer.js","../src/components/table/tbody.js","../src/components/table/helpers/filter-event.js","../src/components/table/helpers/text-selection-active.js","../src/components/table/th.js","../src/components/table/helpers/mixin-tbody-row.js","../src/components/table/helpers/mixin-tbody.js","../src/components/table/tfoot.js","../src/components/table/helpers/mixin-tfoot.js","../src/components/table/thead.js","../src/components/table/helpers/mixin-thead.js","../src/components/table/helpers/mixin-top-row.js","../src/components/table/table.js","../src/components/table/table-lite.js","../src/components/table/table-simple.js","../src/components/table/index.js","../src/components/skeleton/skeleton-table.js","../src/components/skeleton/skeleton-wrapper.js","../src/components/skeleton/index.js","../src/components/spinner/index.js","../src/components/tabs/tabs.js","../src/components/tabs/tab.js","../src/components/tabs/index.js","../src/components/time/index.js","../node_modules/portal-vue/dist/portal-vue.esm.js","../src/components/toast/toaster.js","../src/components/toast/toast.js","../src/components/toast/helpers/bv-toast.js","../src/components/toast/index.js","../src/directives/tooltip/tooltip.js","../src/directives/tooltip/index.js","../src/components/index.js","../src/components/tooltip/index.js","../src/directives/hover/index.js","../src/directives/modal/index.js","../src/directives/scrollspy/helpers/bv-scrollspy.class.js","../src/directives/scrollspy/scrollspy.js","../src/index.js","../src/directives/index.js","../src/directives/scrollspy/index.js","../src/directives/visible/index.js","../src/browser.js"],"names":["e","Object","assign","t","r","s","arguments","length","a","prototype","hasOwnProperty","call","apply","this","toUpperCase","c","o","split","n","i","l","trim","replace","keys","Array","isArray","style","y","concat","p","f","checkMultipleVueWarned","MULTIPLE_VUE_WARNING","HAS_WINDOW_SUPPORT","window","HAS_DOCUMENT_SUPPORT","document","HAS_NAVIGATOR_SUPPORT","navigator","HAS_PROMISE_SUPPORT","Promise","HAS_MUTATION_OBSERVER_SUPPORT","MutationObserver","WebKitMutationObserver","MozMutationObserver","IS_BROWSER","WINDOW","DOCUMENT","NAVIGATOR","USER_AGENT","toLowerCase","IS_JSDOM","indexOf","HAS_PASSIVE_EVENT_SUPPORT","test","passiveEventSupported","options","passive","addEventListener","removeEventListener","_unused","HAS_TOUCH_SUPPORT","documentElement","maxTouchPoints","HAS_POINTER_EVENT_SUPPORT","Boolean","PointerEvent","MSPointerEvent","HAS_INTERACTION_OBSERVER_SUPPORT","IntersectionObserverEntry","NAME","DEFAULT_BREAKPOINT","RX_ARRAY_NOTATION","RX_BV_PREFIX","RX_DIGITS","RX_EXTENSION","RX_HASH","RX_HASH_ID","RX_HTML_TAGS","RX_HYPHENATE","RX_LOWER_UPPER","RX_NUMBER","RX_PLUS","RX_REGEXP_REPLACE","RX_SPACES","RX_SPACE_SPLIT","RX_STAR","RX_START_SPACE_WORD","RX_TRIM_LEFT","RX_UNDERSCORE","RX_UN_KEBAB","RX_DATE","RX_DATE_SPLIT","RX_TIME","RX_HREF","RX_ENCODED_COMMA","RX_ENCODE_REVERSE","RX_QUERY_START","RX_ASPECT","RX_ASPECT_SEPARATOR","RX_COL_CLASS","RX_ICON_PREFIX","RX_STRIP_LOCALE_MODS","Element","_Object","_inherits","_super","_createSuper","_classCallCheck","_wrapNativeSuper","HTMLElement","_Element","_super2","SVGElement","_Element2","_super3","File","_Object2","_super4","toType","value","_typeof","isUndefined","undefined","isNull","isUndefinedOrNull","isFunction","isBoolean","isString","isNumber","isNumeric","String","isObject","obj","isPlainObject","toString","isDate","Date","isEvent","Event","isRegExp","slice","toRawType","create","proto","optionalProps","defineProperties","props","defineProperty","prop","descriptor","getOwnPropertyNames","clone","_objectSpread2","pick","filter","key","reduce","result","_defineProperty","omit","mergeDeep","target","source","forEach","sortKeys","sort","cloneDeep","defaultValue","val","_toConsumableArray","identity","x","getRaw","path","join","steps","every","step","get","getEnv","fallback","env","process","getNoWarn","warn","message","console","warnNotClient","warnNoPromiseSupport","BvConfig","$_config","_this","config","configKeys","subConfig","some","b","setConfig","Vue","OurVue","checkMultipleVue","installFactory","_ref","components","directives","plugins","install","installed","registerComponents","registerDirectives","registerPlugins","pluginFactory","extend","plugin","use","registerComponent","name","def","component","registerDirective","directive","NAME_ALERT","NAME_ASPECT","NAME_AVATAR","NAME_AVATAR_GROUP","NAME_BADGE","NAME_BREADCRUMB","NAME_BREADCRUMB_ITEM","NAME_BREADCRUMB_LINK","NAME_BUTTON","NAME_BUTTON_CLOSE","NAME_BUTTON_GROUP","NAME_BUTTON_TOOLBAR","NAME_CALENDAR","NAME_CARD","NAME_CARD_BODY","NAME_CARD_FOOTER","NAME_CARD_GROUP","NAME_CARD_HEADER","NAME_CARD_IMG","NAME_CARD_IMG_LAZY","NAME_CARD_SUB_TITLE","NAME_CARD_TEXT","NAME_CARD_TITLE","NAME_CAROUSEL","NAME_CAROUSEL_SLIDE","NAME_COL","NAME_COLLAPSE","NAME_CONTAINER","NAME_DROPDOWN","NAME_DROPDOWN_DIVIDER","NAME_DROPDOWN_FORM","NAME_DROPDOWN_GROUP","NAME_DROPDOWN_HEADER","NAME_DROPDOWN_ITEM","NAME_DROPDOWN_ITEM_BUTTON","NAME_DROPDOWN_TEXT","NAME_EMBED","NAME_FORM","NAME_FORM_CHECKBOX","NAME_FORM_CHECKBOX_GROUP","NAME_FORM_DATALIST","NAME_FORM_DATEPICKER","NAME_FORM_FILE","NAME_FORM_GROUP","NAME_FORM_INPUT","NAME_FORM_INVALID_FEEDBACK","NAME_FORM_RADIO","NAME_FORM_RADIO_GROUP","NAME_FORM_RATING","NAME_FORM_ROW","NAME_FORM_SELECT","NAME_FORM_SELECT_OPTION","NAME_FORM_SELECT_OPTION_GROUP","NAME_FORM_SPINBUTTON","NAME_FORM_TAG","NAME_FORM_TAGS","NAME_FORM_TEXT","NAME_FORM_TEXTAREA","NAME_FORM_TIMEPICKER","NAME_FORM_VALID_FEEDBACK","NAME_ICON","NAME_IMG","NAME_IMG_LAZY","NAME_INPUT_GROUP","NAME_INPUT_GROUP_ADDON","NAME_INPUT_GROUP_APPEND","NAME_INPUT_GROUP_PREPEND","NAME_INPUT_GROUP_TEXT","NAME_JUMBOTRON","NAME_LINK","NAME_LIST_GROUP","NAME_LIST_GROUP_ITEM","NAME_MEDIA","NAME_MEDIA_ASIDE","NAME_MEDIA_BODY","NAME_MODAL","NAME_NAV","NAME_NAVBAR","NAME_NAVBAR_BRAND","NAME_NAVBAR_NAV","NAME_NAVBAR_TOGGLE","NAME_NAV_FORM","NAME_NAV_ITEM","NAME_NAV_ITEM_DROPDOWN","NAME_OVERLAY","NAME_PAGINATION","NAME_PAGINATION_NAV","NAME_POPOVER","NAME_PROGRESS","NAME_PROGRESS_BAR","NAME_ROW","NAME_SIDEBAR","NAME_SKELETON","NAME_SKELETON_ICON","NAME_SKELETON_IMG","NAME_SKELETON_TABLE","NAME_SKELETON_WRAPPER","NAME_SPINNER","NAME_TAB","NAME_TABLE","NAME_TABLE_CELL","NAME_TABLE_LITE","NAME_TABLE_SIMPLE","NAME_TABS","NAME_TBODY","NAME_TFOOT","NAME_THEAD","NAME_TIME","NAME_TOAST","NAME_TOASTER","NAME_TOOLTIP","EVENT_NAME_CANCEL","EVENT_NAME_CHANGE","EVENT_NAME_CLICK","EVENT_NAME_CLOSE","EVENT_NAME_CONTEXT","EVENT_NAME_CONTEXT_CHANGED","EVENT_NAME_DESTROYED","EVENT_NAME_DISABLE","EVENT_NAME_DISABLED","EVENT_NAME_ENABLE","EVENT_NAME_ENABLED","EVENT_NAME_FILTERED","EVENT_NAME_FIRST","EVENT_NAME_FOCUSIN","EVENT_NAME_FOCUSOUT","EVENT_NAME_HEAD_CLICKED","EVENT_NAME_HIDDEN","EVENT_NAME_HIDE","EVENT_NAME_INPUT","EVENT_NAME_LAST","EVENT_NAME_MOUSEENTER","EVENT_NAME_MOUSELEAVE","EVENT_NAME_NEXT","EVENT_NAME_OPEN","EVENT_NAME_PAGE_CLICK","EVENT_NAME_PREV","EVENT_NAME_REFRESHED","EVENT_NAME_ROW_CLICKED","EVENT_NAME_SELECTED","EVENT_NAME_SHOW","EVENT_NAME_SHOWN","EVENT_NAME_SLIDING_END","EVENT_NAME_TOGGLE","HOOK_EVENT_NAME_BEFORE_DESTROY","HOOK_EVENT_NAME_DESTROYED","ROOT_EVENT_NAME_PREFIX","EVENT_OPTIONS_PASSIVE","EVENT_OPTIONS_NO_CAPTURE","capture","PROP_TYPE_ANY","PROP_TYPE_ARRAY","PROP_TYPE_BOOLEAN","PROP_TYPE_DATE","PROP_TYPE_FUNCTION","Function","PROP_TYPE_NUMBER","Number","PROP_TYPE_OBJECT","PROP_TYPE_REG_EXP","RegExp","PROP_TYPE_STRING","PROP_TYPE_ARRAY_FUNCTION","PROP_TYPE_ARRAY_OBJECT","PROP_TYPE_ARRAY_OBJECT_STRING","PROP_TYPE_ARRAY_STRING","PROP_TYPE_BOOLEAN_NUMBER","PROP_TYPE_BOOLEAN_NUMBER_STRING","PROP_TYPE_BOOLEAN_STRING","PROP_TYPE_DATE_STRING","PROP_TYPE_FUNCTION_STRING","PROP_TYPE_NUMBER_STRING","PROP_TYPE_NUMBER_OBJECT_STRING","PROP_TYPE_OBJECT_FUNCTION","PROP_TYPE_OBJECT_STRING","SLOT_NAME_APPEND","SLOT_NAME_BADGE","SLOT_NAME_BOTTOM_ROW","SLOT_NAME_BUTTON_CONTENT","SLOT_NAME_CUSTOM_FOOT","SLOT_NAME_DEFAULT","SLOT_NAME_EMPTY","SLOT_NAME_FILE_NAME","SLOT_NAME_FIRST","SLOT_NAME_FOOTER","SLOT_NAME_HEADER","SLOT_NAME_LABEL","SLOT_NAME_LEAD","SLOT_NAME_MODAL_CANCEL","SLOT_NAME_MODAL_OK","SLOT_NAME_MODAL_TITLE","SLOT_NAME_PREPEND","SLOT_NAME_ROW_DETAILS","SLOT_NAME_TABLE_BUSY","SLOT_NAME_TABLE_CAPTION","SLOT_NAME_TABLE_COLGROUP","SLOT_NAME_THEAD_TOP","SLOT_NAME_TITLE","SLOT_NAME_TOP_ROW","from","arrayIncludes","array","_len","args","_key","createArray","fillFn","mapFn","map","flatten","item","flattenDeep","toInteger","NaN","integer","parseInt","isNaN","toFloat","float","parseFloat","toFixed","precision","kebabCase","str","pascalCase","_","charAt","startCase","$1","$2","upperFirst","escapeRegExp","spaces","JSON","stringify","lowerCase","ELEMENT_PROTO","TABABLE_SELECTOR","matchesEl","matches","msMatchesSelector","webkitMatchesSelector","closestEl","closest","sel","el","parentElement","parentNode","nodeType","Node","ELEMENT_NODE","requestAF","requestAnimationFrame","webkitRequestAnimationFrame","mozRequestAnimationFrame","msRequestAnimationFrame","oRequestAnimationFrame","cb","setTimeout","MutationObs","isElement","getActiveElement","excludes","activeElement","isTag","tag","isActiveElement","isVisible","contains","body","getStyle","bcr","getBCR","height","width","isDisabled","disabled","hasAttr","hasClass","reflow","offsetHeight","selectAll","selector","root","arrayFrom","querySelectorAll","select","querySelector","includeRoot","parent","child","getById","id","getElementById","addClass","className","classList","add","removeClass","remove","setAttr","attr","setAttribute","removeAttr","removeAttribute","getAttr","getAttribute","hasAttribute","setStyle","removeStyle","getBoundingClientRect","getCS","getComputedStyle","getSel","getSelection","offset","_offset","top","left","getClientRects","win","ownerDocument","defaultView","pageYOffset","pageXOffset","position","parentOffset","elStyles","doc","offsetParent","offsetParentStyles","borderTopWidth","borderLeftWidth","marginTop","marginLeft","getTabables","rootEl","tabIndex","attemptFocus","focus","attemptBlur","blur","_unused2","memoize","fn","cache","argsKey","VueProto","getConfigValue","bvConfig","getComponentConfig","propKey","getBreakpoints","_getBreakpointsCached","getBreakpointsUpCached","breakpoints","prefixPropName","prefix","unprefixPropName","suffixPropName","suffix","makeProp","type","requiredOrValidator","validator","required","default","copyProps","transformFn","copied","pluckProps","keysToPluck","objToPluck","memo","makePropConfigurable","componentKey","makePropsConfigurable","configurablePropDefaultFnName","hasPropFunction","makeModelMixin","_ref$type","_ref$defaultValue","_ref$validator","_ref$event","event","mixin","model","hasNormalizedSlot","names","$scopedSlots","$slots","normalizeSlot","slot","scope","normalizeSlotMixin","methods","scopedSlots","slots","vNodes","parseEventOptions","eventOn","eventName","handler","eventOff","eventOnOff","on","method","stopEvent","_ref$preventDefault","preventDefault","_ref$propagation","propagation","_ref$immediatePropaga","immediatePropagation","stopPropagation","stopImmediatePropagation","getBaseEventName","getRootEventName","getRootActionEventName","actionName","ariaLabel","content","textVariant","BButtonClose","functional","render","h","data","componentData","staticClass","class","attrs","aria-label","click","domProps","innerHTML","mergeData","NO_FADE_PROPS","enterClass","enterActiveClass","enterToClass","leaveClass","leaveActiveClass","leaveToClass","FADE_PROPS","appear","mode","noFade","transProps","BVTransition","children","appearClass","appearActiveClass","appearToClass","css","modelMixin","modelProps","MODEL_PROP_NAME","MODEL_EVENT_NAME","parseCountDown","show","parseShow","dismissLabel","dismissible","fade","variant","AlertPlugin","BAlert","mixins","countDown","localShow","watch","_watch","newValue","clearCountDownInterval","$emit","$_countDownTimeout","$nextTick","created","$_filterTimer","beforeDestroy","dismiss","clearTimeout","$alert","$dismissButton","alert-dismissible","role","aria-live","aria-atomic","mathMin","Math","min","mathMax","max","mathAbs","abs","mathCeil","ceil","mathFloor","floor","mathPow","pow","mathRound","round","CLASS_NAME","aspect","BAspect","computed","padding","ratio","_aspect$split$map2","_slicedToArray","v","$sizer","paddingBottom","$content","AspectPlugin","encodeReserveReplacer","charCodeAt","encode","encodeURIComponent","decode","decodeURIComponent","stringifyQueryObj","query","results","value2","push","parseQuery","parsed","param","parts","shift","isLink","href","to","isRouterLink","computeHref","_ref3","toFallback","hash","baseAttrs","viewBox","focusable","stackedAttrs","animation","flipH","flipV","fontScale","rotate","scale","shiftH","shiftV","stacked","title","BVIconBase","_class","hasScale","hasTransforms","hasShift","hasContent","$inner","transform","$title","fontSize","xmlns","fill","makeIcon","kebabName","iconName","iconNameClass","iconTitle","svgContent","BVIconBaseProps","BIconBlank","BIconCalendar","BIconCalendarFill","BIconChevronBarLeft","BIconChevronDoubleLeft","BIconChevronDown","BIconChevronLeft","BIconChevronUp","BIconCircleFill","BIconClock","BIconClockFill","BIconDash","BIconPersonFill","BIconPlus","BIconStar","BIconStarFill","BIconStarHalf","BIconX","findIconComponent","ctx","$options","$parent","icon","BIcon","CODE_DOWN","CODE_END","CODE_ENTER","CODE_HOME","CODE_LEFT","CODE_RIGHT","CODE_SPACE","CODE_UP","compareArrays","equal","looseEqual","aValidType","bValidType","getTime","aHasKey","bHasKey","isEmpty","makePropWatcher","propName","oldValue","$delete","$data","$set","makePropCacheMixin","proxyPropName","attrsMixin","listenOnRootMixin","listenOnRoot","callback","$root","$on","$off","listenOnRootOnce","_this2","$once","emitOnRoot","_this$$root","listenersMixin","ROOT_EVENT_NAME_CLICKED","routerLinkProps","activeClass","append","exact","exactActiveClass","routerTag","nuxtLinkProps","noPrefetch","prefetch","active","rel","routerComponentName","BLink","inheritAttrs","computedTag","thisOrParent","hasRouter","$router","$nuxt","computeTag","computedRel","_ref2","computeRel","computedHref","computedProps","computedAttrs","bvAttrs","tabindex","aria-disabled","computedListeners","bvListeners","onClick","_arguments","eventIsEvent","suppliedHandler","currentTarget","__vue__","$el","linkProps","BLinkProps","block","pill","pressed","size","squared","handleFocus","isLinkStrict","isToggle","isButton","isNonStandardTag","computeClass","computeLinkProps","computeAttrs","button","link","toggle","nonStandardTag","hashLink","aria-pressed","autocomplete","BButton","listeners","keydown","keyCode","focusin","focusout","SIZES","computeSize","alt","badge","badgeLeft","badgeOffset","badgeTop","badgeVariant","buttonType","rounded","square","src","text","BAvatar","inject","bvAvatarGroup","localSrc","computedSize","computedVariant","computedRounded","fontStyle","marginStyle","overlapScale","marginRight","badgeStyle","FONT_SIZE_SCALE","bottom","right","onImgError","_class2","error","aria-hidden","$badge","hasBadgeSlot","badgeText","overlap","AvatarPlugin","BAvatarGroup","provide","paddingStyle","paddingLeft","paddingRight","BBadge","$props","badge-pill","BadgePlugin","stripTags","htmlOrText","textContent","ariaCurrent","html","BBreadcrumbLink","suppliedProps","aria-current","BBreadcrumbLinkProps","BBreadcrumbItem","items","BreadcrumbPlugin","BBreadcrumb","childNodes","activeDefined","idx","ButtonPlugin","BBtn","BBtnClose","buttonProps","ariaRole","vertical","BButtonGroup","btn-group","btn-group-vertical","ButtonGroupPlugin","BBtnGroup","ITEM_SELECTOR","justify","keyNav","BButtonToolbar","mounted","getItems","focusFirst","focusPrev","index","reverse","focusNext","focusLast","onFocusin","relatedTarget","onKeydown","shiftKey","justify-content-between","ButtonToolbarPlugin","BBtnToolbar","CALENDAR_GREGORY","CALENDAR_LONG","CALENDAR_SHORT","DATE_FORMAT_2_DIGIT","DATE_FORMAT_NUMERIC","createDate","_construct","parseYMD","date","_date$split$map2","year","month","day","getFullYear","getMonth","getDate","formatYMD","createDateFormatter","locale","Intl","DateTimeFormat","format","datesEqual","date1","date2","firstDateOfMonth","setDate","lastDateOfMonth","setMonth","addYears","numberOfYears","setFullYear","oneMonthAgo","oneMonthAhead","oneYearAgo","oneYearAhead","oneDecadeAgo","oneDecadeAhead","constrainDate","RTL_LANGS","isLocaleRTL","locale1","locale2","idMixin","localId_","safeId","idProps","ariaControls","dateDisabledFn","dateFormatOptions","weekday","dateInfoFn","direction","hidden","hideHeader","initialDate","labelCalendar","labelCurrentMonth","labelHelp","labelNav","labelNextDecade","labelNextMonth","labelNextYear","labelNoDateSelected","labelPrevDecade","labelPrevMonth","labelPrevYear","labelSelected","labelToday","navButtonVariant","noHighlightToday","noKeyNav","readonly","roleDescription","selectedVariant","showDecadeNav","startWeekday","todayVariant","valueAsDate","weekdayHeaderFormat","BCalendar","selected","selectedYMD","activeYMD","getToday","gridHasFocus","isLive","valueId","widgetId","navId","gridId","gridCaptionId","gridHelpId","activeId","selectedDate","activeDate","computedMin","computedMax","computedWeekStarts","computedLocale","locales","calendar","resolvedOptions","resolveLocale","computedDateDisabledFn","computedDateInfoFn","calendarLocale","fmt","calendarYear","calendarMonth","calendarFirstDay","calendarDaysInMonth","computedTodayVariant","computedNavButtonVariant","isRTL","dir","context","selectedFormatted","formatDateString","activeFormatted","dateDisabled","rtl","dateOutOfRange","rangeFn","ymd","hour","minute","second","formatYearMonth","formatWeekdayName","formatWeekdayNameShort","formatDay","nf","NumberFormat","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","notation","prevDecadeDisabled","prevYearDisabled","prevMonthDisabled","thisMonthDisabled","nextMonthDisabled","nextYearDisabled","nextDecadeDisabled","matrix","firstDay","daysInMonth","startIndex","getDay","currentDay","week","j","dayYMD","dayDisabled","dateInfo","label","isThisMonth","info","calendarHeadings","d","_watch$1","old","newYMD","oldYMD","setLive","_this3","activated","deactivated","$refs","grid","_this4","emitSelected","_this5","setGridFocusFlag","onKeydownWrapper","altKey","ctrlKey","checkDate","constrainedToday","onKeydownGrid","onClickDay","clickedDate","gotoPrevDecade","gotoPrevYear","gotoPrevMonth","gotoCurrentMonth","gotoNextMonth","gotoNextYear","gotoNextDecade","onHeaderClick","_this6","hideDecadeNav","todayYMD","highlightToday","$header","text-muted","for","data-selected","sr-only","labelSelectedDate","navScope","navProps","navPrevProps","navNextProps","$prevDecadeIcon","$prevYearIcon","$prevMonthIcon","$thisMonthIcon","$nextMonthIcon","$nextYearIcon","$nextDecadeIcon","makeNavBtn","btnDisabled","shortcut","aria-keyshortcuts","$nav","aria-controls","$gridCaption","$gridWeekDays","$gridBody","$cells","dIndex","isSelected","isActive","isToday","idCell","$btn","data-date","aria-selected","pointerEvents","$gridHelp","$grid","data-month","aria-roledescription","aria-labelledby","aria-describedby","aria-activedescendant","ref","$slot","$widget","lang","d-block","CalendarPlugin","bgVariant","borderVariant","titleTag","BCardTitle","subTitle","subTitleTag","subTitleTextVariant","BCardSubTitle","titleProps","subTitleProps","cardProps","bind","bodyClass","overlay","BCardBody","bodyBgVariant","bodyBorderVariant","bodyTextVariant","$subTitle","bodyTag","card-img-overlay","BCardProps","header","headerClass","headerHtml","BCardHeader","headerBgVariant","headerBorderVariant","headerTextVariant","headerTag","footer","footerClass","footerHtml","BCardFooter","footerBgVariant","footerBorderVariant","footerTextVariant","footerTag","BLANK_TEMPLATE","blank","blankColor","center","fluid","fluidGrow","sizes","srcset","thumbnail","BImg","align","color","makeBlankImgSrc","img-thumbnail","img-fluid","w-100","BImgProps","end","start","BCardImg","baseClass","cardImgProps","BCardImgProps","imgSrc","BCardBodyProps","BCardHeaderProps","BCardFooterProps","noBody","BCard","imgLeft","imgRight","imgStart","imgEnd","imgBottom","slotScope","$imgFirst","$imgLast","$img","hasHeaderSlot","$footer","flex-row","flex-row-reverse","OBSERVER_PROP_NAME","VisibilityObserver","vnode","margin","once","observer","visible","doneOnce","createObserver","stop","IntersectionObserver","rootMargin","threshold","observe","entries","entry","isIntersecting","intersectionRatio","disconnect","destroy","modifiers","mod","_prevModifiers","VBVisible","componentUpdated","unbind","MODEL_PROP_NAME_SHOW","imgProps","blankHeight","blankSrc","blankWidth","BImgLazy","b-visible","isShown","computedSrc","computedBlank","computedWidth","computedHeight","computedSrcset","computedSizes","_watch$2","updateShowProp","MODEL_EVENT_NAME_PREFIX","doShow","_modifiers","BImgLazyProps","BCardImgLazy","textTag","BCardText","columns","deck","CardPlugin","BCardGroup","noop","observeDom","obs","mutations","changed","mutation","TEXT_NODE","addedNodes","removedNodes","childList","subtree","DIRECTION","next","dirClass","overlayClass","prev","PointerType","TOUCH","PEN","TransitionEndEvents","WebkitTransition","MozTransition","OTransition","transition","background","controls","imgHeight","imgWidth","indicators","interval","labelGotoSlide","labelIndicators","labelNext","labelPrev","noAnimation","noHoverPause","noTouch","noWrap","BCarousel","bvCarousel","isSliding","transitionEndEvent","slides","isPaused","touchStartX","touchDeltaX","numSlides","_watch$3","setSlide","pause","doSlide","$_interval","$_animationTimeout","$_touchTimeout","$_observer","getTransitionEndEvent","updateSlides","setObserver","clearInterval","clearAnimationTimeout","clearTouchTimeout","_clearInterval","inner","attributes","attributeFilter","slide","visibilityState","setInterval","restart","isCycling","calcDirection","currentSlide","nextSlide","called","onceTransEnd","curIndex","nextIndex","handleClick","handleSwipe","absDeltaX","touchStart","pointerType","clientX","touches","touchMove","touchEnd","idInner","$controls","makeControl","handlerWrapper","$indicators","aria-owns","mouseenter","mouseleave","tagName","carousel-fade","pointer-event","aria-busy","imgAlt","imgBlank","imgBlankColor","caption","captionHtml","captionTag","contentTag","contentVisibleUp","textHtml","CarouselPlugin","BCarouselSlide","contentClasses","dragstart","$contentChildren","$child","CLASS_NAME_SHOW","TRANSITION_PROPS","TRANSITION_HANDLERS","enter","scrollHeight","afterEnter","leave","afterLeave","BVCollapse","ROOT_ACTION_EVENT_NAME_TOGGLE","ROOT_ACTION_EVENT_NAME_REQUEST_STATE","ROOT_EVENT_NAME_ACCORDION","ROOT_EVENT_NAME_STATE","ROOT_EVENT_NAME_SYNC_STATE","accordion","isNav","BCollapse","transitioning","classObject","navbar-collapse","collapse","close","_watch$4","emitState","handleToggleEvt","handleAccordionEvt","setWindowEvents","handleResize","emitSync","updated","onEnter","onAfterEnter","onLeave","onAfterLeave","checkDisplayBlock","restore","isBlock","display","clickHandler","openedId","openAccordion","isThis","CLASS_BV_TOGGLE_COLLAPSED","CLASS_BV_TOGGLE_NOT_COLLAPSED","BV_BASE","BV_TOGGLE_ROOT_HANDLER","BV_TOGGLE_CLICK_HANDLER","BV_TOGGLE_STATE","BV_TOGGLE_TARGETS","ATTR_ARIA_CONTROLS","ATTR_ARIA_EXPANDED","ATTR_ROLE","ATTR_TABINDEX","STYLE_OVERFLOW_ANCHOR","KEYDOWN_KEY_CODES","removeClickListener","removeRootListeners","setToggleState","state","resetProp","handleUpdate","binding","targets","arg","arr","getTargets","addClickListener","VBToggle","addRootListeners","VBTogglePlugin","CollapsePlugin","isBrowser","timeoutDuration","longerTimeoutBrowsers","userAgent","debounce","resolve","then","scheduled","functionToCheck","getStyleComputedProperty","element","property","getParentNode","nodeName","host","getScrollParent","_getStyleComputedProp","overflow","overflowX","overflowY","getReferenceNode","reference","referenceNode","isIE11","MSInputMethodContext","documentMode","isIE10","isIE","version","getOffsetParent","noOffsetParent","nextElementSibling","getRoot","node","findCommonOffsetParent","element1","element2","order","compareDocumentPosition","DOCUMENT_POSITION_FOLLOWING","range","createRange","setStart","setEnd","commonAncestorContainer","firstElementChild","element1root","getScroll","side","upperSide","scrollingElement","includeScroll","rect","subtract","scrollTop","scrollLeft","modifier","getBordersSize","styles","axis","sideA","sideB","getSize","computedStyle","getWindowSizes","classCallCheck","instance","Constructor","TypeError","createClass","enumerable","configurable","writable","protoProps","staticProps","_extends","getClientRect","offsets","clientWidth","clientHeight","horizScrollbar","offsetWidth","vertScrollbar","getOffsetRectRelativeToArbitraryNode","fixedPosition","isHTML","childrenRect","parentRect","scrollParent","getViewportOffsetRectRelativeToArtbitraryNode","excludeScroll","relativeOffset","innerWidth","innerHeight","isFixed","getFixedPositionOffsetParent","getBoundaries","popper","boundariesElement","boundaries","boundariesNode","_getWindowSizes","isPaddingNumber","getArea","computeAutoPlacement","placement","refRect","rects","sortedAreas","area","filteredAreas","computedPlacement","variation","getReferenceOffsets","commonOffsetParent","getOuterSizes","marginBottom","getOppositePlacement","matched","getPopperOffsets","referenceOffsets","popperRect","popperOffsets","isHoriz","mainSide","secondarySide","measurement","secondaryMeasurement","find","check","runModifiers","ends","findIndex","cur","match","enabled","update","isDestroyed","arrowStyles","flipped","positionFixed","flip","originalPlacement","isCreated","onUpdate","onCreate","isModifierEnabled","modifierName","getSupportedPropertyName","prefixes","upperProp","toCheck","willChange","disableEventListeners","removeOnDestroy","removeChild","getWindow","attachToScrollParents","scrollParents","isBody","setupEventListeners","updateBound","scrollElement","eventsEnabled","enableEventListeners","scheduleUpdate","cancelAnimationFrame","isFinite","setStyles","unit","isFirefox","isModifierRequired","requestingName","requestedName","requesting","isRequired","_requesting","requested","placements","validPlacements","clockwise","counter","BEHAVIORS","parseOffset","basePlacement","useHeight","fragments","frag","divider","search","splitRegex","ops","op","mergeWithPrevious","toValue","index2","Defaults","shiftvariation","_data$offsets","isVertical","shiftOffsets","preventOverflow","transformProp","popperStyles","priority","primary","escapeWithReference","secondary","keepTogether","opSide","arrow","_data$offsets$arrow","arrowElement","len","sideCapitalized","altSide","arrowElementSize","popperMarginSide","popperBorderSide","sideValue","placementOpposite","flipOrder","behavior","refOffsets","overlapsRef","overflowsLeft","overflowsRight","overflowsTop","overflowsBottom","overflowsBoundaries","flippedVariationByRef","flipVariations","flippedVariationByContent","flipVariationsByContent","flippedVariation","getOppositeVariation","subtractLength","hide","bound","computeStyle","legacyGpuAccelerationOption","gpuAcceleration","offsetParentRect","shouldRound","noRound","referenceWidth","popperWidth","isVariation","horizontalToInteger","verticalToInteger","getRoundedOffsets","devicePixelRatio","prefixedProperty","invertTop","invertLeft","x-placement","applyStyle","onLoad","modifierOptions","Popper","jquery","Utils","global","PopperUtils","BvEvent","eventInit","constructor","cancelable","nativeEvent","vueTarget","componentId","defaultPrevented","_createClass","clickOutMixin","listenForClickOut","clickOutElement","clickOutEventName","_clickOutHandler","beforeCreate","isClickOut","clickOutHandler","focusInMixin","listenForFocusIn","focusInElement","_focusInHandler","focusInHandler","ROOT_EVENT_NAME_SHOWN","ROOT_EVENT_NAME_HIDDEN","SELECTOR_ITEM","boundary","dropleft","dropright","dropup","noFlip","popperOpts","dropdownMixin","bvDropdown","bvNavbar","visibleChangePrevented","inNavbar","toggler","directionClass","boundaryClass","bvEvent","menu","emitEvent","focusToggler","showMenu","hideMenu","$_popper","$_hideTimeout","whileOpenListen","destroyPopper","clearHideTimeout","createPopper","focusMenu","getPopperConfig","updatePopper","popperConfig","isOpen","rootCloseListener","vm","refocus","_event","onMousedown","onEsc","onSplitClick","hideHandler","up","focusItem","dropdownProps","lazy","menuClass","noCaret","splitButtonType","splitClass","splitHref","splitTo","splitVariant","toggleClass","toggleTag","toggleText","BDropdown","dropdownClasses","d-flex","menuClasses","dropdown-menu-right","toggleClasses","dropdown-toggle-split","dropdown-toggle-no-caret","commonProps","$buttonChildren","buttonContentDomProps","$split","btnProps","$toggle","aria-haspopup","aria-expanded","mousedown","$menu","linkClass","BDropdownItem","closeDropdown","buttonClass","BDropdownItemButton","BDropdownHeader","BDropdownDivider","aria-orientation","inline","novalidate","validated","BForm","form-inline","was-validated","formControlProps","formClass","BDropdownForm","textClass","BDropdownText","ariaDescribedby","headerClasses","headerVariant","BDropdownGroup","headerId","ariaDescribedBy","DropdownPlugin","BDd","BDdItem","BDropdownItemBtn","BDdItemButton","BDdItemBtn","BDdHeader","BDdDivider","BDdForm","BDdText","BDdGroup","TYPES","BEmbed","EmbedPlugin","disabledField","htmlField","textField","valueField","formOptionsMixin","formOptions","normalizeOptions","normalizeOption","option","formOptionsProps","BFormDatalist","BFormText","form-text","ariaLive","forceShow","tooltip","BFormInvalidFeedback","invalid-feedback","invalid-tooltip","BFormValidFeedback","valid-feedback","valid-tooltip","BFormRow","FormPlugin","BDatalist","BFormFeedback","looseIndexOf","SELECTOR","autofocus","form","formControlMixin","handleAutofocus","plain","formCustomMixin","custom","formSizeMixin","sizeFormClass","formStateMixin","computedState","stateClass","computedAriaInvalid","ariaInvalid","formSizeProps","formStateProps","formCustomProps","ariaLabelledby","buttonVariant","formRadioCheckMixin","localChecked","isGroup","bvGroup","hasFocus","computedLocalChecked","set","isChecked","isRadio","isBtnMode","buttons","isPlain","isCustom","isSwitch","switches","switch","isInline","computedName","groupName","computedForm","computedButtonVariant","buttonClasses","aria-required","_watch$5","computedLocalCheckedWatcher","_methods","checked","input","$input","form-check-input","custom-control-input","position-static","change","handleChange","$button","$label","form-check-label","custom-control-label","form-check","form-check-inline","custom-control","custom-control-inline","custom-checkbox","custom-switch","custom-radio","MODEL_PROP_NAME_INDETERMINATE","MODEL_EVENT_NAME_INDETERMINATE","formRadioCheckProps","_objectSpread2$1","BFormCheckbox","setIndeterminate","indeterminate","_ref$target","uncheckedValue","BFormRadio","PASS_DOWN_ATTRS","formRadioCheckGroupMixin","groupClasses","classes","_watch$6","isRadioGroup","$attrs","optionComponent","$inputs","aria-invalid","formRadioCheckGroupProps","_objectSpread2$2","BFormCheckboxGroup","bvCheckGroup","FormCheckboxPlugin","BCheckbox","BCheck","BCheckboxGroup","BCheckGroup","PROP","MOUSEENTER","updateListeners","listener","_ref$value","hasListener","handlerChanged","createListener","VBHover","buttonOnly","formattedValue","placeholder","BVFormBtnLabelControl","b-hover","isHovered","idButton","idLabel","idMenu","idWrapper","computedDir","setFocus","handleHover","hovered","invalid","btnScope","opened","!focus","!blur","$hidden","aria-modal","!click","form-control","h-auto","align-items-stretch","is-valid","is-invalid","aria-readonly","calendarProps","BCalendarProps","formBtnLabelControlProps","BVFormBtnLabelControlProps","calendarWidth","closeButton","closeButtonVariant","dark","labelCloseButton","labelResetButton","labelTodayButton","noCloseOnSelect","resetButton","resetButtonVariant","resetValue","todayButton","todayButtonVariant","BFormDatepicker","localYMD","localLocale","calendarYM","computedLang","computedResetValue","_watch$7","control","setAndClose","onSelected","onInput","onContext","onTodayButton","onResetButton","onCloseButton","onShow","onShown","onHidden","defaultButtonFn","$createElement","justify-content-end","$calendar","bg-dark","text-light","shown","FormDatepickerPlugin","BDatepicker","VALUE_EMPTY_DEPRECATED_MSG","isValidValue","isFile","getDataTransferItemEntry","getAsEntry","webkitGetAsEntry","getAllFileEntriesInDirectory","directoryReader","entryPromises","readDirectoryEntries","readEntries","all","isDirectory","createReader","file","$path","accept","browseText","directory","dropPlaceholder","fileNameFormatter","multiple","noDrop","noDropPlaceholder","noTraverse","BFormFile","files","dragging","dropAllowed","computedAccept","extOrType","startMatch","endMatch","rx","computedCapture","webkitdirectory","computedFileNameFormatter","defaultFileNameFormatter","clonedFiles","flattenedFiles","fileNames","labelContent","allowed","filesTraversed","_watch$8","reset","$_form","$form","isFileValid","isFilesArrayValid","setFiles","setInputFiles","dataTransfer","ClipboardEvent","clipboardData","DataTransfer","handleFiles","isDrop","filteredFiles","focusHandler","onChange","_event$dataTransfer","dataTransferItemList","traverseDirectories","kind","getAllFileEntries","webkitRelativePath","onDragenter","_event$dataTransfer2","dropEffect","onDragover","_event$dataTransfer3","onDragleave","onDrop","form-control-file","custom-file-input","zIndex","data-browse","dragenter","dragover","dragleave","drop","FormFilePlugin","BFile","escapeChar","cssEscape","firstCharCode","char","charCode","ALIGN_SELF_VALUES","computeBreakpointClass","breakpoint","breakpointPropMap","BCol","breakpointCol","breakpointOffset","breakpointOrder","col","alignSelf","cols","_classList$push","hasColClasses","INPUTS","INPUT_SELECTOR","LEGEND_INTERACTIVE_ELEMENTS","BFormGroup","description","feedbackAriaLive","invalidFeedback","labelClass","labelFor","labelSize","labelSrOnly","validFeedback","contentColProps","getColProps","labelAlignClasses","getAlignClasses","labelColProps","isHorizontal","updateAriaDescribedby","propValue","newIds","oldIds","ids","onLegendClick","inputs","isFieldset","labelId","labelTag","$invalidFeedback","invalidFeedbackContent","invalidFeedbackId","$validFeedback","validFeedbackContent","validFeedbackId","$description","descriptionContent","descriptionId","FormGroupPlugin","BFormFieldset","formSelectionMixin","selectionStart","selectionEnd","selectionDirection","_this$$refs$input","setSelectionRange","_this$$refs$input2","setRangeText","_this$$refs$input3","formatter","lazyFormatter","number","plaintext","formTextMixin","localValue","vModelValue","modifyValue","computedClass","isRange","isColor","custom-range","form-control-plaintext","computedDebounce","hasFormatter","stringifyValue","modifiedValue","clearDebounce","$_inputDebounceTimer","formatValue","force","updateValue","doUpdate","composing","onBlur","formValidityMixin","validity","validationMessage","willValidate","setCustomValidity","checkValidity","reportValidity","formTextProps","list","noWheel","BFormInput","localType","setWheelStopper","onWheelFocus","onWheelBlur","stopWheel","FormInputPlugin","BInput","BFormRadioGroup","bvRadioGroup","FormRadioPlugin","BRadio","BRadioGroup","computeStars","stars","clampValue","BVFormRatingStar","focused","hasClear","rating","star","minStar","b-rating-star-empty","b-rating-star-half","b-rating-star-full","iconClear","iconEmpty","iconFull","iconHalf","noBorder","showClear","showValue","showValueMax","BFormRating","computedStars","computedRating","isInteractive","formattedRating","formatOptions","toLocaleString","_watch$9","amountRtl","onFocus","renderIcon","iconEmptyFn","iconHalfFn","iconFullFn","iconClearFn","$icon","empty","half","full","d-inline-flex","border-0","aria-valuemin","aria-valuemax","aria-valuenow","FormRatingPlugin","BRating","labelField","optionsField","optionsMixin","BFormSelectOption","BFormSelectOptionGroup","selectSize","BFormSelect","computedSelectSize","inputClass","selectedValue","_value","FormSelectPlugin","BSelect","BSelectOption","BSelectOptionGroup","KEY_CODES","formatterFn","labelDecrement","labelIncrement","repeatDelay","repeatInterval","repeatStepMultiplier","repeatThreshold","wrap","BFormSpinbutton","spinId","computedInline","computedReadonly","computedRequired","computedStep","computedDelay","delay","computedInterval","computedThreshold","computedStepMultiplier","computedPrecision","computedMultiplier","valueAsFixed","computedRTL","defaultFormatter","useGrouping","computedFormatter","computedSpinAttrs","hasValue","aria-valuetext","_watch$a","clearRepeat","$_autoDelayTimer","$_autoRepeatTimer","$_keyIsDown","spinner","emitChange","stepValue","multiplier","onFocusBlur","stepUp","stepDown","metaKey","resetTimers","handleStepRepeat","onKeyup","stepper","count","onMouseup","setMouseup","makeButton","IconCmp","keyRef","slotName","py-0","touchstart","$increment","$decrement","$spin","align-self-center","align-items-center","border-top","border-bottom","border-left","border-right","flex-column","keyup","FormSpinbuttonPlugin","BSpinbutton","noRemove","removeLabel","BFormTag","onRemove","tagId","tagLabelId","$remove","$tag","DEFAULT_INPUT_FOCUS_SELECTOR","cleanTags","tags","processEventValue","addButtonText","addButtonVariant","addOnChange","duplicateTagText","ignoreInputFocusSelector","inputAttrs","inputId","inputType","invalidTagText","limit","limitTagsText","noAddOnEnter","noOuterFocus","noTagRemove","removeOnDelete","separator","tagClass","tagPills","tagRemoveLabel","tagRemovedLabel","tagValidator","tagVariant","BFormTags","newTag","removedTags","tagsState","valid","duplicate","computedInputId","computedInputType","computedInputAttrs","computedInputHandlers","onInputInput","onInputChange","onInputKeydown","computedSeparator","computedSeparatorRegExp","computedJoiner","joiner","computeIgnoreInputFocusSelector","disableAddButton","splitTags","validateTag","duplicateTags","hasDuplicateTags","invalidTags","hasInvalidTags","isLimitReached","_watch$b","addTag","parseTags","getInput","invalidAndDuplicates","removeTag","separatorRe","ignoreFocusSelector","onFocusout","_this7","defaultRender","inputHandlers","isDuplicate","isInvalid","$tags","duplicateFeedbackId","limitFeedbackId","outline","minWidth","invisible","tagListId","$field","$ul","$feedback","$invalid","$duplicate","$limit","$output","aria-relevant","$removed","hasTags","FormTagsPlugin","BTags","BTag","maxRows","noAutoShrink","noResize","rows","BFormTextarea","heightInPx","resize","computedRows","computedMinRows","computedMaxRows","setHeight","visibleCallback","computeHeight","$isServer","lineHeight","border","borderBottomWidth","paddingTop","minHeight","oldHeight","contentRows","640","FormTextareaPlugin","BTextarea","NUMERIC","padLeftZeros","parseHMS","hh","mm","ss","_value$split$map2","hours","minutes","seconds","ampm","BFormSpinbuttonProps","hour12","labelAm","labelAmpm","labelHours","labelMinutes","labelNoTimeSelected","labelPm","labelSeconds","minutesStep","secondsStep","showSeconds","BTime","modelHours","modelMinutes","modelSeconds","modelAmpm","computedHMS","requireSeconds","formatHMS","resolved","hourCycle","computedHourCycle","is12Hour","formatted","formattedTimeString","computedAriaLabelledby","timeFormatter","timeZone","numberFormatter","UTC","spinScopedSlots","increment","decrement","_watch$c","_parseHMS","newHours","oldHours","spinners","formatHours","formatMinutes","formatSeconds","formatAmpm","setHours","setMinutes","setSeconds","setAmpm","onSpinLeftRight","cmp","spinIds","makeSpinbutton","spinbuttonProps","refInFor","makeColon","$spinners","$value","timeProps","BTimeProps","labelNowButton","noCloseButton","nowButton","nowButtonVariant","BFormTimepicker","localHMS","_watch$d","hms","onNowButton","now","getHours","getMinutes","getSeconds","time","$time","FormTimepickerPlugin","BTimepicker","ImagePlugin","BInputGroupText","isText","BInputGroupAddon","input-group-append","input-group-prepend","BInputGroupAddonProps","BInputGroupAppend","BInputGroupPrepend","appendHtml","prepend","prependHtml","InputGroupPlugin","BInputGroup","$prepend","hasPrependSlot","$append","hasAppendSlot","BContainer","container","container-fluid","containerFluid","headerLevel","lead","leadHtml","leadTag","JumbotronPlugin","BJumbotron","$lead","hasLeadSlot","$children","jumbotron-fluid","COMMON_ALIGNMENT","computeRowColsClass","computeRowColsBreakpoint","rowColsPropList","LayoutPlugin","BRow","rowColsProps","alignContent","alignH","alignV","noGutters","no-gutters","LinkPlugin","flush","horizontal","BListGroup","list-group-flush","list-group-horizontal","actionTags","action","ListGroupPlugin","BListGroupItem","itemProps","verticalAlign","BMediaAside","media-aside-right","BMediaBody","rightAlign","MediaPlugin","BMedia","$aside","listenOnDocumentMixin","listenDocument","listenOnDocument","listenOffDocument","listenOnWindowMixin","listenWindow","listenOnWindow","listenOffWindow","getScopeId","_scopeId","scopedStyleMixin","scopedStyleAttrs","scopeId","BVTransporterTarget","abstract","nodes","updatedNodes","destroyed","$nodes","BVTransporter","immediate","unmountTarget","mountTarget","$_defaultFn","$_target","beforeMount","updateTarget","getContainer","$container","createElement","appendChild","propsData","defaultFn","$destroy","BvModalEvent","_assertThisInitialized","trigger","_get","_getPrototypeOf","modalManager","modals","baseZIndex","scrollbarWidth","isBodyOverflowing","modalCount","modalsAreOpen","newCount","oldCount","getScrollbarWidth","checkScrollbar","setScrollbar","resetScrollbar","updateModals","registerModal","modal","unregisterModal","splice","_isBeingDestroyed","_isDestroyed","resetModal","getBaseZIndex","div","isTop","_getBCR","_paddingChangedForModal","_marginChangedForModal","actualPadding","actualMargin","TRIGGER_FORCE","BUTTON_CANCEL","BUTTON_CLOSE","BUTTON_OK","BUTTONS","OBSERVER_CONFIG","characterData","autoFocusButton","busy","buttonSize","cancelDisabled","cancelTitle","cancelTitleHtml","cancelVariant","centered","contentClass","dialogClass","headerCloseContent","headerCloseLabel","headerCloseVariant","hideBackdrop","hideFooter","hideHeaderClose","ignoreEnforceFocusSelector","modalClass","noCloseOnBackdrop","noCloseOnEsc","noEnforceFocus","noStacking","okDisabled","okOnly","okTitle","okTitleHtml","okVariant","returnFocus","scrollable","static","titleClass","titleHtml","titleSrOnly","BModal","isHidden","isTransitioning","isShow","isOpening","isClosing","ignoreBackdropClick","isModalOverflowing","modalId","modalOuterId","modalHeaderId","modalBodyId","modalTitleId","modalContentId","modalFooterId","modalBackdropId","modalClasses","modalStyles","sbWidth","dialogClasses","titleClasses","bodyClasses","footerClasses","_ref4","modalOuterStyle","cancel","onCancel","onClose","ok","onOk","computeIgnoreEnforceFocusSelector","computedModalAttrs","$_returnFocus","showHandler","toggleHandler","modalListener","checkModalOverflow","updateModel","buildEvent","showEvt","hideEvt","triggerEl","onBeforeEnter","setResizeEvent","setEnforceFocus","onBeforeLeave","returnFocusTo","bvModalEvt","onDialogMousedown","onceModalMouseup","onClickOut","tabables","bottomTrap","topTrap","preventScroll","autoFocus","makeModal","$modalHeader","$closeButton","$body","$modalFooter","$cancelButton","$modalContent","$tabTrapTop","$tabTrapBottom","$modalDialog","$modal","beforeEnter","beforeLeave","$backdrop","ROOT_ACTION_EVENT_NAME_SHOW","PROPERTY","getTarget","_ref$modifiers","getTriggerElement","setRole","oldProp","VBModal","inserted","PROP_NAME","BASE_PROPS","modalProps","defaultResolver","propsToSlots","msgBoxContent","filterOptions","ModalPlugin","BVModalPlugin","BMsgBox","extends","handleDestroy","$route","$watch","asyncMsgBox","resolver","msgBox","reject","Error","$mount","makeMsgBox","BvModal","_vm","_root","_this$_root","_this$_root2","_len2","_key2","cardHeader","justified","pills","small","tabs","BNav","nav-tabs","nav-pills","card-header-tabs","card-header-pills","nav-fill","nav-justified","linkAttrs","linkClasses","BNavItem","BNavText","BFormProps","BNavForm","BDropdownProps","BNavItemDropdown","toggleId","NavPlugin","BNavItemDd","BNavDropdown","BNavDd","fixed","print","sticky","toggleable","BNavbar","breakpointClass","xs","d-print","sticky-top","BNavProps","BNavbarNav","BNavbarBrand","BNavbarToggle","toggleState","handleStateEvt","expanded","NavbarPlugin","BNavToggle","BSpinner","POSITION_COVER","bgColor","noCenter","opacity","overlayTag","spinnerSmall","spinnerType","spinnerVariant","wrapTag","BOverlay","defaultOverlayFn","$overlay","$background","backgroundColor","backdropFilter","position-absolute","position-fixed","after-enter","after-leave","OverlayPlugin","sanitizeLimit","sanitizeCurrentPage","numberOfPages","page","onSpaceKey","ellipsisClass","ellipsisText","firstClass","firstNumber","firstText","hideEllipsis","hideGotoEndButtons","labelFirstPage","labelLastPage","labelNextPage","labelPage","labelPrevPage","lastClass","lastNumber","lastText","nextClass","nextText","pageClass","prevClass","prevText","paginationMixin","currentPage","localNumberOfPages","localLimit","btnSize","alignment","styleClass","computedCurrentPage","paginationParams","showFirstDots","showLastDots","numberOfLinks","startNumber","lastPageNumber","pageList","_this$paginationParam","pages","makePageArray","_watch$e","handleKeyNav","getButtons","btn","focusCurrent","pageNumbers","_this$paginationParam2","$buttons","isActivePage","pageNumber","noCurrentPage","makeEndBtn","linkTo","btnSlot","btnText","btnClass","pageTest","$btnContent","flex-grow-1","flex-fill","makeEllipsis","isLast","makePageButton","aria-checked","aria-posinset","aria-setsize","btnContent","makePage","$firstPageBtn","$lastPageBtn","$pagination","sanitizePerPage","sanitizeTotalRows","paginationProps","perPage","totalRows","BPagination","pageSizeNumberOfPages","clickEvt","pageNum","PaginationPlugin","baseUrl","linkGen","noPageDetect","pageGen","useRouter","BPaginationNav","computedValue","setNumberOfPages","guessCurrentPage","getPageInfo","makeLink","resolveLink","_link2","pathname","resolveRoute","route","guess","currentRoute","loc","location","currentLink","PaginationNavPlugin","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","TOPLEFT","TOPRIGHT","RIGHTTOP","RIGHTBOTTOM","BOTTOMLEFT","BOTTOMRIGHT","LEFTTOP","LEFTBOTTOM","OffsetMap","arrowPadding","boundaryPadding","fallbackPlacement","BVPopper","attachment","getAttachment","templateType","getOffset","popperPlacementChange","popperCreate","arrowOffset","renderTemplate","BVTooltipTemplate","customClass","interactive","templateClasses","noninteractive","templateAttributes","templateListeners","MODAL_SELECTOR","ROOT_EVENT_NAME_MODAL_HIDDEN","CONTAINER_SELECTOR","DATA_TITLE_ATTR","templateData","triggers","BVTooltip","activeTrigger","hover","computedId","computedTriggers","isWithActiveTrigger","computedTemplateData","newTriggers","oldTriggers","unListen","listen","handleTemplateUpdate","disable","enable","$_tip","$_hoverTimeout","$_hoverState","$_visibleInterval","$_enabled","$_noop","forceHide","setWhileOpenListeners","clearHoverTimeout","clearVisibilityInterval","destroyTemplate","getTemplate","updateData","titleUpdated","fixTitle","createTemplateAndShow","Template","$tip","getPlacementTarget","getBoundary","onTemplateShow","onTemplateShown","onTemplateHide","onTemplateHidden","handleEvent","hideTemplate","clearActiveTriggers","localPlacementTarget","removeAriaDescribedby","restoreTitle","getTemplateElement","dropdownOpen","addAriaDescribedby","tip","prevHoverState","getTargetId","isInModal","isDropdown","desc","setRootListener","doHide","doDisable","doEnable","setModalListener","setDropdownListener","visibleCheck","setOnTouchStartListener","_this8","_this9","eventTarget","_this10","_this11","MODEL_PROP_NAME_ENABLED","MODEL_EVENT_NAME_ENABLED","_makePropsConfigurabl","BTooltip","localTitle","localContent","templateTitleContent","_watch$f","$_toolpop","updateContent","doOpen","doClose","Component","getComponent","$toolpop","onHide","onDisabled","onEnabled","setTitle","setContent","BVPopoverTemplate","titleDomProps","contentDomProps","BVPopover","BTooltipProps","BPopover","BV_POPOVER","validTriggers","manual","htmlRE","noFadeRE","placementRE","boundaryRE","delayRE","delayShowRE","delayHideRE","offsetRE","variantRE","spacesRE","applyPopover","bindings","selectedTriggers","parseBindings","__bv_prev_data__","oldData","newData","VBPopoverPlugin","VBPopover","removePopover","PopoverPlugin","animated","labelHtml","showProgress","striped","BProgressBar","bvProgress","progressBarClasses","computedAnimated","computedStriped","progressBarStyles","computedProgress","computedShowProgress","computedShowValue","progressBarProps","BProgressBarProps","ProgressPlugin","BProgress","progressHeight","$childNodes","backdrop","backdropVariant","closeLabel","noCloseOnRouteChange","noHeader","noHeaderClose","noSlide","shadow","sidebarClass","renderHeader","renderHeaderTitle","$close","renderHeaderClose","renderBody","renderFooter","renderContent","renderBackdrop","onBackdropClick","SidebarPlugin","BSidebar","transitionProps","hasTitle","titleId","_watch$g","fullPath","$_returnFocusEl","handleToggle","handleSync","onTopTrapFocus","enforceFocus","onBottomTrapFocus","$sidebar","BSkeleton","iconProps","BSkeletonIcon","cardImg","noAspect","BSkeletonImg","hasListenerMixin","$listeners","$events","_events","LIGHT","DARK","BTr","bvTableTr","bvTableRowGroup","inTbody","isTbody","inThead","isThead","inTfoot","isTfoot","isDark","isStacked","isResponsive","isStickyHeader","hasStickyHeader","tableVariant","headVariant","footVariant","isRowDark","trClasses","trAttrs","bottomRowMixin","renderBottomRow","fields","computedFields","tbodyTrClass","tbodyTrAttr","parseSpan","spanValidator","colspan","rowspan","stackedHeading","stickyColumn","BTd","isStackedCell","isStickyColumn","rowVariant","computedColspan","computedRowspan","cellClasses","cellAttrs","headOrFoot","data-label","MODEL_PROP_NAME_BUSY","busyMixin","localBusy","computedBusy","stopIfBusy","renderBusy","captionMixin","captionId","renderCaption","$caption","hasCaptionSlot","colgroupMixin","renderColgroup","$colgroup","emptyFilteredHtml","emptyFilteredText","emptyHtml","emptyText","showEmpty","emptyMixin","renderEmpty","computedItems","$empty","isFiltered","stringifyObjectValues","k","FIELD_KEY_CELL_VARIANT","FIELD_KEY_ROW_VARIANT","FIELD_KEY_SHOW_DETAILS","IGNORED_FIELD_KEYS","EVENT_FILTER","sanitizeRow","row","ignoreFields","includeFields","fieldsObj","formattedRow","field","filterByFormatted","allowedKeys","filterDebounce","filterFunction","filterIgnoredFields","filterIncludedFields","filteringMixin","localFilter","filterSanitize","computedFilterIgnored","computedFilterIncluded","computedFilterDebounce","ms","localFiltering","hasProvider","noProviderFiltering","filteredCheck","filteredItems","localItems","localFilterFn","criteria","filterFn","filterFnFactory","defaultFilterFnFactory","clearFilterTimer","deep","newCriteria","timeout","regExp","pattern","lastIndex","computedFieldsObj","normalizeFields","origFields","processField","sample","primaryKey","itemsMixin","paginatedItems","sortedItems","sortBy","localSortBy","sortDesc","localSortDesc","apiUrl","getFieldFormatter","localPaging","noProviderPaging","ROOT_EVENT_NAME_REFRESHED","ROOT_ACTION_EVENT_NAME_REFRESH","noProviderSorting","providerMixin","providerTriggerContext","_providerUpdate","refresh","clearSelected","_providerSetLocal","catch","SELECT_MODES","noSelectOnClick","selectMode","selectable","selectableMixin","selectedRows","selectedLastRow","isSelectable","hasSelectableRowClick","supportsSelectableRows","selectableHasSelection","selectableIsMultiSelect","selectableTableClasses","b-table-selectable","selectableTableAttrs","aria-multiselectable","setSelectionHandlers","selectRow","isRowSelected","selectedLastClicked","unselectRow","selectAllRows","selectableRowClasses","b-table-row-selected","selectableRowAttrs","selectionHandler","stableSort","compareFn","normalizeValue","MODEL_PROP_NAME_SORT_BY","MODEL_PROP_NAME_SORT_DESC","SORT_DIRECTION_ASC","SORT_DIRECTION_DESC","SORT_DIRECTIONS","_props","labelSortAsc","labelSortClear","labelSortDesc","noFooterSorting","noLocalSorting","noSortReset","numeric","sortingMixin","localSorting","isSortable","sortable","sortCompareLocale","nullLast","sortNullLast","sortCompare","localeOptions","sortCompareOptions","usage","sortByFormatted","_ref$sortBy","_ref$formatter","_ref$locale","_ref$localeOptions","_ref$nullLast","aa","bb","localeCompare","defaultSortCompare","_watch$h","handleSort","isFoot","sortChanged","toggleLocalSortDesc","sortDirection","sortKey","sortTheadThClasses","b-table-sort-icon-left","sortIconLeft","sortTheadThAttrs","aria-sort","sortTheadThLabel","labelSorting","stackedMixin","isStackedAlways","stackedTableClasses","b-table-stacked","bordered","borderless","captionTop","noBorderCollapse","outlined","responsive","stickyHeader","tableClass","tableRendererMixin","bvTable","wrapperClasses","wrapperStyles","maxHeight","tableClasses","isTableSimple","table-striped","table-hover","table-dark","table-bordered","table-borderless","table-sm","b-table-fixed","b-table-caption-top","b-table-no-border-collapse","tableAttrs","adb","ariaAttrs","aria-colcount","aria-rowcount","renderThead","renderTbody","renderTfoot","$table","tbodyTransitionHandlers","tbodyTransitionProps","BTbody","isTransitionGroup","tbodyAttrs","tbodyProps","nativeOn","TABLE_TAG_NAMES","filterEvent","textSelectionActive","containsNode","BTdProps","BTh","detailsTdClass","tbodyRowMixin","getTdValues","tdValue","getThValues","thValue","getFormattedValue","toggleDetailsFactory","hasDetailsSlot","rowHovered","tbodyRowEvtStopped","emitTbodyRowEvent","rowUnhovered","renderTbodyRowCell","colIndex","rowIndex","isRowHeader","cellTag","cellVariant","tdClass","aria-colindex","thAttr","tdAttr","unformatted","toggleDetails","detailsShowing","rowSelected","$_bodyFieldSlotNameCache","renderTbodyRow","rowShowDetails","hasRowClickHandler","$rows","detailsId","$tds","ariaRowIndex","primaryKeyValue","rowKey","rowId","selectableClasses","selectableAttrs","userTrClasses","userTrAttrs","data-pk","aria-details","aria-rowindex","detailsScope","$details","userDetailsTrClasses","userDetailsTrAttrs","getCellSlotName","BTbodyProps","tbodyRowProps","tbodyClass","tbodyMixin","getTbodyTrs","tbody","trs","tr","getTbodyTrIndex","onTbodyRowKeydown","onTBodyRowClicked","onTbodyRowMiddleMouseRowClicked","which","onTbodyRowContextmenu","onTbodyRowDblClicked","renderTopRow","$busy","defaultSlotName","lowercaseSlotName","handlers","auxclick","contextmenu","dblclick","BTfoot","tfootClasses","tfootAttrs","footClone","footRowVariant","tfootClass","tfootTrClass","tfootMixin","renderTFootCustom","BThead","theadClasses","theadAttrs","getHeadSlotName","getFootSlotName","headRowVariant","theadClass","theadTrClass","theadMixin","fieldClasses","thClass","headClicked","hasHeadClickListener","makeCell","headerTitle","sortAttrs","sortClass","sortLabel","thStyle","abbr","headerAbbr","slotNames","column","$srLabel","$trs","topRowMixin","bottomRowProps","busyProps","captionProps","colgroupProps","emptyProps","filteringProps","itemsProps","providerProps","selectableProps","sortingProps","stackedProps","tableRendererProps","tfootProps","theadProps","BTable","BTableLite","BTableSimple","TablePlugin","TableLitePlugin","TableSimplePlugin","isPositiveNumber","showFooter","tableProps","BSkeletonTable","$th","$thTr","$td","$tdTr","$tbody","$thead","$tfoot","loading","SkeletonPlugin","BSkeletonWrapper","SpinnerPlugin","notDisabled","tab","BVTabButton","bvTabs","posInSet","setSize","handleEvt","_this$tab","localActive","titleItemClass","titleLinkClass","titleLinkAttributes","$link","activeNavItemClass","activeTabClass","card","navClass","navWrapperClass","noNavStyle","BTabs","currentTab","registeredTabs","localNavClass","_watch$i","$tab","activateTab","previousTab","nextTab","updateTabs","registerTab","unregisterTab","$t","getTabs","$tabs","_isTab","getButtonForTab","updateButton","$forceUpdate","tabEvent","deactivateTab","focusButton","emitTabClick","clickTab","firstTab","currentIndex","lastTab","$activeTab","$fallbackTab","_on","controlledBy","card-header","card-footer","col-auto","card-body","MODEL_PROP_NAME_ACTIVE","MODEL_EVENT_NAME_ACTIVE","_objectSpread2$3","TabsPlugin","BTab","tabClasses","buttonId","computedNoFade","computedLazy","_watch$j","activate","deactivate","TimePlugin","Symbol","iterator","arr2","_arrayWithoutHoles","iter","_iterableToArray","_nonIterableSpread","inBrowser","acc","VuePlugin","transports","sources","wormhole","trackInstances","open","transport","passengers","_transport$order","Infinity","newTransport","freeze","$_getTransportIndex","newTransports","registerTarget","unregisterTarget","registerSource","unregisterSource","hasTarget","hasSource","hasContentFor","_id","Portal","slim","slotProps","random","sendUpdate","clear","closer","normalizeSlots","normalizeOwnChildren","slotContent","Tag","v-portal","PortalTarget","firstRender","ownTransports","newVal","oldVal","temp","newPassengers","combinePassengers","noWrapper","vue-portal-target","_id$1","portalProps","targetProps","DefaultTransition","bail","mountTo","targetSlim","targetSlotProps","targetTag","portalTarget","mountEl","ariaAtomic","BToaster","doRender","dead","staticName","Wormhole","$toaster","b-dead-toaster","$target","appendToast","autoHideDelay","isStatus","noAutoHide","solid","toastClass","toaster","BToast","isMounted","isHiding","dismissStarted","resumeDismiss","toastClasses","b-toast-solid","b-toast-append","b-toast-prepend","computedDuration","computedToaster","transitionHandlers","_watch$k","ensureToaster","$_dismissTimer","clearDismissTimer","setHoverHandler","startDismissTimer","onPause","onUnPause","passed","onLinkClick","hiddenEvt","makeToast","$headerContent","isStatic","$toast","toastProps","toastContent","ToastPlugin","BVToastPlugin","BVToastPop","toast","BvToast","BV_TOOLTIP","noninteractiveRE","applyTooltip","VBTooltipPlugin","VBTooltip","removeTooltip","componentsPlugin","TooltipPlugin","VBHoverPlugin","VBModalPlugin","CLASS_NAME_ACTIVE","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_DROPDOWN_ITEMS","ROOT_EVENT_NAME_ACTIVATE","METHOD_POSITION","Default","throttle","DefaultType","objectToString","BVScrollSpy","$scroller","$selector","$offsets","$targets","$activeTarget","$scrollHeight","$resizeTimeout","$scrollerObserver","$targetsObserver","$config","updateConfig","unlisten","cfg","componentName","configTypes","expectedTypes","valueType","_isVue","typeCheckConfig","Name","self","scroller","getScroller","setObservers","autoMethod","methodFn","offsetBase","getScrollTop","getScrollHeight","maxScroll","getOffsetHeight","links","dropdown","setActiveState","sibling","previousElementSibling","BV_SCROLLSPY","onlyDigitsRE","applyScrollspy","BootstrapVue","directivesPlugin","VBScrollspyPlugin","VBScrollspy","dispose","removeScrollspy","VBVisiblePlugin"],"mappings":"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","sourcesContent":["var e=function(){return(e=Object.assign||function(e){for(var t,r=1,s=arguments.length;r<s;r++)for(var a in t=arguments[r])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e}).apply(this,arguments)},t={kebab:/-(\\w)/g,styleProp:/:(.*)/,styleList:/;(?![^(]*\\))/g};function r(e,t){return t?t.toUpperCase():\"\"}function s(e){for(var s,a={},c=0,o=e.split(t.styleList);c<o.length;c++){var n=o[c].split(t.styleProp),i=n[0],l=n[1];(i=i.trim())&&(\"string\"==typeof l&&(l=l.trim()),a[(s=i,s.replace(t.kebab,r))]=l)}return a}function a(){for(var t,r,a={},c=arguments.length;c--;)for(var o=0,n=Object.keys(arguments[c]);o<n.length;o++)switch(t=n[o]){case\"class\":case\"style\":case\"directives\":if(Array.isArray(a[t])||(a[t]=[]),\"style\"===t){var i=void 0;i=Array.isArray(arguments[c].style)?arguments[c].style:[arguments[c].style];for(var l=0;l<i.length;l++){var y=i[l];\"string\"==typeof y&&(i[l]=s(y))}arguments[c].style=i}a[t]=a[t].concat(arguments[c][t]);break;case\"staticClass\":if(!arguments[c][t])break;void 0===a[t]&&(a[t]=\"\"),a[t]&&(a[t]+=\" \"),a[t]+=arguments[c][t].trim();break;case\"on\":case\"nativeOn\":a[t]||(a[t]={});for(var p=0,f=Object.keys(arguments[c][t]||{});p<f.length;p++)r=f[p],a[t][r]?a[t][r]=[].concat(a[t][r],arguments[c][t][r]):a[t][r]=arguments[c][t][r];break;case\"attrs\":case\"props\":case\"domProps\":case\"scopedSlots\":case\"staticStyle\":case\"hook\":case\"transition\":a[t]||(a[t]={}),a[t]=e({},arguments[c][t],a[t]);break;case\"slot\":case\"key\":case\"ref\":case\"tag\":case\"show\":case\"keepAlive\":default:a[t]||(a[t]=arguments[c][t])}return a}export{a as mergeData};\n//# sourceMappingURL=lib.esm.js.map\n","import Vue from 'vue'\nimport { mergeData } from 'vue-functional-data-merge'\n\n// --- Constants ---\n\nconst COMPONENT_UID_KEY = '_uid'\n\nexport { COMPONENT_UID_KEY, Vue, mergeData }\n","import { Vue as OurVue } from '../vue'\nimport { HAS_WINDOW_SUPPORT, IS_JSDOM } from '../constants/env'\nimport { setConfig } from './config-set'\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 && !IS_JSDOM) {\n      warn(MULTIPLE_VUE_WARNING)\n    }\n    checkMultipleVueWarned = true\n  }\n})()\n\n/**\n * Plugin install factory function.\n * @param {object} { components, directives }\n * @returns {function} plugin install function\n */\nexport const installFactory = ({ components, directives, plugins } = {}) => {\n  const install = (Vue, config = {}) => {\n    if (install.installed) {\n      /* istanbul ignore next */\n      return\n    }\n    install.installed = true\n    checkMultipleVue(Vue)\n    setConfig(config, Vue)\n    registerComponents(Vue, components)\n    registerDirectives(Vue, directives)\n    registerPlugins(Vue, plugins)\n  }\n\n  install.installed = false\n\n  return install\n}\n\n/**\n * Plugin install factory function (no plugin config option).\n * @param {object} { components, directives }\n * @returns {function} plugin install function\n */\nexport const installFactoryNoConfig = ({ components, directives, plugins } = {}) => {\n  const install = Vue => {\n    if (install.installed) {\n      /* istanbul ignore next */\n      return\n    }\n    install.installed = true\n    checkMultipleVue(Vue)\n    registerComponents(Vue, components)\n    registerDirectives(Vue, directives)\n    registerPlugins(Vue, plugins)\n  }\n\n  install.installed = false\n\n  return install\n}\n\n/**\n * Plugin object factory function.\n * @param {object} { components, directives, plugins }\n * @returns {object} plugin install object\n */\nexport const pluginFactory = (options = {}, extend = {}) => ({\n  ...extend,\n  install: installFactory(options)\n})\n\n/**\n * Plugin object factory function (no config option).\n * @param {object} { components, directives, plugins }\n * @returns {object} plugin install object\n */\nexport const pluginFactoryNoConfig = (options = {}, extend = {}) => ({\n  ...extend,\n  install: installFactoryNoConfig(options)\n})\n\n/**\n * Load a group of plugins.\n * @param {object} Vue\n * @param {object} Plugin definitions\n */\nexport const registerPlugins = (Vue, plugins = {}) => {\n  for (const plugin in plugins) {\n    if (plugin && plugins[plugin]) {\n      Vue.use(plugins[plugin])\n    }\n  }\n}\n\n/**\n * Load a component.\n * @param {object} Vue\n * @param {string} Component name\n * @param {object} Component definition\n */\nexport const registerComponent = (Vue, name, def) => {\n  if (Vue && name && def) {\n    Vue.component(name, def)\n  }\n}\n\n/**\n * Load a group of components.\n * @param {object} Vue\n * @param {object} Object of component definitions\n */\nexport const registerComponents = (Vue, components = {}) => {\n  for (const component in components) {\n    registerComponent(Vue, component, components[component])\n  }\n}\n\n/**\n * Load a directive.\n * @param {object} Vue\n * @param {string} Directive name\n * @param {object} Directive definition\n */\nexport const registerDirective = (Vue, name, def) => {\n  if (Vue && name && def) {\n    // Ensure that any leading V is removed from the\n    // name, as Vue adds it automatically\n    Vue.directive(name.replace(/^VB/, 'B'), def)\n  }\n}\n\n/**\n * Load a group of directives.\n * @param {object} Vue\n * @param {object} Object of directive definitions\n */\nexport const registerDirectives = (Vue, directives = {}) => {\n  for (const directive in directives) {\n    registerDirective(Vue, directive, directives[directive])\n  }\n}\n\n/**\n * Install plugin if window.Vue available\n * @param {object} Plugin definition\n */\nexport const vueUse = VuePlugin => {\n  /* istanbul ignore next */\n  if (HAS_WINDOW_SUPPORT && window.Vue) {\n    window.Vue.use(VuePlugin)\n  }\n  /* istanbul ignore next */\n  if (HAS_WINDOW_SUPPORT && VuePlugin.NAME) {\n    window[VuePlugin.NAME] = VuePlugin\n  }\n}\n","export const HAS_WINDOW_SUPPORT = typeof window !== 'undefined'\nexport const HAS_DOCUMENT_SUPPORT = typeof document !== 'undefined'\nexport const HAS_NAVIGATOR_SUPPORT = typeof navigator !== 'undefined'\nexport const HAS_PROMISE_SUPPORT = typeof Promise !== 'undefined'\n/* istanbul ignore next: JSDOM always returns false */\nexport const HAS_MUTATION_OBSERVER_SUPPORT =\n  typeof MutationObserver !== 'undefined' ||\n  typeof WebKitMutationObserver !== 'undefined' ||\n  typeof MozMutationObserver !== 'undefined'\n\nexport const IS_BROWSER = HAS_WINDOW_SUPPORT && HAS_DOCUMENT_SUPPORT && HAS_NAVIGATOR_SUPPORT\n\nexport const WINDOW = HAS_WINDOW_SUPPORT ? window : {}\nexport const DOCUMENT = HAS_DOCUMENT_SUPPORT ? document : {}\nexport const NAVIGATOR = HAS_NAVIGATOR_SUPPORT ? navigator : {}\nexport const USER_AGENT = (NAVIGATOR.USER_AGENT || '').toLowerCase()\n\nexport const IS_JSDOM = USER_AGENT.indexOf('jsdom') > 0\nexport const IS_IE = /msie|trident/.test(USER_AGENT)\n\n// Determine if the browser supports the option passive for events\nexport const HAS_PASSIVE_EVENT_SUPPORT = (() => {\n  let passiveEventSupported = false\n  if (IS_BROWSER) {\n    try {\n      const options = {\n        // This function will be called when the browser\n        // attempts to access the passive property\n        get passive() {\n          /* istanbul ignore next: will never be called in JSDOM */\n          passiveEventSupported = true\n        }\n      }\n      WINDOW.addEventListener('test', options, options)\n      WINDOW.removeEventListener('test', options, options)\n    } catch {\n      /* istanbul ignore next: will never be called in JSDOM */\n      passiveEventSupported = false\n    }\n  }\n  return passiveEventSupported\n})()\n\nexport const HAS_TOUCH_SUPPORT =\n  IS_BROWSER && ('ontouchstart' in DOCUMENT.documentElement || NAVIGATOR.maxTouchPoints > 0)\n\nexport const HAS_POINTER_EVENT_SUPPORT =\n  IS_BROWSER && Boolean(WINDOW.PointerEvent || WINDOW.MSPointerEvent)\n\n/* istanbul ignore next: JSDOM only checks for 'IntersectionObserver' */\nexport const HAS_INTERACTION_OBSERVER_SUPPORT =\n  IS_BROWSER &&\n  'IntersectionObserver' in WINDOW &&\n  'IntersectionObserverEntry' in WINDOW &&\n  // Edge 15 and UC Browser lack support for `isIntersecting`\n  // but we an use `intersectionRatio > 0` instead\n  // 'isIntersecting' in window.IntersectionObserverEntry.prototype &&\n  'intersectionRatio' in WINDOW.IntersectionObserverEntry.prototype\n","export const NAME = 'BvConfig'\nexport const PROP_NAME = '$bvConfig'\n\nexport const DEFAULT_BREAKPOINT = ['xs', 'sm', 'md', 'lg', 'xl']\n","// --- General ---\n\nexport const RX_ARRAY_NOTATION = /\\[(\\d+)]/g\nexport const RX_BV_PREFIX = /^(BV?)/\nexport const RX_DIGITS = /^\\d+$/\nexport const RX_EXTENSION = /^\\..+/\nexport const RX_HASH = /^#/\nexport const RX_HASH_ID = /^#[A-Za-z]+[\\w\\-:.]*$/\nexport const RX_HTML_TAGS = /(<([^>]+)>)/gi\nexport const RX_HYPHENATE = /\\B([A-Z])/g\nexport const RX_LOWER_UPPER = /([a-z])([A-Z])/g\nexport const RX_NUMBER = /^[0-9]*\\.?[0-9]+$/\nexport const RX_PLUS = /\\+/g\nexport const RX_REGEXP_REPLACE = /[-/\\\\^$*+?.()|[\\]{}]/g\nexport const RX_SPACES = /[\\s\\uFEFF\\xA0]+/g\nexport const RX_SPACE_SPLIT = /\\s+/\nexport const RX_STAR = /\\/\\*$/\nexport const RX_START_SPACE_WORD = /(\\s|^)(\\w)/g\nexport const RX_TRIM_LEFT = /^\\s+/\nexport const RX_TRIM_RIGHT = /\\s+$/\nexport const RX_UNDERSCORE = /_/g\nexport const RX_UN_KEBAB = /-(\\w)/g\n\n// --- Date ---\n\n// Loose YYYY-MM-DD matching, ignores any appended time inforation\n// Matches '1999-12-20', '1999-1-1', '1999-01-20T22:51:49.118Z', '1999-01-02 13:00:00'\nexport const RX_DATE = /^\\d+-\\d\\d?-\\d\\d?(?:\\s|T|$)/\n\n// Used to split off the date parts of the YYYY-MM-DD string\nexport const RX_DATE_SPLIT = /-|\\s|T/\n\n// Time string RegEx (optional seconds)\nexport const RX_TIME = /^([0-1]?[0-9]|2[0-3]):[0-5]?[0-9](:[0-5]?[0-9])?$/\n\n// --- URL ---\n\n// HREFs must end with a hash followed by at least one non-hash character\nexport const RX_HREF = /^.*(#[^#]+)$/\n\nexport const RX_ENCODED_COMMA = /%2C/g\nexport const RX_ENCODE_REVERSE = /[!'()*]/g\nexport const RX_QUERY_START = /^(\\?|#|&)/\n\n// --- Aspect ---\n\nexport const RX_ASPECT = /^\\d+(\\.\\d*)?[/:]\\d+(\\.\\d*)?$/\nexport const RX_ASPECT_SEPARATOR = /[/:]/\n\n// --- Grid ---\n\nexport const RX_COL_CLASS = /^col-/\n\n// --- Icon ---\n\nexport const RX_ICON_PREFIX = /^BIcon/\n\n// --- Locale ---\n\nexport const RX_STRIP_LOCALE_MODS = /-u-.+/\n","import { HAS_WINDOW_SUPPORT, WINDOW } from './env'\n\n/* istanbul ignore next */\nexport const Element = HAS_WINDOW_SUPPORT ? WINDOW.Element : class Element extends Object {}\n\n/* istanbul ignore next */\nexport const HTMLElement = HAS_WINDOW_SUPPORT\n  ? WINDOW.HTMLElement\n  : class HTMLElement extends Element {}\n\n/* istanbul ignore next */\nexport const SVGElement = HAS_WINDOW_SUPPORT\n  ? WINDOW.SVGElement\n  : class SVGElement extends Element {}\n\n/* istanbul ignore next */\nexport const File = HAS_WINDOW_SUPPORT ? WINDOW.File : class File extends Object {}\n","import { RX_NUMBER } from '../constants/regex'\nimport { File } from '../constants/safe-types'\n\n// --- Convenience inspection utilities ---\n\nexport const toType = value => typeof value\n\nexport const toRawType = value => Object.prototype.toString.call(value).slice(8, -1)\n\nexport const toRawTypeLC = value => toRawType(value).toLowerCase()\n\nexport const isUndefined = value => value === undefined\n\nexport const isNull = value => value === null\n\nexport const isEmptyString = value => value === ''\n\nexport const isUndefinedOrNull = value => isUndefined(value) || isNull(value)\n\nexport const isUndefinedOrNullOrEmpty = value => isUndefinedOrNull(value) || isEmptyString(value)\n\nexport const isFunction = value => toType(value) === 'function'\n\nexport const isBoolean = value => toType(value) === 'boolean'\n\nexport const isString = value => toType(value) === 'string'\n\nexport const isNumber = value => toType(value) === 'number'\n\nexport const isNumeric = value => RX_NUMBER.test(String(value))\n\nexport const isPrimitive = value => isBoolean(value) || isString(value) || isNumber(value)\n\nexport const isArray = value => Array.isArray(value)\n\n// Quick object check\n// This is primarily used to tell Objects from primitive values\n// when we know the value is a JSON-compliant type\n// Note object could be a complex type like array, Date, etc.\nexport const isObject = obj => obj !== null && typeof obj === 'object'\n\n// Strict object type check\n// Only returns true for plain JavaScript objects\nexport const isPlainObject = obj => Object.prototype.toString.call(obj) === '[object Object]'\n\nexport const isDate = value => value instanceof Date\n\nexport const isEvent = value => value instanceof Event\n\nexport const isFile = value => value instanceof File\n\nexport const isRegExp = value => toRawType(value) === 'RegExp'\n\nexport const isPromise = value =>\n  !isUndefinedOrNull(value) && isFunction(value.then) && isFunction(value.catch)\n","import { isObject } from './inspect'\n\n// --- Static ---\n\nexport const assign = (...args) => Object.assign(...args)\nexport const create = (proto, optionalProps) => Object.create(proto, optionalProps)\nexport const defineProperties = (obj, props) => Object.defineProperties(obj, props)\nexport const defineProperty = (obj, prop, descriptor) =>\n  Object.defineProperty(obj, prop, descriptor)\nexport const freeze = obj => Object.freeze(obj)\nexport const getOwnPropertyNames = obj => Object.getOwnPropertyNames(obj)\nexport const getOwnPropertyDescriptor = (obj, prop) => Object.getOwnPropertyDescriptor(obj, prop)\nexport const getOwnPropertySymbols = obj => Object.getOwnPropertySymbols(obj)\nexport const getPrototypeOf = obj => Object.getPrototypeOf(obj)\nexport const is = (value1, value2) => Object.is(value1, value2)\nexport const isFrozen = obj => Object.isFrozen(obj)\nexport const keys = obj => Object.keys(obj)\n\n// --- \"Instance\" ---\n\nexport const hasOwnProperty = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop)\nexport const toString = obj => Object.prototype.toString.call(obj)\n\n// --- Utilities ---\n\n// Shallow copy an object\nexport const clone = obj => ({ ...obj })\n\n// Return a shallow copy of object with the specified properties only\n// See: https://gist.github.com/bisubus/2da8af7e801ffd813fab7ac221aa7afc\nexport const pick = (obj, props) =>\n  keys(obj)\n    .filter(key => props.indexOf(key) !== -1)\n    .reduce((result, key) => ({ ...result, [key]: obj[key] }), {})\n\n// Return a shallow copy of object with the specified properties omitted\n// See: https://gist.github.com/bisubus/2da8af7e801ffd813fab7ac221aa7afc\nexport const omit = (obj, props) =>\n  keys(obj)\n    .filter(key => props.indexOf(key) === -1)\n    .reduce((result, key) => ({ ...result, [key]: obj[key] }), {})\n\n// Merges two object deeply together\n// See: https://gist.github.com/Salakar/1d7137de9cb8b704e48a\nexport const mergeDeep = (target, source) => {\n  if (isObject(target) && isObject(source)) {\n    keys(source).forEach(key => {\n      if (isObject(source[key])) {\n        if (!target[key] || !isObject(target[key])) {\n          target[key] = source[key]\n        }\n        mergeDeep(target[key], source[key])\n      } else {\n        assign(target, { [key]: source[key] })\n      }\n    })\n  }\n  return target\n}\n\n// Returns a shallow copy of the object with keys in sorted order\nexport const sortKeys = obj =>\n  keys(obj)\n    .sort()\n    .reduce((result, key) => ({ ...result, [key]: obj[key] }), {})\n\n// Convenience method to create a read-only descriptor\nexport const readonlyDescriptor = () => ({ enumerable: true, configurable: false, writable: false })\n","import { isArray, isPlainObject } from './inspect'\nimport { keys } from './object'\n\nexport const cloneDeep = (obj, defaultValue = obj) => {\n  if (isArray(obj)) {\n    return obj.reduce((result, val) => [...result, cloneDeep(val, val)], [])\n  }\n  if (isPlainObject(obj)) {\n    return keys(obj).reduce(\n      (result, key) => ({ ...result, [key]: cloneDeep(obj[key], obj[key]) }),\n      {}\n    )\n  }\n  return defaultValue\n}\n","export const identity = x => x\n","import { RX_ARRAY_NOTATION } from '../constants/regex'\nimport { identity } from './identity'\nimport { isArray, isNull, isObject, isUndefinedOrNull } from './inspect'\n\n/**\n * Get property defined by dot/array notation in string, returns undefined if not found\n *\n * @link https://gist.github.com/jeneg/9767afdcca45601ea44930ea03e0febf#gistcomment-1935901\n *\n * @param {Object} obj\n * @param {string|Array} path\n * @return {*}\n */\nexport const getRaw = (obj, path, defaultValue = undefined) => {\n  // Handle array of path values\n  path = isArray(path) ? path.join('.') : path\n\n  // If no path or no object passed\n  if (!path || !isObject(obj)) {\n    return defaultValue\n  }\n\n  // Handle edge case where user has dot(s) in top-level item field key\n  // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2762\n  // Switched to `in` operator vs `hasOwnProperty` to handle obj.prototype getters\n  // https://github.com/bootstrap-vue/bootstrap-vue/issues/3463\n  if (path in obj) {\n    return obj[path]\n  }\n\n  // Handle string array notation (numeric indices only)\n  path = String(path).replace(RX_ARRAY_NOTATION, '.$1')\n\n  const steps = path.split('.').filter(identity)\n\n  // Handle case where someone passes a string of only dots\n  if (steps.length === 0) {\n    return defaultValue\n  }\n\n  // Traverse path in object to find result\n  // Switched to `in` operator vs `hasOwnProperty` to handle obj.prototype getters\n  // https://github.com/bootstrap-vue/bootstrap-vue/issues/3463\n  return steps.every(step => isObject(obj) && step in obj && !isUndefinedOrNull((obj = obj[step])))\n    ? obj\n    : isNull(obj)\n      ? null\n      : defaultValue\n}\n\n/**\n * Get property defined by dot/array notation in string.\n *\n * @link https://gist.github.com/jeneg/9767afdcca45601ea44930ea03e0febf#gistcomment-1935901\n *\n * @param {Object} obj\n * @param {string|Array} path\n * @param {*} defaultValue (optional)\n * @return {*}\n */\nexport const get = (obj, path, defaultValue = null) => {\n  const value = getRaw(obj, path)\n  return isUndefinedOrNull(value) ? defaultValue : value\n}\n","/**\n * Utilities to get information about the current environment\n */\n\nexport const getEnv = (key, fallback = null) => {\n  const env = typeof process !== 'undefined' && process ? process.env || {} : {}\n  if (!key) {\n    /* istanbul ignore next */\n    return env\n  }\n  return env[key] || fallback\n}\n\nexport const getNoWarn = () =>\n  getEnv('BOOTSTRAP_VUE_NO_WARN') || getEnv('NODE_ENV') === 'production'\n","import { IS_BROWSER, HAS_PROMISE_SUPPORT, HAS_MUTATION_OBSERVER_SUPPORT } from '../constants/env'\nimport { getNoWarn } from './env'\n\n/**\n * Log a warning message to the console with BootstrapVue formatting\n * @param {string} message\n */\nexport const warn = (message, source = null) => /* istanbul ignore next */ {\n  if (!getNoWarn()) {\n    console.warn(`[BootstrapVue warn]: ${source ? `${source} - ` : ''}${message}`)\n  }\n}\n\n/**\n * Warn when no Promise support is given\n * @param {string} source\n * @returns {boolean} warned\n */\nexport const warnNotClient = source => {\n  /* istanbul ignore else */\n  if (IS_BROWSER) {\n    return false\n  } else {\n    warn(`${source}: Can not be called during SSR.`)\n    return true\n  }\n}\n\n/**\n * Warn when no Promise support is given\n * @param {string} source\n * @returns {boolean} warned\n */\nexport const warnNoPromiseSupport = source => {\n  /* istanbul ignore else */\n  if (HAS_PROMISE_SUPPORT) {\n    return false\n  } else {\n    warn(`${source}: Requires Promise support.`)\n    return true\n  }\n}\n\n/**\n * Warn when no MutationObserver support is given\n * @param {string} source\n * @returns {boolean} warned\n */\nexport const warnNoMutationObserverSupport = source => {\n  /* istanbul ignore else */\n  if (HAS_MUTATION_OBSERVER_SUPPORT) {\n    return false\n  } else {\n    warn(`${source}: Requires MutationObserver support.`)\n    return true\n  }\n}\n","import { Vue as OurVue } from '../vue'\nimport { NAME, PROP_NAME } from '../constants/config'\nimport { cloneDeep } from './clone-deep'\nimport { getRaw } from './get'\nimport { isArray, isPlainObject, isString, isUndefined } from './inspect'\nimport { getOwnPropertyNames } from './object'\nimport { warn } from './warn'\n\n// Config manager class\nclass BvConfig {\n  constructor() {\n    this.$_config = {}\n  }\n\n  // Method to merge in user config parameters\n  setConfig(config = {}) {\n    /* istanbul ignore next */\n    if (!isPlainObject(config)) {\n      return\n    }\n    const configKeys = getOwnPropertyNames(config)\n    configKeys.forEach(key => {\n      /* istanbul ignore next */\n      const subConfig = config[key]\n      if (key === 'breakpoints') {\n        /* istanbul ignore if */\n        if (\n          !isArray(subConfig) ||\n          subConfig.length < 2 ||\n          subConfig.some(b => !isString(b) || b.length === 0)\n        ) {\n          warn('\"breakpoints\" must be an array of at least 2 breakpoint names', NAME)\n        } else {\n          this.$_config[key] = cloneDeep(subConfig)\n        }\n      } else if (isPlainObject(subConfig)) {\n        // Component prop defaults\n        this.$_config[key] = getOwnPropertyNames(subConfig).reduce((config, prop) => {\n          if (!isUndefined(subConfig[prop])) {\n            config[prop] = cloneDeep(subConfig[prop])\n          }\n          return config\n        }, this.$_config[key] || {})\n      }\n    })\n  }\n\n  // Clear the config\n  resetConfig() {\n    this.$_config = {}\n  }\n\n  // Returns a deep copy of the user config\n  getConfig() {\n    return cloneDeep(this.$_config)\n  }\n\n  // Returns a deep copy of the config value\n  getConfigValue(key, defaultValue = undefined) {\n    return cloneDeep(getRaw(this.$_config, key, defaultValue))\n  }\n}\n\n// Method for applying a global config\nexport const setConfig = (config = {}, Vue = OurVue) => {\n  // Ensure we have a `$bvConfig` Object on the Vue prototype\n  // We set on Vue and OurVue just in case consumer has not set an alias of `vue`\n  Vue.prototype[PROP_NAME] = OurVue.prototype[PROP_NAME] =\n    Vue.prototype[PROP_NAME] || OurVue.prototype[PROP_NAME] || new BvConfig()\n  // Apply the config values\n  Vue.prototype[PROP_NAME].setConfig(config)\n}\n\n// Method for resetting the user config\n// Exported for testing purposes only\nexport const resetConfig = () => {\n  if (OurVue.prototype[PROP_NAME] && OurVue.prototype[PROP_NAME].resetConfig) {\n    OurVue.prototype[PROP_NAME].resetConfig()\n  }\n}\n","// Component names\nexport const NAME_ALERT = 'BAlert'\nexport const NAME_ASPECT = 'BAspect'\nexport const NAME_AVATAR = 'BAvatar'\nexport const NAME_AVATAR_GROUP = 'BAvatarGroup'\nexport const NAME_BADGE = 'BBadge'\nexport const NAME_BREADCRUMB = 'BBreadcrumb'\nexport const NAME_BREADCRUMB_ITEM = 'BBreadcrumbItem'\nexport const NAME_BREADCRUMB_LINK = 'BBreadcrumbLink'\nexport const NAME_BUTTON = 'BButton'\nexport const NAME_BUTTON_CLOSE = 'BButtonClose'\nexport const NAME_BUTTON_GROUP = 'BButtonGroup'\nexport const NAME_BUTTON_TOOLBAR = 'BButtonToolbar'\nexport const NAME_CALENDAR = 'BCalendar'\nexport const NAME_CARD = 'BCard'\nexport const NAME_CARD_BODY = 'BCardBody'\nexport const NAME_CARD_FOOTER = 'BCardFooter'\nexport const NAME_CARD_GROUP = 'BCardGroup'\nexport const NAME_CARD_HEADER = 'BCardHeader'\nexport const NAME_CARD_IMG = 'BCardImg'\nexport const NAME_CARD_IMG_LAZY = 'BCardImgLazy'\nexport const NAME_CARD_SUB_TITLE = 'BCardSubTitle'\nexport const NAME_CARD_TEXT = 'BCardText'\nexport const NAME_CARD_TITLE = 'BCardTitle'\nexport const NAME_CAROUSEL = 'BCarousel'\nexport const NAME_CAROUSEL_SLIDE = 'BCarouselSlide'\nexport const NAME_COL = 'BCol'\nexport const NAME_COLLAPSE = 'BCollapse'\nexport const NAME_CONTAINER = 'BContainer'\nexport const NAME_DROPDOWN = 'BDropdown'\nexport const NAME_DROPDOWN_DIVIDER = 'BDropdownDivider'\nexport const NAME_DROPDOWN_FORM = 'BDropdownForm'\nexport const NAME_DROPDOWN_GROUP = 'BDropdownGroup'\nexport const NAME_DROPDOWN_HEADER = 'BDropdownHeader'\nexport const NAME_DROPDOWN_ITEM = 'BDropdownItem'\nexport const NAME_DROPDOWN_ITEM_BUTTON = 'BDropdownItemButton'\nexport const NAME_DROPDOWN_TEXT = 'BDropdownText'\nexport const NAME_EMBED = 'BEmbed'\nexport const NAME_FORM = 'BForm'\nexport const NAME_FORM_CHECKBOX = 'BFormCheckbox'\nexport const NAME_FORM_CHECKBOX_GROUP = 'BFormCheckboxGroup'\nexport const NAME_FORM_DATALIST = 'BFormDatalist'\nexport const NAME_FORM_DATEPICKER = 'BFormDatepicker'\nexport const NAME_FORM_FILE = 'BFormFile'\nexport const NAME_FORM_GROUP = 'BFormGroup'\nexport const NAME_FORM_INPUT = 'BFormInput'\nexport const NAME_FORM_INVALID_FEEDBACK = 'BFormInvalidFeedback'\nexport const NAME_FORM_RADIO = 'BFormRadio'\nexport const NAME_FORM_RADIO_GROUP = 'BFormRadioGroup'\nexport const NAME_FORM_RATING = 'BFormRating'\nexport const NAME_FORM_ROW = 'BFormRow'\nexport const NAME_FORM_SELECT = 'BFormSelect'\nexport const NAME_FORM_SELECT_OPTION = 'BFormSelectOption'\nexport const NAME_FORM_SELECT_OPTION_GROUP = 'BFormSelectOptionGroup'\nexport const NAME_FORM_SPINBUTTON = 'BFormSpinbutton'\nexport const NAME_FORM_TAG = 'BFormTag'\nexport const NAME_FORM_TAGS = 'BFormTags'\nexport const NAME_FORM_TEXT = 'BFormText'\nexport const NAME_FORM_TEXTAREA = 'BFormTextarea'\nexport const NAME_FORM_TIMEPICKER = 'BFormTimepicker'\nexport const NAME_FORM_VALID_FEEDBACK = 'BFormValidFeedback'\nexport const NAME_ICON = 'BIcon'\nexport const NAME_ICONSTACK = 'BIconstack'\nexport const NAME_ICON_BASE = 'BIconBase'\nexport const NAME_IMG = 'BImg'\nexport const NAME_IMG_LAZY = 'BImgLazy'\nexport const NAME_INPUT_GROUP = 'BInputGroup'\nexport const NAME_INPUT_GROUP_ADDON = 'BInputGroupAddon'\nexport const NAME_INPUT_GROUP_APPEND = 'BInputGroupAppend'\nexport const NAME_INPUT_GROUP_PREPEND = 'BInputGroupPrepend'\nexport const NAME_INPUT_GROUP_TEXT = 'BInputGroupText'\nexport const NAME_JUMBOTRON = 'BJumbotron'\nexport const NAME_LINK = 'BLink'\nexport const NAME_LIST_GROUP = 'BListGroup'\nexport const NAME_LIST_GROUP_ITEM = 'BListGroupItem'\nexport const NAME_MEDIA = 'BMedia'\nexport const NAME_MEDIA_ASIDE = 'BMediaAside'\nexport const NAME_MEDIA_BODY = 'BMediaBody'\nexport const NAME_MODAL = 'BModal'\nexport const NAME_MSG_BOX = 'BMsgBox'\nexport const NAME_NAV = 'BNav'\nexport const NAME_NAVBAR = 'BNavbar'\nexport const NAME_NAVBAR_BRAND = 'BNavbarBrand'\nexport const NAME_NAVBAR_NAV = 'BNavbarNav'\nexport const NAME_NAVBAR_TOGGLE = 'BNavbarToggle'\nexport const NAME_NAV_FORM = 'BNavForm'\nexport const NAME_NAV_ITEM = 'BNavItem'\nexport const NAME_NAV_ITEM_DROPDOWN = 'BNavItemDropdown'\nexport const NAME_NAV_TEXT = 'BNavText'\nexport const NAME_OVERLAY = 'BOverlay'\nexport const NAME_PAGINATION = 'BPagination'\nexport const NAME_PAGINATION_NAV = 'BPaginationNav'\nexport const NAME_POPOVER = 'BPopover'\nexport const NAME_PROGRESS = 'BProgress'\nexport const NAME_PROGRESS_BAR = 'BProgressBar'\nexport const NAME_ROW = 'BRow'\nexport const NAME_SIDEBAR = 'BSidebar'\nexport const NAME_SKELETON = 'BSkeleton'\nexport const NAME_SKELETON_ICON = 'BSkeletonIcon'\nexport const NAME_SKELETON_IMG = 'BSkeletonImg'\nexport const NAME_SKELETON_TABLE = 'BSkeletonTable'\nexport const NAME_SKELETON_WRAPPER = 'BSkeletonWrapper'\nexport const NAME_SPINNER = 'BSpinner'\nexport const NAME_TAB = 'BTab'\nexport const NAME_TABLE = 'BTable'\nexport const NAME_TABLE_CELL = 'BTableCell'\nexport const NAME_TABLE_LITE = 'BTableLite'\nexport const NAME_TABLE_SIMPLE = 'BTableSimple'\nexport const NAME_TABS = 'BTabs'\nexport const NAME_TBODY = 'BTbody'\nexport const NAME_TFOOT = 'BTfoot'\nexport const NAME_TH = 'BTh'\nexport const NAME_THEAD = 'BThead'\nexport const NAME_TIME = 'BTime'\nexport const NAME_TOAST = 'BToast'\nexport const NAME_TOASTER = 'BToaster'\nexport const NAME_TOOLTIP = 'BTooltip'\nexport const NAME_TR = 'BTr'\n\n// Helper component names\nexport const NAME_COLLAPSE_HELPER = 'BVCollapse'\nexport const NAME_FORM_BUTTON_LABEL_CONTROL = 'BVFormBtnLabelControl'\nexport const NAME_FORM_RATING_STAR = 'BVFormRatingStar'\nexport const NAME_POPOVER_HELPER = 'BVPopover'\nexport const NAME_POPOVER_TEMPLATE = 'BVPopoverTemplate'\nexport const NAME_POPPER = 'BVPopper'\nexport const NAME_TAB_BUTTON_HELPER = 'BVTabButton'\nexport const NAME_TOAST_POP = 'BVToastPop'\nexport const NAME_TOOLTIP_HELPER = 'BVTooltip'\nexport const NAME_TOOLTIP_TEMPLATE = 'BVTooltipTemplate'\nexport const NAME_TRANSITION = 'BVTransition'\nexport const NAME_TRANSPORTER = 'BVTransporter'\nexport const NAME_TRANSPORTER_TARGET = 'BVTransporterTarget'\n","export const EVENT_NAME_ACTIVATE_TAB = 'activate-tab'\nexport const EVENT_NAME_BLUR = 'blur'\nexport const EVENT_NAME_CANCEL = 'cancel'\nexport const EVENT_NAME_CHANGE = 'change'\nexport const EVENT_NAME_CHANGED = 'changed'\nexport const EVENT_NAME_CLICK = 'click'\nexport const EVENT_NAME_CLOSE = 'close'\nexport const EVENT_NAME_CONTEXT = 'context'\nexport const EVENT_NAME_CONTEXT_CHANGED = 'context-changed'\nexport const EVENT_NAME_DESTROYED = 'destroyed'\nexport const EVENT_NAME_DISABLE = 'disable'\nexport const EVENT_NAME_DISABLED = 'disabled'\nexport const EVENT_NAME_DISMISSED = 'dismissed'\nexport const EVENT_NAME_DISMISS_COUNT_DOWN = 'dismiss-count-down'\nexport const EVENT_NAME_ENABLE = 'enable'\nexport const EVENT_NAME_ENABLED = 'enabled'\nexport const EVENT_NAME_FILTERED = 'filtered'\nexport const EVENT_NAME_FIRST = 'first'\nexport const EVENT_NAME_FOCUSIN = 'focusin'\nexport const EVENT_NAME_FOCUSOUT = 'focusout'\nexport const EVENT_NAME_HEAD_CLICKED = 'head-clicked'\nexport const EVENT_NAME_HIDDEN = 'hidden'\nexport const EVENT_NAME_HIDE = 'hide'\nexport const EVENT_NAME_IMG_ERROR = 'img-error'\nexport const EVENT_NAME_INPUT = 'input'\nexport const EVENT_NAME_LAST = 'last'\nexport const EVENT_NAME_MOUSEENTER = 'mouseenter'\nexport const EVENT_NAME_MOUSELEAVE = 'mouseleave'\nexport const EVENT_NAME_NEXT = 'next'\nexport const EVENT_NAME_OK = 'ok'\nexport const EVENT_NAME_OPEN = 'open'\nexport const EVENT_NAME_PAGE_CLICK = 'page-click'\nexport const EVENT_NAME_PAUSED = 'paused'\nexport const EVENT_NAME_PREV = 'prev'\nexport const EVENT_NAME_REFRESH = 'refresh'\nexport const EVENT_NAME_REFRESHED = 'refreshed'\nexport const EVENT_NAME_REMOVE = 'remove'\nexport const EVENT_NAME_ROW_CLICKED = 'row-clicked'\nexport const EVENT_NAME_ROW_CONTEXTMENU = 'row-contextmenu'\nexport const EVENT_NAME_ROW_DBLCLICKED = 'row-dblclicked'\nexport const EVENT_NAME_ROW_HOVERED = 'row-hovered'\nexport const EVENT_NAME_ROW_MIDDLE_CLICKED = 'row-middle-clicked'\nexport const EVENT_NAME_ROW_SELECTED = 'row-selected'\nexport const EVENT_NAME_ROW_UNHOVERED = 'row-unhovered'\nexport const EVENT_NAME_SELECTED = 'selected'\nexport const EVENT_NAME_SHOW = 'show'\nexport const EVENT_NAME_SHOWN = 'shown'\nexport const EVENT_NAME_SLIDING_END = 'sliding-end'\nexport const EVENT_NAME_SLIDING_START = 'sliding-start'\nexport const EVENT_NAME_SORT_CHANGED = 'sort-changed'\nexport const EVENT_NAME_TAG_STATE = 'tag-state'\nexport const EVENT_NAME_TOGGLE = 'toggle'\nexport const EVENT_NAME_UNPAUSED = 'unpaused'\nexport const EVENT_NAME_UPDATE = 'update'\n\nexport const HOOK_EVENT_NAME_BEFORE_DESTROY = 'hook:beforeDestroy'\nexport const HOOK_EVENT_NAME_DESTROYED = 'hook:destroyed'\n\nexport const MODEL_EVENT_NAME_PREFIX = 'update:'\n\nexport const ROOT_EVENT_NAME_PREFIX = 'bv'\nexport const ROOT_EVENT_NAME_SEPARATOR = '::'\n\nexport const EVENT_OPTIONS_PASSIVE = { passive: true }\nexport const EVENT_OPTIONS_NO_CAPTURE = { passive: true, capture: false }\n","// General types\nexport const PROP_TYPE_ANY = undefined\nexport const PROP_TYPE_ARRAY = Array\nexport const PROP_TYPE_BOOLEAN = Boolean\nexport const PROP_TYPE_DATE = Date\nexport const PROP_TYPE_FUNCTION = Function\nexport const PROP_TYPE_NUMBER = Number\nexport const PROP_TYPE_OBJECT = Object\nexport const PROP_TYPE_REG_EXP = RegExp\nexport const PROP_TYPE_STRING = String\n\n// Multiple types\nexport const PROP_TYPE_ARRAY_FUNCTION = [PROP_TYPE_ARRAY, PROP_TYPE_FUNCTION]\nexport const PROP_TYPE_ARRAY_OBJECT = [PROP_TYPE_ARRAY, PROP_TYPE_OBJECT]\nexport const PROP_TYPE_ARRAY_OBJECT_STRING = [PROP_TYPE_ARRAY, PROP_TYPE_OBJECT, PROP_TYPE_STRING]\nexport const PROP_TYPE_ARRAY_STRING = [PROP_TYPE_ARRAY, PROP_TYPE_STRING]\nexport const PROP_TYPE_BOOLEAN_NUMBER = [PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER]\nexport const PROP_TYPE_BOOLEAN_NUMBER_STRING = [\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_NUMBER,\n  PROP_TYPE_STRING\n]\nexport const PROP_TYPE_BOOLEAN_STRING = [PROP_TYPE_BOOLEAN, PROP_TYPE_STRING]\nexport const PROP_TYPE_DATE_STRING = [PROP_TYPE_DATE, PROP_TYPE_STRING]\nexport const PROP_TYPE_FUNCTION_STRING = [PROP_TYPE_FUNCTION, PROP_TYPE_STRING]\nexport const PROP_TYPE_NUMBER_STRING = [PROP_TYPE_NUMBER, PROP_TYPE_STRING]\nexport const PROP_TYPE_NUMBER_OBJECT_STRING = [PROP_TYPE_NUMBER, PROP_TYPE_OBJECT, PROP_TYPE_STRING]\nexport const PROP_TYPE_OBJECT_FUNCTION = [PROP_TYPE_OBJECT, PROP_TYPE_FUNCTION]\nexport const PROP_TYPE_OBJECT_STRING = [PROP_TYPE_OBJECT, PROP_TYPE_STRING]\n","export const SLOT_NAME_ADD_BUTTON_TEXT = 'add-button-text'\nexport const SLOT_NAME_APPEND = 'append'\nexport const SLOT_NAME_ASIDE = 'aside'\nexport const SLOT_NAME_BADGE = 'badge'\nexport const SLOT_NAME_BOTTOM_ROW = 'bottom-row'\nexport const SLOT_NAME_BUTTON_CONTENT = 'button-content'\nexport const SLOT_NAME_CUSTOM_FOOT = 'custom-foot'\nexport const SLOT_NAME_DECREMENT = 'decrement'\nexport const SLOT_NAME_DEFAULT = 'default'\nexport const SLOT_NAME_DESCRIPTION = 'description'\nexport const SLOT_NAME_DISMISS = 'dismiss'\nexport const SLOT_NAME_DROP_PLACEHOLDER = 'drop-placeholder'\nexport const SLOT_NAME_ELLIPSIS_TEXT = 'ellipsis-text'\nexport const SLOT_NAME_EMPTY = 'empty'\nexport const SLOT_NAME_EMPTYFILTERED = 'emptyfiltered'\nexport const SLOT_NAME_FILE_NAME = 'file-name'\nexport const SLOT_NAME_FIRST = 'first'\nexport const SLOT_NAME_FIRST_TEXT = 'first-text'\nexport const SLOT_NAME_FOOTER = 'footer'\nexport const SLOT_NAME_HEADER = 'header'\nexport const SLOT_NAME_HEADER_CLOSE = 'header-close'\nexport const SLOT_NAME_ICON_CLEAR = 'icon-clear'\nexport const SLOT_NAME_ICON_EMPTY = 'icon-empty'\nexport const SLOT_NAME_ICON_FULL = 'icon-full'\nexport const SLOT_NAME_ICON_HALF = 'icon-half'\nexport const SLOT_NAME_IMG = 'img'\nexport const SLOT_NAME_INCREMENT = 'increment'\nexport const SLOT_NAME_INVALID_FEEDBACK = 'invalid-feedback'\nexport const SLOT_NAME_LABEL = 'label'\nexport const SLOT_NAME_LAST_TEXT = 'last-text'\nexport const SLOT_NAME_LEAD = 'lead'\nexport const SLOT_NAME_LOADING = 'loading'\nexport const SLOT_NAME_MODAL_BACKDROP = 'modal-backdrop'\nexport const SLOT_NAME_MODAL_CANCEL = 'modal-cancel'\nexport const SLOT_NAME_MODAL_FOOTER = 'modal-footer'\nexport const SLOT_NAME_MODAL_HEADER = 'modal-header'\nexport const SLOT_NAME_MODAL_HEADER_CLOSE = 'modal-header-close'\nexport const SLOT_NAME_MODAL_OK = 'modal-ok'\nexport const SLOT_NAME_MODAL_TITLE = 'modal-title'\nexport const SLOT_NAME_NAV_NEXT_DECADE = 'nav-next-decade'\nexport const SLOT_NAME_NAV_NEXT_MONTH = 'nav-next-month'\nexport const SLOT_NAME_NAV_NEXT_YEAR = 'nav-next-year'\nexport const SLOT_NAME_NAV_PEV_DECADE = 'nav-prev-decade'\nexport const SLOT_NAME_NAV_PEV_MONTH = 'nav-prev-month'\nexport const SLOT_NAME_NAV_PEV_YEAR = 'nav-prev-year'\nexport const SLOT_NAME_NAV_THIS_MONTH = 'nav-this-month'\nexport const SLOT_NAME_NEXT_TEXT = 'next-text'\nexport const SLOT_NAME_OVERLAY = 'overlay'\nexport const SLOT_NAME_PAGE = 'page'\nexport const SLOT_NAME_PLACEHOLDER = 'placeholder'\nexport const SLOT_NAME_PREPEND = 'prepend'\nexport const SLOT_NAME_PREV_TEXT = 'prev-text'\nexport const SLOT_NAME_ROW_DETAILS = 'row-details'\nexport const SLOT_NAME_TABLE_BUSY = 'table-busy'\nexport const SLOT_NAME_TABLE_CAPTION = 'table-caption'\nexport const SLOT_NAME_TABLE_COLGROUP = 'table-colgroup'\nexport const SLOT_NAME_TABS_END = 'tabs-end'\nexport const SLOT_NAME_TABS_START = 'tabs-start'\nexport const SLOT_NAME_TEXT = 'text'\nexport const SLOT_NAME_THEAD_TOP = 'thead-top'\nexport const SLOT_NAME_TITLE = 'title'\nexport const SLOT_NAME_TOAST_TITLE = 'toast-title'\nexport const SLOT_NAME_TOP_ROW = 'top-row'\nexport const SLOT_NAME_VALID_FEEDBACK = 'valid-feedback'\n","import { isFunction } from './inspect'\n\n// --- Static ---\n\nexport const from = (...args) => Array.from(...args)\n\n// --- Instance ---\n\nexport const arrayIncludes = (array, value) => array.indexOf(value) !== -1\nexport const concat = (...args) => Array.prototype.concat.apply([], args)\n\n// --- Utilities ---\n\nexport const createArray = (length, fillFn) => {\n  const mapFn = isFunction(fillFn) ? fillFn : () => fillFn\n  return Array.apply(null, { length }).map(mapFn)\n}\n\nexport const flatten = array => array.reduce((result, item) => concat(result, item), [])\n\nexport const flattenDeep = array =>\n  array.reduce((result, item) => concat(result, Array.isArray(item) ? flattenDeep(item) : item), [])\n","// Number utilities\n\n// Converts a value (string, number, etc.) to an integer number\n// Assumes radix base 10\nexport const toInteger = (value, defaultValue = NaN) => {\n  const integer = parseInt(value, 10)\n  return isNaN(integer) ? defaultValue : integer\n}\n\n// Converts a value (string, number, etc.) to a number\nexport const toFloat = (value, defaultValue = NaN) => {\n  const float = parseFloat(value)\n  return isNaN(float) ? defaultValue : float\n}\n\n// Converts a value (string, number, etc.) to a string\n// representation with `precision` digits after the decimal\n// Returns the string 'NaN' if the value cannot be converted\nexport const toFixed = (val, precision) => toFloat(val).toFixed(toInteger(precision, 0))\n","// String utilities\nimport {\n  RX_HYPHENATE,\n  RX_LOWER_UPPER,\n  RX_REGEXP_REPLACE,\n  RX_START_SPACE_WORD,\n  RX_TRIM_LEFT,\n  RX_TRIM_RIGHT,\n  RX_UNDERSCORE,\n  RX_UN_KEBAB\n} from '../constants/regex'\nimport { isArray, isPlainObject, isString, isUndefinedOrNull } from './inspect'\n\n// --- Utilities ---\n\n// Converts PascalCase or camelCase to kebab-case\nexport const kebabCase = str => {\n  return str.replace(RX_HYPHENATE, '-$1').toLowerCase()\n}\n\n// Converts a kebab-case or camelCase string to PascalCase\nexport const pascalCase = str => {\n  str = kebabCase(str).replace(RX_UN_KEBAB, (_, c) => (c ? c.toUpperCase() : ''))\n  return str.charAt(0).toUpperCase() + str.slice(1)\n}\n\n// Converts a string, including strings in camelCase or snake_case, into Start Case\n// It keeps original single quote and hyphen in the word\n// https://github.com/UrbanCompass/to-start-case\nexport const startCase = str =>\n  str\n    .replace(RX_UNDERSCORE, ' ')\n    .replace(RX_LOWER_UPPER, (str, $1, $2) => $1 + ' ' + $2)\n    .replace(RX_START_SPACE_WORD, (str, $1, $2) => $1 + $2.toUpperCase())\n\n// Lowercases the first letter of a string and returns a new string\nexport const lowerFirst = str => {\n  str = isString(str) ? str.trim() : String(str)\n  return str.charAt(0).toLowerCase() + str.slice(1)\n}\n\n// Uppercases the first letter of a string and returns a new string\nexport const upperFirst = str => {\n  str = isString(str) ? str.trim() : String(str)\n  return str.charAt(0).toUpperCase() + str.slice(1)\n}\n\n// Escape characters to be used in building a regular expression\nexport const escapeRegExp = str => str.replace(RX_REGEXP_REPLACE, '\\\\$&')\n\n// Convert a value to a string that can be rendered\n// `undefined`/`null` will be converted to `''`\n// Plain objects and arrays will be JSON stringified\nexport const toString = (val, spaces = 2) => {\n  return isUndefinedOrNull(val)\n    ? ''\n    : isArray(val) || (isPlainObject(val) && val.toString === Object.prototype.toString)\n      ? JSON.stringify(val, null, spaces)\n      : String(val)\n}\n\n// Remove leading white space from a string\nexport const trimLeft = str => toString(str).replace(RX_TRIM_LEFT, '')\n\n// Remove Trailing white space from a string\nexport const trimRight = str => toString(str).replace(RX_TRIM_RIGHT, '')\n\n// Remove leading and trailing white space from a string\nexport const trim = str => toString(str).trim()\n\n// Lower case a string\nexport const lowerCase = str => toString(str).toLowerCase()\n\n// Upper case a string\nexport const upperCase = str => toString(str).toUpperCase()\n","import { DOCUMENT, WINDOW } from '../constants/env'\nimport { Element } from '../constants/safe-types'\nimport { from as arrayFrom } from './array'\nimport { isFunction, isNull } from './inspect'\nimport { toFloat } from './number'\nimport { toString } from './string'\n\n// --- Constants ---\n\nconst ELEMENT_PROTO = Element.prototype\n\nconst TABABLE_SELECTOR = [\n  'button',\n  '[href]:not(.disabled)',\n  'input',\n  'select',\n  'textarea',\n  '[tabindex]',\n  '[contenteditable]'\n]\n  .map(s => `${s}:not(:disabled):not([disabled])`)\n  .join(', ')\n\n// --- Normalization utils ---\n\n// See: https://developer.mozilla.org/en-US/docs/Web/API/Element/matches#Polyfill\n/* istanbul ignore next */\nexport const matchesEl =\n  ELEMENT_PROTO.matches || ELEMENT_PROTO.msMatchesSelector || ELEMENT_PROTO.webkitMatchesSelector\n\n// See: https://developer.mozilla.org/en-US/docs/Web/API/Element/closest\n/* istanbul ignore next */\nexport const closestEl =\n  ELEMENT_PROTO.closest ||\n  function(sel) {\n    let el = this\n    do {\n      // Use our \"patched\" matches function\n      if (matches(el, sel)) {\n        return el\n      }\n      el = el.parentElement || el.parentNode\n    } while (!isNull(el) && el.nodeType === Node.ELEMENT_NODE)\n    return null\n  }\n\n// `requestAnimationFrame()` convenience method\n/* istanbul ignore next: JSDOM always returns the first option */\nexport const requestAF =\n  WINDOW.requestAnimationFrame ||\n  WINDOW.webkitRequestAnimationFrame ||\n  WINDOW.mozRequestAnimationFrame ||\n  WINDOW.msRequestAnimationFrame ||\n  WINDOW.oRequestAnimationFrame ||\n  // Fallback, but not a true polyfill\n  // Only needed for Opera Mini\n  /* istanbul ignore next */\n  (cb => setTimeout(cb, 16))\n\nexport const MutationObs =\n  WINDOW.MutationObserver || WINDOW.WebKitMutationObserver || WINDOW.MozMutationObserver || null\n\n// --- Utils ---\n\n// Remove a node from DOM\nexport const removeNode = el => el && el.parentNode && el.parentNode.removeChild(el)\n\n// Determine if an element is an HTML element\nexport const isElement = el => !!(el && el.nodeType === Node.ELEMENT_NODE)\n\n// Get the currently active HTML element\nexport const getActiveElement = (excludes = []) => {\n  const { activeElement } = DOCUMENT\n  return activeElement && !excludes.some(el => el === activeElement) ? activeElement : null\n}\n\n// Returns `true` if a tag's name equals `name`\nexport const isTag = (tag, name) => toString(tag).toLowerCase() === toString(name).toLowerCase()\n\n// Determine if an HTML element is the currently active element\nexport const isActiveElement = el => isElement(el) && el === getActiveElement()\n\n// Determine if an HTML element is visible - Faster than CSS check\nexport const isVisible = el => {\n  if (!isElement(el) || !el.parentNode || !contains(DOCUMENT.body, el)) {\n    // Note this can fail for shadow dom elements since they\n    // are not a direct descendant of document.body\n    return false\n  }\n  if (getStyle(el, 'display') === 'none') {\n    // We do this check to help with vue-test-utils when using v-show\n    /* istanbul ignore next */\n    return false\n  }\n  // All browsers support getBoundingClientRect(), except JSDOM as it returns all 0's for values :(\n  // So any tests that need isVisible will fail in JSDOM\n  // Except when we override the getBCR prototype in some tests\n  const bcr = getBCR(el)\n  return !!(bcr && bcr.height > 0 && bcr.width > 0)\n}\n\n// Determine if an element is disabled\nexport const isDisabled = el =>\n  !isElement(el) || el.disabled || hasAttr(el, 'disabled') || hasClass(el, 'disabled')\n\n// Cause/wait-for an element to reflow its content (adjusting its height/width)\nexport const reflow = el => {\n  // Requesting an elements offsetHight will trigger a reflow of the element content\n  /* istanbul ignore next: reflow doesn't happen in JSDOM */\n  return isElement(el) && el.offsetHeight\n}\n\n// Select all elements matching selector. Returns `[]` if none found\nexport const selectAll = (selector, root) =>\n  arrayFrom((isElement(root) ? root : DOCUMENT).querySelectorAll(selector))\n\n// Select a single element, returns `null` if not found\nexport const select = (selector, root) =>\n  (isElement(root) ? root : DOCUMENT).querySelector(selector) || null\n\n// Determine if an element matches a selector\nexport const matches = (el, selector) => (isElement(el) ? matchesEl.call(el, selector) : false)\n\n// Finds closest element matching selector. Returns `null` if not found\nexport const closest = (selector, root, includeRoot = false) => {\n  if (!isElement(root)) {\n    return null\n  }\n  const el = closestEl.call(root, selector)\n\n  // Native closest behaviour when `includeRoot` is truthy,\n  // else emulate jQuery closest and return `null` if match is\n  // the passed in root element when `includeRoot` is falsey\n  return includeRoot ? el : el === root ? null : el\n}\n\n// Returns true if the parent element contains the child element\nexport const contains = (parent, child) =>\n  parent && isFunction(parent.contains) ? parent.contains(child) : false\n\n// Get an element given an ID\nexport const getById = id => DOCUMENT.getElementById(/^#/.test(id) ? id.slice(1) : id) || null\n\n// Add a class to an element\nexport const addClass = (el, className) => {\n  // We are checking for `el.classList` existence here since IE 11\n  // returns `undefined` for some elements (e.g. SVG elements)\n  // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2713\n  if (className && isElement(el) && el.classList) {\n    el.classList.add(className)\n  }\n}\n\n// Remove a class from an element\nexport const removeClass = (el, className) => {\n  // We are checking for `el.classList` existence here since IE 11\n  // returns `undefined` for some elements (e.g. SVG elements)\n  // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2713\n  if (className && isElement(el) && el.classList) {\n    el.classList.remove(className)\n  }\n}\n\n// Test if an element has a class\nexport const hasClass = (el, className) => {\n  // We are checking for `el.classList` existence here since IE 11\n  // returns `undefined` for some elements (e.g. SVG elements)\n  // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2713\n  if (className && isElement(el) && el.classList) {\n    return el.classList.contains(className)\n  }\n  return false\n}\n\n// Set an attribute on an element\nexport const setAttr = (el, attr, value) => {\n  if (attr && isElement(el)) {\n    el.setAttribute(attr, value)\n  }\n}\n\n// Remove an attribute from an element\nexport const removeAttr = (el, attr) => {\n  if (attr && isElement(el)) {\n    el.removeAttribute(attr)\n  }\n}\n\n// Get an attribute value from an element\n// Returns `null` if not found\nexport const getAttr = (el, attr) => (attr && isElement(el) ? el.getAttribute(attr) : null)\n\n// Determine if an attribute exists on an element\n// Returns `true` or `false`, or `null` if element not found\nexport const hasAttr = (el, attr) => (attr && isElement(el) ? el.hasAttribute(attr) : null)\n\n// Set an style property on an element\nexport const setStyle = (el, prop, value) => {\n  if (prop && isElement(el)) {\n    el.style[prop] = value\n  }\n}\n\n// Remove an style property from an element\nexport const removeStyle = (el, prop) => {\n  if (prop && isElement(el)) {\n    el.style[prop] = ''\n  }\n}\n\n// Get an style property value from an element\n// Returns `null` if not found\nexport const getStyle = (el, prop) => (prop && isElement(el) ? el.style[prop] || null : null)\n\n// Return the Bounding Client Rect of an element\n// Returns `null` if not an element\n/* istanbul ignore next: getBoundingClientRect() doesn't work in JSDOM */\nexport const getBCR = el => (isElement(el) ? el.getBoundingClientRect() : null)\n\n// Get computed style object for an element\n/* istanbul ignore next: getComputedStyle() doesn't work in JSDOM */\nexport const getCS = el => {\n  const { getComputedStyle } = WINDOW\n  return getComputedStyle && isElement(el) ? getComputedStyle(el) : {}\n}\n\n// Returns a `Selection` object representing the range of text selected\n// Returns `null` if no window support is given\n/* istanbul ignore next: getSelection() doesn't work in JSDOM */\nexport const getSel = () => {\n  const { getSelection } = WINDOW\n  return getSelection ? WINDOW.getSelection() : null\n}\n\n// Return an element's offset with respect to document element\n// https://j11y.io/jquery/#v=git&fn=jQuery.fn.offset\nexport const offset = el => /* istanbul ignore next: getBoundingClientRect(), getClientRects() doesn't work in JSDOM */ {\n  const _offset = { top: 0, left: 0 }\n  if (!isElement(el) || el.getClientRects().length === 0) {\n    return _offset\n  }\n  const bcr = getBCR(el)\n  if (bcr) {\n    const win = el.ownerDocument.defaultView\n    _offset.top = bcr.top + win.pageYOffset\n    _offset.left = bcr.left + win.pageXOffset\n  }\n  return _offset\n}\n\n// Return an element's offset with respect to to its offsetParent\n// https://j11y.io/jquery/#v=git&fn=jQuery.fn.position\nexport const position = el => /* istanbul ignore next: getBoundingClientRect() doesn't work in JSDOM */ {\n  let _offset = { top: 0, left: 0 }\n  if (!isElement(el)) {\n    return _offset\n  }\n  let parentOffset = { top: 0, left: 0 }\n  const elStyles = getCS(el)\n  if (elStyles.position === 'fixed') {\n    _offset = getBCR(el) || _offset\n  } else {\n    _offset = offset(el)\n    const doc = el.ownerDocument\n    let offsetParent = el.offsetParent || doc.documentElement\n    while (\n      offsetParent &&\n      (offsetParent === doc.body || offsetParent === doc.documentElement) &&\n      getCS(offsetParent).position === 'static'\n    ) {\n      offsetParent = offsetParent.parentNode\n    }\n    if (offsetParent && offsetParent !== el && offsetParent.nodeType === Node.ELEMENT_NODE) {\n      parentOffset = offset(offsetParent)\n      const offsetParentStyles = getCS(offsetParent)\n      parentOffset.top += toFloat(offsetParentStyles.borderTopWidth, 0)\n      parentOffset.left += toFloat(offsetParentStyles.borderLeftWidth, 0)\n    }\n  }\n  return {\n    top: _offset.top - parentOffset.top - toFloat(elStyles.marginTop, 0),\n    left: _offset.left - parentOffset.left - toFloat(elStyles.marginLeft, 0)\n  }\n}\n\n// Find all tabable elements in the given element\n// Assumes users have not used `tabindex` > `0` on elements\nexport const getTabables = (rootEl = document) =>\n  selectAll(TABABLE_SELECTOR, rootEl)\n    .filter(isVisible)\n    .filter(el => el.tabIndex > -1 && !el.disabled)\n\n// Attempt to focus an element, and return `true` if successful\nexport const attemptFocus = (el, options = {}) => {\n  try {\n    el.focus(options)\n  } catch {}\n  return isActiveElement(el)\n}\n\n// Attempt to blur an element, and return `true` if successful\nexport const attemptBlur = el => {\n  try {\n    el.blur()\n  } catch {}\n  return !isActiveElement(el)\n}\n","import { create } from './object'\n\nexport const memoize = fn => {\n  const cache = create(null)\n\n  return (...args) => {\n    const argsKey = JSON.stringify(args)\n    return (cache[argsKey] = cache[argsKey] || fn.apply(null, args))\n  }\n}\n","import { Vue } from '../vue'\nimport { DEFAULT_BREAKPOINT, PROP_NAME } from '../constants/config'\nimport { cloneDeep } from './clone-deep'\nimport { memoize } from './memoize'\n\n// --- Constants ---\n\nconst VueProto = Vue.prototype\n\n// --- Getter methods ---\n// All methods return a deep clone (immutable) copy of the config value,\n// to prevent mutation of the user config object\n\n// Get the current config\nexport const getConfig = () => {\n  const bvConfig = VueProto[PROP_NAME]\n  return bvConfig ? bvConfig.getConfig() : {}\n}\n\n// Method to grab a config value based on a dotted/array notation key\nexport const getConfigValue = (key, defaultValue = undefined) => {\n  const bvConfig = VueProto[PROP_NAME]\n  return bvConfig ? bvConfig.getConfigValue(key, defaultValue) : cloneDeep(defaultValue)\n}\n\n// Method to grab a config value for a particular component\nexport const getComponentConfig = (key, propKey = null, defaultValue = undefined) => {\n  // Return the particular config value for key if specified,\n  // otherwise we return the full config (or an empty object if not found)\n  return propKey ? getConfigValue(`${key}.${propKey}`, defaultValue) : getConfigValue(key, {})\n}\n\n// Get all breakpoint names\nexport const getBreakpoints = () => getConfigValue('breakpoints', DEFAULT_BREAKPOINT)\n\n// Private method for caching breakpoint names\nconst _getBreakpointsCached = memoize(() => getBreakpoints())\n\n// Get all breakpoint names (cached)\nexport const getBreakpointsCached = () => cloneDeep(_getBreakpointsCached())\n\n// Get breakpoints with the smallest breakpoint set as ''\n// Useful for components that create breakpoint specific props\nexport const getBreakpointsUp = () => {\n  const breakpoints = getBreakpoints()\n  breakpoints[0] = ''\n  return breakpoints\n}\n\n// Get breakpoints with the smallest breakpoint set as '' (cached)\n// Useful for components that create breakpoint specific props\nexport const getBreakpointsUpCached = memoize(() => {\n  const breakpoints = getBreakpointsCached()\n  breakpoints[0] = ''\n  return breakpoints\n})\n\n// Get breakpoints with the largest breakpoint set as ''\nexport const getBreakpointsDown = () => {\n  const breakpoints = getBreakpoints()\n  breakpoints[breakpoints.length - 1] = ''\n  return breakpoints\n}\n\n// Get breakpoints with the largest breakpoint set as '' (cached)\n// Useful for components that create breakpoint specific props\n/* istanbul ignore next: we don't use this method anywhere, yet */\nexport const getBreakpointsDownCached = () => {\n  const breakpoints = getBreakpointsCached()\n  breakpoints[breakpoints.length - 1] = ''\n  return breakpoints\n}\n","import { PROP_TYPE_ANY } from '../constants/props'\nimport { cloneDeep } from './clone-deep'\nimport { getComponentConfig } from './config'\nimport { identity } from './identity'\nimport { isArray, isFunction, isObject, isUndefined } from './inspect'\nimport { clone, hasOwnProperty, keys } from './object'\nimport { lowerFirst, upperFirst } from './string'\n\n// Prefix a property\nexport const prefixPropName = (prefix, value) => prefix + upperFirst(value)\n\n// Remove a prefix from a property\nexport const unprefixPropName = (prefix, value) => lowerFirst(value.replace(prefix, ''))\n\n// Suffix can be a falsey value so nothing is appended to string\n// (helps when looping over props & some shouldn't change)\n// Use data last parameters to allow for currying\nexport const suffixPropName = (suffix, value) => value + (suffix ? upperFirst(suffix) : '')\n\n// Generates a prop object\nexport const makeProp = (\n  type = PROP_TYPE_ANY,\n  value = undefined,\n  requiredOrValidator = undefined,\n  validator = undefined\n) => {\n  const required = requiredOrValidator === true\n  validator = required ? validator : requiredOrValidator\n\n  return {\n    ...(type ? { type } : {}),\n    ...(required\n      ? { required }\n      : isUndefined(value)\n        ? {}\n        : { default: isObject(value) ? () => value : value }),\n    ...(isUndefined(validator) ? {} : { validator })\n  }\n}\n\n// Copies props from one array/object to a new array/object\n// Prop values are also cloned as new references to prevent possible\n// mutation of original prop object values\n// Optionally accepts a function to transform the prop name\nexport const copyProps = (props, transformFn = identity) => {\n  if (isArray(props)) {\n    return props.map(transformFn)\n  }\n  const copied = {}\n  for (const prop in props) {\n    /* istanbul ignore else */\n    if (hasOwnProperty(props, prop)) {\n      // If the prop value is an object, do a shallow clone\n      // to prevent potential mutations to the original object\n      copied[transformFn(prop)] = isObject(props[prop]) ? clone(props[prop]) : props[prop]\n    }\n  }\n  return copied\n}\n\n// Given an array of properties or an object of property keys,\n// plucks all the values off the target object, returning a new object\n// that has props that reference the original prop values\nexport const pluckProps = (keysToPluck, objToPluck, transformFn = identity) =>\n  (isArray(keysToPluck) ? keysToPluck.slice() : keys(keysToPluck)).reduce((memo, prop) => {\n    memo[transformFn(prop)] = objToPluck[prop]\n    return memo\n  }, {})\n\n// Make a prop object configurable by global configuration\n// Replaces the current `default` key of each prop with a `getComponentConfig()`\n// call that falls back to the current default value of the prop\nexport const makePropConfigurable = (prop, key, componentKey) => ({\n  ...cloneDeep(prop),\n  default: function bvConfigurablePropDefault() {\n    const value = getComponentConfig(componentKey, key, prop.default)\n    return isFunction(value) ? value() : value\n  }\n})\n\n// Make a props object configurable by global configuration\n// Replaces the current `default` key of each prop with a `getComponentConfig()`\n// call that falls back to the current default value of the prop\nexport const makePropsConfigurable = (props, componentKey) =>\n  keys(props).reduce(\n    (result, key) => ({ ...result, [key]: makePropConfigurable(props[key], key, componentKey) }),\n    {}\n  )\n\n// Get function name we use in `makePropConfigurable()`\n// for the prop default value override to compare\n// against in `hasPropFunction()`\nconst configurablePropDefaultFnName = makePropConfigurable({}, '', '').default.name\n\n// Detect wether the given value is currently a function\n// and isn't the props default function\nexport const hasPropFunction = fn => isFunction(fn) && fn.name !== configurablePropDefaultFnName\n","import { Vue } from '../vue'\nimport { EVENT_NAME_INPUT } from '../constants/events'\nimport { PROP_TYPE_ANY } from '../constants/props'\nimport { makeProp } from './props'\n\nexport const makeModelMixin = (\n  prop,\n  {\n    type = PROP_TYPE_ANY,\n    defaultValue = undefined,\n    validator = undefined,\n    event = EVENT_NAME_INPUT\n  } = {}\n) => {\n  const props = {\n    [prop]: makeProp(type, defaultValue, validator)\n  }\n\n  // @vue/component\n  const mixin = Vue.extend({\n    model: {\n      prop,\n      event\n    },\n    props\n  })\n\n  return { mixin, props, prop, event }\n}\n","import { concat } from './array'\nimport { identity } from './identity'\nimport { isFunction } from './inspect'\n\n// Note for functional components:\n// In functional components, `slots` is a function so it must be called\n// first before passing to the below methods. `scopedSlots` is always an\n// object and may be undefined (for Vue < 2.6.x)\n\n/**\n * Returns true if either scoped or unscoped named slot exists\n *\n * @param {String, Array} name or name[]\n * @param {Object} scopedSlots\n * @param {Object} slots\n * @returns {Array|undefined} VNodes\n */\nexport const hasNormalizedSlot = (names, $scopedSlots = {}, $slots = {}) => {\n  // Ensure names is an array\n  names = concat(names).filter(identity)\n  // Returns true if the either a $scopedSlot or $slot exists with the specified name\n  return names.some(name => $scopedSlots[name] || $slots[name])\n}\n\n/**\n * Returns VNodes for named slot either scoped or unscoped\n *\n * @param {String, Array} name or name[]\n * @param {String} scope\n * @param {Object} scopedSlots\n * @param {Object} slots\n * @returns {Array|undefined} VNodes\n */\nexport const normalizeSlot = (names, scope = {}, $scopedSlots = {}, $slots = {}) => {\n  // Ensure names is an array\n  names = concat(names).filter(identity)\n  let slot\n  for (let i = 0; i < names.length && !slot; i++) {\n    const name = names[i]\n    slot = $scopedSlots[name] || $slots[name]\n  }\n  // Note: in Vue 2.6.x, all named slots are also scoped slots\n  return isFunction(slot) ? slot(scope) : slot\n}\n","import { Vue } from '../vue'\nimport { SLOT_NAME_DEFAULT } from '../constants/slots'\nimport { hasNormalizedSlot, normalizeSlot } from '../utils/normalize-slot'\nimport { concat } from '../utils/array'\n\n// @vue/component\nexport const normalizeSlotMixin = Vue.extend({\n  methods: {\n    // Returns `true` if the either a `$scopedSlot` or `$slot` exists with the specified name\n    // `name` can be a string name or an array of names\n    hasNormalizedSlot(\n      name = SLOT_NAME_DEFAULT,\n      scopedSlots = this.$scopedSlots,\n      slots = this.$slots\n    ) {\n      return hasNormalizedSlot(name, scopedSlots, slots)\n    },\n    // Returns an array of rendered VNodes if slot found, otherwise `undefined`\n    // `name` can be a string name or an array of names\n    normalizeSlot(\n      name = SLOT_NAME_DEFAULT,\n      scope = {},\n      scopedSlots = this.$scopedSlots,\n      slots = this.$slots\n    ) {\n      const vNodes = normalizeSlot(name, scope, scopedSlots, slots)\n      return vNodes ? concat(vNodes) : vNodes\n    }\n  }\n})\n","import { HAS_PASSIVE_EVENT_SUPPORT } from '../constants/env'\nimport { ROOT_EVENT_NAME_PREFIX, ROOT_EVENT_NAME_SEPARATOR } from '../constants/events'\nimport { RX_BV_PREFIX } from '../constants/regex'\nimport { isObject } from './inspect'\nimport { kebabCase } from './string'\n\n// --- Utils ---\n\n// Normalize event options based on support of passive option\n// Exported only for testing purposes\nexport const parseEventOptions = options => {\n  /* istanbul ignore else: can't test in JSDOM, as it supports passive */\n  if (HAS_PASSIVE_EVENT_SUPPORT) {\n    return isObject(options) ? options : { capture: !!options || false }\n  } else {\n    // Need to translate to actual Boolean value\n    return !!(isObject(options) ? options.capture : options)\n  }\n}\n\n// Attach an event listener to an element\nexport const eventOn = (el, eventName, handler, options) => {\n  if (el && el.addEventListener) {\n    el.addEventListener(eventName, handler, parseEventOptions(options))\n  }\n}\n\n// Remove an event listener from an element\nexport const eventOff = (el, eventName, handler, options) => {\n  if (el && el.removeEventListener) {\n    el.removeEventListener(eventName, handler, parseEventOptions(options))\n  }\n}\n\n// Utility method to add/remove a event listener based on first argument (boolean)\n// It passes all other arguments to the `eventOn()` or `eventOff` method\nexport const eventOnOff = (on, ...args) => {\n  const method = on ? eventOn : eventOff\n  method(...args)\n}\n\n// Utility method to prevent the default event handling and propagation\nexport const stopEvent = (\n  event,\n  { preventDefault = true, propagation = true, immediatePropagation = false } = {}\n) => {\n  if (preventDefault) {\n    event.preventDefault()\n  }\n  if (propagation) {\n    event.stopPropagation()\n  }\n  if (immediatePropagation) {\n    event.stopImmediatePropagation()\n  }\n}\n\n// Helper method to convert a component/directive name to a base event name\n// `getBaseEventName('BNavigationItem')` => 'navigation-item'\n// `getBaseEventName('BVToggle')` => 'toggle'\nconst getBaseEventName = value => kebabCase(value.replace(RX_BV_PREFIX, ''))\n\n// Get a root event name by component/directive and event name\n// `getBaseEventName('BModal', 'show')` => 'bv::modal::show'\nexport const getRootEventName = (name, eventName) =>\n  [ROOT_EVENT_NAME_PREFIX, getBaseEventName(name), eventName].join(ROOT_EVENT_NAME_SEPARATOR)\n\n// Get a root action event name by component/directive and action name\n// `getRootActionEventName('BModal', 'show')` => 'bv::show::modal'\nexport const getRootActionEventName = (name, actionName) =>\n  [ROOT_EVENT_NAME_PREFIX, actionName, getBaseEventName(name)].join(ROOT_EVENT_NAME_SEPARATOR)\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BUTTON_CLOSE } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { stopEvent } from '../../utils/events'\nimport { isEvent } from '../../utils/inspect'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    ariaLabel: makeProp(PROP_TYPE_STRING, 'Close'),\n    content: makeProp(PROP_TYPE_STRING, '&times;'),\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    textVariant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_BUTTON_CLOSE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BButtonClose = /*#__PURE__*/ Vue.extend({\n  name: NAME_BUTTON_CLOSE,\n  functional: true,\n  props,\n  render(h, { props, data, slots, scopedSlots }) {\n    const $slots = slots()\n    const $scopedSlots = scopedSlots || {}\n\n    const componentData = {\n      staticClass: 'close',\n      class: {\n        [`text-${props.textVariant}`]: props.textVariant\n      },\n      attrs: {\n        type: 'button',\n        disabled: props.disabled,\n        'aria-label': props.ariaLabel ? String(props.ariaLabel) : null\n      },\n      on: {\n        click(event) {\n          // Ensure click on button HTML content is also disabled\n          /* istanbul ignore if: bug in JSDOM still emits click on inner element */\n          if (props.disabled && isEvent(event)) {\n            stopEvent(event)\n          }\n        }\n      }\n    }\n\n    // Careful not to override the default slot with innerHTML\n    if (!hasNormalizedSlot(SLOT_NAME_DEFAULT, $scopedSlots, $slots)) {\n      componentData.domProps = { innerHTML: props.content }\n    }\n\n    return h(\n      'button',\n      mergeData(data, componentData),\n      normalizeSlot(SLOT_NAME_DEFAULT, {}, $scopedSlots, $slots)\n    )\n  }\n})\n","// Generic Bootstrap v4 fade (no-fade) transition component\n//\n// Assumes that `show` class is not required when\n// the transition has finished the enter transition\n// (show and fade classes are only applied during transition)\n\nimport { Vue, mergeData } from '../../vue'\nimport { NAME_TRANSITION } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_OBJECT, PROP_TYPE_STRING } from '../../constants/props'\nimport { isPlainObject } from '../../utils/inspect'\nimport { makeProp } from '../../utils/props'\n\n// --- Constants ---\n\nconst NO_FADE_PROPS = {\n  name: '',\n  enterClass: '',\n  enterActiveClass: '',\n  enterToClass: 'show',\n  leaveClass: 'show',\n  leaveActiveClass: '',\n  leaveToClass: ''\n}\n\nconst FADE_PROPS = {\n  ...NO_FADE_PROPS,\n  enterActiveClass: 'fade',\n  leaveActiveClass: 'fade'\n}\n\n// --- Props ---\n\nexport const props = {\n  // Has no effect if `trans-props` provided\n  appear: makeProp(PROP_TYPE_BOOLEAN, false),\n  // Can be overridden by user supplied `trans-props`\n  mode: makeProp(PROP_TYPE_STRING),\n  // Only applicable to the built in transition\n  // Has no effect if `trans-props` provided\n  noFade: makeProp(PROP_TYPE_BOOLEAN, false),\n  // For user supplied transitions (if needed)\n  transProps: makeProp(PROP_TYPE_OBJECT)\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BVTransition = /*#__PURE__*/ Vue.extend({\n  name: NAME_TRANSITION,\n  functional: true,\n  props,\n  render(h, { children, data, props }) {\n    let transProps = props.transProps\n    if (!isPlainObject(transProps)) {\n      transProps = props.noFade ? NO_FADE_PROPS : FADE_PROPS\n      if (props.appear) {\n        // Default the appear classes to equal the enter classes\n        transProps = {\n          ...transProps,\n          appear: true,\n          appearClass: transProps.enterClass,\n          appearActiveClass: transProps.enterActiveClass,\n          appearToClass: transProps.enterToClass\n        }\n      }\n    }\n    transProps = {\n      mode: props.mode,\n      ...transProps,\n      // We always need `css` true\n      css: true\n    }\n    return h(\n      'transition',\n      // Any transition event listeners will get merged here\n      mergeData(data, { props: transProps }),\n      children\n    )\n  }\n})\n","import { COMPONENT_UID_KEY, Vue } from '../../vue'\nimport { NAME_ALERT } from '../../constants/components'\nimport { EVENT_NAME_DISMISSED, EVENT_NAME_DISMISS_COUNT_DOWN } from '../../constants/events'\nimport {\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_DISMISS } from '../../constants/slots'\nimport { requestAF } from '../../utils/dom'\nimport { isBoolean, isNumeric } from '../../utils/inspect'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BButtonClose } from '../button/button-close'\nimport { BVTransition } from '../transition/bv-transition'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('show', {\n  type: PROP_TYPE_BOOLEAN_NUMBER_STRING,\n  defaultValue: false\n})\n\n// --- Helper methods ---\n\n// Convert `show` value to a number\nconst parseCountDown = show => {\n  if (show === '' || isBoolean(show)) {\n    return 0\n  }\n  show = toInteger(show, 0)\n  return show > 0 ? show : 0\n}\n\n// Convert `show` value to a boolean\nconst parseShow = show => {\n  if (show === '' || show === true) {\n    return true\n  }\n  if (toInteger(show, 0) < 1) {\n    // Boolean will always return false for the above comparison\n    return false\n  }\n  return !!show\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...modelProps,\n    dismissLabel: makeProp(PROP_TYPE_STRING, 'Close'),\n    dismissible: makeProp(PROP_TYPE_BOOLEAN, false),\n    fade: makeProp(PROP_TYPE_BOOLEAN, false),\n    variant: makeProp(PROP_TYPE_STRING, 'info')\n  }),\n  NAME_ALERT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BAlert = /*#__PURE__*/ Vue.extend({\n  name: NAME_ALERT,\n  mixins: [modelMixin, normalizeSlotMixin],\n  props,\n  data() {\n    return {\n      countDown: 0,\n      // If initially shown, we need to set these for SSR\n      localShow: parseShow(this[MODEL_PROP_NAME])\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue) {\n      this.countDown = parseCountDown(newValue)\n      this.localShow = parseShow(newValue)\n    },\n    countDown(newValue) {\n      this.clearCountDownInterval()\n      const show = this[MODEL_PROP_NAME]\n      // Ignore if `show` transitions to a boolean value\n      if (isNumeric(show)) {\n        this.$emit(EVENT_NAME_DISMISS_COUNT_DOWN, newValue)\n        // Update the v-model if needed\n        if (show !== newValue) {\n          this.$emit(MODEL_EVENT_NAME, newValue)\n        }\n        if (newValue > 0) {\n          this.localShow = true\n          this.$_countDownTimeout = setTimeout(() => {\n            this.countDown--\n          }, 1000)\n        } else {\n          // Slightly delay the hide to allow any UI updates\n          this.$nextTick(() => {\n            requestAF(() => {\n              this.localShow = false\n            })\n          })\n        }\n      }\n    },\n    localShow(newValue) {\n      const show = this[MODEL_PROP_NAME]\n      // Only emit dismissed events for dismissible or auto-dismissing alerts\n      if (!newValue && (this.dismissible || isNumeric(show))) {\n        this.$emit(EVENT_NAME_DISMISSED)\n      }\n      // Only emit booleans if we weren't passed a number via v-model\n      if (!isNumeric(show) && show !== newValue) {\n        this.$emit(MODEL_EVENT_NAME, newValue)\n      }\n    }\n  },\n  created() {\n    // Create private non-reactive props\n    this.$_filterTimer = null\n\n    const show = this[MODEL_PROP_NAME]\n    this.countDown = parseCountDown(show)\n    this.localShow = parseShow(show)\n  },\n  beforeDestroy() {\n    this.clearCountDownInterval()\n  },\n  methods: {\n    dismiss() {\n      this.clearCountDownInterval()\n      this.countDown = 0\n      this.localShow = false\n    },\n    clearCountDownInterval() {\n      clearTimeout(this.$_countDownTimeout)\n      this.$_countDownTimeout = null\n    }\n  },\n  render(h) {\n    let $alert = h()\n    if (this.localShow) {\n      const { dismissible, variant } = this\n\n      let $dismissButton = h()\n      if (dismissible) {\n        // Add dismiss button\n        $dismissButton = h(\n          BButtonClose,\n          {\n            attrs: { 'aria-label': this.dismissLabel },\n            on: { click: this.dismiss }\n          },\n          [this.normalizeSlot(SLOT_NAME_DISMISS)]\n        )\n      }\n\n      $alert = h(\n        'div',\n        {\n          staticClass: 'alert',\n          class: {\n            'alert-dismissible': dismissible,\n            [`alert-${variant}`]: variant\n          },\n          attrs: {\n            role: 'alert',\n            'aria-live': 'polite',\n            'aria-atomic': true\n          },\n          key: this[COMPONENT_UID_KEY]\n        },\n        [$dismissButton, this.normalizeSlot()]\n      )\n    }\n\n    return h(BVTransition, { props: { noFade: !this.fade } }, [$alert])\n  }\n})\n","import { BAlert } from './alert'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst AlertPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BAlert }\n})\n\nexport { AlertPlugin, BAlert }\n","// Math utilty functions\n\nexport const mathMin = Math.min\n\nexport const mathMax = Math.max\n\nexport const mathAbs = Math.abs\n\nexport const mathCeil = Math.ceil\n\nexport const mathFloor = Math.floor\n\nexport const mathPow = Math.pow\n\nexport const mathRound = Math.round\n","import { Vue } from '../../vue'\nimport { NAME_ASPECT } from '../../constants/components'\nimport { PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { RX_ASPECT, RX_ASPECT_SEPARATOR } from '../../constants/regex'\nimport { mathAbs } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst CLASS_NAME = 'b-aspect'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    // Accepts a number (i.e. `16 / 9`, `1`, `4 / 3`)\n    // Or a string (i.e. '16/9', '16:9', '4:3' '1:1')\n    aspect: makeProp(PROP_TYPE_NUMBER_STRING, '1:1'),\n    tag: makeProp(PROP_TYPE_STRING, 'div')\n  },\n  NAME_ASPECT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BAspect = /*#__PURE__*/ Vue.extend({\n  name: NAME_ASPECT,\n  mixins: [normalizeSlotMixin],\n  props,\n  computed: {\n    padding() {\n      const { aspect } = this\n      let ratio = 1\n      if (RX_ASPECT.test(aspect)) {\n        // Width and/or Height can be a decimal value below `1`, so\n        // we only fallback to `1` if the value is `0` or `NaN`\n        const [width, height] = aspect.split(RX_ASPECT_SEPARATOR).map(v => toFloat(v) || 1)\n        ratio = width / height\n      } else {\n        ratio = toFloat(aspect) || 1\n      }\n      return `${100 / mathAbs(ratio)}%`\n    }\n  },\n  render(h) {\n    const $sizer = h('div', {\n      staticClass: `${CLASS_NAME}-sizer flex-grow-1`,\n      style: { paddingBottom: this.padding, height: 0 }\n    })\n\n    const $content = h(\n      'div',\n      {\n        staticClass: `${CLASS_NAME}-content flex-grow-1 w-100 mw-100`,\n        style: { marginLeft: '-100%' }\n      },\n      this.normalizeSlot()\n    )\n\n    return h(this.tag, { staticClass: `${CLASS_NAME} d-flex` }, [$sizer, $content])\n  }\n})\n","import { BAspect } from './aspect'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst AspectPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BAspect }\n})\n\nexport { AspectPlugin, BAspect }\n","import { RX_ENCODED_COMMA, RX_ENCODE_REVERSE, RX_PLUS, RX_QUERY_START } from '../constants/regex'\nimport { isTag } from './dom'\nimport { isArray, isNull, isPlainObject, isString, isUndefined } from './inspect'\nimport { keys } from './object'\nimport { toString } from './string'\n\nconst ANCHOR_TAG = 'a'\n\n// Method to replace reserved chars\nconst encodeReserveReplacer = c => '%' + c.charCodeAt(0).toString(16)\n\n// Fixed encodeURIComponent which is more conformant to RFC3986:\n// - escapes [!'()*]\n// - preserve commas\nconst encode = str =>\n  encodeURIComponent(toString(str))\n    .replace(RX_ENCODE_REVERSE, encodeReserveReplacer)\n    .replace(RX_ENCODED_COMMA, ',')\n\nconst decode = decodeURIComponent\n\n// Stringifies an object of query parameters\n// See: https://github.com/vuejs/vue-router/blob/dev/src/util/query.js\nexport const stringifyQueryObj = obj => {\n  if (!isPlainObject(obj)) {\n    return ''\n  }\n\n  const query = keys(obj)\n    .map(key => {\n      const value = obj[key]\n      if (isUndefined(value)) {\n        return ''\n      } else if (isNull(value)) {\n        return encode(key)\n      } else if (isArray(value)) {\n        return value\n          .reduce((results, value2) => {\n            if (isNull(value2)) {\n              results.push(encode(key))\n            } else if (!isUndefined(value2)) {\n              // Faster than string interpolation\n              results.push(encode(key) + '=' + encode(value2))\n            }\n            return results\n          }, [])\n          .join('&')\n      }\n      // Faster than string interpolation\n      return encode(key) + '=' + encode(value)\n    })\n    /* must check for length, as we only want to filter empty strings, not things that look falsey! */\n    .filter(x => x.length > 0)\n    .join('&')\n\n  return query ? `?${query}` : ''\n}\n\nexport const parseQuery = query => {\n  const parsed = {}\n  query = toString(query)\n    .trim()\n    .replace(RX_QUERY_START, '')\n\n  if (!query) {\n    return parsed\n  }\n\n  query.split('&').forEach(param => {\n    const parts = param.replace(RX_PLUS, ' ').split('=')\n    const key = decode(parts.shift())\n    const value = parts.length > 0 ? decode(parts.join('=')) : null\n\n    if (isUndefined(parsed[key])) {\n      parsed[key] = value\n    } else if (isArray(parsed[key])) {\n      parsed[key].push(value)\n    } else {\n      parsed[key] = [parsed[key], value]\n    }\n  })\n\n  return parsed\n}\n\nexport const isLink = props => !!(props.href || props.to)\n\nexport const isRouterLink = tag => !!(tag && !isTag(tag, 'a'))\n\nexport const computeTag = ({ to, disabled, routerComponentName }, thisOrParent) => {\n  const hasRouter = !!thisOrParent.$router\n  if (!hasRouter || (hasRouter && (disabled || !to))) {\n    return ANCHOR_TAG\n  }\n\n  // TODO:\n  //   Check registered components for existence of user supplied router link component name\n  //   We would need to check PascalCase, kebab-case, and camelCase versions of name:\n  //   const name = routerComponentName\n  //   const names = [name, PascalCase(name), KebabCase(name), CamelCase(name)]\n  //   exists = names.some(name => !!thisOrParent.$options.components[name])\n  //   And may want to cache the result for performance or we just let the render fail\n  //   if the component is not registered\n  return routerComponentName || (thisOrParent.$nuxt ? 'nuxt-link' : 'router-link')\n}\n\nexport const computeRel = ({ target, rel } = {}) =>\n  target === '_blank' && isNull(rel) ? 'noopener' : rel || null\n\nexport const computeHref = (\n  { href, to } = {},\n  tag = ANCHOR_TAG,\n  fallback = '#',\n  toFallback = '/'\n) => {\n  // Return `href` when explicitly provided\n  if (href) {\n    return href\n  }\n\n  // We've checked for `$router` in `computeTag()`, so `isRouterLink()` indicates a live router\n  // When deferring to Vue Router's `<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  // Fallback to `to` prop (if `to` is a string)\n  if (isString(to)) {\n    return to || toFallback\n  }\n  // Fallback to `to.path' + `to.query` + `to.hash` prop (if `to` is an object)\n  if (isPlainObject(to) && (to.path || to.query || to.hash)) {\n    const path = toString(to.path)\n    const query = stringifyQueryObj(to.query)\n    let hash = toString(to.hash)\n    hash = !hash || hash.charAt(0) === '#' ? hash : `#${hash}`\n    return `${path}${query}${hash}` || toFallback\n  }\n\n  // If nothing is provided return the fallback\n  return fallback\n}\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_ICON_BASE } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { identity } from '../../utils/identity'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { mathMax } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\nimport { makeProp } from '../../utils/props'\n\n// --- Constants ---\n\n// Base attributes needed on all icons\nconst 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// --- Props ---\n\nexport const props = {\n  animation: makeProp(PROP_TYPE_STRING),\n  content: makeProp(PROP_TYPE_STRING),\n  flipH: makeProp(PROP_TYPE_BOOLEAN, false),\n  flipV: makeProp(PROP_TYPE_BOOLEAN, false),\n  fontScale: makeProp(PROP_TYPE_NUMBER_STRING, 1),\n  rotate: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n  scale: makeProp(PROP_TYPE_NUMBER_STRING, 1),\n  shiftH: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n  shiftV: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n  stacked: makeProp(PROP_TYPE_BOOLEAN, false),\n  title: makeProp(PROP_TYPE_STRING),\n  variant: makeProp(PROP_TYPE_STRING)\n}\n\n// --- Main component ---\n\n// Shared private base component to reduce bundle/runtime size\n// @vue/component\nexport const BVIconBase = /*#__PURE__*/ Vue.extend({\n  name: NAME_ICON_BASE,\n  functional: true,\n  props,\n  render(h, { data, props, children }) {\n    const { animation, content, flipH, flipV, stacked, title, variant } = props\n    const fontScale = mathMax(toFloat(props.fontScale, 1), 0) || 1\n    const scale = mathMax(toFloat(props.scale, 1), 0) || 1\n    const rotate = toFloat(props.rotate, 0)\n    const shiftH = toFloat(props.shiftH, 0)\n    const shiftV = toFloat(props.shiftV, 0)\n    // Compute the transforms\n    // Note that order is important as SVG transforms are applied in order from\n    // left to right and we want flipping/scale to occur before rotation\n    // Note shifting is applied separately\n    // Assumes that the viewbox is `0 0 16 16` (`8 8` is the center)\n    const hasScale = flipH || flipV || scale !== 1\n    const hasTransforms = hasScale || rotate\n    const hasShift = shiftH || shiftV\n    const hasContent = !isUndefinedOrNull(content)\n    const transforms = [\n      hasTransforms ? 'translate(8 8)' : null,\n      hasScale ? `scale(${(flipH ? -1 : 1) * scale} ${(flipV ? -1 : 1) * scale})` : null,\n      rotate ? `rotate(${rotate})` : null,\n      hasTransforms ? 'translate(-8 -8)' : null\n    ].filter(identity)\n\n    // We wrap the content in a `<g>` for handling the transforms (except shift)\n    let $inner = h(\n      'g',\n      {\n        attrs: { transform: transforms.join(' ') || null },\n        domProps: hasContent ? { innerHTML: content || '' } : {}\n      },\n      children\n    )\n\n    // If needed, we wrap in an additional `<g>` 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 (stacked) {\n      // Wrap in an additional `<g>` for proper\n      // animation handling if stacked\n      $inner = h('g', {}, [$inner])\n    }\n\n    const $title = title ? h('title', title) : null\n\n    return h(\n      'svg',\n      mergeData(\n        {\n          staticClass: 'b-icon bi',\n          class: {\n            [`text-${variant}`]: variant,\n            [`b-icon-animation-${animation}`]: animation\n          },\n          attrs: baseAttrs,\n          style: stacked ? {} : { fontSize: fontScale === 1 ? null : `${fontScale * 100}%` }\n        },\n        // Merge in user supplied data\n        data,\n        // If icon is stacked, null out some attrs\n        stacked ? { attrs: stackedAttrs } : {},\n        // These cannot be overridden by users\n        {\n          attrs: {\n            xmlns: stacked ? null : 'http://www.w3.org/2000/svg',\n            fill: 'currentColor'\n          }\n        }\n      ),\n      [$title, $inner]\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { omit } from '../../utils/object'\nimport { makeProp } from '../../utils/props'\nimport { kebabCase, pascalCase, trim } from '../../utils/string'\nimport { BVIconBase, props as BVIconBaseProps } from './icon-base'\n\n/**\n * Icon component generator function\n *\n * @param {string} icon name (minus the leading `BIcon`)\n * @param {string} raw `innerHTML` for SVG\n * @return {VueComponent}\n */\nexport const makeIcon = (name, content) => {\n  // For performance reason we pre-compute some values, so that\n  // they are not computed on each render of the icon component\n  const kebabName = kebabCase(name)\n  const iconName = `BIcon${pascalCase(name)}`\n  const iconNameClass = `bi-${kebabName}`\n  const iconTitle = kebabName.replace(/-/g, ' ')\n  const svgContent = trim(content || '')\n\n  return /*#__PURE__*/ Vue.extend({\n    name: iconName,\n    functional: true,\n    props: {\n      ...omit(BVIconBaseProps, ['content', 'stacked']),\n      stacked: makeProp(PROP_TYPE_BOOLEAN, false)\n    },\n    render(h, { data, props }) {\n      return h(\n        BVIconBase,\n        mergeData(\n          // Defaults\n          {\n            props: { title: iconTitle },\n            attrs: { 'aria-label': iconTitle }\n          },\n          // User data\n          data,\n          // Required data\n          {\n            staticClass: iconNameClass,\n            props: { ...props, content: svgContent }\n          }\n        )\n      )\n    }\n  })\n}\n","// --- BEGIN AUTO-GENERATED FILE ---\n//\n// @IconsVersion: 1.2.1\n// @Generated: 2020-12-14T14:05:09.779Z\n//\n// This file is generated on each build. Do not edit this file!\n\n/*!\n * BootstrapVue Icons, generated from Bootstrap Icons 1.2.1\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  '<path fill-rule=\"evenodd\" d=\"M6.5 0a.5.5 0 0 0 0 1H7v1.07a7.001 7.001 0 0 0-3.273 12.474l-.602.602a.5.5 0 0 0 .707.708l.746-.746A6.97 6.97 0 0 0 8 16a6.97 6.97 0 0 0 3.422-.892l.746.746a.5.5 0 0 0 .707-.708l-.601-.602A7.001 7.001 0 0 0 9 2.07V1h.5a.5.5 0 0 0 0-1h-3zm1.038 3.018a6.093 6.093 0 0 1 .924 0 6 6 0 1 1-.924 0zM8.5 5.5a.5.5 0 0 0-1 0v3.362l-1.429 2.38a.5.5 0 1 0 .858.515l1.5-2.5A.5.5 0 0 0 8.5 9V5.5zM0 3.5c0 .753.333 1.429.86 1.887A8.035 8.035 0 0 1 4.387 1.86 2.5 2.5 0 0 0 0 3.5zM13.5 1c-.753 0-1.429.333-1.887.86a8.035 8.035 0 0 1 3.527 3.527A2.5 2.5 0 0 0 13.5 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAlarmFill = /*#__PURE__*/ makeIcon(\n  'AlarmFill',\n  '<path fill-rule=\"evenodd\" d=\"M6 .5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1H9v1.07a7.001 7.001 0 0 1 3.274 12.474l.601.602a.5.5 0 0 1-.707.708l-.746-.746A6.97 6.97 0 0 1 8 16a6.97 6.97 0 0 1-3.422-.892l-.746.746a.5.5 0 0 1-.707-.708l.602-.602A7.001 7.001 0 0 1 7 2.07V1h-.5A.5.5 0 0 1 6 .5zM.86 5.387A2.5 2.5 0 1 1 4.387 1.86 8.035 8.035 0 0 0 .86 5.387zM11.613 1.86a2.5 2.5 0 1 1 3.527 3.527 8.035 8.035 0 0 0-3.527-3.527zM8.5 5.5a.5.5 0 0 0-1 0v3.362l-1.429 2.38a.5.5 0 1 0 .858.515l1.5-2.5A.5.5 0 0 0 8.5 9V5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAlignBottom = /*#__PURE__*/ makeIcon(\n  'AlignBottom',\n  '<path d=\"M6 2a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V2z\"/><path fill-rule=\"evenodd\" d=\"M1 14.5a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAlignCenter = /*#__PURE__*/ makeIcon(\n  'AlignCenter',\n  '<path d=\"M8 1a.5.5 0 0 1 .5.5V6h-1V1.5A.5.5 0 0 1 8 1zm0 14a.5.5 0 0 1-.5-.5V10h1v4.5a.5.5 0 0 1-.5.5zM2 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAlignEnd = /*#__PURE__*/ makeIcon(\n  'AlignEnd',\n  '<path fill-rule=\"evenodd\" d=\"M14.5 1a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 1 0v-13a.5.5 0 0 0-.5-.5z\"/><path d=\"M13 7a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAlignMiddle = /*#__PURE__*/ makeIcon(\n  'AlignMiddle',\n  '<path d=\"M6 13a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v10zM1 8a.5.5 0 0 0 .5.5H6v-1H1.5A.5.5 0 0 0 1 8zm14 0a.5.5 0 0 1-.5.5H10v-1h4.5a.5.5 0 0 1 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAlignStart = /*#__PURE__*/ makeIcon(\n  'AlignStart',\n  '<path fill-rule=\"evenodd\" d=\"M1.5 1a.5.5 0 0 1 .5.5v13a.5.5 0 0 1-1 0v-13a.5.5 0 0 1 .5-.5z\"/><path d=\"M3 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAlignTop = /*#__PURE__*/ makeIcon(\n  'AlignTop',\n  '<path d=\"M6 14a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v10z\"/><path fill-rule=\"evenodd\" d=\"M1 1.5a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 0-1h-13a.5.5 0 0 0-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAlt = /*#__PURE__*/ makeIcon(\n  'Alt',\n  '<path fill-rule=\"evenodd\" d=\"M1 13.5a.5.5 0 0 0 .5.5h3.797a.5.5 0 0 0 .439-.26L11 3h3.5a.5.5 0 0 0 0-1h-3.797a.5.5 0 0 0-.439.26L5 13H1.5a.5.5 0 0 0-.5.5zm10 0a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconApp = /*#__PURE__*/ makeIcon(\n  'App',\n  '<path fill-rule=\"evenodd\" d=\"M11 2H5a3 3 0 0 0-3 3v6a3 3 0 0 0 3 3h6a3 3 0 0 0 3-3V5a3 3 0 0 0-3-3zM5 1a4 4 0 0 0-4 4v6a4 4 0 0 0 4 4h6a4 4 0 0 0 4-4V5a4 4 0 0 0-4-4H5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAppIndicator = /*#__PURE__*/ makeIcon(\n  'AppIndicator',\n  '<path fill-rule=\"evenodd\" d=\"M5.5 2A3.5 3.5 0 0 0 2 5.5v5A3.5 3.5 0 0 0 5.5 14h5a3.5 3.5 0 0 0 3.5-3.5V8a.5.5 0 0 1 1 0v2.5a4.5 4.5 0 0 1-4.5 4.5h-5A4.5 4.5 0 0 1 1 10.5v-5A4.5 4.5 0 0 1 5.5 1H8a.5.5 0 0 1 0 1H5.5z\"/><path d=\"M16 3a3 3 0 1 1-6 0 3 3 0 0 1 6 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArchive = /*#__PURE__*/ makeIcon(\n  'Archive',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1v7.5a2.5 2.5 0 0 1-2.5 2.5h-9A2.5 2.5 0 0 1 1 12.5V5a1 1 0 0 1-1-1V2zm2 3v7.5A1.5 1.5 0 0 0 3.5 14h9a1.5 1.5 0 0 0 1.5-1.5V5H2zm13-3H1v2h14V2zM5 7.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArchiveFill = /*#__PURE__*/ makeIcon(\n  'ArchiveFill',\n  '<path fill-rule=\"evenodd\" d=\"M12.643 15C13.979 15 15 13.845 15 12.5V5H1v7.5C1 13.845 2.021 15 3.357 15h9.286zM5.5 7a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zM.8 1a.8.8 0 0 0-.8.8V3a.8.8 0 0 0 .8.8h14.4A.8.8 0 0 0 16 3V1.8a.8.8 0 0 0-.8-.8H.8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrow90degDown = /*#__PURE__*/ makeIcon(\n  'Arrow90degDown',\n  '<path fill-rule=\"evenodd\" d=\"M4.854 14.854a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 .708-.708L4 13.293V3.5A2.5 2.5 0 0 1 6.5 1h8a.5.5 0 0 1 0 1h-8A1.5 1.5 0 0 0 5 3.5v9.793l3.146-3.147a.5.5 0 0 1 .708.708l-4 4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrow90degLeft = /*#__PURE__*/ makeIcon(\n  'Arrow90degLeft',\n  '<path fill-rule=\"evenodd\" d=\"M1.146 4.854a.5.5 0 0 1 0-.708l4-4a.5.5 0 1 1 .708.708L2.707 4H12.5A2.5 2.5 0 0 1 15 6.5v8a.5.5 0 0 1-1 0v-8A1.5 1.5 0 0 0 12.5 5H2.707l3.147 3.146a.5.5 0 1 1-.708.708l-4-4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrow90degRight = /*#__PURE__*/ makeIcon(\n  'Arrow90degRight',\n  '<path fill-rule=\"evenodd\" d=\"M14.854 4.854a.5.5 0 0 0 0-.708l-4-4a.5.5 0 0 0-.708.708L13.293 4H3.5A2.5 2.5 0 0 0 1 6.5v8a.5.5 0 0 0 1 0v-8A1.5 1.5 0 0 1 3.5 5h9.793l-3.147 3.146a.5.5 0 0 0 .708.708l4-4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrow90degUp = /*#__PURE__*/ makeIcon(\n  'Arrow90degUp',\n  '<path fill-rule=\"evenodd\" d=\"M4.854 1.146a.5.5 0 0 0-.708 0l-4 4a.5.5 0 1 0 .708.708L4 2.707V12.5A2.5 2.5 0 0 0 6.5 15h8a.5.5 0 0 0 0-1h-8A1.5 1.5 0 0 1 5 12.5V2.707l3.146 3.147a.5.5 0 1 0 .708-.708l-4-4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowBarDown = /*#__PURE__*/ makeIcon(\n  'ArrowBarDown',\n  '<path fill-rule=\"evenodd\" d=\"M1 3.5a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13a.5.5 0 0 1-.5-.5zM8 6a.5.5 0 0 1 .5.5v5.793l2.146-2.147a.5.5 0 0 1 .708.708l-3 3a.5.5 0 0 1-.708 0l-3-3a.5.5 0 0 1 .708-.708L7.5 12.293V6.5A.5.5 0 0 1 8 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowBarLeft = /*#__PURE__*/ makeIcon(\n  'ArrowBarLeft',\n  '<path fill-rule=\"evenodd\" d=\"M12.5 15a.5.5 0 0 1-.5-.5v-13a.5.5 0 0 1 1 0v13a.5.5 0 0 1-.5.5zM10 8a.5.5 0 0 1-.5.5H3.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L3.707 7.5H9.5a.5.5 0 0 1 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowBarRight = /*#__PURE__*/ makeIcon(\n  'ArrowBarRight',\n  '<path fill-rule=\"evenodd\" d=\"M6 8a.5.5 0 0 0 .5.5h5.793l-2.147 2.146a.5.5 0 0 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 0 0-.708.708L12.293 7.5H6.5A.5.5 0 0 0 6 8zm-2.5 7a.5.5 0 0 1-.5-.5v-13a.5.5 0 0 1 1 0v13a.5.5 0 0 1-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowBarUp = /*#__PURE__*/ makeIcon(\n  'ArrowBarUp',\n  '<path fill-rule=\"evenodd\" d=\"M8 10a.5.5 0 0 0 .5-.5V3.707l2.146 2.147a.5.5 0 0 0 .708-.708l-3-3a.5.5 0 0 0-.708 0l-3 3a.5.5 0 1 0 .708.708L7.5 3.707V9.5a.5.5 0 0 0 .5.5zm-7 2.5a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowClockwise = /*#__PURE__*/ makeIcon(\n  'ArrowClockwise',\n  '<path fill-rule=\"evenodd\" d=\"M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z\"/><path d=\"M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowCounterclockwise = /*#__PURE__*/ makeIcon(\n  'ArrowCounterclockwise',\n  '<path fill-rule=\"evenodd\" d=\"M8 3a5 5 0 1 1-4.546 2.914.5.5 0 0 0-.908-.417A6 6 0 1 0 8 2v1z\"/><path d=\"M8 4.466V.534a.25.25 0 0 0-.41-.192L5.23 2.308a.25.25 0 0 0 0 .384l2.36 1.966A.25.25 0 0 0 8 4.466z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDown = /*#__PURE__*/ makeIcon(\n  'ArrowDown',\n  '<path fill-rule=\"evenodd\" d=\"M8 1a.5.5 0 0 1 .5.5v11.793l3.146-3.147a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 .708-.708L7.5 13.293V1.5A.5.5 0 0 1 8 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownCircle = /*#__PURE__*/ makeIcon(\n  'ArrowDownCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M8 4a.5.5 0 0 1 .5.5v5.793l2.146-2.147a.5.5 0 0 1 .708.708l-3 3a.5.5 0 0 1-.708 0l-3-3a.5.5 0 1 1 .708-.708L7.5 10.293V4.5A.5.5 0 0 1 8 4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownCircleFill = /*#__PURE__*/ makeIcon(\n  'ArrowDownCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM8.5 4.5a.5.5 0 0 0-1 0v5.793L5.354 8.146a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 10.293V4.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownLeft = /*#__PURE__*/ makeIcon(\n  'ArrowDownLeft',\n  '<path fill-rule=\"evenodd\" d=\"M2 13.5a.5.5 0 0 0 .5.5h6a.5.5 0 0 0 0-1H3.707L13.854 2.854a.5.5 0 0 0-.708-.708L3 12.293V7.5a.5.5 0 0 0-1 0v6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownLeftCircle = /*#__PURE__*/ makeIcon(\n  'ArrowDownLeftCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M10.828 5.172a.5.5 0 0 0-.707 0L6.025 9.268V6.5a.5.5 0 0 0-1 0v3.975a.5.5 0 0 0 .5.5H9.5a.5.5 0 0 0 0-1H6.732l4.096-4.096a.5.5 0 0 0 0-.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownLeftCircleFill = /*#__PURE__*/ makeIcon(\n  'ArrowDownLeftCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-5.879-2.828a.5.5 0 1 1 .707.707L6.732 9.975H9.5a.5.5 0 1 1 0 1H5.525a.5.5 0 0 1-.5-.5V6.5a.5.5 0 1 1 1 0v2.768l4.096-4.096z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownLeftSquare = /*#__PURE__*/ makeIcon(\n  'ArrowDownLeftSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M10.828 5.172a.5.5 0 0 0-.707 0L6.025 9.268V6.5a.5.5 0 0 0-1 0v3.975a.5.5 0 0 0 .5.5H9.5a.5.5 0 0 0 0-1H6.732l4.096-4.096a.5.5 0 0 0 0-.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownLeftSquareFill = /*#__PURE__*/ makeIcon(\n  'ArrowDownLeftSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm8.121 5.172a.5.5 0 1 1 .707.707L6.732 9.975H9.5a.5.5 0 1 1 0 1H5.525a.5.5 0 0 1-.5-.5V6.5a.5.5 0 1 1 1 0v2.768l4.096-4.096z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownRight = /*#__PURE__*/ makeIcon(\n  'ArrowDownRight',\n  '<path fill-rule=\"evenodd\" d=\"M14 13.5a.5.5 0 0 1-.5.5h-6a.5.5 0 0 1 0-1h4.793L2.146 2.854a.5.5 0 1 1 .708-.708L13 12.293V7.5a.5.5 0 0 1 1 0v6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownRightCircle = /*#__PURE__*/ makeIcon(\n  'ArrowDownRightCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M5.172 5.172a.5.5 0 0 1 .707 0l4.096 4.096V6.5a.5.5 0 1 1 1 0v3.975a.5.5 0 0 1-.5.5H6.5a.5.5 0 0 1 0-1h2.768L5.172 5.879a.5.5 0 0 1 0-.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownRightCircleFill = /*#__PURE__*/ makeIcon(\n  'ArrowDownRightCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.879 5.172a.5.5 0 0 0-.707.707l4.096 4.096H6.5a.5.5 0 1 0 0 1h3.975a.5.5 0 0 0 .5-.5V6.5a.5.5 0 0 0-1 0v2.768L5.879 5.172z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownRightSquare = /*#__PURE__*/ makeIcon(\n  'ArrowDownRightSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M5.172 5.172a.5.5 0 0 1 .707 0l4.096 4.096V6.5a.5.5 0 1 1 1 0v3.975a.5.5 0 0 1-.5.5H6.5a.5.5 0 0 1 0-1h2.768L5.172 5.879a.5.5 0 0 1 0-.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownRightSquareFill = /*#__PURE__*/ makeIcon(\n  'ArrowDownRightSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm3.879 5.172a.5.5 0 0 0-.707.707l4.096 4.096H6.5a.5.5 0 1 0 0 1h3.975a.5.5 0 0 0 .5-.5V6.5a.5.5 0 0 0-1 0v2.768L5.879 5.172z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownShort = /*#__PURE__*/ makeIcon(\n  'ArrowDownShort',\n  '<path fill-rule=\"evenodd\" d=\"M8 4a.5.5 0 0 1 .5.5v5.793l2.146-2.147a.5.5 0 0 1 .708.708l-3 3a.5.5 0 0 1-.708 0l-3-3a.5.5 0 1 1 .708-.708L7.5 10.293V4.5A.5.5 0 0 1 8 4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownSquare = /*#__PURE__*/ makeIcon(\n  'ArrowDownSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M8 4a.5.5 0 0 1 .5.5v5.793l2.146-2.147a.5.5 0 0 1 .708.708l-3 3a.5.5 0 0 1-.708 0l-3-3a.5.5 0 1 1 .708-.708L7.5 10.293V4.5A.5.5 0 0 1 8 4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownSquareFill = /*#__PURE__*/ makeIcon(\n  'ArrowDownSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5a.5.5 0 0 0-1 0v5.793L5.354 8.146a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 10.293V4.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownUp = /*#__PURE__*/ makeIcon(\n  'ArrowDownUp',\n  '<path fill-rule=\"evenodd\" d=\"M11.5 15a.5.5 0 0 0 .5-.5V2.707l3.146 3.147a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 1 0 .708.708L11 2.707V14.5a.5.5 0 0 0 .5.5zm-7-14a.5.5 0 0 1 .5.5v11.793l3.146-3.147a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 .708-.708L4 13.293V1.5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeft = /*#__PURE__*/ makeIcon(\n  'ArrowLeft',\n  '<path fill-rule=\"evenodd\" d=\"M15 8a.5.5 0 0 0-.5-.5H2.707l3.147-3.146a.5.5 0 1 0-.708-.708l-4 4a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708L2.707 8.5H14.5A.5.5 0 0 0 15 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeftCircle = /*#__PURE__*/ makeIcon(\n  'ArrowLeftCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M12 8a.5.5 0 0 1-.5.5H5.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L5.707 7.5H11.5a.5.5 0 0 1 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeftCircleFill = /*#__PURE__*/ makeIcon(\n  'ArrowLeftCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-4.5.5a.5.5 0 0 0 0-1H5.707l2.147-2.146a.5.5 0 1 0-.708-.708l-3 3a.5.5 0 0 0 0 .708l3 3a.5.5 0 0 0 .708-.708L5.707 8.5H11.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeftRight = /*#__PURE__*/ makeIcon(\n  'ArrowLeftRight',\n  '<path fill-rule=\"evenodd\" d=\"M1 11.5a.5.5 0 0 0 .5.5h11.793l-3.147 3.146a.5.5 0 0 0 .708.708l4-4a.5.5 0 0 0 0-.708l-4-4a.5.5 0 0 0-.708.708L13.293 11H1.5a.5.5 0 0 0-.5.5zm14-7a.5.5 0 0 1-.5.5H2.707l3.147 3.146a.5.5 0 1 1-.708.708l-4-4a.5.5 0 0 1 0-.708l4-4a.5.5 0 1 1 .708.708L2.707 4H14.5a.5.5 0 0 1 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeftShort = /*#__PURE__*/ makeIcon(\n  'ArrowLeftShort',\n  '<path fill-rule=\"evenodd\" d=\"M12 8a.5.5 0 0 1-.5.5H5.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L5.707 7.5H11.5a.5.5 0 0 1 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeftSquare = /*#__PURE__*/ makeIcon(\n  'ArrowLeftSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M12 8a.5.5 0 0 1-.5.5H5.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L5.707 7.5H11.5a.5.5 0 0 1 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeftSquareFill = /*#__PURE__*/ makeIcon(\n  'ArrowLeftSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm9.5 8.5a.5.5 0 0 0 0-1H5.707l2.147-2.146a.5.5 0 1 0-.708-.708l-3 3a.5.5 0 0 0 0 .708l3 3a.5.5 0 0 0 .708-.708L5.707 8.5H11.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRepeat = /*#__PURE__*/ makeIcon(\n  'ArrowRepeat',\n  '<path d=\"M11.534 7h3.932a.25.25 0 0 1 .192.41l-1.966 2.36a.25.25 0 0 1-.384 0l-1.966-2.36a.25.25 0 0 1 .192-.41zm-11 2h3.932a.25.25 0 0 0 .192-.41L2.692 6.23a.25.25 0 0 0-.384 0L.342 8.59A.25.25 0 0 0 .534 9z\"/><path fill-rule=\"evenodd\" d=\"M8 3c-1.552 0-2.94.707-3.857 1.818a.5.5 0 1 1-.771-.636A6.002 6.002 0 0 1 13.917 7H12.9A5.002 5.002 0 0 0 8 3zM3.1 9a5.002 5.002 0 0 0 8.757 2.182.5.5 0 1 1 .771.636A6.002 6.002 0 0 1 2.083 9H3.1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowReturnLeft = /*#__PURE__*/ makeIcon(\n  'ArrowReturnLeft',\n  '<path fill-rule=\"evenodd\" d=\"M14.5 1.5a.5.5 0 0 1 .5.5v4.8a2.5 2.5 0 0 1-2.5 2.5H2.707l3.347 3.346a.5.5 0 0 1-.708.708l-4.2-4.2a.5.5 0 0 1 0-.708l4-4a.5.5 0 1 1 .708.708L2.707 8.3H12.5A1.5 1.5 0 0 0 14 6.8V2a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowReturnRight = /*#__PURE__*/ makeIcon(\n  'ArrowReturnRight',\n  '<path fill-rule=\"evenodd\" d=\"M1.5 1.5A.5.5 0 0 0 1 2v4.8a2.5 2.5 0 0 0 2.5 2.5h9.793l-3.347 3.346a.5.5 0 0 0 .708.708l4.2-4.2a.5.5 0 0 0 0-.708l-4-4a.5.5 0 0 0-.708.708L13.293 8.3H3.5A1.5 1.5 0 0 1 2 6.8V2a.5.5 0 0 0-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRight = /*#__PURE__*/ makeIcon(\n  'ArrowRight',\n  '<path fill-rule=\"evenodd\" d=\"M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRightCircle = /*#__PURE__*/ makeIcon(\n  'ArrowRightCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M4 8a.5.5 0 0 0 .5.5h5.793l-2.147 2.146a.5.5 0 0 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 1 0-.708.708L10.293 7.5H4.5A.5.5 0 0 0 4 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRightCircleFill = /*#__PURE__*/ makeIcon(\n  'ArrowRightCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-11.5.5a.5.5 0 0 1 0-1h5.793L8.146 5.354a.5.5 0 1 1 .708-.708l3 3a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708-.708L10.293 8.5H4.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRightShort = /*#__PURE__*/ makeIcon(\n  'ArrowRightShort',\n  '<path fill-rule=\"evenodd\" d=\"M4 8a.5.5 0 0 1 .5-.5h5.793L8.146 5.354a.5.5 0 1 1 .708-.708l3 3a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708-.708L10.293 8.5H4.5A.5.5 0 0 1 4 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRightSquare = /*#__PURE__*/ makeIcon(\n  'ArrowRightSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M4 8a.5.5 0 0 0 .5.5h5.793l-2.147 2.146a.5.5 0 0 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 1 0-.708.708L10.293 7.5H4.5A.5.5 0 0 0 4 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRightSquareFill = /*#__PURE__*/ makeIcon(\n  'ArrowRightSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm2.5 8.5a.5.5 0 0 1 0-1h5.793L8.146 5.354a.5.5 0 1 1 .708-.708l3 3a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708-.708L10.293 8.5H4.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUp = /*#__PURE__*/ makeIcon(\n  'ArrowUp',\n  '<path fill-rule=\"evenodd\" d=\"M8 15a.5.5 0 0 0 .5-.5V2.707l3.146 3.147a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 1 0 .708.708L7.5 2.707V14.5a.5.5 0 0 0 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpCircle = /*#__PURE__*/ makeIcon(\n  'ArrowUpCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M8 12a.5.5 0 0 0 .5-.5V5.707l2.146 2.147a.5.5 0 0 0 .708-.708l-3-3a.5.5 0 0 0-.708 0l-3 3a.5.5 0 1 0 .708.708L7.5 5.707V11.5a.5.5 0 0 0 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpCircleFill = /*#__PURE__*/ makeIcon(\n  'ArrowUpCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-7.5 3.5a.5.5 0 0 1-1 0V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707V11.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpLeft = /*#__PURE__*/ makeIcon(\n  'ArrowUpLeft',\n  '<path fill-rule=\"evenodd\" d=\"M2 2.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1H3.707l10.147 10.146a.5.5 0 0 1-.708.708L3 3.707V8.5a.5.5 0 0 1-1 0v-6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpLeftCircle = /*#__PURE__*/ makeIcon(\n  'ArrowUpLeftCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M10.828 10.828a.5.5 0 0 1-.707 0L6.025 6.732V9.5a.5.5 0 0 1-1 0V5.525a.5.5 0 0 1 .5-.5H9.5a.5.5 0 0 1 0 1H6.732l4.096 4.096a.5.5 0 0 1 0 .707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpLeftCircleFill = /*#__PURE__*/ makeIcon(\n  'ArrowUpLeftCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-5.879 2.828a.5.5 0 1 0 .707-.707L6.732 6.025H9.5a.5.5 0 0 0 0-1H5.525a.5.5 0 0 0-.5.5V9.5a.5.5 0 1 0 1 0V6.732l4.096 4.096z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpLeftSquare = /*#__PURE__*/ makeIcon(\n  'ArrowUpLeftSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M10.828 10.828a.5.5 0 0 1-.707 0L6.025 6.732V9.5a.5.5 0 0 1-1 0V5.525a.5.5 0 0 1 .5-.5H9.5a.5.5 0 0 1 0 1H6.732l4.096 4.096a.5.5 0 0 1 0 .707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpLeftSquareFill = /*#__PURE__*/ makeIcon(\n  'ArrowUpLeftSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm8.121 10.828a.5.5 0 1 0 .707-.707L6.732 6.025H9.5a.5.5 0 0 0 0-1H5.525a.5.5 0 0 0-.5.5V9.5a.5.5 0 0 0 1 0V6.732l4.096 4.096z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpRight = /*#__PURE__*/ makeIcon(\n  'ArrowUpRight',\n  '<path fill-rule=\"evenodd\" d=\"M14 2.5a.5.5 0 0 0-.5-.5h-6a.5.5 0 0 0 0 1h4.793L2.146 13.146a.5.5 0 0 0 .708.708L13 3.707V8.5a.5.5 0 0 0 1 0v-6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpRightCircle = /*#__PURE__*/ makeIcon(\n  'ArrowUpRightCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M5.172 10.828a.5.5 0 0 0 .707 0l4.096-4.096V9.5a.5.5 0 1 0 1 0V5.525a.5.5 0 0 0-.5-.5H6.5a.5.5 0 0 0 0 1h2.768l-4.096 4.096a.5.5 0 0 0 0 .707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpRightCircleFill = /*#__PURE__*/ makeIcon(\n  'ArrowUpRightCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.879 10.828a.5.5 0 1 1-.707-.707l4.096-4.096H6.5a.5.5 0 0 1 0-1h3.975a.5.5 0 0 1 .5.5V9.5a.5.5 0 0 1-1 0V6.732l-4.096 4.096z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpRightSquare = /*#__PURE__*/ makeIcon(\n  'ArrowUpRightSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M5.172 10.828a.5.5 0 0 0 .707 0l4.096-4.096V9.5a.5.5 0 1 0 1 0V5.525a.5.5 0 0 0-.5-.5H6.5a.5.5 0 0 0 0 1h2.768l-4.096 4.096a.5.5 0 0 0 0 .707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpRightSquareFill = /*#__PURE__*/ makeIcon(\n  'ArrowUpRightSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm3.879 10.828a.5.5 0 1 1-.707-.707l4.096-4.096H6.5a.5.5 0 0 1 0-1h3.975a.5.5 0 0 1 .5.5V9.5a.5.5 0 0 1-1 0V6.732l-4.096 4.096z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpShort = /*#__PURE__*/ makeIcon(\n  'ArrowUpShort',\n  '<path fill-rule=\"evenodd\" d=\"M8 12a.5.5 0 0 0 .5-.5V5.707l2.146 2.147a.5.5 0 0 0 .708-.708l-3-3a.5.5 0 0 0-.708 0l-3 3a.5.5 0 1 0 .708.708L7.5 5.707V11.5a.5.5 0 0 0 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpSquare = /*#__PURE__*/ makeIcon(\n  'ArrowUpSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M8 12a.5.5 0 0 0 .5-.5V5.707l2.146 2.147a.5.5 0 0 0 .708-.708l-3-3a.5.5 0 0 0-.708 0l-3 3a.5.5 0 1 0 .708.708L7.5 5.707V11.5a.5.5 0 0 0 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpSquareFill = /*#__PURE__*/ makeIcon(\n  'ArrowUpSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 11.5a.5.5 0 0 1-1 0V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707V11.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowsAngleContract = /*#__PURE__*/ makeIcon(\n  'ArrowsAngleContract',\n  '<path fill-rule=\"evenodd\" d=\"M.172 15.828a.5.5 0 0 0 .707 0l4.096-4.096V14.5a.5.5 0 1 0 1 0v-3.975a.5.5 0 0 0-.5-.5H1.5a.5.5 0 0 0 0 1h2.768L.172 15.121a.5.5 0 0 0 0 .707zM15.828.172a.5.5 0 0 0-.707 0l-4.096 4.096V1.5a.5.5 0 1 0-1 0v3.975a.5.5 0 0 0 .5.5H14.5a.5.5 0 0 0 0-1h-2.768L15.828.879a.5.5 0 0 0 0-.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowsAngleExpand = /*#__PURE__*/ makeIcon(\n  'ArrowsAngleExpand',\n  '<path fill-rule=\"evenodd\" d=\"M5.828 10.172a.5.5 0 0 0-.707 0l-4.096 4.096V11.5a.5.5 0 0 0-1 0v3.975a.5.5 0 0 0 .5.5H4.5a.5.5 0 0 0 0-1H1.732l4.096-4.096a.5.5 0 0 0 0-.707zm4.344-4.344a.5.5 0 0 0 .707 0l4.096-4.096V4.5a.5.5 0 1 0 1 0V.525a.5.5 0 0 0-.5-.5H11.5a.5.5 0 0 0 0 1h2.768l-4.096 4.096a.5.5 0 0 0 0 .707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowsCollapse = /*#__PURE__*/ makeIcon(\n  'ArrowsCollapse',\n  '<path fill-rule=\"evenodd\" d=\"M1 8a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13A.5.5 0 0 1 1 8zm7-8a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7.5 4.293V.5A.5.5 0 0 1 8 0zm-.5 11.707l-1.146 1.147a.5.5 0 0 1-.708-.708l2-2a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 11.707V15.5a.5.5 0 0 1-1 0v-3.793z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowsExpand = /*#__PURE__*/ makeIcon(\n  'ArrowsExpand',\n  '<path fill-rule=\"evenodd\" d=\"M1 8a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13A.5.5 0 0 1 1 8zM7.646.146a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 1.707V5.5a.5.5 0 0 1-1 0V1.707L6.354 2.854a.5.5 0 1 1-.708-.708l2-2zM8 10a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L7.5 14.293V10.5A.5.5 0 0 1 8 10z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowsFullscreen = /*#__PURE__*/ makeIcon(\n  'ArrowsFullscreen',\n  '<path fill-rule=\"evenodd\" d=\"M5.828 10.172a.5.5 0 0 0-.707 0l-4.096 4.096V11.5a.5.5 0 0 0-1 0v3.975a.5.5 0 0 0 .5.5H4.5a.5.5 0 0 0 0-1H1.732l4.096-4.096a.5.5 0 0 0 0-.707zm4.344 0a.5.5 0 0 1 .707 0l4.096 4.096V11.5a.5.5 0 1 1 1 0v3.975a.5.5 0 0 1-.5.5H11.5a.5.5 0 0 1 0-1h2.768l-4.096-4.096a.5.5 0 0 1 0-.707zm0-4.344a.5.5 0 0 0 .707 0l4.096-4.096V4.5a.5.5 0 1 0 1 0V.525a.5.5 0 0 0-.5-.5H11.5a.5.5 0 0 0 0 1h2.768l-4.096 4.096a.5.5 0 0 0 0 .707zm-4.344 0a.5.5 0 0 1-.707 0L1.025 1.732V4.5a.5.5 0 0 1-1 0V.525a.5.5 0 0 1 .5-.5H4.5a.5.5 0 0 1 0 1H1.732l4.096 4.096a.5.5 0 0 1 0 .707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowsMove = /*#__PURE__*/ makeIcon(\n  'ArrowsMove',\n  '<path fill-rule=\"evenodd\" d=\"M7.646.146a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 1.707V5.5a.5.5 0 0 1-1 0V1.707L6.354 2.854a.5.5 0 1 1-.708-.708l2-2zM8 10a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L7.5 14.293V10.5A.5.5 0 0 1 8 10zM.146 8.354a.5.5 0 0 1 0-.708l2-2a.5.5 0 1 1 .708.708L1.707 7.5H5.5a.5.5 0 0 1 0 1H1.707l1.147 1.146a.5.5 0 0 1-.708.708l-2-2zM10 8a.5.5 0 0 1 .5-.5h3.793l-1.147-1.146a.5.5 0 0 1 .708-.708l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L14.293 8.5H10.5A.5.5 0 0 1 10 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAspectRatio = /*#__PURE__*/ makeIcon(\n  'AspectRatio',\n  '<path fill-rule=\"evenodd\" d=\"M0 3.5A1.5 1.5 0 0 1 1.5 2h13A1.5 1.5 0 0 1 16 3.5v9a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 12.5v-9zM1.5 3a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5h-13z\"/><path fill-rule=\"evenodd\" d=\"M2 4.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1H3v2.5a.5.5 0 0 1-1 0v-3zm12 7a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1 0-1H13V8.5a.5.5 0 0 1 1 0v3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAspectRatioFill = /*#__PURE__*/ makeIcon(\n  'AspectRatioFill',\n  '<path fill-rule=\"evenodd\" d=\"M1.5 2A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2h-13zm1 2a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 1 0V5h2.5a.5.5 0 0 0 0-1h-3zm11 8a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-1 0V11h-2.5a.5.5 0 0 0 0 1h3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAsterisk = /*#__PURE__*/ makeIcon(\n  'Asterisk',\n  '<path fill-rule=\"evenodd\" d=\"M8 0a1 1 0 0 1 1 1v5.268l4.562-2.634a1 1 0 1 1 1 1.732L10 8l4.562 2.634a1 1 0 1 1-1 1.732L9 9.732V15a1 1 0 1 1-2 0V9.732l-4.562 2.634a1 1 0 1 1-1-1.732L6 8 1.438 5.366a1 1 0 0 1 1-1.732L7 6.268V1a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAt = /*#__PURE__*/ makeIcon(\n  'At',\n  '<path fill-rule=\"evenodd\" d=\"M13.106 7.222c0-2.967-2.249-5.032-5.482-5.032-3.35 0-5.646 2.318-5.646 5.702 0 3.493 2.235 5.708 5.762 5.708.862 0 1.689-.123 2.304-.335v-.862c-.43.199-1.354.328-2.29.328-2.926 0-4.813-1.88-4.813-4.798 0-2.844 1.921-4.881 4.594-4.881 2.735 0 4.608 1.688 4.608 4.156 0 1.682-.554 2.769-1.416 2.769-.492 0-.772-.28-.772-.76V5.206H8.923v.834h-.11c-.266-.595-.881-.964-1.6-.964-1.4 0-2.378 1.162-2.378 2.823 0 1.737.957 2.906 2.379 2.906.8 0 1.415-.39 1.709-1.087h.11c.081.67.703 1.148 1.503 1.148 1.572 0 2.57-1.415 2.57-3.643zm-7.177.704c0-1.197.54-1.907 1.456-1.907.93 0 1.524.738 1.524 1.907S8.308 9.84 7.371 9.84c-.895 0-1.442-.725-1.442-1.914z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAward = /*#__PURE__*/ makeIcon(\n  'Award',\n  '<path fill-rule=\"evenodd\" d=\"M9.669.864L8 0 6.331.864l-1.858.282-.842 1.68-1.337 1.32L2.6 6l-.306 1.854 1.337 1.32.842 1.68 1.858.282L8 12l1.669-.864 1.858-.282.842-1.68 1.337-1.32L13.4 6l.306-1.854-1.337-1.32-.842-1.68L9.669.864zm1.196 1.193l-1.51-.229L8 1.126l-1.355.702-1.51.229-.684 1.365-1.086 1.072L3.614 6l-.25 1.506 1.087 1.072.684 1.365 1.51.229L8 10.874l1.356-.702 1.509-.229.684-1.365 1.086-1.072L12.387 6l.248-1.506-1.086-1.072-.684-1.365z\"/><path d=\"M4 11.794V16l4-1 4 1v-4.206l-2.018.306L8 13.126 6.018 12.1 4 11.794z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAwardFill = /*#__PURE__*/ makeIcon(\n  'AwardFill',\n  '<path d=\"M8 0l1.669.864 1.858.282.842 1.68 1.337 1.32L13.4 6l.306 1.854-1.337 1.32-.842 1.68-1.858.282L8 12l-1.669-.864-1.858-.282-.842-1.68-1.337-1.32L2.6 6l-.306-1.854 1.337-1.32.842-1.68L6.331.864 8 0z\"/><path d=\"M4 11.794V16l4-1 4 1v-4.206l-2.018.306L8 13.126 6.018 12.1 4 11.794z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBack = /*#__PURE__*/ makeIcon(\n  'Back',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v2h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2H2a2 2 0 0 1-2-2V2zm2-1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBackspace = /*#__PURE__*/ makeIcon(\n  'Backspace',\n  '<path fill-rule=\"evenodd\" d=\"M6.603 2h7.08a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-7.08a1 1 0 0 1-.76-.35L1 8l4.844-5.65A1 1 0 0 1 6.603 2zm7.08-1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-7.08a2 2 0 0 1-1.519-.698L.241 8.65a1 1 0 0 1 0-1.302L5.084 1.7A2 2 0 0 1 6.603 1h7.08zM5.829 5.146a.5.5 0 0 0 0 .708L7.976 8l-2.147 2.146a.5.5 0 0 0 .707.708l2.147-2.147 2.146 2.147a.5.5 0 0 0 .707-.708L9.39 8l2.146-2.146a.5.5 0 0 0-.707-.708L8.683 7.293 6.536 5.146a.5.5 0 0 0-.707 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBackspaceFill = /*#__PURE__*/ makeIcon(\n  'BackspaceFill',\n  '<path fill-rule=\"evenodd\" d=\"M15.683 3a2 2 0 0 0-2-2h-7.08a2 2 0 0 0-1.519.698L.241 7.35a1 1 0 0 0 0 1.302l4.843 5.65A2 2 0 0 0 6.603 15h7.08a2 2 0 0 0 2-2V3zM5.829 5.854a.5.5 0 1 1 .707-.708l2.147 2.147 2.146-2.147a.5.5 0 1 1 .707.708L9.39 8l2.146 2.146a.5.5 0 0 1-.707.708L8.683 8.707l-2.147 2.147a.5.5 0 0 1-.707-.708L7.976 8 5.829 5.854z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBackspaceReverse = /*#__PURE__*/ makeIcon(\n  'BackspaceReverse',\n  '<path fill-rule=\"evenodd\" d=\"M9.08 2H2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h7.08a1 1 0 0 0 .76-.35L14.682 8 9.839 2.35A1 1 0 0 0 9.08 2zM2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h7.08a2 2 0 0 0 1.519-.698l4.843-5.651a1 1 0 0 0 0-1.302L10.6 1.7A2 2 0 0 0 9.08 1H2zm7.854 4.146a.5.5 0 0 1 0 .708L7.707 8l2.147 2.146a.5.5 0 0 1-.708.708L7 8.707l-2.146 2.147a.5.5 0 0 1-.708-.708L6.293 8 4.146 5.854a.5.5 0 1 1 .708-.708L7 7.293l2.146-2.147a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBackspaceReverseFill = /*#__PURE__*/ makeIcon(\n  'BackspaceReverseFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 3a2 2 0 0 1 2-2h7.08a2 2 0 0 1 1.519.698l4.843 5.651a1 1 0 0 1 0 1.302L10.6 14.3a2 2 0 0 1-1.52.7H2a2 2 0 0 1-2-2V3zm9.854 2.854a.5.5 0 0 0-.708-.708L7 7.293 4.854 5.146a.5.5 0 1 0-.708.708L6.293 8l-2.147 2.146a.5.5 0 0 0 .708.708L7 8.707l2.146 2.147a.5.5 0 0 0 .708-.708L7.707 8l2.147-2.146z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadge4k = /*#__PURE__*/ makeIcon(\n  'Badge4k',\n  '<path d=\"M4.807 5.001C4.021 6.298 3.203 7.6 2.5 8.917v.971h2.905V11h1.112V9.888h.733V8.93h-.733V5.001h-1.71zm-1.23 3.93v-.032a46.781 46.781 0 0 1 1.766-3.001h.062V8.93H3.577zm9.831-3.93h-1.306L9.835 7.687h-.057V5H8.59v6h1.187V9.075l.615-.699L12.072 11H13.5l-2.232-3.415 2.14-2.584z\"/><path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadge4kFill = /*#__PURE__*/ makeIcon(\n  'Badge4kFill',\n  '<path d=\"M3.577 8.9v.03h1.828V5.898h-.062a46.781 46.781 0 0 0-1.766 3.001z\"/><path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm2.372 3.715l.435-.714h1.71v3.93h.733v.957h-.733V11H5.405V9.888H2.5v-.971c.574-1.077 1.225-2.142 1.872-3.202zm7.73-.714h1.306l-2.14 2.584L13.5 11h-1.428l-1.679-2.624-.615.7V11H8.59V5.001h1.187v2.686h.057L12.102 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadge8k = /*#__PURE__*/ makeIcon(\n  'Badge8k',\n  '<path d=\"M4.837 11.114c1.406 0 2.333-.725 2.333-1.766 0-.945-.712-1.38-1.256-1.49v-.053c.496-.15 1.02-.55 1.02-1.331 0-.914-.831-1.587-2.084-1.587-1.257 0-2.087.673-2.087 1.587 0 .773.51 1.177 1.02 1.331v.053c-.546.11-1.258.54-1.258 1.494 0 1.042.906 1.762 2.312 1.762zm.013-3.643c-.545 0-.95-.356-.95-.866s.405-.852.95-.852c.545 0 .945.343.945.852 0 .51-.4.866-.945.866zm0 2.786c-.65 0-1.142-.395-1.142-.984S4.2 8.28 4.85 8.28c.646 0 1.143.404 1.143.993s-.497.984-1.143.984zM13.408 5h-1.306L9.835 7.685h-.057V5H8.59v5.998h1.187V9.075l.615-.699 1.679 2.623H13.5l-2.232-3.414L13.408 5z\"/><path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadge8kFill = /*#__PURE__*/ makeIcon(\n  'Badge8kFill',\n  '<path d=\"M3.9 6.605c0 .51.405.866.95.866.545 0 .945-.356.945-.866s-.4-.852-.945-.852c-.545 0-.95.343-.95.852zm-.192 2.668c0 .589.492.984 1.142.984.646 0 1.143-.395 1.143-.984S5.496 8.28 4.85 8.28c-.65 0-1.142.404-1.142.993z\"/><path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm5.17 7.348c0 1.041-.927 1.766-2.333 1.766-1.406 0-2.312-.72-2.312-1.762 0-.954.712-1.384 1.257-1.494v-.053c-.51-.154-1.02-.558-1.02-1.331 0-.914.831-1.587 2.088-1.587 1.253 0 2.083.673 2.083 1.587 0 .782-.523 1.182-1.02 1.331v.053c.545.11 1.257.545 1.257 1.49zM12.102 5h1.306l-2.14 2.584 2.232 3.415h-1.428l-1.679-2.624-.615.699v1.925H8.59V5h1.187v2.685h.057L12.102 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeAd = /*#__PURE__*/ makeIcon(\n  'BadgeAd',\n  '<path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path d=\"M3.7 11l.47-1.542h2.004L6.644 11h1.261L5.901 5.001H4.513L2.5 11h1.2zm1.503-4.852l.734 2.426H4.416l.734-2.426h.053zm4.759.128c-1.059 0-1.753.765-1.753 2.043v.695c0 1.279.685 2.043 1.74 2.043.677 0 1.222-.33 1.367-.804h.057V11h1.138V4.685h-1.16v2.36h-.053c-.18-.475-.68-.77-1.336-.77zm.387.923c.58 0 1.002.44 1.002 1.138v.602c0 .76-.396 1.2-.984 1.2-.598 0-.972-.449-.972-1.248v-.453c0-.795.37-1.24.954-1.24z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeAdFill = /*#__PURE__*/ makeIcon(\n  'BadgeAdFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm6.209 6.32c0-1.28.694-2.044 1.753-2.044.655 0 1.156.294 1.336.769h.053v-2.36h1.16V11h-1.138v-.747h-.057c-.145.474-.69.804-1.367.804-1.055 0-1.74-.764-1.74-2.043v-.695zm3.142.017c0-.699-.422-1.138-1.002-1.138-.584 0-.954.444-.954 1.239v.453c0 .8.374 1.248.972 1.248.588 0 .984-.44.984-1.2v-.602zM4.17 9.457L3.7 11H2.5l2.013-5.999H5.9L7.905 11H6.644l-.47-1.542H4.17zm1.767-.883l-.734-2.426H5.15l-.734 2.426h1.52z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeCc = /*#__PURE__*/ makeIcon(\n  'BadgeCc',\n  '<path d=\"M3.708 7.755c0-1.111.488-1.753 1.319-1.753.681 0 1.138.47 1.186 1.107H7.36V7c-.052-1.186-1.024-2-2.342-2C3.414 5 2.5 6.05 2.5 7.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114H6.213c-.048.615-.496 1.05-1.186 1.05-.84 0-1.319-.62-1.319-1.727v-.743zm6.14 0c0-1.111.488-1.753 1.318-1.753.682 0 1.139.47 1.187 1.107H13.5V7c-.053-1.186-1.024-2-2.342-2C9.554 5 8.64 6.05 8.64 7.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.497 1.05-1.187 1.05-.839 0-1.318-.62-1.318-1.727v-.743z\"/><path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeCcFill = /*#__PURE__*/ makeIcon(\n  'BadgeCcFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm3.027 4.002c-.83 0-1.319.642-1.319 1.753v.743c0 1.107.48 1.727 1.319 1.727.69 0 1.138-.435 1.186-1.05H7.36v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747C2.5 6.051 3.414 5 5.018 5c1.318 0 2.29.813 2.342 2v.11H6.213c-.048-.638-.505-1.108-1.186-1.108zm6.14 0c-.831 0-1.319.642-1.319 1.753v.743c0 1.107.48 1.727 1.318 1.727.69 0 1.139-.435 1.187-1.05H13.5v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.751 2.518-2.751 1.318 0 2.29.813 2.342 2v.11h-1.147c-.048-.638-.505-1.108-1.187-1.108z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeHd = /*#__PURE__*/ makeIcon(\n  'BadgeHd',\n  '<path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path d=\"M7.396 11V5.001H6.209v2.44H3.687V5H2.5v6h1.187V8.43h2.522V11h1.187zM8.5 5.001V11h2.188c1.811 0 2.685-1.107 2.685-3.015 0-1.894-.86-2.984-2.684-2.984H8.5zm1.187.967h.843c1.112 0 1.622.686 1.622 2.04 0 1.353-.505 2.02-1.622 2.02h-.843v-4.06z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeHdFill = /*#__PURE__*/ makeIcon(\n  'BadgeHdFill',\n  '<path d=\"M10.53 5.968h-.843v4.06h.843c1.117 0 1.622-.667 1.622-2.02 0-1.354-.51-2.04-1.622-2.04z\"/><path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm5.396 3.001V11H6.209V8.43H3.687V11H2.5V5.001h1.187v2.44h2.522V5h1.187zM8.5 11V5.001h2.188c1.824 0 2.685 1.09 2.685 2.984C13.373 9.893 12.5 11 10.69 11H8.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeTm = /*#__PURE__*/ makeIcon(\n  'BadgeTm',\n  '<path d=\"M5.295 11V5.995H7V5H2.403v.994h1.701V11h1.19zm3.397 0V7.01h.058l1.428 3.239h.773l1.42-3.24h.057V11H13.5V5.001h-1.2l-1.71 3.894h-.039l-1.71-3.894H7.634V11h1.06z\"/><path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeTmFill = /*#__PURE__*/ makeIcon(\n  'BadgeTmFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm3.295 3.995V11H4.104V5.995h-1.7V5H7v.994H5.295zM8.692 7.01V11H7.633V5.001h1.209l1.71 3.894h.039l1.71-3.894H13.5V11h-1.072V7.01h-.057l-1.42 3.239h-.773L8.75 7.008h-.058z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeVo = /*#__PURE__*/ makeIcon(\n  'BadgeVo',\n  '<path d=\"M4.508 11h1.429l1.99-5.999H6.61L5.277 9.708H5.22L3.875 5.001H2.5L4.508 11zM13.5 8.39v-.77c0-1.696-.962-2.733-2.566-2.733-1.604 0-2.571 1.029-2.571 2.734v.769c0 1.691.967 2.724 2.57 2.724 1.605 0 2.567-1.033 2.567-2.724zm-1.204-.778v.782c0 1.156-.571 1.732-1.362 1.732-.796 0-1.363-.576-1.363-1.732v-.782c0-1.156.567-1.736 1.363-1.736.79 0 1.362.58 1.362 1.736z\"/><path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeVoFill = /*#__PURE__*/ makeIcon(\n  'BadgeVoFill',\n  '<path d=\"M12.296 8.394v-.782c0-1.156-.571-1.736-1.362-1.736-.796 0-1.363.58-1.363 1.736v.782c0 1.156.567 1.732 1.363 1.732.79 0 1.362-.576 1.362-1.732z\"/><path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm11.5 5.62v.77c0 1.691-.962 2.724-2.566 2.724-1.604 0-2.571-1.033-2.571-2.724v-.77c0-1.704.967-2.733 2.57-2.733 1.605 0 2.567 1.037 2.567 2.734zM5.937 11H4.508L2.5 5.001h1.375L5.22 9.708h.057L6.61 5.001h1.318L5.937 11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBag = /*#__PURE__*/ makeIcon(\n  'Bag',\n  '<path fill-rule=\"evenodd\" d=\"M8 1a2.5 2.5 0 0 0-2.5 2.5V4h5v-.5A2.5 2.5 0 0 0 8 1zm3.5 3v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4h-3.5zM2 5v9a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V5H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBagCheck = /*#__PURE__*/ makeIcon(\n  'BagCheck',\n  '<path fill-rule=\"evenodd\" d=\"M8 1a2.5 2.5 0 0 0-2.5 2.5V4h5v-.5A2.5 2.5 0 0 0 8 1zm3.5 3v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4h-3.5zM2 5v9a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V5H2z\"/><path fill-rule=\"evenodd\" d=\"M10.854 8.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L7.5 10.793l2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBagCheckFill = /*#__PURE__*/ makeIcon(\n  'BagCheckFill',\n  '<path fill-rule=\"evenodd\" d=\"M5.5 3.5a2.5 2.5 0 0 1 5 0V4h-5v-.5zm6 0V4H15v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V4h3.5v-.5a3.5 3.5 0 1 1 7 0zm-.646 5.354a.5.5 0 0 0-.708-.708L7.5 10.793 6.354 9.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBagDash = /*#__PURE__*/ makeIcon(\n  'BagDash',\n  '<path fill-rule=\"evenodd\" d=\"M8 1a2.5 2.5 0 0 0-2.5 2.5V4h5v-.5A2.5 2.5 0 0 0 8 1zm3.5 3v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4h-3.5zM2 5v9a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V5H2z\"/><path fill-rule=\"evenodd\" d=\"M5.5 10a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBagDashFill = /*#__PURE__*/ makeIcon(\n  'BagDashFill',\n  '<path fill-rule=\"evenodd\" d=\"M5.5 3.5a2.5 2.5 0 0 1 5 0V4h-5v-.5zm6 0V4H15v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V4h3.5v-.5a3.5 3.5 0 1 1 7 0zM6 9.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1H6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBagFill = /*#__PURE__*/ makeIcon(\n  'BagFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 1a2.5 2.5 0 0 0-2.5 2.5V4h5v-.5A2.5 2.5 0 0 0 8 1zm3.5 3v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4h-3.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBagPlus = /*#__PURE__*/ makeIcon(\n  'BagPlus',\n  '<path fill-rule=\"evenodd\" d=\"M8 1a2.5 2.5 0 0 0-2.5 2.5V4h5v-.5A2.5 2.5 0 0 0 8 1zm3.5 3v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4h-3.5zM2 5v9a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V5H2z\"/><path fill-rule=\"evenodd\" d=\"M8 7.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V12a.5.5 0 0 1-1 0v-1.5H6a.5.5 0 0 1 0-1h1.5V8a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBagPlusFill = /*#__PURE__*/ makeIcon(\n  'BagPlusFill',\n  '<path fill-rule=\"evenodd\" d=\"M5.5 3.5a2.5 2.5 0 0 1 5 0V4h-5v-.5zm6 0V4H15v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V4h3.5v-.5a3.5 3.5 0 1 1 7 0zM8.5 8a.5.5 0 0 0-1 0v1.5H6a.5.5 0 0 0 0 1h1.5V12a.5.5 0 0 0 1 0v-1.5H10a.5.5 0 0 0 0-1H8.5V8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBagX = /*#__PURE__*/ makeIcon(\n  'BagX',\n  '<path fill-rule=\"evenodd\" d=\"M8 1a2.5 2.5 0 0 0-2.5 2.5V4h5v-.5A2.5 2.5 0 0 0 8 1zm3.5 3v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4h-3.5zM2 5v9a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V5H2z\"/><path fill-rule=\"evenodd\" d=\"M6.146 8.146a.5.5 0 0 1 .708 0L8 9.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 10l1.147 1.146a.5.5 0 0 1-.708.708L8 10.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 10 6.146 8.854a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBagXFill = /*#__PURE__*/ makeIcon(\n  'BagXFill',\n  '<path fill-rule=\"evenodd\" d=\"M5.5 3.5a2.5 2.5 0 0 1 5 0V4h-5v-.5zm6 0V4H15v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V4h3.5v-.5a3.5 3.5 0 1 1 7 0zM6.854 8.146a.5.5 0 1 0-.708.708L7.293 10l-1.147 1.146a.5.5 0 0 0 .708.708L8 10.707l1.146 1.147a.5.5 0 0 0 .708-.708L8.707 10l1.147-1.146a.5.5 0 0 0-.708-.708L8 9.293 6.854 8.146z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBarChart = /*#__PURE__*/ makeIcon(\n  'BarChart',\n  '<path fill-rule=\"evenodd\" d=\"M4 11H2v3h2v-3zm5-4H7v7h2V7zm5-5h-2v12h2V2zm-2-1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1h-2zM6 7a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V7zm-5 4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1v-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBarChartFill = /*#__PURE__*/ makeIcon(\n  'BarChartFill',\n  '<rect width=\"4\" height=\"5\" x=\"1\" y=\"10\" rx=\"1\"/><rect width=\"4\" height=\"9\" x=\"6\" y=\"6\" rx=\"1\"/><rect width=\"4\" height=\"14\" x=\"11\" y=\"1\" rx=\"1\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBarChartLine = /*#__PURE__*/ makeIcon(\n  'BarChartLine',\n  '<path fill-rule=\"evenodd\" d=\"M11 2a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v12h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1v-3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3h1V7a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v7h1V2zm1 12h2V2h-2v12zm-3 0V7H7v7h2zm-5 0v-3H2v3h2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBarChartLineFill = /*#__PURE__*/ makeIcon(\n  'BarChartLineFill',\n  '<path fill-rule=\"evenodd\" d=\"M11 2a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v12h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1v-3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3h1V7a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v7h1V2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBarChartSteps = /*#__PURE__*/ makeIcon(\n  'BarChartSteps',\n  '<path fill-rule=\"evenodd\" d=\"M.5 0a.5.5 0 0 1 .5.5v15a.5.5 0 0 1-1 0V.5A.5.5 0 0 1 .5 0z\"/><rect width=\"5\" height=\"2\" x=\"2\" y=\"1\" rx=\".5\"/><rect width=\"8\" height=\"2\" x=\"4\" y=\"5\" rx=\".5\"/><path d=\"M6 9.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-6a.5.5 0 0 1-.5-.5v-1zm2 4a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBasket = /*#__PURE__*/ makeIcon(\n  'Basket',\n  '<path fill-rule=\"evenodd\" d=\"M5.757 1.071a.5.5 0 0 1 .172.686L3.383 6h9.234L10.07 1.757a.5.5 0 1 1 .858-.514L13.783 6H15a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1v4.5a2.5 2.5 0 0 1-2.5 2.5h-9A2.5 2.5 0 0 1 1 13.5V9a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h1.217L5.07 1.243a.5.5 0 0 1 .686-.172zM2 9v4.5A1.5 1.5 0 0 0 3.5 15h9a1.5 1.5 0 0 0 1.5-1.5V9H2zM1 7v1h14V7H1zm3 3a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0v-3A.5.5 0 0 1 4 10zm2 0a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0v-3A.5.5 0 0 1 6 10zm2 0a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0v-3A.5.5 0 0 1 8 10zm2 0a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 1 .5-.5zm2 0a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBasket2 = /*#__PURE__*/ makeIcon(\n  'Basket2',\n  '<path d=\"M4 10a1 1 0 0 1 2 0v2a1 1 0 0 1-2 0v-2zm3 0a1 1 0 0 1 2 0v2a1 1 0 0 1-2 0v-2zm3 0a1 1 0 1 1 2 0v2a1 1 0 0 1-2 0v-2z\"/><path fill-rule=\"evenodd\" d=\"M5.757 1.071a.5.5 0 0 1 .172.686L3.383 6h9.234L10.07 1.757a.5.5 0 1 1 .858-.514L13.783 6H15.5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-.623l-1.844 6.456a.75.75 0 0 1-.722.544H3.69a.75.75 0 0 1-.722-.544L1.123 8H.5a.5.5 0 0 1-.5-.5v-1A.5.5 0 0 1 .5 6h1.717L5.07 1.243a.5.5 0 0 1 .686-.172zM2.163 8l1.714 6h8.246l1.714-6H2.163z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBasket2Fill = /*#__PURE__*/ makeIcon(\n  'Basket2Fill',\n  '<path fill-rule=\"evenodd\" d=\"M5.929 1.757a.5.5 0 1 0-.858-.514L2.217 6H.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h.623l1.844 6.456A.75.75 0 0 0 3.69 15h8.622a.75.75 0 0 0 .722-.544L14.877 8h.623a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1.717L10.93 1.243a.5.5 0 1 0-.858.514L12.617 6H3.383L5.93 1.757zM4 10a1 1 0 0 1 2 0v2a1 1 0 1 1-2 0v-2zm3 0a1 1 0 0 1 2 0v2a1 1 0 1 1-2 0v-2zm4-1a1 1 0 0 0-1 1v2a1 1 0 1 0 2 0v-2a1 1 0 0 0-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBasket3 = /*#__PURE__*/ makeIcon(\n  'Basket3',\n  '<path fill-rule=\"evenodd\" d=\"M5.757 1.071a.5.5 0 0 1 .172.686L3.383 6h9.234L10.07 1.757a.5.5 0 1 1 .858-.514L13.783 6H15.5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H.5a.5.5 0 0 1-.5-.5v-1A.5.5 0 0 1 .5 6h1.717L5.07 1.243a.5.5 0 0 1 .686-.172zM3.394 15l-1.48-6h-.97l1.525 6.426a.75.75 0 0 0 .729.574h9.606a.75.75 0 0 0 .73-.574L15.056 9h-.972l-1.479 6h-9.21z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBasket3Fill = /*#__PURE__*/ makeIcon(\n  'Basket3Fill',\n  '<path fill-rule=\"evenodd\" d=\"M5.757 1.071a.5.5 0 0 1 .172.686L3.383 6h9.234L10.07 1.757a.5.5 0 1 1 .858-.514L13.783 6H15.5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H.5a.5.5 0 0 1-.5-.5v-1A.5.5 0 0 1 .5 6h1.717L5.07 1.243a.5.5 0 0 1 .686-.172z\"/><path d=\"M2.468 15.426L.943 9h14.114l-1.525 6.426a.75.75 0 0 1-.729.574H3.197a.75.75 0 0 1-.73-.574z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBasketFill = /*#__PURE__*/ makeIcon(\n  'BasketFill',\n  '<path fill-rule=\"evenodd\" d=\"M5.071 1.243a.5.5 0 0 1 .858.514L3.383 6h9.234L10.07 1.757a.5.5 0 1 1 .858-.514L13.783 6H15.5a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5H15v5a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V9H.5a.5.5 0 0 1-.5-.5v-2A.5.5 0 0 1 .5 6h1.717L5.07 1.243zM3.5 10.5a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0v-3zm2.5 0a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0v-3zm2.5 0a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0v-3zm2.5 0a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0v-3zm2.5 0a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0v-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBattery = /*#__PURE__*/ makeIcon(\n  'Battery',\n  '<path fill-rule=\"evenodd\" d=\"M12 5H2a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zM2 4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2H2z\"/><path d=\"M14.5 9.5a1.5 1.5 0 0 0 0-3v3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBatteryCharging = /*#__PURE__*/ makeIcon(\n  'BatteryCharging',\n  '<path d=\"M14.5 9.5a1.5 1.5 0 0 0 0-3v3z\"/><path fill-rule=\"evenodd\" d=\"M9.585 2.568a.5.5 0 0 1 .226.58L8.677 6.832h1.99a.5.5 0 0 1 .364.843l-5.334 5.667a.5.5 0 0 1-.842-.49L5.99 9.167H4a.5.5 0 0 1-.364-.843l5.333-5.667a.5.5 0 0 1 .616-.09z\"/><path fill-rule=\"evenodd\" d=\"M6.332 4H2a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h2.072l.307-1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h3.391l.941-1zM4.45 6H2v4h1.313a1.5 1.5 0 0 1-.405-2.361L4.45 6zm.976 5l-.308 1H6.96l.21-.224h.001l.73-.776H6.53l-.085.09.028-.09H5.426zm1.354-1H5.733l.257-.833H4a.5.5 0 0 1-.364-.843l.793-.843L5.823 6h1.373L5.157 8.167h1.51a.5.5 0 0 1 .478.647L6.78 10zm.69 0h1.374l1.394-1.482.793-.842a.5.5 0 0 0-.364-.843h-1.99L8.933 6H7.887l-.166.54-.199.646A.5.5 0 0 0 8 7.833h1.51L7.47 10zm.725-5H9.24l.308-1H7.706l-.942 1h1.374l.085-.09-.028.09zm2.4-1l-.308 1H12a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H9.276l-.942 1H12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-1.405zm-.378 6H12V8.02a1.499 1.499 0 0 1-.241.341L10.217 10zM12 6.646V6h-.646a1.5 1.5 0 0 1 .646.646z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBatteryFull = /*#__PURE__*/ makeIcon(\n  'BatteryFull',\n  '<path fill-rule=\"evenodd\" d=\"M12 5H2a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zM2 4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2H2z\"/><path d=\"M2 6h10v4H2V6zm12.5 3.5a1.5 1.5 0 0 0 0-3v3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBatteryHalf = /*#__PURE__*/ makeIcon(\n  'BatteryHalf',\n  '<path fill-rule=\"evenodd\" d=\"M12 5H2a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zM2 4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2H2z\"/><path d=\"M2 6h5v4H2V6zm12.5 3.5a1.5 1.5 0 0 0 0-3v3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBell = /*#__PURE__*/ makeIcon(\n  'Bell',\n  '<path d=\"M8 16a2 2 0 0 0 2-2H6a2 2 0 0 0 2 2z\"/><path fill-rule=\"evenodd\" d=\"M8 1.918l-.797.161A4.002 4.002 0 0 0 4 6c0 .628-.134 2.197-.459 3.742-.16.767-.376 1.566-.663 2.258h10.244c-.287-.692-.502-1.49-.663-2.258C12.134 8.197 12 6.628 12 6a4.002 4.002 0 0 0-3.203-3.92L8 1.917zM14.22 12c.223.447.481.801.78 1H1c.299-.199.557-.553.78-1C2.68 10.2 3 6.88 3 6c0-2.42 1.72-4.44 4.005-4.901a1 1 0 1 1 1.99 0A5.002 5.002 0 0 1 13 6c0 .88.32 4.2 1.22 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBellFill = /*#__PURE__*/ makeIcon(\n  'BellFill',\n  '<path d=\"M8 16a2 2 0 0 0 2-2H6a2 2 0 0 0 2 2zm.995-14.901a1 1 0 1 0-1.99 0A5.002 5.002 0 0 0 3 6c0 1.098-.5 6-2 7h14c-1.5-1-2-5.902-2-7 0-2.42-1.72-4.44-4.005-4.901z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBezier = /*#__PURE__*/ makeIcon(\n  'Bezier',\n  '<path fill-rule=\"evenodd\" d=\"M0 10.5A1.5 1.5 0 0 1 1.5 9h1A1.5 1.5 0 0 1 4 10.5v1A1.5 1.5 0 0 1 2.5 13h-1A1.5 1.5 0 0 1 0 11.5v-1zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zm10.5.5A1.5 1.5 0 0 1 13.5 9h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1a1.5 1.5 0 0 1-1.5-1.5v-1zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zM6 4.5A1.5 1.5 0 0 1 7.5 3h1A1.5 1.5 0 0 1 10 4.5v1A1.5 1.5 0 0 1 8.5 7h-1A1.5 1.5 0 0 1 6 5.5v-1zM7.5 4a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1z\"/><path d=\"M6 4.5H1.866a1 1 0 1 0 0 1h2.668A6.517 6.517 0 0 0 1.814 9H2.5c.123 0 .244.015.358.043a5.517 5.517 0 0 1 3.185-3.185A1.503 1.503 0 0 1 6 5.5v-1zm3.957 1.358A1.5 1.5 0 0 0 10 5.5v-1h4.134a1 1 0 1 1 0 1h-2.668a6.517 6.517 0 0 1 2.72 3.5H13.5c-.123 0-.243.015-.358.043a5.517 5.517 0 0 0-3.185-3.185z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBezier2 = /*#__PURE__*/ makeIcon(\n  'Bezier2',\n  '<path fill-rule=\"evenodd\" d=\"M1 2.5A1.5 1.5 0 0 1 2.5 1h1A1.5 1.5 0 0 1 5 2.5h4.134a1 1 0 1 1 0 1h-2.01c.18.18.34.381.484.605.638.992.892 2.354.892 3.895 0 1.993.257 3.092.713 3.7.356.476.895.721 1.787.784A1.5 1.5 0 0 1 12.5 11h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1a1.5 1.5 0 0 1-1.5-1.5H6.866a1 1 0 1 1 0-1h1.711a2.839 2.839 0 0 1-.165-.2C7.743 11.407 7.5 10.007 7.5 8c0-1.46-.246-2.597-.733-3.355-.39-.605-.952-1-1.767-1.112A1.5 1.5 0 0 1 3.5 5h-1A1.5 1.5 0 0 1 1 3.5v-1zM2.5 2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zm10 10a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBicycle = /*#__PURE__*/ makeIcon(\n  'Bicycle',\n  '<path fill-rule=\"evenodd\" d=\"M4 4.5a.5.5 0 0 1 .5-.5H6a.5.5 0 0 1 0 1v.5h4.14l.386-1.158A.5.5 0 0 1 11 4h1a.5.5 0 0 1 0 1h-.64l-.311.935.807 1.29a3 3 0 1 1-.848.53l-.508-.812-2.076 3.322A.5.5 0 0 1 8 10.5H5.959a3 3 0 1 1-1.815-3.274L5 5.856V5h-.5a.5.5 0 0 1-.5-.5zm1.5 2.443l-.508.814c.5.444.85 1.054.967 1.743h1.139L5.5 6.943zM8 9.057L9.598 6.5H6.402L8 9.057zM4.937 9.5a1.997 1.997 0 0 0-.487-.877l-.548.877h1.035zM3.603 8.092A2 2 0 1 0 4.937 10.5H3a.5.5 0 0 1-.424-.765l1.027-1.643zm7.947.53a2 2 0 1 0 .848-.53l1.026 1.643a.5.5 0 1 1-.848.53L11.55 8.623z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBinoculars = /*#__PURE__*/ makeIcon(\n  'Binoculars',\n  '<path fill-rule=\"evenodd\" d=\"M3 2.5A1.5 1.5 0 0 1 4.5 1h1A1.5 1.5 0 0 1 7 2.5V5h2V2.5A1.5 1.5 0 0 1 10.5 1h1A1.5 1.5 0 0 1 13 2.5v2.382a.5.5 0 0 0 .276.447l.895.447A1.5 1.5 0 0 1 15 7.118V14.5a1.5 1.5 0 0 1-1.5 1.5h-3A1.5 1.5 0 0 1 9 14.5v-3a.5.5 0 0 1 .146-.354l.854-.853V9.5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v.793l.854.853A.5.5 0 0 1 7 11.5v3A1.5 1.5 0 0 1 5.5 16h-3A1.5 1.5 0 0 1 1 14.5V7.118a1.5 1.5 0 0 1 .83-1.342l.894-.447A.5.5 0 0 0 3 4.882V2.5zM4.5 2a.5.5 0 0 0-.5.5V3h2v-.5a.5.5 0 0 0-.5-.5h-1zM6 4H4v.882a1.5 1.5 0 0 1-.83 1.342l-.894.447A.5.5 0 0 0 2 7.118V13h4v-1.293l-.854-.853A.5.5 0 0 1 5 10.5v-1A1.5 1.5 0 0 1 6.5 8h3A1.5 1.5 0 0 1 11 9.5v1a.5.5 0 0 1-.146.354l-.854.853V13h4V7.118a.5.5 0 0 0-.276-.447l-.895-.447A1.5 1.5 0 0 1 12 4.882V4h-2v1.5a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5V4zm4-1h2v-.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5V3zm4 11h-4v.5a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5V14zm-8 0H2v.5a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5V14z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBinocularsFill = /*#__PURE__*/ makeIcon(\n  'BinocularsFill',\n  '<path d=\"M4.5 1A1.5 1.5 0 0 0 3 2.5V3h4v-.5A1.5 1.5 0 0 0 5.5 1h-1zM7 4v1h2V4h4v.882a.5.5 0 0 0 .276.447l.895.447A1.5 1.5 0 0 1 15 7.118V13H9v-1.5a.5.5 0 0 1 .146-.354l.854-.853V9.5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v.793l.854.853A.5.5 0 0 1 7 11.5V13H1V7.118a1.5 1.5 0 0 1 .83-1.342l.894-.447A.5.5 0 0 0 3 4.882V4h4zM1 14v.5A1.5 1.5 0 0 0 2.5 16h3A1.5 1.5 0 0 0 7 14.5V14H1zm8 0v.5a1.5 1.5 0 0 0 1.5 1.5h3a1.5 1.5 0 0 0 1.5-1.5V14H9zm4-11H9v-.5A1.5 1.5 0 0 1 10.5 1h1A1.5 1.5 0 0 1 13 2.5V3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBlockquoteLeft = /*#__PURE__*/ makeIcon(\n  'BlockquoteLeft',\n  '<path fill-rule=\"evenodd\" d=\"M2 3.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm5 3a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm-5 3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z\"/><path d=\"M3.734 6.352a6.586 6.586 0 0 0-.445.275 1.94 1.94 0 0 0-.346.299 1.38 1.38 0 0 0-.252.369c-.058.129-.1.295-.123.498h.282c.242 0 .431.06.568.182.14.117.21.29.21.521a.697.697 0 0 1-.187.463c-.12.14-.289.21-.503.21-.336 0-.577-.108-.721-.327C2.072 8.619 2 8.328 2 7.969c0-.254.055-.485.164-.692.11-.21.242-.398.398-.562.16-.168.33-.31.51-.428.18-.117.33-.213.451-.287l.211.352zm2.168 0a6.588 6.588 0 0 0-.445.275 1.94 1.94 0 0 0-.346.299c-.113.12-.199.246-.257.375a1.75 1.75 0 0 0-.118.492h.282c.242 0 .431.06.568.182.14.117.21.29.21.521a.697.697 0 0 1-.187.463c-.12.14-.289.21-.504.21-.335 0-.576-.108-.72-.327-.145-.223-.217-.514-.217-.873 0-.254.055-.485.164-.692.11-.21.242-.398.398-.562.16-.168.33-.31.51-.428.18-.117.33-.213.451-.287l.211.352z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBlockquoteRight = /*#__PURE__*/ makeIcon(\n  'BlockquoteRight',\n  '<path fill-rule=\"evenodd\" d=\"M2 3.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z\"/><path d=\"M12.168 6.352c.184.105.332.197.445.275.114.074.229.174.346.299.11.117.193.24.252.369s.1.295.123.498h-.281c-.243 0-.432.06-.569.182-.14.117-.21.29-.21.521 0 .164.062.318.187.463.121.14.289.21.504.21.336 0 .576-.108.72-.327.145-.223.217-.514.217-.873 0-.254-.054-.485-.164-.692a2.436 2.436 0 0 0-.398-.562c-.16-.168-.33-.31-.51-.428-.18-.117-.33-.213-.451-.287l-.211.352zm-2.168 0c.184.105.332.197.445.275.114.074.229.174.346.299.113.12.2.246.258.375.055.125.094.289.117.492h-.281c-.242 0-.432.06-.569.182-.14.117-.21.29-.21.521 0 .164.062.318.187.463.121.14.289.21.504.21.336 0 .576-.108.72-.327.145-.223.217-.514.217-.873 0-.254-.054-.485-.164-.692a2.438 2.438 0 0 0-.398-.562c-.16-.168-.33-.31-.51-.428-.18-.117-.33-.213-.451-.287L10 6.352z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBook = /*#__PURE__*/ makeIcon(\n  'Book',\n  '<path fill-rule=\"evenodd\" d=\"M1 2.828v9.923c.918-.35 2.107-.692 3.287-.81 1.094-.111 2.278-.039 3.213.492V2.687c-.654-.689-1.782-.886-3.112-.752-1.234.124-2.503.523-3.388.893zm7.5-.141v9.746c.935-.53 2.12-.603 3.213-.493 1.18.12 2.37.461 3.287.811V2.828c-.885-.37-2.154-.769-3.388-.893-1.33-.134-2.458.063-3.112.752zM8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 0 0 0 2.5v11a.5.5 0 0 0 .707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 0 0 .78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0 0 16 13.5v-11a.5.5 0 0 0-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookFill = /*#__PURE__*/ makeIcon(\n  'BookFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 0 0 0 2.5v11a.5.5 0 0 0 .707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 0 0 .78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0 0 16 13.5v-11a.5.5 0 0 0-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookHalf = /*#__PURE__*/ makeIcon(\n  'BookHalf',\n  '<path fill-rule=\"evenodd\" d=\"M8.5 2.687v9.746c.935-.53 2.12-.603 3.213-.493 1.18.12 2.37.461 3.287.811V2.828c-.885-.37-2.154-.769-3.388-.893-1.33-.134-2.458.063-3.112.752zM8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 0 0 0 2.5v11a.5.5 0 0 0 .707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 0 0 .78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0 0 16 13.5v-11a.5.5 0 0 0-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmark = /*#__PURE__*/ makeIcon(\n  'Bookmark',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.777.416L8 13.101l-5.223 2.815A.5.5 0 0 1 2 15.5V2zm2-1a1 1 0 0 0-1 1v12.566l4.723-2.482a.5.5 0 0 1 .554 0L13 14.566V2a1 1 0 0 0-1-1H4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkCheck = /*#__PURE__*/ makeIcon(\n  'BookmarkCheck',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.777.416L8 13.101l-5.223 2.815A.5.5 0 0 1 2 15.5V2zm2-1a1 1 0 0 0-1 1v12.566l4.723-2.482a.5.5 0 0 1 .554 0L13 14.566V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M10.854 5.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 7.793l2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkCheckFill = /*#__PURE__*/ makeIcon(\n  'BookmarkCheckFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 0a2 2 0 0 0-2 2v13.5a.5.5 0 0 0 .74.439L8 13.069l5.26 2.87A.5.5 0 0 0 14 15.5V2a2 2 0 0 0-2-2H4zm6.854 5.854a.5.5 0 0 0-.708-.708L7.5 7.793 6.354 6.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkDash = /*#__PURE__*/ makeIcon(\n  'BookmarkDash',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.777.416L8 13.101l-5.223 2.815A.5.5 0 0 1 2 15.5V2zm2-1a1 1 0 0 0-1 1v12.566l4.723-2.482a.5.5 0 0 1 .554 0L13 14.566V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M5.5 6.5A.5.5 0 0 1 6 6h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkDashFill = /*#__PURE__*/ makeIcon(\n  'BookmarkDashFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 0a2 2 0 0 0-2 2v13.5a.5.5 0 0 0 .74.439L8 13.069l5.26 2.87A.5.5 0 0 0 14 15.5V2a2 2 0 0 0-2-2H4zm2 6a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1H6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkFill = /*#__PURE__*/ makeIcon(\n  'BookmarkFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.74.439L8 13.069l-5.26 2.87A.5.5 0 0 1 2 15.5V2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkHeart = /*#__PURE__*/ makeIcon(\n  'BookmarkHeart',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.777.416L8 13.101l-5.223 2.815A.5.5 0 0 1 2 15.5V2zm2-1a1 1 0 0 0-1 1v12.566l4.723-2.482a.5.5 0 0 1 .554 0L13 14.566V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M8 4.41c1.387-1.425 4.854 1.07 0 4.277C3.146 5.48 6.613 2.986 8 4.412z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkHeartFill = /*#__PURE__*/ makeIcon(\n  'BookmarkHeartFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 0a2 2 0 0 0-2 2v13.5a.5.5 0 0 0 .74.439L8 13.069l5.26 2.87A.5.5 0 0 0 14 15.5V2a2 2 0 0 0-2-2H4zm4 4.41c1.387-1.425 4.854 1.07 0 4.277C3.146 5.48 6.613 2.986 8 4.412z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkPlus = /*#__PURE__*/ makeIcon(\n  'BookmarkPlus',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.777.416L8 13.101l-5.223 2.815A.5.5 0 0 1 2 15.5V2zm2-1a1 1 0 0 0-1 1v12.566l4.723-2.482a.5.5 0 0 1 .554 0L13 14.566V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M8 4a.5.5 0 0 1 .5.5V6H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V7H6a.5.5 0 0 1 0-1h1.5V4.5A.5.5 0 0 1 8 4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkPlusFill = /*#__PURE__*/ makeIcon(\n  'BookmarkPlusFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 0a2 2 0 0 0-2 2v13.5a.5.5 0 0 0 .74.439L8 13.069l5.26 2.87A.5.5 0 0 0 14 15.5V2a2 2 0 0 0-2-2H4zm4.5 4.5a.5.5 0 0 0-1 0V6H6a.5.5 0 0 0 0 1h1.5v1.5a.5.5 0 0 0 1 0V7H10a.5.5 0 0 0 0-1H8.5V4.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkStar = /*#__PURE__*/ makeIcon(\n  'BookmarkStar',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.777.416L8 13.101l-5.223 2.815A.5.5 0 0 1 2 15.5V2zm2-1a1 1 0 0 0-1 1v12.566l4.723-2.482a.5.5 0 0 1 .554 0L13 14.566V2a1 1 0 0 0-1-1H4z\"/><path d=\"M7.84 4.1a.178.178 0 0 1 .32 0l.634 1.285a.178.178 0 0 0 .134.098l1.42.206c.145.021.204.2.098.303L9.42 6.993a.178.178 0 0 0-.051.158l.242 1.414a.178.178 0 0 1-.258.187l-1.27-.668a.178.178 0 0 0-.165 0l-1.27.668a.178.178 0 0 1-.257-.187l.242-1.414a.178.178 0 0 0-.05-.158l-1.03-1.001a.178.178 0 0 1 .098-.303l1.42-.206a.178.178 0 0 0 .134-.098L7.84 4.1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkStarFill = /*#__PURE__*/ makeIcon(\n  'BookmarkStarFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 0a2 2 0 0 0-2 2v13.5a.5.5 0 0 0 .74.439L8 13.069l5.26 2.87A.5.5 0 0 0 14 15.5V2a2 2 0 0 0-2-2H4zm4.16 4.1a.178.178 0 0 0-.32 0l-.634 1.285a.178.178 0 0 1-.134.098l-1.42.206a.178.178 0 0 0-.098.303L6.58 6.993c.042.041.061.1.051.158L6.39 8.565a.178.178 0 0 0 .258.187l1.27-.668a.178.178 0 0 1 .165 0l1.27.668a.178.178 0 0 0 .257-.187L9.368 7.15a.178.178 0 0 1 .05-.158l1.028-1.001a.178.178 0 0 0-.098-.303l-1.42-.206a.178.178 0 0 1-.134-.098L8.16 4.1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkX = /*#__PURE__*/ makeIcon(\n  'BookmarkX',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.777.416L8 13.101l-5.223 2.815A.5.5 0 0 1 2 15.5V2zm2-1a1 1 0 0 0-1 1v12.566l4.723-2.482a.5.5 0 0 1 .554 0L13 14.566V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M6.146 5.146a.5.5 0 0 1 .708 0L8 6.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 7l1.147 1.146a.5.5 0 0 1-.708.708L8 7.707 6.854 8.854a.5.5 0 1 1-.708-.708L7.293 7 6.146 5.854a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkXFill = /*#__PURE__*/ makeIcon(\n  'BookmarkXFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 0a2 2 0 0 0-2 2v13.5a.5.5 0 0 0 .74.439L8 13.069l5.26 2.87A.5.5 0 0 0 14 15.5V2a2 2 0 0 0-2-2H4zm2.854 5.146a.5.5 0 1 0-.708.708L7.293 7 6.146 8.146a.5.5 0 1 0 .708.708L8 7.707l1.146 1.147a.5.5 0 1 0 .708-.708L8.707 7l1.147-1.146a.5.5 0 0 0-.708-.708L8 6.293 6.854 5.146z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarks = /*#__PURE__*/ makeIcon(\n  'Bookmarks',\n  '<path fill-rule=\"evenodd\" d=\"M2 4a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v11.5a.5.5 0 0 1-.777.416L7 13.101l-4.223 2.815A.5.5 0 0 1 2 15.5V4zm2-1a1 1 0 0 0-1 1v10.566l3.723-2.482a.5.5 0 0 1 .554 0L11 14.566V4a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M4.268 1H12a1 1 0 0 1 1 1v11.768l.223.148A.5.5 0 0 0 14 13.5V2a2 2 0 0 0-2-2H6a2 2 0 0 0-1.732 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarksFill = /*#__PURE__*/ makeIcon(\n  'BookmarksFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 4a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v11.5a.5.5 0 0 1-.777.416L7 13.101l-4.223 2.815A.5.5 0 0 1 2 15.5V4z\"/><path fill-rule=\"evenodd\" d=\"M4.268 1H12a1 1 0 0 1 1 1v11.768l.223.148A.5.5 0 0 0 14 13.5V2a2 2 0 0 0-2-2H6a2 2 0 0 0-1.732 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookshelf = /*#__PURE__*/ makeIcon(\n  'Bookshelf',\n  '<path fill-rule=\"evenodd\" d=\"M2.5 0a.5.5 0 0 1 .5.5V2h10V.5a.5.5 0 0 1 1 0v15a.5.5 0 0 1-1 0V15H3v.5a.5.5 0 0 1-1 0V.5a.5.5 0 0 1 .5-.5zM3 14h10v-3H3v3zm0-4h10V7H3v3zm0-4h10V3H3v3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBootstrap = /*#__PURE__*/ makeIcon(\n  'Bootstrap',\n  '<path fill-rule=\"evenodd\" d=\"M12 1H4a3 3 0 0 0-3 3v8a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3V4a3 3 0 0 0-3-3zM4 0a4 4 0 0 0-4 4v8a4 4 0 0 0 4 4h8a4 4 0 0 0 4-4V4a4 4 0 0 0-4-4H4z\"/><path fill-rule=\"evenodd\" d=\"M8.537 12H5.062V3.545h3.399c1.587 0 2.543.809 2.543 2.11 0 .884-.65 1.675-1.483 1.816v.1c1.143.117 1.904.931 1.904 2.033 0 1.488-1.084 2.396-2.888 2.396zM6.375 4.658v2.467h1.558c1.16 0 1.764-.428 1.764-1.23 0-.78-.569-1.237-1.541-1.237H6.375zm1.898 6.229H6.375V8.162h1.822c1.236 0 1.887.463 1.887 1.348 0 .896-.627 1.377-1.811 1.377z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBootstrapFill = /*#__PURE__*/ makeIcon(\n  'BootstrapFill',\n  '<path fill-rule=\"evenodd\" d=\"M4.002 0a4 4 0 0 0-4 4v8a4 4 0 0 0 4 4h8a4 4 0 0 0 4-4V4a4 4 0 0 0-4-4h-8zm1.06 12h3.475c1.804 0 2.888-.908 2.888-2.396 0-1.102-.761-1.916-1.904-2.034v-.1c.832-.14 1.482-.93 1.482-1.816 0-1.3-.955-2.11-2.542-2.11H5.062V12zm1.313-4.875V4.658h1.78c.973 0 1.542.457 1.542 1.237 0 .802-.604 1.23-1.764 1.23H6.375zm0 3.762h1.898c1.184 0 1.81-.48 1.81-1.377 0-.885-.65-1.348-1.886-1.348H6.375v2.725z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBootstrapReboot = /*#__PURE__*/ makeIcon(\n  'BootstrapReboot',\n  '<path fill-rule=\"evenodd\" d=\"M1.161 8a6.84 6.84 0 1 0 6.842-6.84.58.58 0 0 1 0-1.16 8 8 0 1 1-6.556 3.412l-.663-.577a.58.58 0 0 1 .227-.997l2.52-.69a.58.58 0 0 1 .728.633l-.332 2.592a.58.58 0 0 1-.956.364l-.643-.56A6.812 6.812 0 0 0 1.16 8zm5.48-.079V5.277h1.57c.881 0 1.416.499 1.416 1.32 0 .84-.504 1.324-1.386 1.324h-1.6zm0 3.75V8.843h1.57l1.498 2.828h1.314L9.377 8.665c.897-.3 1.427-1.106 1.427-2.1 0-1.37-.943-2.246-2.456-2.246H5.5v7.352h1.141z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBorderStyle = /*#__PURE__*/ makeIcon(\n  'BorderStyle',\n  '<path d=\"M1 3.5a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5v-1zm0 4a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5v-1zm0 4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm8 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm-4 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm8 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm-4-4a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBorderWidth = /*#__PURE__*/ makeIcon(\n  'BorderWidth',\n  '<path d=\"M0 3.5A.5.5 0 0 1 .5 3h15a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5H.5a.5.5 0 0 1-.5-.5v-2zm0 5A.5.5 0 0 1 .5 8h15a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H.5a.5.5 0 0 1-.5-.5v-1zm0 4a.5.5 0 0 1 .5-.5h15a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoundingBox = /*#__PURE__*/ makeIcon(\n  'BoundingBox',\n  '<path fill-rule=\"evenodd\" d=\"M5 2V0H0v5h2v6H0v5h5v-2h6v2h5v-5h-2V5h2V0h-5v2H5zm6 1H5v2H3v6h2v2h6v-2h2V5h-2V3zm1-2v3h3V1h-3zm3 11h-3v3h3v-3zM4 15v-3H1v3h3zM1 4h3V1H1v3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoundingBoxCircles = /*#__PURE__*/ makeIcon(\n  'BoundingBoxCircles',\n  '<path fill-rule=\"evenodd\" d=\"M2 1a1 1 0 1 0 0 2 1 1 0 0 0 0-2zM0 2a2 2 0 0 1 3.937-.5h8.126A2 2 0 1 1 14.5 3.937v8.126a2 2 0 1 1-2.437 2.437H3.937A2 2 0 1 1 1.5 12.063V3.937A2 2 0 0 1 0 2zm2.5 1.937v8.126c.703.18 1.256.734 1.437 1.437h8.126a2.004 2.004 0 0 1 1.437-1.437V3.937A2.004 2.004 0 0 1 12.063 2.5H3.937A2.004 2.004 0 0 1 2.5 3.937zM14 1a1 1 0 1 0 0 2 1 1 0 0 0 0-2zM2 13a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm12 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBox = /*#__PURE__*/ makeIcon(\n  'Box',\n  '<path fill-rule=\"evenodd\" d=\"M8.186 1.113a.5.5 0 0 0-.372 0L1.846 3.5 8 5.961 14.154 3.5 8.186 1.113zM15 4.239l-6.5 2.6v7.922l6.5-2.6V4.24zM7.5 14.762V6.838L1 4.239v7.923l6.5 2.6zM7.443.184a1.5 1.5 0 0 1 1.114 0l7.129 2.852A.5.5 0 0 1 16 3.5v8.662a1 1 0 0 1-.629.928l-7.185 2.874a.5.5 0 0 1-.372 0L.63 13.09a1 1 0 0 1-.63-.928V3.5a.5.5 0 0 1 .314-.464L7.443.184z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowDown = /*#__PURE__*/ makeIcon(\n  'BoxArrowDown',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 10a.5.5 0 0 1-.5-.5v-8a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 0 0 1h2A1.5 1.5 0 0 0 14 9.5v-8A1.5 1.5 0 0 0 12.5 0h-9A1.5 1.5 0 0 0 2 1.5v8A1.5 1.5 0 0 0 3.5 11h2a.5.5 0 0 0 0-1h-2z\"/><path fill-rule=\"evenodd\" d=\"M7.646 15.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 14.293V5.5a.5.5 0 0 0-1 0v8.793l-2.146-2.147a.5.5 0 0 0-.708.708l3 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowDownLeft = /*#__PURE__*/ makeIcon(\n  'BoxArrowDownLeft',\n  '<path fill-rule=\"evenodd\" d=\"M7.364 12.5a.5.5 0 0 0 .5.5H14.5a1.5 1.5 0 0 0 1.5-1.5v-10A1.5 1.5 0 0 0 14.5 0h-10A1.5 1.5 0 0 0 3 1.5v6.636a.5.5 0 1 0 1 0V1.5a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v10a.5.5 0 0 1-.5.5H7.864a.5.5 0 0 0-.5.5z\"/><path fill-rule=\"evenodd\" d=\"M0 15.5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 0-1H1.707l8.147-8.146a.5.5 0 0 0-.708-.708L1 14.293V10.5a.5.5 0 0 0-1 0v5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowDownRight = /*#__PURE__*/ makeIcon(\n  'BoxArrowDownRight',\n  '<path fill-rule=\"evenodd\" d=\"M8.636 12.5a.5.5 0 0 1-.5.5H1.5A1.5 1.5 0 0 1 0 11.5v-10A1.5 1.5 0 0 1 1.5 0h10A1.5 1.5 0 0 1 13 1.5v6.636a.5.5 0 0 1-1 0V1.5a.5.5 0 0 0-.5-.5h-10a.5.5 0 0 0-.5.5v10a.5.5 0 0 0 .5.5h6.636a.5.5 0 0 1 .5.5z\"/><path fill-rule=\"evenodd\" d=\"M16 15.5a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1 0-1h3.793L6.146 6.854a.5.5 0 1 1 .708-.708L15 14.293V10.5a.5.5 0 0 1 1 0v5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInDown = /*#__PURE__*/ makeIcon(\n  'BoxArrowInDown',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 6a.5.5 0 0 0-.5.5v8a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-8a.5.5 0 0 0-.5-.5h-2a.5.5 0 0 1 0-1h2A1.5 1.5 0 0 1 14 6.5v8a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5v-8A1.5 1.5 0 0 1 3.5 5h2a.5.5 0 0 1 0 1h-2z\"/><path fill-rule=\"evenodd\" d=\"M7.646 11.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 10.293V1.5a.5.5 0 0 0-1 0v8.793L5.354 8.146a.5.5 0 1 0-.708.708l3 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInDownLeft = /*#__PURE__*/ makeIcon(\n  'BoxArrowInDownLeft',\n  '<path fill-rule=\"evenodd\" d=\"M9.636 2.5a.5.5 0 0 0-.5-.5H2.5A1.5 1.5 0 0 0 1 3.5v10A1.5 1.5 0 0 0 2.5 15h10a1.5 1.5 0 0 0 1.5-1.5V6.864a.5.5 0 0 0-1 0V13.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z\"/><path fill-rule=\"evenodd\" d=\"M5 10.5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 0-1H6.707l8.147-8.146a.5.5 0 0 0-.708-.708L6 9.293V5.5a.5.5 0 0 0-1 0v5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInDownRight = /*#__PURE__*/ makeIcon(\n  'BoxArrowInDownRight',\n  '<path fill-rule=\"evenodd\" d=\"M6.364 2.5a.5.5 0 0 1 .5-.5H13.5A1.5 1.5 0 0 1 15 3.5v10a1.5 1.5 0 0 1-1.5 1.5h-10A1.5 1.5 0 0 1 2 13.5V6.864a.5.5 0 1 1 1 0V13.5a.5.5 0 0 0 .5.5h10a.5.5 0 0 0 .5-.5v-10a.5.5 0 0 0-.5-.5H6.864a.5.5 0 0 1-.5-.5z\"/><path fill-rule=\"evenodd\" d=\"M11 10.5a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1 0-1h3.793L1.146 1.854a.5.5 0 1 1 .708-.708L10 9.293V5.5a.5.5 0 0 1 1 0v5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInLeft = /*#__PURE__*/ makeIcon(\n  'BoxArrowInLeft',\n  '<path fill-rule=\"evenodd\" d=\"M10 3.5a.5.5 0 0 0-.5-.5h-8a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 1 1 0v2A1.5 1.5 0 0 1 9.5 14h-8A1.5 1.5 0 0 1 0 12.5v-9A1.5 1.5 0 0 1 1.5 2h8A1.5 1.5 0 0 1 11 3.5v2a.5.5 0 0 1-1 0v-2z\"/><path fill-rule=\"evenodd\" d=\"M4.146 8.354a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L5.707 7.5H14.5a.5.5 0 0 1 0 1H5.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInRight = /*#__PURE__*/ makeIcon(\n  'BoxArrowInRight',\n  '<path fill-rule=\"evenodd\" d=\"M6 3.5a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-8a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 0-1 0v2A1.5 1.5 0 0 0 6.5 14h8a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2h-8A1.5 1.5 0 0 0 5 3.5v2a.5.5 0 0 0 1 0v-2z\"/><path fill-rule=\"evenodd\" d=\"M11.854 8.354a.5.5 0 0 0 0-.708l-3-3a.5.5 0 1 0-.708.708L10.293 7.5H1.5a.5.5 0 0 0 0 1h8.793l-2.147 2.146a.5.5 0 0 0 .708.708l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInUp = /*#__PURE__*/ makeIcon(\n  'BoxArrowInUp',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 10a.5.5 0 0 1-.5-.5v-8a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 0 0 1h2A1.5 1.5 0 0 0 14 9.5v-8A1.5 1.5 0 0 0 12.5 0h-9A1.5 1.5 0 0 0 2 1.5v8A1.5 1.5 0 0 0 3.5 11h2a.5.5 0 0 0 0-1h-2z\"/><path fill-rule=\"evenodd\" d=\"M7.646 4.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707V14.5a.5.5 0 0 1-1 0V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInUpLeft = /*#__PURE__*/ makeIcon(\n  'BoxArrowInUpLeft',\n  '<path fill-rule=\"evenodd\" d=\"M9.636 13.5a.5.5 0 0 1-.5.5H2.5A1.5 1.5 0 0 1 1 12.5v-10A1.5 1.5 0 0 1 2.5 1h10A1.5 1.5 0 0 1 14 2.5v6.636a.5.5 0 0 1-1 0V2.5a.5.5 0 0 0-.5-.5h-10a.5.5 0 0 0-.5.5v10a.5.5 0 0 0 .5.5h6.636a.5.5 0 0 1 .5.5z\"/><path fill-rule=\"evenodd\" d=\"M5 5.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1H6.707l8.147 8.146a.5.5 0 0 1-.708.708L6 6.707V10.5a.5.5 0 0 1-1 0v-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInUpRight = /*#__PURE__*/ makeIcon(\n  'BoxArrowInUpRight',\n  '<path fill-rule=\"evenodd\" d=\"M6.364 13.5a.5.5 0 0 0 .5.5H13.5a1.5 1.5 0 0 0 1.5-1.5v-10A1.5 1.5 0 0 0 13.5 1h-10A1.5 1.5 0 0 0 2 2.5v6.636a.5.5 0 1 0 1 0V2.5a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v10a.5.5 0 0 1-.5.5H6.864a.5.5 0 0 0-.5.5z\"/><path fill-rule=\"evenodd\" d=\"M11 5.5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793l-8.147 8.146a.5.5 0 0 0 .708.708L10 6.707V10.5a.5.5 0 0 0 1 0v-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowLeft = /*#__PURE__*/ makeIcon(\n  'BoxArrowLeft',\n  '<path fill-rule=\"evenodd\" d=\"M6 12.5a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5h-8a.5.5 0 0 0-.5.5v2a.5.5 0 0 1-1 0v-2A1.5 1.5 0 0 1 6.5 2h8A1.5 1.5 0 0 1 16 3.5v9a1.5 1.5 0 0 1-1.5 1.5h-8A1.5 1.5 0 0 1 5 12.5v-2a.5.5 0 0 1 1 0v2z\"/><path fill-rule=\"evenodd\" d=\"M.146 8.354a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L1.707 7.5H10.5a.5.5 0 0 1 0 1H1.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowRight = /*#__PURE__*/ makeIcon(\n  'BoxArrowRight',\n  '<path fill-rule=\"evenodd\" d=\"M10 12.5a.5.5 0 0 1-.5.5h-8a.5.5 0 0 1-.5-.5v-9a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 .5.5v2a.5.5 0 0 0 1 0v-2A1.5 1.5 0 0 0 9.5 2h-8A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h8a1.5 1.5 0 0 0 1.5-1.5v-2a.5.5 0 0 0-1 0v2z\"/><path fill-rule=\"evenodd\" d=\"M15.854 8.354a.5.5 0 0 0 0-.708l-3-3a.5.5 0 0 0-.708.708L14.293 7.5H5.5a.5.5 0 0 0 0 1h8.793l-2.147 2.146a.5.5 0 0 0 .708.708l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowUp = /*#__PURE__*/ makeIcon(\n  'BoxArrowUp',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 6a.5.5 0 0 0-.5.5v8a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-8a.5.5 0 0 0-.5-.5h-2a.5.5 0 0 1 0-1h2A1.5 1.5 0 0 1 14 6.5v8a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5v-8A1.5 1.5 0 0 1 3.5 5h2a.5.5 0 0 1 0 1h-2z\"/><path fill-rule=\"evenodd\" d=\"M7.646.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 1.707V10.5a.5.5 0 0 1-1 0V1.707L5.354 3.854a.5.5 0 1 1-.708-.708l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowUpLeft = /*#__PURE__*/ makeIcon(\n  'BoxArrowUpLeft',\n  '<path fill-rule=\"evenodd\" d=\"M7.364 3.5a.5.5 0 0 1 .5-.5H14.5A1.5 1.5 0 0 1 16 4.5v10a1.5 1.5 0 0 1-1.5 1.5h-10A1.5 1.5 0 0 1 3 14.5V7.864a.5.5 0 1 1 1 0V14.5a.5.5 0 0 0 .5.5h10a.5.5 0 0 0 .5-.5v-10a.5.5 0 0 0-.5-.5H7.864a.5.5 0 0 1-.5-.5z\"/><path fill-rule=\"evenodd\" d=\"M0 .5A.5.5 0 0 1 .5 0h5a.5.5 0 0 1 0 1H1.707l8.147 8.146a.5.5 0 0 1-.708.708L1 1.707V5.5a.5.5 0 0 1-1 0v-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowUpRight = /*#__PURE__*/ makeIcon(\n  'BoxArrowUpRight',\n  '<path fill-rule=\"evenodd\" d=\"M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z\"/><path fill-rule=\"evenodd\" d=\"M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0v-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoxSeam = /*#__PURE__*/ makeIcon(\n  'BoxSeam',\n  '<path fill-rule=\"evenodd\" d=\"M8.186 1.113a.5.5 0 0 0-.372 0L1.846 3.5l2.404.961L10.404 2l-2.218-.887zm3.564 1.426L5.596 5 8 5.961 14.154 3.5l-2.404-.961zm3.25 1.7l-6.5 2.6v7.922l6.5-2.6V4.24zM7.5 14.762V6.838L1 4.239v7.923l6.5 2.6zM7.443.184a1.5 1.5 0 0 1 1.114 0l7.129 2.852A.5.5 0 0 1 16 3.5v8.662a1 1 0 0 1-.629.928l-7.185 2.874a.5.5 0 0 1-.372 0L.63 13.09a1 1 0 0 1-.63-.928V3.5a.5.5 0 0 1 .314-.464L7.443.184z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBraces = /*#__PURE__*/ makeIcon(\n  'Braces',\n  '<path d=\"M2.114 8.063V7.9c1.005-.102 1.497-.615 1.497-1.6V4.503c0-1.094.39-1.538 1.354-1.538h.273V2h-.376C3.25 2 2.49 2.759 2.49 4.352v1.524c0 1.094-.376 1.456-1.49 1.456v1.299c1.114 0 1.49.362 1.49 1.456v1.524c0 1.593.759 2.352 2.372 2.352h.376v-.964h-.273c-.964 0-1.354-.444-1.354-1.538V9.663c0-.984-.492-1.497-1.497-1.6zM13.886 7.9v.163c-1.005.103-1.497.616-1.497 1.6v1.798c0 1.094-.39 1.538-1.354 1.538h-.273v.964h.376c1.613 0 2.372-.759 2.372-2.352v-1.524c0-1.094.376-1.456 1.49-1.456V7.332c-1.114 0-1.49-.362-1.49-1.456V4.352C13.51 2.759 12.75 2 11.138 2h-.376v.964h.273c.964 0 1.354.444 1.354 1.538V6.3c0 .984.492 1.497 1.497 1.6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBricks = /*#__PURE__*/ makeIcon(\n  'Bricks',\n  '<path fill-rule=\"evenodd\" d=\"M0 .5A.5.5 0 0 1 .5 0h15a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5H14v2h1.5a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5H14v2h1.5a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5H.5a.5.5 0 0 1-.5-.5v-3a.5.5 0 0 1 .5-.5H2v-2H.5a.5.5 0 0 1-.5-.5v-3A.5.5 0 0 1 .5 6H2V4H.5a.5.5 0 0 1-.5-.5v-3zM3 4v2h4.5V4H3zm5.5 0v2H13V4H8.5zM3 10v2h4.5v-2H3zm5.5 0v2H13v-2H8.5zM1 1v2h3.5V1H1zm4.5 0v2H15V1H5.5zM1 7v2h3.5V7H1zm4.5 0v2h5V7h-5zm6 0v2H15V7h-3.5zM1 13v2h3.5v-2H1zm4.5 0v2h5v-2h-5zm6 0v2H15v-2h-3.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBriefcase = /*#__PURE__*/ makeIcon(\n  'Briefcase',\n  '<path fill-rule=\"evenodd\" d=\"M0 12.5A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-6h-1v6a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5v-6H0v6z\"/><path fill-rule=\"evenodd\" d=\"M0 4.5A1.5 1.5 0 0 1 1.5 3h13A1.5 1.5 0 0 1 16 4.5v2.384l-7.614 2.03a1.5 1.5 0 0 1-.772 0L0 6.884V4.5zM1.5 4a.5.5 0 0 0-.5.5v1.616l6.871 1.832a.5.5 0 0 0 .258 0L15 6.116V4.5a.5.5 0 0 0-.5-.5h-13zM5 2.5A1.5 1.5 0 0 1 6.5 1h3A1.5 1.5 0 0 1 11 2.5V3h-1v-.5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5V3H5v-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBriefcaseFill = /*#__PURE__*/ makeIcon(\n  'BriefcaseFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 12.5A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5V6.85L8.129 8.947a.5.5 0 0 1-.258 0L0 6.85v5.65z\"/><path fill-rule=\"evenodd\" d=\"M0 4.5A1.5 1.5 0 0 1 1.5 3h13A1.5 1.5 0 0 1 16 4.5v1.384l-7.614 2.03a1.5 1.5 0 0 1-.772 0L0 5.884V4.5zm5-2A1.5 1.5 0 0 1 6.5 1h3A1.5 1.5 0 0 1 11 2.5V3h-1v-.5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5V3H5v-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessAltHigh = /*#__PURE__*/ makeIcon(\n  'BrightnessAltHigh',\n  '<path fill-rule=\"evenodd\" d=\"M5.041 10.5h5.918a3 3 0 0 0-5.918 0zM4 11a4 4 0 1 1 8 0 .5.5 0 0 1-.5.5h-7A.5.5 0 0 1 4 11zm4-8a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 3zm8 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5zM3 11a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5zm10.657-5.657a.5.5 0 0 1 0 .707l-1.414 1.414a.5.5 0 1 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0zM4.464 7.464a.5.5 0 0 1-.707 0L2.343 6.05a.5.5 0 0 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessAltHighFill = /*#__PURE__*/ makeIcon(\n  'BrightnessAltHighFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 11a4 4 0 1 1 8 0 .5.5 0 0 1-.5.5h-7A.5.5 0 0 1 4 11zm4-8a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 3zm8 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5zM3 11a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5zm10.657-5.657a.5.5 0 0 1 0 .707l-1.414 1.414a.5.5 0 1 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0zM4.464 7.464a.5.5 0 0 1-.707 0L2.343 6.05a.5.5 0 0 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessAltLow = /*#__PURE__*/ makeIcon(\n  'BrightnessAltLow',\n  '<path d=\"M8.5 5.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm5 6a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm-11 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm9.743-4.036a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707zm-8.486 0a.5.5 0 1 1 .707-.707.5.5 0 0 1-.707.707z\"/><path fill-rule=\"evenodd\" d=\"M5.041 10.5h5.918a3 3 0 0 0-5.918 0zM4 11a4 4 0 1 1 8 0 .5.5 0 0 1-.5.5h-7A.5.5 0 0 1 4 11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessAltLowFill = /*#__PURE__*/ makeIcon(\n  'BrightnessAltLowFill',\n  '<path d=\"M8.5 5.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm5 6a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm-11 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm9.743-4.036a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707zm-8.486 0a.5.5 0 1 1 .707-.707.5.5 0 0 1-.707.707z\"/><path fill-rule=\"evenodd\" d=\"M4 11a4 4 0 1 1 8 0 .5.5 0 0 1-.5.5h-7A.5.5 0 0 1 4 11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessHigh = /*#__PURE__*/ makeIcon(\n  'BrightnessHigh',\n  '<path fill-rule=\"evenodd\" d=\"M8 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 1a4 4 0 1 0 0-8 4 4 0 0 0 0 8zM8 0a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 0zm0 13a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 13zm8-5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5zM3 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2A.5.5 0 0 1 3 8zm10.657-5.657a.5.5 0 0 1 0 .707l-1.414 1.415a.5.5 0 1 1-.707-.708l1.414-1.414a.5.5 0 0 1 .707 0zm-9.193 9.193a.5.5 0 0 1 0 .707L3.05 13.657a.5.5 0 0 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0zm9.193 2.121a.5.5 0 0 1-.707 0l-1.414-1.414a.5.5 0 0 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .707zM4.464 4.465a.5.5 0 0 1-.707 0L2.343 3.05a.5.5 0 1 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessHighFill = /*#__PURE__*/ makeIcon(\n  'BrightnessHighFill',\n  '<path d=\"M12 8a4 4 0 1 1-8 0 4 4 0 0 1 8 0z\"/><path fill-rule=\"evenodd\" d=\"M8 0a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 0zm0 13a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 13zm8-5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5zM3 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2A.5.5 0 0 1 3 8zm10.657-5.657a.5.5 0 0 1 0 .707l-1.414 1.415a.5.5 0 1 1-.707-.708l1.414-1.414a.5.5 0 0 1 .707 0zm-9.193 9.193a.5.5 0 0 1 0 .707L3.05 13.657a.5.5 0 0 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0zm9.193 2.121a.5.5 0 0 1-.707 0l-1.414-1.414a.5.5 0 0 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .707zM4.464 4.465a.5.5 0 0 1-.707 0L2.343 3.05a.5.5 0 1 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessLow = /*#__PURE__*/ makeIcon(\n  'BrightnessLow',\n  '<path fill-rule=\"evenodd\" d=\"M8 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 1a4 4 0 1 0 0-8 4 4 0 0 0 0 8z\"/><path d=\"M8.5 2.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm0 11a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm5-5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm-11 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm9.743-4.036a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707zm-7.779 7.779a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707zm7.072 0a.5.5 0 1 1 .707-.707.5.5 0 0 1-.707.707zM3.757 4.464a.5.5 0 1 1 .707-.707.5.5 0 0 1-.707.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessLowFill = /*#__PURE__*/ makeIcon(\n  'BrightnessLowFill',\n  '<path d=\"M12 8a4 4 0 1 1-8 0 4 4 0 0 1 8 0zM8.5 2.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm0 11a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm5-5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm-11 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm9.743-4.036a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707zm-7.779 7.779a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707zm7.072 0a.5.5 0 1 1 .707-.707.5.5 0 0 1-.707.707zM3.757 4.464a.5.5 0 1 1 .707-.707.5.5 0 0 1-.707.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBroadcast = /*#__PURE__*/ makeIcon(\n  'Broadcast',\n  '<path fill-rule=\"evenodd\" d=\"M3.05 3.05a7 7 0 0 0 0 9.9.5.5 0 0 1-.707.707 8 8 0 0 1 0-11.314.5.5 0 0 1 .707.707zm2.122 2.122a4 4 0 0 0 0 5.656.5.5 0 0 1-.708.708 5 5 0 0 1 0-7.072.5.5 0 0 1 .708.708zm5.656-.708a.5.5 0 0 1 .708 0 5 5 0 0 1 0 7.072.5.5 0 1 1-.708-.708 4 4 0 0 0 0-5.656.5.5 0 0 1 0-.708zm2.122-2.12a.5.5 0 0 1 .707 0 8 8 0 0 1 0 11.313.5.5 0 0 1-.707-.707 7 7 0 0 0 0-9.9.5.5 0 0 1 0-.707z\"/><path d=\"M10 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBroadcastPin = /*#__PURE__*/ makeIcon(\n  'BroadcastPin',\n  '<path fill-rule=\"evenodd\" d=\"M3.05 3.05a7 7 0 0 0 0 9.9.5.5 0 0 1-.707.707 8 8 0 0 1 0-11.314.5.5 0 0 1 .707.707zm2.122 2.122a4 4 0 0 0 0 5.656.5.5 0 0 1-.708.708 5 5 0 0 1 0-7.072.5.5 0 0 1 .708.708zm5.656-.708a.5.5 0 0 1 .708 0 5 5 0 0 1 0 7.072.5.5 0 1 1-.708-.708 4 4 0 0 0 0-5.656.5.5 0 0 1 0-.708zm2.122-2.12a.5.5 0 0 1 .707 0 8 8 0 0 1 0 11.313.5.5 0 0 1-.707-.707 7 7 0 0 0 0-9.9.5.5 0 0 1 0-.707zM6 8a2 2 0 1 1 2.5 1.937V15.5a.5.5 0 0 1-1 0V9.937A2 2 0 0 1 6 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBrush = /*#__PURE__*/ makeIcon(\n  'Brush',\n  '<path fill-rule=\"evenodd\" d=\"M15.825.12a.5.5 0 0 1 .132.584c-1.53 3.43-4.743 8.17-7.095 10.64a6.067 6.067 0 0 1-2.373 1.534c-.018.227-.06.538-.16.868-.201.659-.667 1.479-1.708 1.74a8.117 8.117 0 0 1-3.078.132 3.658 3.658 0 0 1-.563-.135 1.382 1.382 0 0 1-.465-.247.714.714 0 0 1-.204-.288.622.622 0 0 1 .004-.443c.095-.245.316-.38.461-.452.393-.197.625-.453.867-.826.094-.144.184-.297.287-.472l.117-.198c.151-.255.326-.54.546-.848.528-.739 1.2-.925 1.746-.896.126.007.243.025.348.048.062-.172.142-.38.238-.608.261-.619.658-1.419 1.187-2.069 2.175-2.67 6.18-6.206 9.117-8.104a.5.5 0 0 1 .596.04zM4.705 11.912a1.23 1.23 0 0 0-.419-.1c-.247-.013-.574.05-.88.479a11.01 11.01 0 0 0-.5.777l-.104.177c-.107.181-.213.362-.32.528-.206.317-.438.61-.76.861a7.127 7.127 0 0 0 2.657-.12c.559-.139.843-.569.993-1.06a3.121 3.121 0 0 0 .126-.75l-.793-.792zm1.44.026c.12-.04.277-.1.458-.183a5.068 5.068 0 0 0 1.535-1.1c1.9-1.996 4.412-5.57 6.052-8.631-2.591 1.927-5.566 4.66-7.302 6.792-.442.543-.796 1.243-1.042 1.826a11.507 11.507 0 0 0-.276.721l.575.575zm-4.973 3.04l.007-.005a.031.031 0 0 1-.007.004zm3.582-3.043l.002.001h-.002z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBrushFill = /*#__PURE__*/ makeIcon(\n  'BrushFill',\n  '<path fill-rule=\"evenodd\" d=\"M15.825.12a.5.5 0 0 1 .132.584c-1.53 3.43-4.743 8.17-7.095 10.64a6.067 6.067 0 0 1-2.373 1.534c-.018.227-.06.538-.16.868-.201.659-.667 1.479-1.708 1.74a8.117 8.117 0 0 1-3.078.132 3.658 3.658 0 0 1-.563-.135 1.382 1.382 0 0 1-.465-.247.714.714 0 0 1-.204-.288.622.622 0 0 1 .004-.443c.095-.245.316-.38.461-.452.393-.197.625-.453.867-.826.094-.144.184-.297.287-.472l.117-.198c.151-.255.326-.54.546-.848.528-.739 1.2-.925 1.746-.896.126.007.243.025.348.048.062-.172.142-.38.238-.608.261-.619.658-1.419 1.187-2.069 2.175-2.67 6.18-6.206 9.117-8.104a.5.5 0 0 1 .596.04z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBucket = /*#__PURE__*/ makeIcon(\n  'Bucket',\n  '<path fill-rule=\"evenodd\" d=\"M2.522 5H2a.5.5 0 0 0-.494.574l1.372 9.149A1.5 1.5 0 0 0 4.36 16h7.278a1.5 1.5 0 0 0 1.483-1.277l1.373-9.149A.5.5 0 0 0 14 5h-.522A5.5 5.5 0 0 0 2.522 5zm1.005 0h8.945a4.5 4.5 0 0 0-8.945 0zm9.892 1H2.581l1.286 8.574A.5.5 0 0 0 4.36 15h7.278a.5.5 0 0 0 .494-.426L13.42 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBucketFill = /*#__PURE__*/ makeIcon(\n  'BucketFill',\n  '<path fill-rule=\"evenodd\" d=\"M2.522 5H2a.5.5 0 0 0-.494.574l1.372 9.149A1.5 1.5 0 0 0 4.36 16h7.278a1.5 1.5 0 0 0 1.483-1.277l1.373-9.149A.5.5 0 0 0 14 5h-.522A5.5 5.5 0 0 0 2.522 5zm1.005 0h8.945a4.5 4.5 0 0 0-8.945 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBug = /*#__PURE__*/ makeIcon(\n  'Bug',\n  '<path fill-rule=\"evenodd\" d=\"M4.355.522a.5.5 0 0 1 .623.333l.291.956A4.979 4.979 0 0 1 8 1c1.007 0 1.946.298 2.731.811l.29-.956a.5.5 0 1 1 .957.29l-.41 1.352A4.985 4.985 0 0 1 13 6h.5a.5.5 0 0 0 .5-.5V5a.5.5 0 0 1 1 0v.5A1.5 1.5 0 0 1 13.5 7H13v1h1.5a.5.5 0 0 1 0 1H13v1h.5a1.5 1.5 0 0 1 1.5 1.5v.5a.5.5 0 1 1-1 0v-.5a.5.5 0 0 0-.5-.5H13a5 5 0 0 1-10 0h-.5a.5.5 0 0 0-.5.5v.5a.5.5 0 1 1-1 0v-.5A1.5 1.5 0 0 1 2.5 10H3V9H1.5a.5.5 0 0 1 0-1H3V7h-.5A1.5 1.5 0 0 1 1 5.5V5a.5.5 0 0 1 1 0v.5a.5.5 0 0 0 .5.5H3c0-1.364.547-2.601 1.432-3.503l-.41-1.352a.5.5 0 0 1 .333-.623zM4 7v4a4 4 0 0 0 3.5 3.97V7H4zm4.5 0v7.97A4 4 0 0 0 12 11V7H8.5zM12 6H4a3.99 3.99 0 0 1 1.333-2.982A3.983 3.983 0 0 1 8 2c1.025 0 1.959.385 2.666 1.018A3.989 3.989 0 0 1 12 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBugFill = /*#__PURE__*/ makeIcon(\n  'BugFill',\n  '<path fill-rule=\"evenodd\" d=\"M4.978.855a.5.5 0 1 0-.956.29l.41 1.352A4.985 4.985 0 0 0 3 6h10a4.985 4.985 0 0 0-1.432-3.503l.41-1.352a.5.5 0 1 0-.956-.29l-.291.956A4.978 4.978 0 0 0 8 1a4.979 4.979 0 0 0-2.731.811l-.29-.956zM13 6v1H8.5v8.975A5 5 0 0 0 13 11h.5a.5.5 0 0 1 .5.5v.5a.5.5 0 1 0 1 0v-.5a1.5 1.5 0 0 0-1.5-1.5H13V9h1.5a.5.5 0 0 0 0-1H13V7h.5A1.5 1.5 0 0 0 15 5.5V5a.5.5 0 0 0-1 0v.5a.5.5 0 0 1-.5.5H13zm-5.5 9.975V7H3V6h-.5a.5.5 0 0 1-.5-.5V5a.5.5 0 0 0-1 0v.5A1.5 1.5 0 0 0 2.5 7H3v1H1.5a.5.5 0 0 0 0 1H3v1h-.5A1.5 1.5 0 0 0 1 11.5v.5a.5.5 0 1 0 1 0v-.5a.5.5 0 0 1 .5-.5H3a5 5 0 0 0 4.5 4.975z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBuilding = /*#__PURE__*/ makeIcon(\n  'Building',\n  '<path fill-rule=\"evenodd\" d=\"M14.763.075A.5.5 0 0 1 15 .5v15a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5V14h-1v1.5a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5V10a.5.5 0 0 1 .342-.474L6 7.64V4.5a.5.5 0 0 1 .276-.447l8-4a.5.5 0 0 1 .487.022zM6 8.694L1 10.36V15h5V8.694zM7 15h2v-1.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5V15h2V1.309l-7 3.5V15z\"/><path d=\"M2 11h1v1H2v-1zm2 0h1v1H4v-1zm-2 2h1v1H2v-1zm2 0h1v1H4v-1zm4-4h1v1H8V9zm2 0h1v1h-1V9zm-2 2h1v1H8v-1zm2 0h1v1h-1v-1zm2-2h1v1h-1V9zm0 2h1v1h-1v-1zM8 7h1v1H8V7zm2 0h1v1h-1V7zm2 0h1v1h-1V7zM8 5h1v1H8V5zm2 0h1v1h-1V5zm2 0h1v1h-1V5zm0-2h1v1h-1V3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBullseye = /*#__PURE__*/ makeIcon(\n  'Bullseye',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M8 13A5 5 0 1 0 8 3a5 5 0 0 0 0 10zm0 1A6 6 0 1 0 8 2a6 6 0 0 0 0 12z\"/><path fill-rule=\"evenodd\" d=\"M8 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 1a4 4 0 1 0 0-8 4 4 0 0 0 0 8z\"/><path d=\"M9.5 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalculator = /*#__PURE__*/ makeIcon(\n  'Calculator',\n  '<path fill-rule=\"evenodd\" d=\"M12 1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H4z\"/><path d=\"M4 2.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-2zm0 4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm0 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm0 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm3-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm0 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm0 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm3-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm0 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalculatorFill = /*#__PURE__*/ makeIcon(\n  'CalculatorFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm2 .5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-2zm0 4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zM4.5 9a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zM4 12.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zM7.5 6a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zM7 9.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm.5 2.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zM10 6.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm.5 2.5a.5.5 0 0 0-.5.5v4a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-4a.5.5 0 0 0-.5-.5h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar = /*#__PURE__*/ makeIcon(\n  'Calendar',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2 = /*#__PURE__*/ makeIcon(\n  'Calendar2',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H2z\"/><path d=\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Check = /*#__PURE__*/ makeIcon(\n  'Calendar2Check',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H2z\"/><path d=\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5V4z\"/><path fill-rule=\"evenodd\" d=\"M10.854 8.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L7.5 10.793l2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2CheckFill = /*#__PURE__*/ makeIcon(\n  'Calendar2CheckFill',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 3.5c0-.276.244-.5.545-.5h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1zm8.854 5.354a.5.5 0 0 0-.708-.708L7.5 10.793 6.354 9.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Date = /*#__PURE__*/ makeIcon(\n  'Calendar2Date',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H2z\"/><path d=\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5V4zm3.945 8.688V7.354h-.633A12.6 12.6 0 0 0 4.5 8.16v.695c.375-.257.969-.62 1.258-.777h.012v4.61h.675zm1.188-1.305c.047.64.594 1.406 1.703 1.406 1.258 0 2-1.066 2-2.871 0-1.934-.781-2.668-1.953-2.668-.926 0-1.797.672-1.797 1.809 0 1.16.824 1.77 1.676 1.77.746 0 1.23-.376 1.383-.79h.027c-.004 1.316-.461 2.164-1.305 2.164-.664 0-1.008-.45-1.05-.82h-.684zm2.953-2.317c0 .696-.559 1.18-1.184 1.18-.601 0-1.144-.383-1.144-1.2 0-.823.582-1.21 1.168-1.21.633 0 1.16.398 1.16 1.23z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2DateFill = /*#__PURE__*/ makeIcon(\n  'Calendar2DateFill',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 3.5c0-.276.244-.5.545-.5h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1zm7.336 9.29c-1.11 0-1.656-.767-1.703-1.407h.683c.043.37.387.82 1.051.82.844 0 1.301-.848 1.305-2.164h-.027c-.153.414-.637.79-1.383.79-.852 0-1.676-.61-1.676-1.77 0-1.137.871-1.809 1.797-1.809 1.172 0 1.953.734 1.953 2.668 0 1.805-.742 2.871-2 2.871zm.066-2.544c.625 0 1.184-.484 1.184-1.18 0-.832-.527-1.23-1.16-1.23-.586 0-1.168.387-1.168 1.21 0 .817.543 1.2 1.144 1.2zm-2.957-2.89v5.332H5.77v-4.61h-.012c-.29.156-.883.52-1.258.777V8.16a12.6 12.6 0 0 1 1.313-.805h.632z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Day = /*#__PURE__*/ makeIcon(\n  'Calendar2Day',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H2z\"/><path d=\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5V4zm2.184 8.523v-2.3h2.261v-.61H4.684V7.801h2.464v-.61H4v5.332h.684zm3.296 0h.676V9.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a1.806 1.806 0 0 0-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98v4.105zm2.805-5.093c0 .238.192.425.43.425a.428.428 0 1 0 0-.855.426.426 0 0 0-.43.43zm.094 5.093h.672V8.418h-.672v4.105z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2DayFill = /*#__PURE__*/ makeIcon(\n  'Calendar2DayFill',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 3.5c0-.276.244-.5.545-.5h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1zm9.215 4.355a.425.425 0 0 1-.43-.425c0-.242.192-.43.43-.43a.428.428 0 1 1 0 .855zm.336.563v4.105h-.672V8.418h.672zm-6.867 4.105v-2.3h2.261v-.61H4.684V7.801h2.464v-.61H4v5.332h.684zm3.296 0h.676V9.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a1.806 1.806 0 0 0-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98v4.105z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Event = /*#__PURE__*/ makeIcon(\n  'Calendar2Event',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H2z\"/><path d=\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5V4zM11 7.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2EventFill = /*#__PURE__*/ makeIcon(\n  'Calendar2EventFill',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 3.5c0-.276.244-.5.545-.5h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1zM11.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Fill = /*#__PURE__*/ makeIcon(\n  'Calendar2Fill',\n  '<path fill-rule=\"evenodd\" d=\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zM2.545 3c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5H2.545z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Minus = /*#__PURE__*/ makeIcon(\n  'Calendar2Minus',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H2z\"/><path d=\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5V4z\"/><path fill-rule=\"evenodd\" d=\"M5.5 10.5A.5.5 0 0 1 6 10h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2MinusFill = /*#__PURE__*/ makeIcon(\n  'Calendar2MinusFill',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 3.5c0-.276.244-.5.545-.5h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1zM6 10a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1H6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Month = /*#__PURE__*/ makeIcon(\n  'Calendar2Month',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H2z\"/><path d=\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5V4zm.06 8.332l.54-1.602h1.984l.54 1.602h.718L4.444 7h-.696L1.85 12.332h.71zm1.544-4.527L4.9 10.18H3.284l.8-2.375h.02zm5.746.422h-.676v2.543c0 .652-.414 1.023-1.004 1.023-.539 0-.98-.246-.98-1.012V8.227h-.676v2.746c0 .941.606 1.425 1.453 1.425.656 0 1.043-.28 1.188-.605h.027v.539h.668V8.227zm2.258 5.046c-.563 0-.91-.304-.985-.636h-.687c.094.683.625 1.199 1.668 1.199.93 0 1.746-.527 1.746-1.578V8.227h-.649v.578h-.019c-.191-.348-.637-.64-1.195-.64-.965 0-1.64.679-1.64 1.886v.34c0 1.23.683 1.902 1.64 1.902.558 0 1.008-.293 1.172-.648h.02v.605c0 .645-.423 1.023-1.071 1.023zm.008-4.53c.648 0 1.062.527 1.062 1.359v.253c0 .848-.39 1.364-1.062 1.364-.692 0-1.098-.512-1.098-1.364v-.253c0-.868.406-1.36 1.098-1.36z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2MonthFill = /*#__PURE__*/ makeIcon(\n  'Calendar2MonthFill',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 3.5c0-.276.244-.5.545-.5h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1zm.56 8.832l.54-1.602h1.984l.54 1.602h.718L4.444 7h-.696L1.85 12.332h.71zm1.544-4.527L4.9 10.18H3.284l.8-2.375h.02zm5.746.422h-.676v2.543c0 .652-.414 1.023-1.004 1.023-.539 0-.98-.246-.98-1.012V8.227h-.676v2.746c0 .941.606 1.425 1.453 1.425.656 0 1.043-.28 1.188-.605h.027v.539h.668V8.227zm1.273 4.41c.075.332.422.636.985.636.648 0 1.07-.378 1.07-1.023v-.605h-.02c-.163.355-.613.648-1.171.648-.957 0-1.64-.672-1.64-1.902v-.34c0-1.207.675-1.887 1.64-1.887.558 0 1.004.293 1.195.64h.02v-.577h.648v4.03c0 1.052-.816 1.579-1.746 1.579-1.043 0-1.574-.516-1.668-1.2h.687zm2.055-2.535c0-.832-.414-1.36-1.062-1.36-.692 0-1.098.492-1.098 1.36v.253c0 .852.406 1.364 1.098 1.364.671 0 1.062-.516 1.062-1.364v-.253z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Plus = /*#__PURE__*/ makeIcon(\n  'Calendar2Plus',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H2z\"/><path d=\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5V4z\"/><path fill-rule=\"evenodd\" d=\"M8 8a.5.5 0 0 1 .5.5V10H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V11H6a.5.5 0 0 1 0-1h1.5V8.5A.5.5 0 0 1 8 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2PlusFill = /*#__PURE__*/ makeIcon(\n  'Calendar2PlusFill',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 3.5c0-.276.244-.5.545-.5h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1zm6.5 5a.5.5 0 0 0-1 0V10H6a.5.5 0 0 0 0 1h1.5v1.5a.5.5 0 0 0 1 0V11H10a.5.5 0 0 0 0-1H8.5V8.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Range = /*#__PURE__*/ makeIcon(\n  'Calendar2Range',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H2z\"/><path d=\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5V4zM9 8a1 1 0 0 1 1-1h5v2h-5a1 1 0 0 1-1-1zm-8 2h4a1 1 0 1 1 0 2H1v-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2RangeFill = /*#__PURE__*/ makeIcon(\n  'Calendar2RangeFill',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 3.5c0-.276.244-.5.545-.5h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1zM10 7a1 1 0 0 0 0 2h5V7h-5zm-4 4a1 1 0 0 0-1-1H1v2h4a1 1 0 0 0 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Week = /*#__PURE__*/ makeIcon(\n  'Calendar2Week',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H2z\"/><path d=\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5V4zM11 7.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm-3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm-5 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2WeekFill = /*#__PURE__*/ makeIcon(\n  'Calendar2WeekFill',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 3.5c0-.276.244-.5.545-.5h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1zM8.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zM3 10.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2X = /*#__PURE__*/ makeIcon(\n  'Calendar2X',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H2z\"/><path d=\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5V4z\"/><path fill-rule=\"evenodd\" d=\"M6.146 8.146a.5.5 0 0 1 .708 0L8 9.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 10l1.147 1.146a.5.5 0 0 1-.708.708L8 10.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 10 6.146 8.854a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2XFill = /*#__PURE__*/ makeIcon(\n  'Calendar2XFill',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 3.5c0-.276.244-.5.545-.5h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1zm4.854 4.646a.5.5 0 1 0-.708.708L7.293 10l-1.147 1.146a.5.5 0 0 0 .708.708L8 10.707l1.146 1.147a.5.5 0 0 0 .708-.708L8.707 10l1.147-1.146a.5.5 0 0 0-.708-.708L8 9.293 6.854 8.146z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3 = /*#__PURE__*/ makeIcon(\n  'Calendar3',\n  '<path fill-rule=\"evenodd\" d=\"M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z\"/><path fill-rule=\"evenodd\" d=\"M6.5 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm-9 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm-9 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3Event = /*#__PURE__*/ makeIcon(\n  'Calendar3Event',\n  '<path fill-rule=\"evenodd\" d=\"M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z\"/><path fill-rule=\"evenodd\" d=\"M12 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3EventFill = /*#__PURE__*/ makeIcon(\n  'Calendar3EventFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2h16a2 2 0 0 0-2-2H2zm14 3H0v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3zm-2 3a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3Fill = /*#__PURE__*/ makeIcon(\n  'Calendar3Fill',\n  '<path d=\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2H0z\"/><path fill-rule=\"evenodd\" d=\"M0 3h16v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3Range = /*#__PURE__*/ makeIcon(\n  'Calendar3Range',\n  '<path fill-rule=\"evenodd\" d=\"M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z\"/><path fill-rule=\"evenodd\" d=\"M7 10a1 1 0 0 0 0-2H1v2h6zm2-3a1 1 0 0 1 0-2h6v2H9z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3RangeFill = /*#__PURE__*/ makeIcon(\n  'Calendar3RangeFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2h16a2 2 0 0 0-2-2H2zm14 3H0v5h6a1 1 0 0 1 0 2H0v4a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7h-6a1 1 0 1 1 0-2h6V3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3Week = /*#__PURE__*/ makeIcon(\n  'Calendar3Week',\n  '<path fill-rule=\"evenodd\" d=\"M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z\"/><path fill-rule=\"evenodd\" d=\"M12 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm-5 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm2-3a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm-5 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3WeekFill = /*#__PURE__*/ makeIcon(\n  'Calendar3WeekFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2h16a2 2 0 0 0-2-2H2zm14 3H0v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3zm-2 3a1 1 0 1 1-2 0 1 1 0 0 1 2 0zM7 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3-2a1 1 0 1 0 0-2 1 1 0 0 0 0 2zM4 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar4 = /*#__PURE__*/ makeIcon(\n  'Calendar4',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v1h14V3a1 1 0 0 0-1-1H2zm13 3H1v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar4Event = /*#__PURE__*/ makeIcon(\n  'Calendar4Event',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v1h14V3a1 1 0 0 0-1-1H2zm13 3H1v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V5z\"/><rect width=\"2\" height=\"2\" x=\"11\" y=\"7\" rx=\".5\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar4Range = /*#__PURE__*/ makeIcon(\n  'Calendar4Range',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v1h14V3a1 1 0 0 0-1-1H2zm13 3H1v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V5z\"/><path d=\"M9 7.5a.5.5 0 0 1 .5-.5H15v2H9.5a.5.5 0 0 1-.5-.5v-1zm-2 3a.5.5 0 0 0-.5-.5H1v2h5.5a.5.5 0 0 0 .5-.5v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar4Week = /*#__PURE__*/ makeIcon(\n  'Calendar4Week',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM2 2a1 1 0 0 0-1 1v1h14V3a1 1 0 0 0-1-1H2zm13 3H1v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V5z\"/><path d=\"M11 7.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm-3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm-2 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm-3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarCheck = /*#__PURE__*/ makeIcon(\n  'CalendarCheck',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z\"/><path fill-rule=\"evenodd\" d=\"M10.854 7.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 9.793l2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarCheckFill = /*#__PURE__*/ makeIcon(\n  'CalendarCheckFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zm-5.146-5.146a.5.5 0 0 0-.708-.708L7.5 10.793 6.354 9.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarDate = /*#__PURE__*/ makeIcon(\n  'CalendarDate',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z\"/><path d=\"M6.445 11.688V6.354h-.633A12.6 12.6 0 0 0 4.5 7.16v.695c.375-.257.969-.62 1.258-.777h.012v4.61h.675zm1.188-1.305c.047.64.594 1.406 1.703 1.406 1.258 0 2-1.066 2-2.871 0-1.934-.781-2.668-1.953-2.668-.926 0-1.797.672-1.797 1.809 0 1.16.824 1.77 1.676 1.77.746 0 1.23-.376 1.383-.79h.027c-.004 1.316-.461 2.164-1.305 2.164-.664 0-1.008-.45-1.05-.82h-.684zm2.953-2.317c0 .696-.559 1.18-1.184 1.18-.601 0-1.144-.383-1.144-1.2 0-.823.582-1.21 1.168-1.21.633 0 1.16.398 1.16 1.23z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarDateFill = /*#__PURE__*/ makeIcon(\n  'CalendarDateFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zm-6.664-1.21c-1.11 0-1.656-.767-1.703-1.407h.683c.043.37.387.82 1.051.82.844 0 1.301-.848 1.305-2.164h-.027c-.153.414-.637.79-1.383.79-.852 0-1.676-.61-1.676-1.77 0-1.137.871-1.809 1.797-1.809 1.172 0 1.953.734 1.953 2.668 0 1.805-.742 2.871-2 2.871zm.066-2.544c.625 0 1.184-.484 1.184-1.18 0-.832-.527-1.23-1.16-1.23-.586 0-1.168.387-1.168 1.21 0 .817.543 1.2 1.144 1.2zm-2.957-2.89v5.332H5.77v-4.61h-.012c-.29.156-.883.52-1.258.777V8.16a12.6 12.6 0 0 1 1.313-.805h.632z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarDay = /*#__PURE__*/ makeIcon(\n  'CalendarDay',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z\"/><path d=\"M4.684 11.523v-2.3h2.261v-.61H4.684V6.801h2.464v-.61H4v5.332h.684zm3.296 0h.676V8.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a1.806 1.806 0 0 0-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98v4.105zm2.805-5.093c0 .238.192.425.43.425a.428.428 0 1 0 0-.855.426.426 0 0 0-.43.43zm.094 5.093h.672V7.418h-.672v4.105z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarDayFill = /*#__PURE__*/ makeIcon(\n  'CalendarDayFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zm-4.785-6.145a.425.425 0 0 1-.43-.425c0-.242.192-.43.43-.43a.428.428 0 1 1 0 .855zm.336.563v4.105h-.672V8.418h.672zm-6.867 4.105v-2.3h2.261v-.61H4.684V7.801h2.464v-.61H4v5.332h.684zm3.296 0h.676V9.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a1.806 1.806 0 0 0-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98v4.105z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarEvent = /*#__PURE__*/ makeIcon(\n  'CalendarEvent',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z\"/><path d=\"M11 6.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarEventFill = /*#__PURE__*/ makeIcon(\n  'CalendarEventFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zm-3.5-7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarFill = /*#__PURE__*/ makeIcon(\n  'CalendarFill',\n  '<path d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V5h16V4H0V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarMinus = /*#__PURE__*/ makeIcon(\n  'CalendarMinus',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z\"/><path fill-rule=\"evenodd\" d=\"M5.5 9.5A.5.5 0 0 1 6 9h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarMinusFill = /*#__PURE__*/ makeIcon(\n  'CalendarMinusFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zM6 10a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1H6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarMonth = /*#__PURE__*/ makeIcon(\n  'CalendarMonth',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z\"/><path d=\"M2.56 11.332L3.1 9.73h1.984l.54 1.602h.718L4.444 6h-.696L1.85 11.332h.71zm1.544-4.527L4.9 9.18H3.284l.8-2.375h.02zm5.746.422h-.676V9.77c0 .652-.414 1.023-1.004 1.023-.539 0-.98-.246-.98-1.012V7.227h-.676v2.746c0 .941.606 1.425 1.453 1.425.656 0 1.043-.28 1.188-.605h.027v.539h.668V7.227zm2.258 5.046c-.563 0-.91-.304-.985-.636h-.687c.094.683.625 1.199 1.668 1.199.93 0 1.746-.527 1.746-1.578V7.227h-.649v.578h-.019c-.191-.348-.637-.64-1.195-.64-.965 0-1.64.679-1.64 1.886v.34c0 1.23.683 1.902 1.64 1.902.558 0 1.008-.293 1.172-.648h.02v.605c0 .645-.423 1.023-1.071 1.023zm.008-4.53c.648 0 1.062.527 1.062 1.359v.253c0 .848-.39 1.364-1.062 1.364-.692 0-1.098-.512-1.098-1.364v-.253c0-.868.406-1.36 1.098-1.36z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarMonthFill = /*#__PURE__*/ makeIcon(\n  'CalendarMonthFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zM2.56 12.332l.54-1.602h1.984l.54 1.602h.718L4.444 7h-.696L1.85 12.332h.71zm1.544-4.527L4.9 10.18H3.284l.8-2.375h.02zm5.746.422h-.676v2.543c0 .652-.414 1.023-1.004 1.023-.539 0-.98-.246-.98-1.012V8.227h-.676v2.746c0 .941.606 1.425 1.453 1.425.656 0 1.043-.28 1.188-.605h.027v.539h.668V8.227zm1.273 4.41c.075.332.422.636.985.636.648 0 1.07-.378 1.07-1.023v-.605h-.02c-.163.355-.613.648-1.171.648-.957 0-1.64-.672-1.64-1.902v-.34c0-1.207.675-1.887 1.64-1.887.558 0 1.004.293 1.195.64h.02v-.577h.648v4.03c0 1.052-.816 1.579-1.746 1.579-1.043 0-1.574-.516-1.668-1.2h.687zm2.055-2.535c0-.832-.414-1.36-1.062-1.36-.692 0-1.098.492-1.098 1.36v.253c0 .852.406 1.364 1.098 1.364.671 0 1.062-.516 1.062-1.364v-.253z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarPlus = /*#__PURE__*/ makeIcon(\n  'CalendarPlus',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z\"/><path fill-rule=\"evenodd\" d=\"M8 7a.5.5 0 0 1 .5.5V9H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V10H6a.5.5 0 0 1 0-1h1.5V7.5A.5.5 0 0 1 8 7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarPlusFill = /*#__PURE__*/ makeIcon(\n  'CalendarPlusFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zM8.5 8.5a.5.5 0 0 0-1 0V10H6a.5.5 0 0 0 0 1h1.5v1.5a.5.5 0 0 0 1 0V11H10a.5.5 0 0 0 0-1H8.5V8.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarRange = /*#__PURE__*/ makeIcon(\n  'CalendarRange',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z\"/><path d=\"M9 7a1 1 0 0 1 1-1h5v2h-5a1 1 0 0 1-1-1zM1 9h4a1 1 0 0 1 0 2H1V9z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarRangeFill = /*#__PURE__*/ makeIcon(\n  'CalendarRangeFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zM16 7V5H0v5h5a1 1 0 1 1 0 2H0v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9h-6a1 1 0 1 1 0-2h6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarWeek = /*#__PURE__*/ makeIcon(\n  'CalendarWeek',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z\"/><path d=\"M11 6.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm-3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm-5 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarWeekFill = /*#__PURE__*/ makeIcon(\n  'CalendarWeekFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zM9.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zM2 10.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1zm3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarX = /*#__PURE__*/ makeIcon(\n  'CalendarX',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z\"/><path fill-rule=\"evenodd\" d=\"M6.146 7.146a.5.5 0 0 1 .708 0L8 8.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 9l1.147 1.146a.5.5 0 0 1-.708.708L8 9.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 9 6.146 7.854a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarXFill = /*#__PURE__*/ makeIcon(\n  'CalendarXFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zM6.854 8.146a.5.5 0 1 0-.708.708L7.293 10l-1.147 1.146a.5.5 0 0 0 .708.708L8 10.707l1.146 1.147a.5.5 0 0 0 .708-.708L8.707 10l1.147-1.146a.5.5 0 0 0-.708-.708L8 9.293 6.854 8.146z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCamera = /*#__PURE__*/ makeIcon(\n  'Camera',\n  '<path fill-rule=\"evenodd\" d=\"M15 12V6a1 1 0 0 0-1-1h-1.172a3 3 0 0 1-2.12-.879l-.83-.828A1 1 0 0 0 9.173 3H6.828a1 1 0 0 0-.707.293l-.828.828A3 3 0 0 1 3.172 5H2a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM2 4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-1.172a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 9.172 2H6.828a2 2 0 0 0-1.414.586l-.828.828A2 2 0 0 1 3.172 4H2z\"/><path fill-rule=\"evenodd\" d=\"M8 11a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5zm0 1a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7z\"/><path d=\"M3 6.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCamera2 = /*#__PURE__*/ makeIcon(\n  'Camera2',\n  '<path d=\"M9 5C7.343 5 5 6.343 5 8a4 4 0 0 1 4-4v1z\"/><path fill-rule=\"evenodd\" d=\"M14.333 3h-2.015A5.97 5.97 0 0 0 9 2a5.972 5.972 0 0 0-3.318 1H1.667C.747 3 0 3.746 0 4.667v6.666C0 12.253.746 13 1.667 13h4.015c.95.632 2.091 1 3.318 1a5.973 5.973 0 0 0 3.318-1h2.015c.92 0 1.667-.746 1.667-1.667V4.667C16 3.747 15.254 3 14.333 3zM1.5 5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zM9 13A5 5 0 1 0 9 3a5 5 0 0 0 0 10z\"/><path d=\"M2 3a1 1 0 0 1 1-1h1a1 1 0 0 1 0 2H3a1 1 0 0 1-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCameraFill = /*#__PURE__*/ makeIcon(\n  'CameraFill',\n  '<path d=\"M10.5 8.5a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0z\"/><path fill-rule=\"evenodd\" d=\"M2 4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-1.172a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 9.172 2H6.828a2 2 0 0 0-1.414.586l-.828.828A2 2 0 0 1 3.172 4H2zm.5 2a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zm9 2.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCameraReels = /*#__PURE__*/ makeIcon(\n  'CameraReels',\n  '<path fill-rule=\"evenodd\" d=\"M0 8a2 2 0 0 1 2-2h7.5a2 2 0 0 1 1.983 1.738l3.11-1.382A1 1 0 0 1 16 7.269v7.462a1 1 0 0 1-1.406.913l-3.111-1.382A2 2 0 0 1 9.5 16H2a2 2 0 0 1-2-2V8zm11.5 5.175l3.5 1.556V7.269l-3.5 1.556v4.35zM2 7a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h7.5a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1H2z\"/><path fill-rule=\"evenodd\" d=\"M3 5a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm0 1a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/><path fill-rule=\"evenodd\" d=\"M9 5a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm0 1a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCameraReelsFill = /*#__PURE__*/ makeIcon(\n  'CameraReelsFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 8a2 2 0 0 1 2-2h7.5a2 2 0 0 1 1.983 1.738l3.11-1.382A1 1 0 0 1 16 7.269v7.462a1 1 0 0 1-1.406.913l-3.111-1.382A2 2 0 0 1 9.5 16H2a2 2 0 0 1-2-2V8z\"/><circle cx=\"3\" cy=\"3\" r=\"3\"/><circle cx=\"9\" cy=\"3\" r=\"3\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCameraVideo = /*#__PURE__*/ makeIcon(\n  'CameraVideo',\n  '<path fill-rule=\"evenodd\" d=\"M0 5a2 2 0 0 1 2-2h7.5a2 2 0 0 1 1.983 1.738l3.11-1.382A1 1 0 0 1 16 4.269v7.462a1 1 0 0 1-1.406.913l-3.111-1.382A2 2 0 0 1 9.5 13H2a2 2 0 0 1-2-2V5zm11.5 5.175l3.5 1.556V4.269l-3.5 1.556v4.35zM2 4a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h7.5a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCameraVideoFill = /*#__PURE__*/ makeIcon(\n  'CameraVideoFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 5a2 2 0 0 1 2-2h7.5a2 2 0 0 1 1.983 1.738l3.11-1.382A1 1 0 0 1 16 4.269v7.462a1 1 0 0 1-1.406.913l-3.111-1.382A2 2 0 0 1 9.5 13H2a2 2 0 0 1-2-2V5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCameraVideoOff = /*#__PURE__*/ makeIcon(\n  'CameraVideoOff',\n  '<path fill-rule=\"evenodd\" d=\"M10.961 12.365a1.99 1.99 0 0 0 .522-1.103l3.11 1.382A1 1 0 0 0 16 11.731V4.269a1 1 0 0 0-1.406-.913l-3.111 1.382A2 2 0 0 0 9.5 3H4.272l.714 1H9.5a1 1 0 0 1 1 1v6a1 1 0 0 1-.144.518l.605.847zM1.428 4.18A.999.999 0 0 0 1 5v6a1 1 0 0 0 1 1h5.014l.714 1H2a2 2 0 0 1-2-2V5c0-.675.334-1.272.847-1.634l.58.814zM15 11.73l-3.5-1.555v-4.35L15 4.269v7.462zm-4.407 3.56l-10-14 .814-.58 10 14-.814.58z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCameraVideoOffFill = /*#__PURE__*/ makeIcon(\n  'CameraVideoOffFill',\n  '<path fill-rule=\"evenodd\" d=\"M10.961 12.365a1.99 1.99 0 0 0 .522-1.103l3.11 1.382A1 1 0 0 0 16 11.731V4.269a1 1 0 0 0-1.406-.913l-3.111 1.382A2 2 0 0 0 9.5 3H4.272l6.69 9.365zm-10.114-9A2.001 2.001 0 0 0 0 5v6a2 2 0 0 0 2 2h5.728L.847 3.366zm9.746 11.925l-10-14 .814-.58 10 14-.814.58z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCapslock = /*#__PURE__*/ makeIcon(\n  'Capslock',\n  '<path fill-rule=\"evenodd\" d=\"M7.27 1.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v1a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1v-1H1.654C.78 9.5.326 8.455.924 7.816L7.27 1.047zM14.346 8.5L8 1.731 1.654 8.5H4.5a1 1 0 0 1 1 1v1h5v-1a1 1 0 0 1 1-1h2.846zm-9.846 5a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1v-1zm6 0h-5v1h5v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCapslockFill = /*#__PURE__*/ makeIcon(\n  'CapslockFill',\n  '<path fill-rule=\"evenodd\" d=\"M7.27 1.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v1a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1v-1H1.654C.78 9.5.326 8.455.924 7.816L7.27 1.047zM4.5 13.5a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCardChecklist = /*#__PURE__*/ makeIcon(\n  'CardChecklist',\n  '<path fill-rule=\"evenodd\" d=\"M14.5 3h-13a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5zm-13-1A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2h-13z\"/><path fill-rule=\"evenodd\" d=\"M7 5.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm-1.496-.854a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0l-.5-.5a.5.5 0 1 1 .708-.708l.146.147 1.146-1.147a.5.5 0 0 1 .708 0zM7 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm-1.496-.854a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0l-.5-.5a.5.5 0 0 1 .708-.708l.146.147 1.146-1.147a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCardHeading = /*#__PURE__*/ makeIcon(\n  'CardHeading',\n  '<path fill-rule=\"evenodd\" d=\"M14.5 3h-13a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5zm-13-1A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2h-13z\"/><path fill-rule=\"evenodd\" d=\"M3 8.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5z\"/><path d=\"M3 5.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCardImage = /*#__PURE__*/ makeIcon(\n  'CardImage',\n  '<path fill-rule=\"evenodd\" d=\"M14.5 3h-13a.5.5 0 0 0-.5.5v9c0 .013 0 .027.002.04V12l2.646-2.354a.5.5 0 0 1 .63-.062l2.66 1.773 3.71-3.71a.5.5 0 0 1 .577-.094L15 9.499V3.5a.5.5 0 0 0-.5-.5zm-13-1A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2h-13zm4.502 3.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCardList = /*#__PURE__*/ makeIcon(\n  'CardList',\n  '<path fill-rule=\"evenodd\" d=\"M14.5 3h-13a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5zm-13-1A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2h-13z\"/><path fill-rule=\"evenodd\" d=\"M5 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 5 8zm0-2.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0 5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5z\"/><circle cx=\"3.5\" cy=\"5.5\" r=\".5\"/><circle cx=\"3.5\" cy=\"8\" r=\".5\"/><circle cx=\"3.5\" cy=\"10.5\" r=\".5\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCardText = /*#__PURE__*/ makeIcon(\n  'CardText',\n  '<path fill-rule=\"evenodd\" d=\"M14.5 3h-13a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5zm-13-1A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2h-13z\"/><path fill-rule=\"evenodd\" d=\"M3 5.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zM3 8a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9A.5.5 0 0 1 3 8zm0 2.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretDown = /*#__PURE__*/ makeIcon(\n  'CaretDown',\n  '<path fill-rule=\"evenodd\" d=\"M3.204 5L8 10.481 12.796 5H3.204zm-.753.659l4.796 5.48a1 1 0 0 0 1.506 0l4.796-5.48c.566-.647.106-1.659-.753-1.659H3.204a1 1 0 0 0-.753 1.659z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretDownFill = /*#__PURE__*/ makeIcon(\n  'CaretDownFill',\n  '<path d=\"M7.247 11.14L2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretDownSquare = /*#__PURE__*/ makeIcon(\n  'CaretDownSquare',\n  '<path fill-rule=\"evenodd\" d=\"M3.544 6.295A.5.5 0 0 1 4 6h8a.5.5 0 0 1 .374.832l-4 4.5a.5.5 0 0 1-.748 0l-4-4.5a.5.5 0 0 1-.082-.537z\"/><path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretDownSquareFill = /*#__PURE__*/ makeIcon(\n  'CaretDownSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2zm4 4a.5.5 0 0 0-.374.832l4 4.5a.5.5 0 0 0 .748 0l4-4.5A.5.5 0 0 0 12 6H4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretLeft = /*#__PURE__*/ makeIcon(\n  'CaretLeft',\n  '<path fill-rule=\"evenodd\" d=\"M10 12.796L4.519 8 10 3.204v9.592zm-.659.753l-5.48-4.796a1 1 0 0 1 0-1.506l5.48-4.796A1 1 0 0 1 11 3.204v9.592a1 1 0 0 1-1.659.753z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretLeftFill = /*#__PURE__*/ makeIcon(\n  'CaretLeftFill',\n  '<path d=\"M3.86 8.753l5.482 4.796c.646.566 1.658.106 1.658-.753V3.204a1 1 0 0 0-1.659-.753l-5.48 4.796a1 1 0 0 0 0 1.506z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretLeftSquare = /*#__PURE__*/ makeIcon(\n  'CaretLeftSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M10.205 12.456A.5.5 0 0 0 10.5 12V4a.5.5 0 0 0-.832-.374l-4.5 4a.5.5 0 0 0 0 .748l4.5 4a.5.5 0 0 0 .537.082z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretLeftSquareFill = /*#__PURE__*/ makeIcon(\n  'CaretLeftSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2zm10.5 10a.5.5 0 0 1-.832.374l-4.5-4a.5.5 0 0 1 0-.748l4.5-4A.5.5 0 0 1 10.5 4v8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretRight = /*#__PURE__*/ makeIcon(\n  'CaretRight',\n  '<path fill-rule=\"evenodd\" d=\"M6 12.796L11.481 8 6 3.204v9.592zm.659.753l5.48-4.796a1 1 0 0 0 0-1.506L6.66 2.451C6.011 1.885 5 2.345 5 3.204v9.592a1 1 0 0 0 1.659.753z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretRightFill = /*#__PURE__*/ makeIcon(\n  'CaretRightFill',\n  '<path d=\"M12.14 8.753l-5.482 4.796c-.646.566-1.658.106-1.658-.753V3.204a1 1 0 0 1 1.659-.753l5.48 4.796a1 1 0 0 1 0 1.506z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretRightSquare = /*#__PURE__*/ makeIcon(\n  'CaretRightSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M5.795 12.456A.5.5 0 0 1 5.5 12V4a.5.5 0 0 1 .832-.374l4.5 4a.5.5 0 0 1 0 .748l-4.5 4a.5.5 0 0 1-.537.082z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretRightSquareFill = /*#__PURE__*/ makeIcon(\n  'CaretRightSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2zm5.5 10a.5.5 0 0 0 .832.374l4.5-4a.5.5 0 0 0 0-.748l-4.5-4A.5.5 0 0 0 5.5 4v8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretUp = /*#__PURE__*/ makeIcon(\n  'CaretUp',\n  '<path fill-rule=\"evenodd\" d=\"M3.204 11L8 5.519 12.796 11H3.204zm-.753-.659l4.796-5.48a1 1 0 0 1 1.506 0l4.796 5.48c.566.647.106 1.659-.753 1.659H3.204a1 1 0 0 1-.753-1.659z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretUpFill = /*#__PURE__*/ makeIcon(\n  'CaretUpFill',\n  '<path d=\"M7.247 4.86l-4.796 5.481c-.566.647-.106 1.659.753 1.659h9.592a1 1 0 0 0 .753-1.659l-4.796-5.48a1 1 0 0 0-1.506 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretUpSquare = /*#__PURE__*/ makeIcon(\n  'CaretUpSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M3.544 10.705A.5.5 0 0 0 4 11h8a.5.5 0 0 0 .374-.832l-4-4.5a.5.5 0 0 0-.748 0l-4 4.5a.5.5 0 0 0-.082.537z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretUpSquareFill = /*#__PURE__*/ makeIcon(\n  'CaretUpSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2zm4 9a.5.5 0 0 1-.374-.832l4-4.5a.5.5 0 0 1 .748 0l4 4.5A.5.5 0 0 1 12 11H4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCart = /*#__PURE__*/ makeIcon(\n  'Cart',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.5A.5.5 0 0 1 .5 1H2a.5.5 0 0 1 .485.379L2.89 3H14.5a.5.5 0 0 1 .491.592l-1.5 8A.5.5 0 0 1 13 12H4a.5.5 0 0 1-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 0 1-.5-.5zM3.102 4l1.313 7h8.17l1.313-7H3.102zM5 12a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm7 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm-7 1a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm7 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCart2 = /*#__PURE__*/ makeIcon(\n  'Cart2',\n  '<path fill-rule=\"evenodd\" d=\"M0 2.5A.5.5 0 0 1 .5 2H2a.5.5 0 0 1 .485.379L2.89 4H14.5a.5.5 0 0 1 .485.621l-1.5 6A.5.5 0 0 1 13 11H4a.5.5 0 0 1-.485-.379L1.61 3H.5a.5.5 0 0 1-.5-.5zM3.14 5l1.25 5h8.22l1.25-5H3.14zM5 13a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm-2 1a2 2 0 1 1 4 0 2 2 0 0 1-4 0zm9-1a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm-2 1a2 2 0 1 1 4 0 2 2 0 0 1-4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCart3 = /*#__PURE__*/ makeIcon(\n  'Cart3',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.5A.5.5 0 0 1 .5 1H2a.5.5 0 0 1 .485.379L2.89 3H14.5a.5.5 0 0 1 .49.598l-1 5a.5.5 0 0 1-.465.401l-9.397.472L4.415 11H13a.5.5 0 0 1 0 1H4a.5.5 0 0 1-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 0 1-.5-.5zM3.102 4l.84 4.479 9.144-.459L13.89 4H3.102zM5 12a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm7 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm-7 1a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm7 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCart4 = /*#__PURE__*/ makeIcon(\n  'Cart4',\n  '<path fill-rule=\"evenodd\" d=\"M0 2.5A.5.5 0 0 1 .5 2H2a.5.5 0 0 1 .485.379L2.89 4H14.5a.5.5 0 0 1 .485.621l-1.5 6A.5.5 0 0 1 13 11H4a.5.5 0 0 1-.485-.379L1.61 3H.5a.5.5 0 0 1-.5-.5zM3.14 5l.5 2H5V5H3.14zM6 5v2h2V5H6zm3 0v2h2V5H9zm3 0v2h1.36l.5-2H12zm1.11 3H12v2h.61l.5-2zM11 8H9v2h2V8zM8 8H6v2h2V8zM5 8H3.89l.5 2H5V8zm0 5a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm-2 1a2 2 0 1 1 4 0 2 2 0 0 1-4 0zm9-1a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm-2 1a2 2 0 1 1 4 0 2 2 0 0 1-4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartCheck = /*#__PURE__*/ makeIcon(\n  'CartCheck',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.5A.5.5 0 0 1 .5 1H2a.5.5 0 0 1 .485.379L2.89 3H14.5a.5.5 0 0 1 .491.592l-1.5 8A.5.5 0 0 1 13 12H4a.5.5 0 0 1-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 0 1-.5-.5zM3.102 4l1.313 7h8.17l1.313-7H3.102zM5 12a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm7 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm-7 1a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm7 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/><path fill-rule=\"evenodd\" d=\"M11.354 5.646a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L8 8.293l2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartCheckFill = /*#__PURE__*/ makeIcon(\n  'CartCheckFill',\n  '<path fill-rule=\"evenodd\" d=\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1H.5zM4 14a1 1 0 1 1 2 0 1 1 0 0 1-2 0zm7 0a1 1 0 1 1 2 0 1 1 0 0 1-2 0zm.354-7.646a.5.5 0 0 0-.708-.708L8 8.293 6.854 7.146a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartDash = /*#__PURE__*/ makeIcon(\n  'CartDash',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.5A.5.5 0 0 1 .5 1H2a.5.5 0 0 1 .485.379L2.89 3H14.5a.5.5 0 0 1 .491.592l-1.5 8A.5.5 0 0 1 13 12H4a.5.5 0 0 1-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 0 1-.5-.5zM3.102 4l1.313 7h8.17l1.313-7H3.102zM5 12a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm7 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm-7 1a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm7 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/><path fill-rule=\"evenodd\" d=\"M6 7.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartDashFill = /*#__PURE__*/ makeIcon(\n  'CartDashFill',\n  '<path fill-rule=\"evenodd\" d=\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1H.5zM4 14a1 1 0 1 1 2 0 1 1 0 0 1-2 0zm7 0a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM6.5 7a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1h-4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartFill = /*#__PURE__*/ makeIcon(\n  'CartFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.5A.5.5 0 0 1 .5 1H2a.5.5 0 0 1 .485.379L2.89 3H14.5a.5.5 0 0 1 .491.592l-1.5 8A.5.5 0 0 1 13 12H4a.5.5 0 0 1-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 0 1-.5-.5zM5 12a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm7 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm-7 1a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm7 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartPlus = /*#__PURE__*/ makeIcon(\n  'CartPlus',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.5A.5.5 0 0 1 .5 1H2a.5.5 0 0 1 .485.379L2.89 3H14.5a.5.5 0 0 1 .491.592l-1.5 8A.5.5 0 0 1 13 12H4a.5.5 0 0 1-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 0 1-.5-.5zM3.102 4l1.313 7h8.17l1.313-7H3.102zM5 12a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm7 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm-7 1a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm7 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/><path fill-rule=\"evenodd\" d=\"M8.5 5a.5.5 0 0 1 .5.5V7h1.5a.5.5 0 0 1 0 1H9v1.5a.5.5 0 0 1-1 0V8H6.5a.5.5 0 0 1 0-1H8V5.5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartPlusFill = /*#__PURE__*/ makeIcon(\n  'CartPlusFill',\n  '<path fill-rule=\"evenodd\" d=\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1H.5zM4 14a1 1 0 1 1 2 0 1 1 0 0 1-2 0zm7 0a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM9 5.5a.5.5 0 0 0-1 0V7H6.5a.5.5 0 0 0 0 1H8v1.5a.5.5 0 0 0 1 0V8h1.5a.5.5 0 0 0 0-1H9V5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartX = /*#__PURE__*/ makeIcon(\n  'CartX',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.5A.5.5 0 0 1 .5 1H2a.5.5 0 0 1 .485.379L2.89 3H14.5a.5.5 0 0 1 .491.592l-1.5 8A.5.5 0 0 1 13 12H4a.5.5 0 0 1-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 0 1-.5-.5zM3.102 4l1.313 7h8.17l1.313-7H3.102zM5 12a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm7 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm-7 1a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm7 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/><path fill-rule=\"evenodd\" d=\"M6.646 5.646a.5.5 0 0 1 .708 0L8.5 6.793l1.146-1.147a.5.5 0 0 1 .708.708L9.207 7.5l1.147 1.146a.5.5 0 0 1-.708.708L8.5 8.207 7.354 9.354a.5.5 0 1 1-.708-.708L7.793 7.5 6.646 6.354a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartXFill = /*#__PURE__*/ makeIcon(\n  'CartXFill',\n  '<path fill-rule=\"evenodd\" d=\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1H.5zM4 14a1 1 0 1 1 2 0 1 1 0 0 1-2 0zm7 0a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.354 5.646a.5.5 0 1 0-.708.708L7.793 7.5 6.646 8.646a.5.5 0 1 0 .708.708L8.5 8.207l1.146 1.147a.5.5 0 0 0 .708-.708L9.207 7.5l1.147-1.146a.5.5 0 0 0-.708-.708L8.5 6.793 7.354 5.646z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCash = /*#__PURE__*/ makeIcon(\n  'Cash',\n  '<path fill-rule=\"evenodd\" d=\"M15 4H1v8h14V4zM1 3a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1H1z\"/><path d=\"M13 4a2 2 0 0 0 2 2V4h-2zM3 4a2 2 0 0 1-2 2V4h2zm10 8a2 2 0 0 1 2-2v2h-2zM3 12a2 2 0 0 0-2-2v2h2zm7-4a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCashStack = /*#__PURE__*/ makeIcon(\n  'CashStack',\n  '<path d=\"M14 3H1a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1h-1z\"/><path fill-rule=\"evenodd\" d=\"M15 5H1v8h14V5zM1 4a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1H1z\"/><path d=\"M13 5a2 2 0 0 0 2 2V5h-2zM3 5a2 2 0 0 1-2 2V5h2zm10 8a2 2 0 0 1 2-2v2h-2zM3 13a2 2 0 0 0-2-2v2h2zm7-4a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCast = /*#__PURE__*/ makeIcon(\n  'Cast',\n  '<path d=\"M7.646 9.354l-3.792 3.792a.5.5 0 0 0 .353.854h7.586a.5.5 0 0 0 .354-.854L8.354 9.354a.5.5 0 0 0-.708 0z\"/><path d=\"M11.414 11H14.5a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.5-.5h-13a.5.5 0 0 0-.5.5v7a.5.5 0 0 0 .5.5h3.086l-1 1H1.5A1.5 1.5 0 0 1 0 10.5v-7A1.5 1.5 0 0 1 1.5 2h13A1.5 1.5 0 0 1 16 3.5v7a1.5 1.5 0 0 1-1.5 1.5h-2.086l-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChat = /*#__PURE__*/ makeIcon(\n  'Chat',\n  '<path fill-rule=\"evenodd\" d=\"M2.678 11.894a1 1 0 0 1 .287.801 10.97 10.97 0 0 1-.398 2c1.395-.323 2.247-.697 2.634-.893a1 1 0 0 1 .71-.074A8.06 8.06 0 0 0 8 14c3.996 0 7-2.807 7-6 0-3.192-3.004-6-7-6S1 4.808 1 8c0 1.468.617 2.83 1.678 3.894zm-.493 3.905a21.682 21.682 0 0 1-.713.129c-.2.032-.352-.176-.273-.362a9.68 9.68 0 0 0 .244-.637l.003-.01c.248-.72.45-1.548.524-2.319C.743 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7-3.582 7-8 7a9.06 9.06 0 0 1-2.347-.306c-.52.263-1.639.742-3.468 1.105z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatDots = /*#__PURE__*/ makeIcon(\n  'ChatDots',\n  '<path fill-rule=\"evenodd\" d=\"M2.678 11.894a1 1 0 0 1 .287.801 10.97 10.97 0 0 1-.398 2c1.395-.323 2.247-.697 2.634-.893a1 1 0 0 1 .71-.074A8.06 8.06 0 0 0 8 14c3.996 0 7-2.807 7-6 0-3.192-3.004-6-7-6S1 4.808 1 8c0 1.468.617 2.83 1.678 3.894zm-.493 3.905a21.682 21.682 0 0 1-.713.129c-.2.032-.352-.176-.273-.362a9.68 9.68 0 0 0 .244-.637l.003-.01c.248-.72.45-1.548.524-2.319C.743 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7-3.582 7-8 7a9.06 9.06 0 0 1-2.347-.306c-.52.263-1.639.742-3.468 1.105z\"/><path d=\"M5 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatDotsFill = /*#__PURE__*/ makeIcon(\n  'ChatDotsFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8c0 3.866-3.582 7-8 7a9.06 9.06 0 0 1-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7zM5 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatFill = /*#__PURE__*/ makeIcon(\n  'ChatFill',\n  '<path d=\"M8 15c4.418 0 8-3.134 8-7s-3.582-7-8-7-8 3.134-8 7c0 1.76.743 3.37 1.97 4.6-.097 1.016-.417 2.13-.771 2.966-.079.186.074.394.273.362 2.256-.37 3.597-.938 4.18-1.234A9.06 9.06 0 0 0 8 15z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeft = /*#__PURE__*/ makeIcon(\n  'ChatLeft',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v11.586l2-2A2 2 0 0 1 4.414 11H14a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12.793a.5.5 0 0 0 .854.353l2.853-2.853A1 1 0 0 1 4.414 12H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftDots = /*#__PURE__*/ makeIcon(\n  'ChatLeftDots',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v11.586l2-2A2 2 0 0 1 4.414 11H14a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12.793a.5.5 0 0 0 .854.353l2.853-2.853A1 1 0 0 1 4.414 12H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path d=\"M5 6a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftDotsFill = /*#__PURE__*/ makeIcon(\n  'ChatLeftDotsFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4.414a1 1 0 0 0-.707.293L.854 15.146A.5.5 0 0 1 0 14.793V2zm5 4a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftFill = /*#__PURE__*/ makeIcon(\n  'ChatLeftFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12.793a.5.5 0 0 0 .854.353l2.853-2.853A1 1 0 0 1 4.414 12H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftQuote = /*#__PURE__*/ makeIcon(\n  'ChatLeftQuote',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v11.586l2-2A2 2 0 0 1 4.414 11H14a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12.793a.5.5 0 0 0 .854.353l2.853-2.853A1 1 0 0 1 4.414 12H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M7.066 4.76A1.665 1.665 0 0 0 4 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 0 0 8 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftQuoteFill = /*#__PURE__*/ makeIcon(\n  'ChatLeftQuoteFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4.414a1 1 0 0 0-.707.293L.854 15.146A.5.5 0 0 1 0 14.793V2zm7.194 2.766c.087.124.163.26.227.401.428.948.393 2.377-.942 3.706a.446.446 0 0 1-.612.01.405.405 0 0 1-.011-.59c.419-.416.672-.831.809-1.22-.269.165-.588.26-.93.26C4.775 7.333 4 6.587 4 5.667 4 4.747 4.776 4 5.734 4c.271 0 .528.06.756.166l.008.004c.169.07.327.182.469.324.085.083.161.174.227.272zM11 7.073c-.269.165-.588.26-.93.26-.958 0-1.735-.746-1.735-1.666 0-.92.777-1.667 1.734-1.667.271 0 .528.06.756.166l.008.004c.17.07.327.182.469.324.085.083.161.174.227.272.087.124.164.26.228.401.428.948.392 2.377-.942 3.706a.446.446 0 0 1-.613.01.405.405 0 0 1-.011-.59c.42-.416.672-.831.81-1.22z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftText = /*#__PURE__*/ makeIcon(\n  'ChatLeftText',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v11.586l2-2A2 2 0 0 1 4.414 11H14a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12.793a.5.5 0 0 0 .854.353l2.853-2.853A1 1 0 0 1 4.414 12H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M3 3.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zM3 6a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9A.5.5 0 0 1 3 6zm0 2.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftTextFill = /*#__PURE__*/ makeIcon(\n  'ChatLeftTextFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4.414a1 1 0 0 0-.707.293L.854 15.146A.5.5 0 0 1 0 14.793V2zm3.5 1a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1h-9zm0 2.5a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1h-9zm0 2.5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatQuote = /*#__PURE__*/ makeIcon(\n  'ChatQuote',\n  '<path fill-rule=\"evenodd\" d=\"M2.678 11.894a1 1 0 0 1 .287.801 10.97 10.97 0 0 1-.398 2c1.395-.323 2.247-.697 2.634-.893a1 1 0 0 1 .71-.074A8.06 8.06 0 0 0 8 14c3.996 0 7-2.807 7-6 0-3.192-3.004-6-7-6S1 4.808 1 8c0 1.468.617 2.83 1.678 3.894zm-.493 3.905a21.682 21.682 0 0 1-.713.129c-.2.032-.352-.176-.273-.362a9.68 9.68 0 0 0 .244-.637l.003-.01c.248-.72.45-1.548.524-2.319C.743 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7-3.582 7-8 7a9.06 9.06 0 0 1-2.347-.306c-.52.263-1.639.742-3.468 1.105z\"/><path d=\"M7.468 7.667c0 .92-.776 1.666-1.734 1.666S4 8.587 4 7.667C4 6.747 4.776 6 5.734 6s1.734.746 1.734 1.667z\"/><path fill-rule=\"evenodd\" d=\"M6.157 6.936a.438.438 0 0 1-.56.293.413.413 0 0 1-.274-.527c.08-.23.23-.44.477-.546a.891.891 0 0 1 .698.014c.387.16.72.545.923.997.428.948.393 2.377-.942 3.706a.446.446 0 0 1-.612.01.405.405 0 0 1-.011-.59c1.093-1.087 1.058-2.158.77-2.794-.152-.336-.354-.514-.47-.563zm-.035-.012h-.001.001z\"/><path d=\"M11.803 7.667c0 .92-.776 1.666-1.734 1.666-.957 0-1.734-.746-1.734-1.666 0-.92.777-1.667 1.734-1.667.958 0 1.734.746 1.734 1.667z\"/><path fill-rule=\"evenodd\" d=\"M10.492 6.936a.438.438 0 0 1-.56.293.413.413 0 0 1-.274-.527c.08-.23.23-.44.477-.546a.891.891 0 0 1 .698.014c.387.16.72.545.924.997.428.948.392 2.377-.942 3.706a.446.446 0 0 1-.613.01.405.405 0 0 1-.011-.59c1.093-1.087 1.058-2.158.77-2.794-.152-.336-.354-.514-.469-.563zm-.034-.012h-.002.002z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatQuoteFill = /*#__PURE__*/ makeIcon(\n  'ChatQuoteFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8c0 3.866-3.582 7-8 7a9.06 9.06 0 0 1-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7zM7.194 6.766c.087.124.163.26.227.401.428.948.393 2.377-.942 3.706a.446.446 0 0 1-.612.01.405.405 0 0 1-.011-.59c.419-.416.672-.831.809-1.22-.269.165-.588.26-.93.26C4.775 9.333 4 8.587 4 7.667 4 6.747 4.776 6 5.734 6c.271 0 .528.06.756.166l.008.004c.169.07.327.182.469.324.085.083.161.174.227.272zM11 9.073c-.269.165-.588.26-.93.26-.958 0-1.735-.746-1.735-1.666 0-.92.777-1.667 1.734-1.667.271 0 .528.06.756.166l.008.004c.17.07.327.182.469.324.085.083.161.174.227.272.087.124.164.26.228.401.428.948.392 2.377-.942 3.706a.446.446 0 0 1-.613.01.405.405 0 0 1-.011-.59c.42-.416.672-.831.81-1.22z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatRight = /*#__PURE__*/ makeIcon(\n  'ChatRight',\n  '<path fill-rule=\"evenodd\" d=\"M2 1h12a1 1 0 0 1 1 1v11.586l-2-2A2 2 0 0 0 11.586 11H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zm12-1a2 2 0 0 1 2 2v12.793a.5.5 0 0 1-.854.353l-2.853-2.853a1 1 0 0 0-.707-.293H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightDots = /*#__PURE__*/ makeIcon(\n  'ChatRightDots',\n  '<path fill-rule=\"evenodd\" d=\"M2 1h12a1 1 0 0 1 1 1v11.586l-2-2A2 2 0 0 0 11.586 11H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zm12-1a2 2 0 0 1 2 2v12.793a.5.5 0 0 1-.854.353l-2.853-2.853a1 1 0 0 0-.707-.293H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12z\"/><path d=\"M5 6a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightDotsFill = /*#__PURE__*/ makeIcon(\n  'ChatRightDotsFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h9.586a1 1 0 0 1 .707.293l2.853 2.853a.5.5 0 0 0 .854-.353V2zM5 6a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightFill = /*#__PURE__*/ makeIcon(\n  'ChatRightFill',\n  '<path fill-rule=\"evenodd\" d=\"M14 0a2 2 0 0 1 2 2v12.793a.5.5 0 0 1-.854.353l-2.853-2.853a1 1 0 0 0-.707-.293H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightQuote = /*#__PURE__*/ makeIcon(\n  'ChatRightQuote',\n  '<path fill-rule=\"evenodd\" d=\"M2 1h12a1 1 0 0 1 1 1v11.586l-2-2A2 2 0 0 0 11.586 11H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zm12-1a2 2 0 0 1 2 2v12.793a.5.5 0 0 1-.854.353l-2.853-2.853a1 1 0 0 0-.707-.293H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12z\"/><path fill-rule=\"evenodd\" d=\"M7.066 4.76A1.665 1.665 0 0 0 4 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 0 0 8 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightQuoteFill = /*#__PURE__*/ makeIcon(\n  'ChatRightQuoteFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h9.586a1 1 0 0 1 .707.293l2.853 2.853a.5.5 0 0 0 .854-.353V2zM7.194 4.766c.087.124.163.26.227.401.428.948.393 2.377-.942 3.706a.446.446 0 0 1-.612.01.405.405 0 0 1-.011-.59c.419-.416.672-.831.809-1.22-.269.165-.588.26-.93.26C4.775 7.333 4 6.587 4 5.667 4 4.747 4.776 4 5.734 4c.271 0 .528.06.756.166l.008.004c.169.07.327.182.469.324.085.083.161.174.227.272zM11 7.073c-.269.165-.588.26-.93.26-.958 0-1.735-.746-1.735-1.666 0-.92.777-1.667 1.734-1.667.271 0 .528.06.756.166l.008.004c.17.07.327.182.469.324.085.083.161.174.227.272.087.124.164.26.228.401.428.948.392 2.377-.942 3.706a.446.446 0 0 1-.613.01.405.405 0 0 1-.011-.59c.42-.416.672-.831.81-1.22z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightText = /*#__PURE__*/ makeIcon(\n  'ChatRightText',\n  '<path fill-rule=\"evenodd\" d=\"M2 1h12a1 1 0 0 1 1 1v11.586l-2-2A2 2 0 0 0 11.586 11H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zm12-1a2 2 0 0 1 2 2v12.793a.5.5 0 0 1-.854.353l-2.853-2.853a1 1 0 0 0-.707-.293H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12z\"/><path fill-rule=\"evenodd\" d=\"M3 3.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zM3 6a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9A.5.5 0 0 1 3 6zm0 2.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightTextFill = /*#__PURE__*/ makeIcon(\n  'ChatRightTextFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h9.586a1 1 0 0 1 .707.293l2.853 2.853a.5.5 0 0 0 .854-.353V2zM3.5 3a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1h-9zm0 2.5a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1h-9zm0 2.5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquare = /*#__PURE__*/ makeIcon(\n  'ChatSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h2.5a2 2 0 0 1 1.6.8L8 14.333 9.9 11.8a2 2 0 0 1 1.6-.8H14a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareDots = /*#__PURE__*/ makeIcon(\n  'ChatSquareDots',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h2.5a2 2 0 0 1 1.6.8L8 14.333 9.9 11.8a2 2 0 0 1 1.6-.8H14a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path d=\"M5 6a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareDotsFill = /*#__PURE__*/ makeIcon(\n  'ChatSquareDotsFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.5a1 1 0 0 0-.8.4l-1.9 2.533a1 1 0 0 1-1.6 0L5.3 12.4a1 1 0 0 0-.8-.4H2a2 2 0 0 1-2-2V2zm5 4a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareFill = /*#__PURE__*/ makeIcon(\n  'ChatSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareQuote = /*#__PURE__*/ makeIcon(\n  'ChatSquareQuote',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h2.5a2 2 0 0 1 1.6.8L8 14.333 9.9 11.8a2 2 0 0 1 1.6-.8H14a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M7.066 4.76A1.665 1.665 0 0 0 4 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 0 0 8 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareQuoteFill = /*#__PURE__*/ makeIcon(\n  'ChatSquareQuoteFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.5a1 1 0 0 0-.8.4l-1.9 2.533a1 1 0 0 1-1.6 0L5.3 12.4a1 1 0 0 0-.8-.4H2a2 2 0 0 1-2-2V2zm7.194 2.766c.087.124.163.26.227.401.428.948.393 2.377-.942 3.706a.446.446 0 0 1-.612.01.405.405 0 0 1-.011-.59c.419-.416.672-.831.809-1.22-.269.165-.588.26-.93.26C4.775 7.333 4 6.587 4 5.667 4 4.747 4.776 4 5.734 4c.271 0 .528.06.756.166l.008.004c.169.07.327.182.469.324.085.083.161.174.227.272zM11 7.073c-.269.165-.588.26-.93.26-.958 0-1.735-.746-1.735-1.666 0-.92.777-1.667 1.734-1.667.271 0 .528.06.756.166l.008.004c.17.07.327.182.469.324.085.083.161.174.227.272.087.124.164.26.228.401.428.948.392 2.377-.942 3.706a.446.446 0 0 1-.613.01.405.405 0 0 1-.011-.59c.42-.416.672-.831.81-1.22z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareText = /*#__PURE__*/ makeIcon(\n  'ChatSquareText',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h2.5a2 2 0 0 1 1.6.8L8 14.333 9.9 11.8a2 2 0 0 1 1.6-.8H14a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M3 3.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zM3 6a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9A.5.5 0 0 1 3 6zm0 2.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareTextFill = /*#__PURE__*/ makeIcon(\n  'ChatSquareTextFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.5a1 1 0 0 0-.8.4l-1.9 2.533a1 1 0 0 1-1.6 0L5.3 12.4a1 1 0 0 0-.8-.4H2a2 2 0 0 1-2-2V2zm3.5 1a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1h-9zm0 2.5a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1h-9zm0 2.5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatText = /*#__PURE__*/ makeIcon(\n  'ChatText',\n  '<path fill-rule=\"evenodd\" d=\"M2.678 11.894a1 1 0 0 1 .287.801 10.97 10.97 0 0 1-.398 2c1.395-.323 2.247-.697 2.634-.893a1 1 0 0 1 .71-.074A8.06 8.06 0 0 0 8 14c3.996 0 7-2.807 7-6 0-3.192-3.004-6-7-6S1 4.808 1 8c0 1.468.617 2.83 1.678 3.894zm-.493 3.905a21.682 21.682 0 0 1-.713.129c-.2.032-.352-.176-.273-.362a9.68 9.68 0 0 0 .244-.637l.003-.01c.248-.72.45-1.548.524-2.319C.743 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7-3.582 7-8 7a9.06 9.06 0 0 1-2.347-.306c-.52.263-1.639.742-3.468 1.105z\"/><path fill-rule=\"evenodd\" d=\"M4 5.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8zm0 2.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatTextFill = /*#__PURE__*/ makeIcon(\n  'ChatTextFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8c0 3.866-3.582 7-8 7a9.06 9.06 0 0 1-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7zM4.5 5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7zm0 2.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7zm0 2.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1h-4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheck = /*#__PURE__*/ makeIcon(\n  'Check',\n  '<path fill-rule=\"evenodd\" d=\"M10.97 4.97a.75.75 0 0 1 1.071 1.05l-3.992 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425a.236.236 0 0 1 .02-.022z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheck2 = /*#__PURE__*/ makeIcon(\n  'Check2',\n  '<path fill-rule=\"evenodd\" d=\"M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheck2All = /*#__PURE__*/ makeIcon(\n  'Check2All',\n  '<path fill-rule=\"evenodd\" d=\"M12.354 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z\"/><path d=\"M6.25 8.043l-.896-.897a.5.5 0 1 0-.708.708l.897.896.707-.707zm1 2.414l.896.897a.5.5 0 0 0 .708 0l7-7a.5.5 0 0 0-.708-.708L8.5 10.293l-.543-.543-.707.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheck2Circle = /*#__PURE__*/ makeIcon(\n  'Check2Circle',\n  '<path fill-rule=\"evenodd\" d=\"M15.354 2.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3-3a.5.5 0 1 1 .708-.708L8 9.293l6.646-6.647a.5.5 0 0 1 .708 0z\"/><path fill-rule=\"evenodd\" d=\"M8 2.5A5.5 5.5 0 1 0 13.5 8a.5.5 0 0 1 1 0 6.5 6.5 0 1 1-3.25-5.63.5.5 0 1 1-.5.865A5.472 5.472 0 0 0 8 2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheck2Square = /*#__PURE__*/ makeIcon(\n  'Check2Square',\n  '<path fill-rule=\"evenodd\" d=\"M15.354 2.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3-3a.5.5 0 1 1 .708-.708L8 9.293l6.646-6.647a.5.5 0 0 1 .708 0z\"/><path fill-rule=\"evenodd\" d=\"M1.5 13A1.5 1.5 0 0 0 3 14.5h10a1.5 1.5 0 0 0 1.5-1.5V8a.5.5 0 0 0-1 0v5a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5V3a.5.5 0 0 1 .5-.5h8a.5.5 0 0 0 0-1H3A1.5 1.5 0 0 0 1.5 3v10z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheckAll = /*#__PURE__*/ makeIcon(\n  'CheckAll',\n  '<path fill-rule=\"evenodd\" d=\"M8.97 4.97a.75.75 0 0 1 1.071 1.05l-3.992 4.99a.75.75 0 0 1-1.08.02L2.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093L8.95 4.992a.252.252 0 0 1 .02-.022zm-.92 5.14l.92.92a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 1 0-1.091-1.028L9.477 9.417l-.485-.486-.943 1.179z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheckCircle = /*#__PURE__*/ makeIcon(\n  'CheckCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M10.97 4.97a.75.75 0 0 1 1.071 1.05l-3.992 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425a.236.236 0 0 1 .02-.022z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheckCircleFill = /*#__PURE__*/ makeIcon(\n  'CheckCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheckSquare = /*#__PURE__*/ makeIcon(\n  'CheckSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M10.97 4.97a.75.75 0 0 1 1.071 1.05l-3.992 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425a.236.236 0 0 1 .02-.022z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheckSquareFill = /*#__PURE__*/ makeIcon(\n  'CheckSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm10.03 4.97a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronBarContract = /*#__PURE__*/ makeIcon(\n  'ChevronBarContract',\n  '<path fill-rule=\"evenodd\" d=\"M3.646 14.854a.5.5 0 0 0 .708 0L8 11.207l3.646 3.647a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 0 0 0 .708zm0-13.708a.5.5 0 0 1 .708 0L8 4.793l3.646-3.647a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 0-.708zM1 8a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13A.5.5 0 0 1 1 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronBarDown = /*#__PURE__*/ makeIcon(\n  'ChevronBarDown',\n  '<path fill-rule=\"evenodd\" d=\"M3.646 4.146a.5.5 0 0 1 .708 0L8 7.793l3.646-3.647a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 0-.708zM1 11.5a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronBarExpand = /*#__PURE__*/ makeIcon(\n  'ChevronBarExpand',\n  '<path fill-rule=\"evenodd\" d=\"M3.646 10.146a.5.5 0 0 1 .708 0L8 13.793l3.646-3.647a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 0-.708zm0-4.292a.5.5 0 0 0 .708 0L8 2.207l3.646 3.647a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 0 0 0 .708zM1 8a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13A.5.5 0 0 1 1 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronBarLeft = /*#__PURE__*/ makeIcon(\n  'ChevronBarLeft',\n  '<path fill-rule=\"evenodd\" d=\"M11.854 3.646a.5.5 0 0 1 0 .708L8.207 8l3.647 3.646a.5.5 0 0 1-.708.708l-4-4a.5.5 0 0 1 0-.708l4-4a.5.5 0 0 1 .708 0zM4.5 1a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 1 0v-13a.5.5 0 0 0-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronBarRight = /*#__PURE__*/ makeIcon(\n  'ChevronBarRight',\n  '<path fill-rule=\"evenodd\" d=\"M4.146 3.646a.5.5 0 0 0 0 .708L7.793 8l-3.647 3.646a.5.5 0 0 0 .708.708l4-4a.5.5 0 0 0 0-.708l-4-4a.5.5 0 0 0-.708 0zM11.5 1a.5.5 0 0 1 .5.5v13a.5.5 0 0 1-1 0v-13a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronBarUp = /*#__PURE__*/ makeIcon(\n  'ChevronBarUp',\n  '<path fill-rule=\"evenodd\" d=\"M3.646 11.854a.5.5 0 0 0 .708 0L8 8.207l3.646 3.647a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 0 0 0 .708zM2.4 5.2c0 .22.18.4.4.4h10.4a.4.4 0 0 0 0-.8H2.8a.4.4 0 0 0-.4.4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronCompactDown = /*#__PURE__*/ makeIcon(\n  'ChevronCompactDown',\n  '<path fill-rule=\"evenodd\" d=\"M1.553 6.776a.5.5 0 0 1 .67-.223L8 9.44l5.776-2.888a.5.5 0 1 1 .448.894l-6 3a.5.5 0 0 1-.448 0l-6-3a.5.5 0 0 1-.223-.67z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronCompactLeft = /*#__PURE__*/ makeIcon(\n  'ChevronCompactLeft',\n  '<path fill-rule=\"evenodd\" d=\"M9.224 1.553a.5.5 0 0 1 .223.67L6.56 8l2.888 5.776a.5.5 0 1 1-.894.448l-3-6a.5.5 0 0 1 0-.448l3-6a.5.5 0 0 1 .67-.223z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronCompactRight = /*#__PURE__*/ makeIcon(\n  'ChevronCompactRight',\n  '<path fill-rule=\"evenodd\" d=\"M6.776 1.553a.5.5 0 0 1 .671.223l3 6a.5.5 0 0 1 0 .448l-3 6a.5.5 0 1 1-.894-.448L9.44 8 6.553 2.224a.5.5 0 0 1 .223-.671z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronCompactUp = /*#__PURE__*/ makeIcon(\n  'ChevronCompactUp',\n  '<path fill-rule=\"evenodd\" d=\"M7.776 5.553a.5.5 0 0 1 .448 0l6 3a.5.5 0 1 1-.448.894L8 6.56 2.224 9.447a.5.5 0 1 1-.448-.894l6-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronContract = /*#__PURE__*/ makeIcon(\n  'ChevronContract',\n  '<path fill-rule=\"evenodd\" d=\"M3.646 13.854a.5.5 0 0 0 .708 0L8 10.207l3.646 3.647a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 0 0 0 .708zm0-11.708a.5.5 0 0 1 .708 0L8 5.793l3.646-3.647a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronDoubleDown = /*#__PURE__*/ makeIcon(\n  'ChevronDoubleDown',\n  '<path fill-rule=\"evenodd\" d=\"M1.646 6.646a.5.5 0 0 1 .708 0L8 12.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z\"/><path fill-rule=\"evenodd\" d=\"M1.646 2.646a.5.5 0 0 1 .708 0L8 8.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronDoubleLeft = /*#__PURE__*/ makeIcon(\n  'ChevronDoubleLeft',\n  '<path fill-rule=\"evenodd\" d=\"M8.354 1.646a.5.5 0 0 1 0 .708L2.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z\"/><path fill-rule=\"evenodd\" d=\"M12.354 1.646a.5.5 0 0 1 0 .708L6.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronDoubleRight = /*#__PURE__*/ makeIcon(\n  'ChevronDoubleRight',\n  '<path fill-rule=\"evenodd\" d=\"M3.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L9.293 8 3.646 2.354a.5.5 0 0 1 0-.708z\"/><path fill-rule=\"evenodd\" d=\"M7.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L13.293 8 7.646 2.354a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronDoubleUp = /*#__PURE__*/ makeIcon(\n  'ChevronDoubleUp',\n  '<path fill-rule=\"evenodd\" d=\"M7.646 2.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 3.707 2.354 9.354a.5.5 0 1 1-.708-.708l6-6z\"/><path fill-rule=\"evenodd\" d=\"M7.646 6.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 7.707l-5.646 5.647a.5.5 0 0 1-.708-.708l6-6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronDown = /*#__PURE__*/ makeIcon(\n  'ChevronDown',\n  '<path fill-rule=\"evenodd\" d=\"M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronExpand = /*#__PURE__*/ makeIcon(\n  'ChevronExpand',\n  '<path fill-rule=\"evenodd\" d=\"M3.646 9.146a.5.5 0 0 1 .708 0L8 12.793l3.646-3.647a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 0-.708zm0-2.292a.5.5 0 0 0 .708 0L8 3.207l3.646 3.647a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 0 0 0 .708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronLeft = /*#__PURE__*/ makeIcon(\n  'ChevronLeft',\n  '<path fill-rule=\"evenodd\" d=\"M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronRight = /*#__PURE__*/ makeIcon(\n  'ChevronRight',\n  '<path fill-rule=\"evenodd\" d=\"M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChevronUp = /*#__PURE__*/ makeIcon(\n  'ChevronUp',\n  '<path fill-rule=\"evenodd\" d=\"M7.646 4.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 5.707l-5.646 5.647a.5.5 0 0 1-.708-.708l6-6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCircle = /*#__PURE__*/ makeIcon(\n  'Circle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCircleFill = /*#__PURE__*/ makeIcon(\n  'CircleFill',\n  '<circle cx=\"8\" cy=\"8\" r=\"8\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCircleHalf = /*#__PURE__*/ makeIcon(\n  'CircleHalf',\n  '<path fill-rule=\"evenodd\" d=\"M8 15V1a7 7 0 1 1 0 14zm0 1A8 8 0 1 1 8 0a8 8 0 0 1 0 16z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCircleSquare = /*#__PURE__*/ makeIcon(\n  'CircleSquare',\n  '<path d=\"M0 6a6 6 0 1 1 12 0A6 6 0 0 1 0 6z\"/><path d=\"M12.93 5h1.57a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5v-1.57a6.953 6.953 0 0 1-1-.22v1.79A1.5 1.5 0 0 0 5.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 4h-1.79c.097.324.17.658.22 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconClipboard = /*#__PURE__*/ makeIcon(\n  'Clipboard',\n  '<path fill-rule=\"evenodd\" d=\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z\"/><path fill-rule=\"evenodd\" d=\"M9.5 1h-3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconClipboardCheck = /*#__PURE__*/ makeIcon(\n  'ClipboardCheck',\n  '<path fill-rule=\"evenodd\" d=\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z\"/><path fill-rule=\"evenodd\" d=\"M9.5 1h-3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3zm4.354 7.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 9.793l2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconClipboardData = /*#__PURE__*/ makeIcon(\n  'ClipboardData',\n  '<path fill-rule=\"evenodd\" d=\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z\"/><path fill-rule=\"evenodd\" d=\"M9.5 1h-3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z\"/><path d=\"M4 11a1 1 0 1 1 2 0v1a1 1 0 1 1-2 0v-1zm6-4a1 1 0 1 1 2 0v5a1 1 0 1 1-2 0V7zM7 9a1 1 0 0 1 2 0v3a1 1 0 1 1-2 0V9z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconClipboardMinus = /*#__PURE__*/ makeIcon(\n  'ClipboardMinus',\n  '<path fill-rule=\"evenodd\" d=\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z\"/><path fill-rule=\"evenodd\" d=\"M9.5 1h-3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3zm-1 9.5A.5.5 0 0 1 6 9h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconClipboardPlus = /*#__PURE__*/ makeIcon(\n  'ClipboardPlus',\n  '<path fill-rule=\"evenodd\" d=\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z\"/><path fill-rule=\"evenodd\" d=\"M9.5 1h-3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3zM8 7a.5.5 0 0 1 .5.5V9H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V10H6a.5.5 0 0 1 0-1h1.5V7.5A.5.5 0 0 1 8 7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconClipboardX = /*#__PURE__*/ makeIcon(\n  'ClipboardX',\n  '<path fill-rule=\"evenodd\" d=\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z\"/><path fill-rule=\"evenodd\" d=\"M9.5 1h-3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3zm-.354 7.146a.5.5 0 0 1 .708 0L8 8.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 9l1.147 1.146a.5.5 0 0 1-.708.708L8 9.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 9 6.146 7.854a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconClock = /*#__PURE__*/ makeIcon(\n  'Clock',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm8-7A8 8 0 1 1 0 8a8 8 0 0 1 16 0z\"/><path fill-rule=\"evenodd\" d=\"M7.5 3a.5.5 0 0 1 .5.5v5.21l3.248 1.856a.5.5 0 0 1-.496.868l-3.5-2A.5.5 0 0 1 7 9V3.5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconClockFill = /*#__PURE__*/ makeIcon(\n  'ClockFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM8 3.5a.5.5 0 0 0-1 0V9a.5.5 0 0 0 .252.434l3.5 2a.5.5 0 0 0 .496-.868L8 8.71V3.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconClockHistory = /*#__PURE__*/ makeIcon(\n  'ClockHistory',\n  '<path fill-rule=\"evenodd\" d=\"M8.515 1.019A7 7 0 0 0 8 1V0a8 8 0 0 1 .589.022l-.074.997zm2.004.45a7.003 7.003 0 0 0-.985-.299l.219-.976c.383.086.76.2 1.126.342l-.36.933zm1.37.71a7.01 7.01 0 0 0-.439-.27l.493-.87a8.025 8.025 0 0 1 .979.654l-.615.789a6.996 6.996 0 0 0-.418-.302zm1.834 1.79a6.99 6.99 0 0 0-.653-.796l.724-.69c.27.285.52.59.747.91l-.818.576zm.744 1.352a7.08 7.08 0 0 0-.214-.468l.893-.45a7.976 7.976 0 0 1 .45 1.088l-.95.313a7.023 7.023 0 0 0-.179-.483zm.53 2.507a6.991 6.991 0 0 0-.1-1.025l.985-.17c.067.386.106.778.116 1.17l-1 .025zm-.131 1.538c.033-.17.06-.339.081-.51l.993.123a7.957 7.957 0 0 1-.23 1.155l-.964-.267c.046-.165.086-.332.12-.501zm-.952 2.379c.184-.29.346-.594.486-.908l.914.405c-.16.36-.345.706-.555 1.038l-.845-.535zm-.964 1.205c.122-.122.239-.248.35-.378l.758.653a8.073 8.073 0 0 1-.401.432l-.707-.707z\"/><path fill-rule=\"evenodd\" d=\"M8 1a7 7 0 1 0 4.95 11.95l.707.707A8.001 8.001 0 1 1 8 0v1z\"/><path fill-rule=\"evenodd\" d=\"M7.5 3a.5.5 0 0 1 .5.5v5.21l3.248 1.856a.5.5 0 0 1-.496.868l-3.5-2A.5.5 0 0 1 7 9V3.5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloud = /*#__PURE__*/ makeIcon(\n  'Cloud',\n  '<path fill-rule=\"evenodd\" d=\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 0 0-2.941 1.1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudArrowDown = /*#__PURE__*/ makeIcon(\n  'CloudArrowDown',\n  '<path fill-rule=\"evenodd\" d=\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 0 0-2.941 1.1z\"/><path fill-rule=\"evenodd\" d=\"M7.646 10.854a.5.5 0 0 0 .708 0l2-2a.5.5 0 0 0-.708-.708L8.5 9.293V5.5a.5.5 0 0 0-1 0v3.793L6.354 8.146a.5.5 0 1 0-.708.708l2 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudArrowDownFill = /*#__PURE__*/ makeIcon(\n  'CloudArrowDownFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zm2.354 6.854l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7.5 9.293V5.5a.5.5 0 0 1 1 0v3.793l1.146-1.147a.5.5 0 0 1 .708.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudArrowUp = /*#__PURE__*/ makeIcon(\n  'CloudArrowUp',\n  '<path fill-rule=\"evenodd\" d=\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 0 0-2.941 1.1z\"/><path fill-rule=\"evenodd\" d=\"M7.646 5.146a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 6.707V10.5a.5.5 0 0 1-1 0V6.707L6.354 7.854a.5.5 0 1 1-.708-.708l2-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudArrowUpFill = /*#__PURE__*/ makeIcon(\n  'CloudArrowUpFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zm2.354 5.146l-2-2a.5.5 0 0 0-.708 0l-2 2a.5.5 0 1 0 .708.708L7.5 6.707V10.5a.5.5 0 0 0 1 0V6.707l1.146 1.147a.5.5 0 0 0 .708-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudCheck = /*#__PURE__*/ makeIcon(\n  'CloudCheck',\n  '<path fill-rule=\"evenodd\" d=\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 0 0-2.941 1.1z\"/><path fill-rule=\"evenodd\" d=\"M10.354 6.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7 8.793l2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudCheckFill = /*#__PURE__*/ makeIcon(\n  'CloudCheckFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zm2.354 4.854a.5.5 0 0 0-.708-.708L7 8.793 5.854 7.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudDownload = /*#__PURE__*/ makeIcon(\n  'CloudDownload',\n  '<path fill-rule=\"evenodd\" d=\"M4.406 1.342A5.53 5.53 0 0 1 8 0c2.69 0 4.923 2 5.166 4.579C14.758 4.804 16 6.137 16 7.773 16 9.569 14.502 11 12.687 11H10a.5.5 0 0 1 0-1h2.688C13.979 10 15 8.988 15 7.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 2.825 10.328 1 8 1a4.53 4.53 0 0 0-2.941 1.1c-.757.652-1.153 1.438-1.153 2.055v.448l-.445.049C2.064 4.805 1 5.952 1 7.318 1 8.785 2.23 10 3.781 10H6a.5.5 0 0 1 0 1H3.781C1.708 11 0 9.366 0 7.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383z\"/><path fill-rule=\"evenodd\" d=\"M7.646 15.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 14.293V5.5a.5.5 0 0 0-1 0v8.793l-2.146-2.147a.5.5 0 0 0-.708.708l3 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudDownloadFill = /*#__PURE__*/ makeIcon(\n  'CloudDownloadFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 0a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 4.095 0 5.555 0 7.318 0 9.366 1.708 11 3.781 11H7.5V5.5a.5.5 0 0 1 1 0V11h4.188C14.502 11 16 9.57 16 7.773c0-1.636-1.242-2.969-2.834-3.194C12.923 1.999 10.69 0 8 0zm-.354 15.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 14.293V11h-1v3.293l-2.146-2.147a.5.5 0 0 0-.708.708l3 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudFill = /*#__PURE__*/ makeIcon(\n  'CloudFill',\n  '<path fill-rule=\"evenodd\" d=\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudMinus = /*#__PURE__*/ makeIcon(\n  'CloudMinus',\n  '<path fill-rule=\"evenodd\" d=\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 0 0-2.941 1.1z\"/><path fill-rule=\"evenodd\" d=\"M5.5 8a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudMinusFill = /*#__PURE__*/ makeIcon(\n  'CloudMinusFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zM6 7.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1H6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudPlus = /*#__PURE__*/ makeIcon(\n  'CloudPlus',\n  '<path fill-rule=\"evenodd\" d=\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 0 0-2.941 1.1z\"/><path fill-rule=\"evenodd\" d=\"M8 5.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5 0 0 1-1 0V8.5H6a.5.5 0 0 1 0-1h1.5V6a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudPlusFill = /*#__PURE__*/ makeIcon(\n  'CloudPlusFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zm.5 4a.5.5 0 0 0-1 0v1.5H6a.5.5 0 0 0 0 1h1.5V10a.5.5 0 0 0 1 0V8.5H10a.5.5 0 0 0 0-1H8.5V6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudSlash = /*#__PURE__*/ makeIcon(\n  'CloudSlash',\n  '<path fill-rule=\"evenodd\" d=\"M3.112 5.112a3.125 3.125 0 0 0-.17.613C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13H11l-1-1H3.781C2.231 12 1 10.785 1 9.318c0-1.365 1.064-2.513 2.46-2.666l.446-.05v-.447c0-.075.006-.152.018-.231l-.812-.812zm2.55-1.45l-.725-.725A5.512 5.512 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773a3.2 3.2 0 0 1-1.516 2.711l-.733-.733C14.498 11.378 15 10.626 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3c-.875 0-1.678.26-2.339.661zm7.984 10.692l-12-12 .708-.708 12 12-.707.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudSlashFill = /*#__PURE__*/ makeIcon(\n  'CloudSlashFill',\n  '<path fill-rule=\"evenodd\" d=\"M3.112 5.112a3.125 3.125 0 0 0-.17.613C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13H11L3.112 5.112zm11.372 7.372L4.937 2.937A5.512 5.512 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773a3.2 3.2 0 0 1-1.516 2.711zm-.838 1.87l-12-12 .708-.708 12 12-.707.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudUpload = /*#__PURE__*/ makeIcon(\n  'CloudUpload',\n  '<path fill-rule=\"evenodd\" d=\"M4.406 1.342A5.53 5.53 0 0 1 8 0c2.69 0 4.923 2 5.166 4.579C14.758 4.804 16 6.137 16 7.773 16 9.569 14.502 11 12.687 11H10a.5.5 0 0 1 0-1h2.688C13.979 10 15 8.988 15 7.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 2.825 10.328 1 8 1a4.53 4.53 0 0 0-2.941 1.1c-.757.652-1.153 1.438-1.153 2.055v.448l-.445.049C2.064 4.805 1 5.952 1 7.318 1 8.785 2.23 10 3.781 10H6a.5.5 0 0 1 0 1H3.781C1.708 11 0 9.366 0 7.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383z\"/><path fill-rule=\"evenodd\" d=\"M7.646 4.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707V14.5a.5.5 0 0 1-1 0V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudUploadFill = /*#__PURE__*/ makeIcon(\n  'CloudUploadFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 0a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 4.095 0 5.555 0 7.318 0 9.366 1.708 11 3.781 11H7.5V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707V11h4.188C14.502 11 16 9.57 16 7.773c0-1.636-1.242-2.969-2.834-3.194C12.923 1.999 10.69 0 8 0zm-.5 14.5V11h1v3.5a.5.5 0 0 1-1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCode = /*#__PURE__*/ makeIcon(\n  'Code',\n  '<path fill-rule=\"evenodd\" d=\"M5.854 4.146a.5.5 0 0 1 0 .708L2.707 8l3.147 3.146a.5.5 0 0 1-.708.708l-3.5-3.5a.5.5 0 0 1 0-.708l3.5-3.5a.5.5 0 0 1 .708 0zm4.292 0a.5.5 0 0 0 0 .708L13.293 8l-3.147 3.146a.5.5 0 0 0 .708.708l3.5-3.5a.5.5 0 0 0 0-.708l-3.5-3.5a.5.5 0 0 0-.708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCodeSlash = /*#__PURE__*/ makeIcon(\n  'CodeSlash',\n  '<path fill-rule=\"evenodd\" d=\"M4.854 4.146a.5.5 0 0 1 0 .708L1.707 8l3.147 3.146a.5.5 0 0 1-.708.708l-3.5-3.5a.5.5 0 0 1 0-.708l3.5-3.5a.5.5 0 0 1 .708 0zm6.292 0a.5.5 0 0 0 0 .708L14.293 8l-3.147 3.146a.5.5 0 0 0 .708.708l3.5-3.5a.5.5 0 0 0 0-.708l-3.5-3.5a.5.5 0 0 0-.708 0zm-.999-3.124a.5.5 0 0 1 .33.625l-4 13a.5.5 0 0 1-.955-.294l4-13a.5.5 0 0 1 .625-.33z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCodeSquare = /*#__PURE__*/ makeIcon(\n  'CodeSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M6.854 4.646a.5.5 0 0 1 0 .708L4.207 8l2.647 2.646a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 0 1 .708 0zm2.292 0a.5.5 0 0 0 0 .708L11.793 8l-2.647 2.646a.5.5 0 0 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 0 0-.708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCollection = /*#__PURE__*/ makeIcon(\n  'Collection',\n  '<path fill-rule=\"evenodd\" d=\"M14.5 13.5h-13A.5.5 0 0 1 1 13V6a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5zm-13 1A1.5 1.5 0 0 1 0 13V6a1.5 1.5 0 0 1 1.5-1.5h13A1.5 1.5 0 0 1 16 6v7a1.5 1.5 0 0 1-1.5 1.5h-13zM2 3a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 0-1h-11A.5.5 0 0 0 2 3zm2-2a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7A.5.5 0 0 0 4 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCollectionFill = /*#__PURE__*/ makeIcon(\n  'CollectionFill',\n  '<path d=\"M0 13a1.5 1.5 0 0 0 1.5 1.5h13A1.5 1.5 0 0 0 16 13V6a1.5 1.5 0 0 0-1.5-1.5h-13A1.5 1.5 0 0 0 0 6v7z\"/><path fill-rule=\"evenodd\" d=\"M2 3a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 0-1h-11A.5.5 0 0 0 2 3zm2-2a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7A.5.5 0 0 0 4 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCollectionPlay = /*#__PURE__*/ makeIcon(\n  'CollectionPlay',\n  '<path fill-rule=\"evenodd\" d=\"M14.5 13.5h-13A.5.5 0 0 1 1 13V6a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5zm-13 1A1.5 1.5 0 0 1 0 13V6a1.5 1.5 0 0 1 1.5-1.5h13A1.5 1.5 0 0 1 16 6v7a1.5 1.5 0 0 1-1.5 1.5h-13zM2 3a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 0-1h-11A.5.5 0 0 0 2 3zm2-2a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7A.5.5 0 0 0 4 1z\"/><path fill-rule=\"evenodd\" d=\"M6.258 6.563a.5.5 0 0 1 .507.013l4 2.5a.5.5 0 0 1 0 .848l-4 2.5A.5.5 0 0 1 6 12V7a.5.5 0 0 1 .258-.437z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCollectionPlayFill = /*#__PURE__*/ makeIcon(\n  'CollectionPlayFill',\n  '<path fill-rule=\"evenodd\" d=\"M1.5 14.5A1.5 1.5 0 0 1 0 13V6a1.5 1.5 0 0 1 1.5-1.5h13A1.5 1.5 0 0 1 16 6v7a1.5 1.5 0 0 1-1.5 1.5h-13zm5.265-7.924A.5.5 0 0 0 6 7v5a.5.5 0 0 0 .765.424l4-2.5a.5.5 0 0 0 0-.848l-4-2.5zM2 3a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 0-1h-11A.5.5 0 0 0 2 3zm2-2a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7A.5.5 0 0 0 4 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconColumns = /*#__PURE__*/ makeIcon(\n  'Columns',\n  '<path fill-rule=\"evenodd\" d=\"M15 2H1v12h14V2zM1 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H1z\"/><path fill-rule=\"evenodd\" d=\"M7.5 14V2h1v12h-1zm0-8H1V5h6.5v1zm7.5 5H8.5v-1H15v1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconColumnsGap = /*#__PURE__*/ makeIcon(\n  'ColumnsGap',\n  '<path fill-rule=\"evenodd\" d=\"M6 1H1v3h5V1zM1 0a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1H1zm14 12h-5v3h5v-3zm-5-1a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-5zM6 8H1v7h5V8zM1 7a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1H1zm14-6h-5v7h5V1zm-5-1a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1h-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCommand = /*#__PURE__*/ makeIcon(\n  'Command',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 2a1.5 1.5 0 1 0 0 3H5V3.5A1.5 1.5 0 0 0 3.5 2zM6 5V3.5A2.5 2.5 0 1 0 3.5 6H5v4H3.5A2.5 2.5 0 1 0 6 12.5V11h4v1.5a2.5 2.5 0 1 0 2.5-2.5H11V6h1.5A2.5 2.5 0 1 0 10 3.5V5H6zm4 1H6v4h4V6zm1-1h1.5A1.5 1.5 0 1 0 11 3.5V5zm0 6v1.5a1.5 1.5 0 1 0 1.5-1.5H11zm-6 0H3.5A1.5 1.5 0 1 0 5 12.5V11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCompass = /*#__PURE__*/ makeIcon(\n  'Compass',\n  '<path fill-rule=\"evenodd\" d=\"M8 16.016a7.5 7.5 0 0 0 1.962-14.74A1 1 0 0 0 9 0H7a1 1 0 0 0-.962 1.276A7.5 7.5 0 0 0 8 16.016zm6.5-7.5a6.5 6.5 0 1 1-13 0 6.5 6.5 0 0 1 13 0z\"/><path d=\"M6.94 7.44l4.95-2.83-2.83 4.95-4.949 2.83 2.828-4.95z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCompassFill = /*#__PURE__*/ makeIcon(\n  'CompassFill',\n  '<path fill-rule=\"evenodd\" d=\"M15.5 8.516a7.5 7.5 0 1 1-9.462-7.24A1 1 0 0 1 7 0h2a1 1 0 0 1 .962 1.276 7.503 7.503 0 0 1 5.538 7.24zm-3.61-3.905L6.94 7.439 4.11 12.39l4.95-2.828 2.828-4.95z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCone = /*#__PURE__*/ makeIcon(\n  'Cone',\n  '<path d=\"M7.03 1.88c.252-1.01 1.688-1.01 1.94 0l2.905 11.62H14a.5.5 0 0 1 0 1H2a.5.5 0 0 1 0-1h2.125L7.03 1.88z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconConeStriped = /*#__PURE__*/ makeIcon(\n  'ConeStriped',\n  '<path d=\"M9.97 4.88l.953 3.811C10.159 8.878 9.14 9 8 9c-1.14 0-2.158-.122-2.923-.309L6.03 4.88C6.635 4.957 7.3 5 8 5s1.365-.043 1.97-.12zm-.245-.978L8.97.88C8.718-.13 7.282-.13 7.03.88L6.275 3.9C6.8 3.965 7.382 4 8 4c.618 0 1.2-.036 1.725-.098zm4.396 8.613a.5.5 0 0 1 .037.96l-6 2a.5.5 0 0 1-.316 0l-6-2a.5.5 0 0 1 .037-.96l2.391-.598.565-2.257c.862.212 1.964.339 3.165.339s2.303-.127 3.165-.339l.565 2.257 2.391.598z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconController = /*#__PURE__*/ makeIcon(\n  'Controller',\n  '<path fill-rule=\"evenodd\" d=\"M11.119 2.693c.904.19 1.75.495 2.235.98.407.408.779 1.05 1.094 1.772.32.733.599 1.591.805 2.466.206.875.34 1.78.364 2.606.024.815-.059 1.602-.328 2.21a1.42 1.42 0 0 1-1.445.83c-.636-.067-1.115-.394-1.513-.773a11.307 11.307 0 0 1-.739-.809c-.126-.147-.25-.291-.368-.422-.728-.804-1.597-1.527-3.224-1.527-1.627 0-2.496.723-3.224 1.527-.119.131-.242.275-.368.422-.243.283-.494.576-.739.81-.398.378-.877.705-1.513.772a1.42 1.42 0 0 1-1.445-.83c-.27-.608-.352-1.395-.329-2.21.024-.826.16-1.73.365-2.606.206-.875.486-1.733.805-2.466.315-.722.687-1.364 1.094-1.772.486-.485 1.331-.79 2.235-.98.932-.196 2.03-.292 3.119-.292 1.089 0 2.187.096 3.119.292zm-6.032.979c-.877.185-1.469.443-1.733.708-.276.276-.587.783-.885 1.465a13.748 13.748 0 0 0-.748 2.295 12.351 12.351 0 0 0-.339 2.406c-.022.755.062 1.368.243 1.776a.42.42 0 0 0 .426.24c.327-.034.61-.199.929-.502.212-.202.4-.423.615-.674.133-.156.276-.323.44-.505C4.861 9.97 5.978 9.026 8 9.026s3.139.943 3.965 1.855c.164.182.307.35.44.505.214.25.403.472.615.674.318.303.601.468.929.503a.42.42 0 0 0 .426-.241c.18-.408.265-1.02.243-1.776a12.354 12.354 0 0 0-.339-2.406 13.753 13.753 0 0 0-.748-2.295c-.298-.682-.61-1.19-.885-1.465-.264-.265-.856-.523-1.733-.708-.85-.179-1.877-.27-2.913-.27-1.036 0-2.063.091-2.913.27z\"/><path d=\"M11.5 6.026a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm-1 1a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm2 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm-1 1a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm-7-2.5h1v3h-1v-3z\"/><path d=\"M3.5 6.526h3v1h-3v-1zM3.051 3.26a.5.5 0 0 1 .354-.613l1.932-.518a.5.5 0 0 1 .258.966l-1.932.518a.5.5 0 0 1-.612-.354zm9.976 0a.5.5 0 0 0-.353-.613l-1.932-.518a.5.5 0 1 0-.259.966l1.932.518a.5.5 0 0 0 .612-.354z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCpu = /*#__PURE__*/ makeIcon(\n  'Cpu',\n  '<path fill-rule=\"evenodd\" d=\"M5 0a.5.5 0 0 1 .5.5V2h1V.5a.5.5 0 0 1 1 0V2h1V.5a.5.5 0 0 1 1 0V2h1V.5a.5.5 0 0 1 1 0V2A2.5 2.5 0 0 1 14 4.5h1.5a.5.5 0 0 1 0 1H14v1h1.5a.5.5 0 0 1 0 1H14v1h1.5a.5.5 0 0 1 0 1H14v1h1.5a.5.5 0 0 1 0 1H14a2.5 2.5 0 0 1-2.5 2.5v1.5a.5.5 0 0 1-1 0V14h-1v1.5a.5.5 0 0 1-1 0V14h-1v1.5a.5.5 0 0 1-1 0V14h-1v1.5a.5.5 0 0 1-1 0V14A2.5 2.5 0 0 1 2 11.5H.5a.5.5 0 0 1 0-1H2v-1H.5a.5.5 0 0 1 0-1H2v-1H.5a.5.5 0 0 1 0-1H2v-1H.5a.5.5 0 0 1 0-1H2A2.5 2.5 0 0 1 4.5 2V.5A.5.5 0 0 1 5 0zm-.5 3A1.5 1.5 0 0 0 3 4.5v7A1.5 1.5 0 0 0 4.5 13h7a1.5 1.5 0 0 0 1.5-1.5v-7A1.5 1.5 0 0 0 11.5 3h-7zM5 6.5A1.5 1.5 0 0 1 6.5 5h3A1.5 1.5 0 0 1 11 6.5v3A1.5 1.5 0 0 1 9.5 11h-3A1.5 1.5 0 0 1 5 9.5v-3zM6.5 6a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5h-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCpuFill = /*#__PURE__*/ makeIcon(\n  'CpuFill',\n  '<path fill-rule=\"evenodd\" d=\"M5.5.5a.5.5 0 0 0-1 0V2A2.5 2.5 0 0 0 2 4.5H.5a.5.5 0 0 0 0 1H2v1H.5a.5.5 0 0 0 0 1H2v1H.5a.5.5 0 0 0 0 1H2v1H.5a.5.5 0 0 0 0 1H2A2.5 2.5 0 0 0 4.5 14v1.5a.5.5 0 0 0 1 0V14h1v1.5a.5.5 0 0 0 1 0V14h1v1.5a.5.5 0 0 0 1 0V14h1v1.5a.5.5 0 0 0 1 0V14a2.5 2.5 0 0 0 2.5-2.5h1.5a.5.5 0 0 0 0-1H14v-1h1.5a.5.5 0 0 0 0-1H14v-1h1.5a.5.5 0 0 0 0-1H14v-1h1.5a.5.5 0 0 0 0-1H14A2.5 2.5 0 0 0 11.5 2V.5a.5.5 0 0 0-1 0V2h-1V.5a.5.5 0 0 0-1 0V2h-1V.5a.5.5 0 0 0-1 0V2h-1V.5zm1 4.5A1.5 1.5 0 0 0 5 6.5v3A1.5 1.5 0 0 0 6.5 11h3A1.5 1.5 0 0 0 11 9.5v-3A1.5 1.5 0 0 0 9.5 5h-3zm0 1a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5h-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCreditCard = /*#__PURE__*/ makeIcon(\n  'CreditCard',\n  '<path fill-rule=\"evenodd\" d=\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V4zm2-1a1 1 0 0 0-1 1v1h14V4a1 1 0 0 0-1-1H2zm13 4H1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V7z\"/><path d=\"M2 10a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCreditCard2Back = /*#__PURE__*/ makeIcon(\n  'CreditCard2Back',\n  '<path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path d=\"M11 5.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-1zM1 9h14v2H1V9z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCreditCard2BackFill = /*#__PURE__*/ makeIcon(\n  'CreditCard2BackFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5H0V4zm11.5 1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-2z\"/><path d=\"M0 11v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1H0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCreditCard2Front = /*#__PURE__*/ makeIcon(\n  'CreditCard2Front',\n  '<path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path d=\"M2 5.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-1z\"/><path fill-rule=\"evenodd\" d=\"M2 8.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5zm3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5zm3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5zm3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCreditCard2FrontFill = /*#__PURE__*/ makeIcon(\n  'CreditCard2FrontFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V4zm2.5 1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-2zm0 3a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1zm3 0a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1zm3 0a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1zm3 0a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCreditCardFill = /*#__PURE__*/ makeIcon(\n  'CreditCardFill',\n  '<path d=\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v1H0V4z\"/><path fill-rule=\"evenodd\" d=\"M0 7v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7H0zm3 2a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1H3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCrop = /*#__PURE__*/ makeIcon(\n  'Crop',\n  '<path fill-rule=\"evenodd\" d=\"M3.5.5A.5.5 0 0 1 4 1v13h13a.5.5 0 0 1 0 1h-2v2a.5.5 0 0 1-1 0v-2H3.5a.5.5 0 0 1-.5-.5V4H1a.5.5 0 0 1 0-1h2V1a.5.5 0 0 1 .5-.5zm2.5 3a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V4H6.5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCup = /*#__PURE__*/ makeIcon(\n  'Cup',\n  '<path fill-rule=\"evenodd\" d=\"M1 2a1 1 0 0 1 1-1h11a1 1 0 0 1 1 1v1h.5A1.5 1.5 0 0 1 16 4.5v7a1.5 1.5 0 0 1-1.5 1.5h-.55a2.5 2.5 0 0 1-2.45 2h-8A2.5 2.5 0 0 1 1 12.5V2zm13 10h.5a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.5-.5H14v8zM13 2H2v10.5A1.5 1.5 0 0 0 3.5 14h8a1.5 1.5 0 0 0 1.5-1.5V2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCupFill = /*#__PURE__*/ makeIcon(\n  'CupFill',\n  '<path fill-rule=\"evenodd\" d=\"M1 2a1 1 0 0 1 1-1h11a1 1 0 0 1 1 1v1h.5A1.5 1.5 0 0 1 16 4.5v7a1.5 1.5 0 0 1-1.5 1.5h-.55a2.5 2.5 0 0 1-2.45 2h-8A2.5 2.5 0 0 1 1 12.5V2zm13 10h.5a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.5-.5H14v8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCupStraw = /*#__PURE__*/ makeIcon(\n  'CupStraw',\n  '<path fill-rule=\"evenodd\" d=\"M13.964 1.18a.5.5 0 0 1-.278.65l-2.255.902-.462 2.08c.375.096.714.216.971.368.228.135.56.396.56.82 0 .046-.004.09-.011.132l-.955 9.068a1.28 1.28 0 0 1-.524.93c-.488.34-1.494.87-3.01.87-1.516 0-2.522-.53-3.01-.87a1.28 1.28 0 0 1-.524-.93L3.51 6.132A.78.78 0 0 1 3.5 6c0-.424.332-.685.56-.82.262-.154.607-.276.99-.372C5.824 4.614 6.867 4.5 8 4.5c.712 0 1.389.045 1.985.127l.527-2.37a.5.5 0 0 1 .302-.355l2.5-1a.5.5 0 0 1 .65.279zM9.768 5.608A13.991 13.991 0 0 0 8 5.5c-1.076 0-2.033.11-2.707.278A3.284 3.284 0 0 0 4.645 6c.146.073.362.15.648.222C5.967 6.39 6.924 6.5 8 6.5c.571 0 1.109-.03 1.588-.085l.18-.808zm.292 1.756a5.513 5.513 0 0 0 1.325-.297l-.845 8.03c-.013.12-.06.185-.102.214-.357.249-1.167.69-2.438.69-1.27 0-2.08-.441-2.438-.69-.041-.029-.09-.094-.102-.214l-.845-8.03c.137.046.283.088.435.126.774.194 1.817.308 2.95.308.742 0 1.445-.049 2.06-.137zm-5.593-1.48s.003.002.005.006l-.005-.006zm7.066 0l-.005.006a.026.026 0 0 1 .005-.006zM11.354 6a3.282 3.282 0 0 1-.703.235l.1-.446c.264.069.464.142.603.211z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCursor = /*#__PURE__*/ makeIcon(\n  'Cursor',\n  '<path fill-rule=\"evenodd\" d=\"M14.082 2.182a.5.5 0 0 1 .103.557L8.528 15.467a.5.5 0 0 1-.917-.007L5.57 10.694.803 8.652a.5.5 0 0 1-.006-.916l12.728-5.657a.5.5 0 0 1 .556.103zM2.25 8.184l3.897 1.67a.5.5 0 0 1 .262.263l1.67 3.897L12.743 3.52 2.25 8.184z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCursorFill = /*#__PURE__*/ makeIcon(\n  'CursorFill',\n  '<path fill-rule=\"evenodd\" d=\"M14.082 2.182a.5.5 0 0 1 .103.557L8.528 15.467a.5.5 0 0 1-.917-.007L5.57 10.694.803 8.652a.5.5 0 0 1-.006-.916l12.728-5.657a.5.5 0 0 1 .556.103z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCursorText = /*#__PURE__*/ makeIcon(\n  'CursorText',\n  '<path fill-rule=\"evenodd\" d=\"M5 2a.5.5 0 0 1 .5-.5c.862 0 1.573.287 2.06.566.174.099.321.198.44.286.119-.088.266-.187.44-.286A4.165 4.165 0 0 1 10.5 1.5a.5.5 0 0 1 0 1c-.638 0-1.177.213-1.564.434a3.49 3.49 0 0 0-.436.294V7.5H9a.5.5 0 0 1 0 1h-.5v4.272c.1.08.248.187.436.294.387.221.926.434 1.564.434a.5.5 0 0 1 0 1 4.165 4.165 0 0 1-2.06-.566A4.561 4.561 0 0 1 8 13.65a4.561 4.561 0 0 1-.44.285 4.165 4.165 0 0 1-2.06.566.5.5 0 0 1 0-1c.638 0 1.177-.213 1.564-.434.188-.107.335-.214.436-.294V8.5H7a.5.5 0 0 1 0-1h.5V3.228a3.49 3.49 0 0 0-.436-.294A3.166 3.166 0 0 0 5.5 2.5.5.5 0 0 1 5 2zm3.352 1.355zm-.704 9.29z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDash = /*#__PURE__*/ makeIcon(\n  'Dash',\n  '<path fill-rule=\"evenodd\" d=\"M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDashCircle = /*#__PURE__*/ makeIcon(\n  'DashCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDashCircleFill = /*#__PURE__*/ makeIcon(\n  'DashCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM4.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDashSquare = /*#__PURE__*/ makeIcon(\n  'DashSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDashSquareFill = /*#__PURE__*/ makeIcon(\n  'DashSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm2.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDiagram2 = /*#__PURE__*/ makeIcon(\n  'Diagram2',\n  '<path fill-rule=\"evenodd\" d=\"M6 3.5A1.5 1.5 0 0 1 7.5 2h1A1.5 1.5 0 0 1 10 3.5v1A1.5 1.5 0 0 1 8.5 6v1H11a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0v-1A.5.5 0 0 1 5 7h2.5V6A1.5 1.5 0 0 1 6 4.5v-1zM8.5 5a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1zM3 11.5A1.5 1.5 0 0 1 4.5 10h1A1.5 1.5 0 0 1 7 11.5v1A1.5 1.5 0 0 1 5.5 14h-1A1.5 1.5 0 0 1 3 12.5v-1zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zm4.5.5a1.5 1.5 0 0 1 1.5-1.5h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1A1.5 1.5 0 0 1 9 12.5v-1zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDiagram2Fill = /*#__PURE__*/ makeIcon(\n  'Diagram2Fill',\n  '<path fill-rule=\"evenodd\" d=\"M6 3.5A1.5 1.5 0 0 1 7.5 2h1A1.5 1.5 0 0 1 10 3.5v1A1.5 1.5 0 0 1 8.5 6v1H11a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0v-1A.5.5 0 0 1 5 7h2.5V6A1.5 1.5 0 0 1 6 4.5v-1zm-3 8A1.5 1.5 0 0 1 4.5 10h1A1.5 1.5 0 0 1 7 11.5v1A1.5 1.5 0 0 1 5.5 14h-1A1.5 1.5 0 0 1 3 12.5v-1zm6 0a1.5 1.5 0 0 1 1.5-1.5h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1A1.5 1.5 0 0 1 9 12.5v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDiagram3 = /*#__PURE__*/ makeIcon(\n  'Diagram3',\n  '<path fill-rule=\"evenodd\" d=\"M6 3.5A1.5 1.5 0 0 1 7.5 2h1A1.5 1.5 0 0 1 10 3.5v1A1.5 1.5 0 0 1 8.5 6v1H14a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0v-1A.5.5 0 0 1 2 7h5.5V6A1.5 1.5 0 0 1 6 4.5v-1zM8.5 5a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1zM0 11.5A1.5 1.5 0 0 1 1.5 10h1A1.5 1.5 0 0 1 4 11.5v1A1.5 1.5 0 0 1 2.5 14h-1A1.5 1.5 0 0 1 0 12.5v-1zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zm4.5.5A1.5 1.5 0 0 1 7.5 10h1a1.5 1.5 0 0 1 1.5 1.5v1A1.5 1.5 0 0 1 8.5 14h-1A1.5 1.5 0 0 1 6 12.5v-1zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zm4.5.5a1.5 1.5 0 0 1 1.5-1.5h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1a1.5 1.5 0 0 1-1.5-1.5v-1zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDiagram3Fill = /*#__PURE__*/ makeIcon(\n  'Diagram3Fill',\n  '<path fill-rule=\"evenodd\" d=\"M6 3.5A1.5 1.5 0 0 1 7.5 2h1A1.5 1.5 0 0 1 10 3.5v1A1.5 1.5 0 0 1 8.5 6v1H14a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0v-1A.5.5 0 0 1 2 7h5.5V6A1.5 1.5 0 0 1 6 4.5v-1zm-6 8A1.5 1.5 0 0 1 1.5 10h1A1.5 1.5 0 0 1 4 11.5v1A1.5 1.5 0 0 1 2.5 14h-1A1.5 1.5 0 0 1 0 12.5v-1zm6 0A1.5 1.5 0 0 1 7.5 10h1a1.5 1.5 0 0 1 1.5 1.5v1A1.5 1.5 0 0 1 8.5 14h-1A1.5 1.5 0 0 1 6 12.5v-1zm6 0a1.5 1.5 0 0 1 1.5-1.5h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1a1.5 1.5 0 0 1-1.5-1.5v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDiamond = /*#__PURE__*/ makeIcon(\n  'Diamond',\n  '<path fill-rule=\"evenodd\" d=\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.482 1.482 0 0 1 0-2.098L6.95.435zm1.4.7a.495.495 0 0 0-.7 0L1.134 7.65a.495.495 0 0 0 0 .7l6.516 6.516a.495.495 0 0 0 .7 0l6.516-6.516a.495.495 0 0 0 0-.7L8.35 1.134z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDiamondFill = /*#__PURE__*/ makeIcon(\n  'DiamondFill',\n  '<path fill-rule=\"evenodd\" d=\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.482 1.482 0 0 1 0-2.098L6.95.435z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDiamondHalf = /*#__PURE__*/ makeIcon(\n  'DiamondHalf',\n  '<path fill-rule=\"evenodd\" d=\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098L9.05.435zM8 .989c.127 0 .253.049.35.145l6.516 6.516a.495.495 0 0 1 0 .7L8.35 14.866a.493.493 0 0 1-.35.145V.989z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice1 = /*#__PURE__*/ makeIcon(\n  'Dice1',\n  '<path fill-rule=\"evenodd\" d=\"M13 1H3a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zM3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3H3z\"/><circle cx=\"8\" cy=\"8\" r=\"1.5\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice1Fill = /*#__PURE__*/ makeIcon(\n  'Dice1Fill',\n  '<path fill-rule=\"evenodd\" d=\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3H3zm5 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice2 = /*#__PURE__*/ makeIcon(\n  'Dice2',\n  '<path fill-rule=\"evenodd\" d=\"M13 1H3a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zM3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3H3z\"/><circle cx=\"4\" cy=\"4\" r=\"1.5\"/><circle cx=\"12\" cy=\"12\" r=\"1.5\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice2Fill = /*#__PURE__*/ makeIcon(\n  'Dice2Fill',\n  '<path fill-rule=\"evenodd\" d=\"M0 3a3 3 0 0 1 3-3h10a3 3 0 0 1 3 3v10a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3V3zm5.5 1a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm6.5 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice3 = /*#__PURE__*/ makeIcon(\n  'Dice3',\n  '<path fill-rule=\"evenodd\" d=\"M13 1H3a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zM3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3H3z\"/><circle cx=\"4\" cy=\"4\" r=\"1.5\"/><circle cx=\"12\" cy=\"12\" r=\"1.5\"/><circle cx=\"8\" cy=\"8\" r=\"1.5\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice3Fill = /*#__PURE__*/ makeIcon(\n  'Dice3Fill',\n  '<path fill-rule=\"evenodd\" d=\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3H3zm2.5 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm8 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zM8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice4 = /*#__PURE__*/ makeIcon(\n  'Dice4',\n  '<path fill-rule=\"evenodd\" d=\"M13 1H3a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zM3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3H3z\"/><circle cx=\"4\" cy=\"4\" r=\"1.5\"/><circle cx=\"12\" cy=\"4\" r=\"1.5\"/><circle cx=\"12\" cy=\"12\" r=\"1.5\"/><circle cx=\"4\" cy=\"12\" r=\"1.5\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice4Fill = /*#__PURE__*/ makeIcon(\n  'Dice4Fill',\n  '<path fill-rule=\"evenodd\" d=\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3H3zm1 5.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm8 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm1.5 6.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zM4 13.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice5 = /*#__PURE__*/ makeIcon(\n  'Dice5',\n  '<path fill-rule=\"evenodd\" d=\"M13 1H3a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zM3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3H3z\"/><circle cx=\"4\" cy=\"4\" r=\"1.5\"/><circle cx=\"12\" cy=\"4\" r=\"1.5\"/><circle cx=\"12\" cy=\"12\" r=\"1.5\"/><circle cx=\"4\" cy=\"12\" r=\"1.5\"/><circle cx=\"8\" cy=\"8\" r=\"1.5\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice5Fill = /*#__PURE__*/ makeIcon(\n  'Dice5Fill',\n  '<path fill-rule=\"evenodd\" d=\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3H3zm2.5 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm8 0a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zM12 13.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zM5.5 12a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zM8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice6 = /*#__PURE__*/ makeIcon(\n  'Dice6',\n  '<path fill-rule=\"evenodd\" d=\"M13 1H3a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zM3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3H3z\"/><circle cx=\"4\" cy=\"4\" r=\"1.5\"/><circle cx=\"12\" cy=\"4\" r=\"1.5\"/><circle cx=\"12\" cy=\"12\" r=\"1.5\"/><circle cx=\"12\" cy=\"8\" r=\"1.5\"/><circle cx=\"4\" cy=\"12\" r=\"1.5\"/><circle cx=\"4\" cy=\"8\" r=\"1.5\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice6Fill = /*#__PURE__*/ makeIcon(\n  'Dice6Fill',\n  '<path fill-rule=\"evenodd\" d=\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3H3zm1 5.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm8 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm1.5 6.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zM12 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zM5.5 12a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zM4 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDisc = /*#__PURE__*/ makeIcon(\n  'Disc',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M10 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"/><path fill-rule=\"evenodd\" d=\"M8 4a4 4 0 0 0-4 4 .5.5 0 0 1-1 0 5 5 0 0 1 5-5 .5.5 0 0 1 0 1zm4.5 3.5a.5.5 0 0 1 .5.5 5 5 0 0 1-5 5 .5.5 0 0 1 0-1 4 4 0 0 0 4-4 .5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDiscFill = /*#__PURE__*/ makeIcon(\n  'DiscFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-6 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0zM4 8a4 4 0 0 1 4-4 .5.5 0 0 0 0-1 5 5 0 0 0-5 5 .5.5 0 0 0 1 0zm9 0a.5.5 0 1 0-1 0 4 4 0 0 1-4 4 .5.5 0 0 0 0 1 5 5 0 0 0 5-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDiscord = /*#__PURE__*/ makeIcon(\n  'Discord',\n  '<path d=\"M6.552 6.712c-.456 0-.816.4-.816.888s.368.888.816.888c.456 0 .816-.4.816-.888.008-.488-.36-.888-.816-.888zm2.92 0c-.456 0-.816.4-.816.888s.368.888.816.888c.456 0 .816-.4.816-.888s-.36-.888-.816-.888z\"/><path d=\"M13.36 0H2.64C1.736 0 1 .736 1 1.648v10.816c0 .912.736 1.648 1.64 1.648h9.072l-.424-1.48 1.024.952.968.896L15 16V1.648C15 .736 14.264 0 13.36 0zm-3.088 10.448s-.288-.344-.528-.648c1.048-.296 1.448-.952 1.448-.952-.328.216-.64.368-.92.472-.4.168-.784.28-1.16.344a5.604 5.604 0 0 1-2.072-.008 6.716 6.716 0 0 1-1.176-.344 4.688 4.688 0 0 1-.584-.272c-.024-.016-.048-.024-.072-.04-.016-.008-.024-.016-.032-.024-.144-.08-.224-.136-.224-.136s.384.64 1.4.944c-.24.304-.536.664-.536.664-1.768-.056-2.44-1.216-2.44-1.216 0-2.576 1.152-4.664 1.152-4.664 1.152-.864 2.248-.84 2.248-.84l.08.096c-1.44.416-2.104 1.048-2.104 1.048s.176-.096.472-.232c.856-.376 1.536-.48 1.816-.504.048-.008.088-.016.136-.016a6.521 6.521 0 0 1 4.024.752s-.632-.6-1.992-1.016l.112-.128s1.096-.024 2.248.84c0 0 1.152 2.088 1.152 4.664 0 0-.68 1.16-2.448 1.216z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDisplay = /*#__PURE__*/ makeIcon(\n  'Display',\n  '<path d=\"M5.75 13.5c.167-.333.25-.833.25-1.5h4c0 .667.083 1.167.25 1.5H11a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1h.75z\"/><path fill-rule=\"evenodd\" d=\"M13.991 3H2c-.325 0-.502.078-.602.145a.758.758 0 0 0-.254.302A1.46 1.46 0 0 0 1 4.01V10c0 .325.078.502.145.602.07.105.17.188.302.254a1.464 1.464 0 0 0 .538.143L2.01 11H14c.325 0 .502-.078.602-.145a.758.758 0 0 0 .254-.302 1.464 1.464 0 0 0 .143-.538L15 9.99V4c0-.325-.078-.502-.145-.602a.757.757 0 0 0-.302-.254A1.46 1.46 0 0 0 13.99 3zM14 2H2C0 2 0 4 0 4v6c0 2 2 2 2 2h12c2 0 2-2 2-2V4c0-2-2-2-2-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDisplayFill = /*#__PURE__*/ makeIcon(\n  'DisplayFill',\n  '<path d=\"M6 12c0 .667-.083 1.167-.25 1.5H5a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1h-.75c-.167-.333-.25-.833-.25-1.5h4c2 0 2-2 2-2V4c0-2-2-2-2-2H2C0 2 0 4 0 4v6c0 2 2 2 2 2h4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDistributeHorizontal = /*#__PURE__*/ makeIcon(\n  'DistributeHorizontal',\n  '<path fill-rule=\"evenodd\" d=\"M14.5 1a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 1 0v-13a.5.5 0 0 0-.5-.5zm-13 0a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 1 0v-13a.5.5 0 0 0-.5-.5z\"/><path d=\"M6 13a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v10z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDistributeVertical = /*#__PURE__*/ makeIcon(\n  'DistributeVertical',\n  '<path fill-rule=\"evenodd\" d=\"M1 1.5a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 0-1h-13a.5.5 0 0 0-.5.5zm0 13a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 0-1h-13a.5.5 0 0 0-.5.5z\"/><path d=\"M2 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDoorClosed = /*#__PURE__*/ makeIcon(\n  'DoorClosed',\n  '<path fill-rule=\"evenodd\" d=\"M3 2a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v13h1.5a.5.5 0 0 1 0 1h-13a.5.5 0 0 1 0-1H3V2zm1 13h8V2H4v13z\"/><path d=\"M9 9a1 1 0 1 0 2 0 1 1 0 0 0-2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDoorClosedFill = /*#__PURE__*/ makeIcon(\n  'DoorClosedFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 1a1 1 0 0 0-1 1v13H1.5a.5.5 0 0 0 0 1h13a.5.5 0 0 0 0-1H13V2a1 1 0 0 0-1-1H4zm2 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDoorOpen = /*#__PURE__*/ makeIcon(\n  'DoorOpen',\n  '<path fill-rule=\"evenodd\" d=\"M1 15.5a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13a.5.5 0 0 1-.5-.5zM11.5 2H11V1h.5A1.5 1.5 0 0 1 13 2.5V15h-1V2.5a.5.5 0 0 0-.5-.5z\"/><path fill-rule=\"evenodd\" d=\"M10.828.122A.5.5 0 0 1 11 .5V15h-1V1.077l-6 .857V15H3V1.5a.5.5 0 0 1 .43-.495l7-1a.5.5 0 0 1 .398.117z\"/><path d=\"M8 9c0 .552.224 1 .5 1s.5-.448.5-1-.224-1-.5-1-.5.448-.5 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDoorOpenFill = /*#__PURE__*/ makeIcon(\n  'DoorOpenFill',\n  '<path fill-rule=\"evenodd\" d=\"M1.5 15a.5.5 0 0 0 0 1h13a.5.5 0 0 0 0-1H13V2.5A1.5 1.5 0 0 0 11.5 1H11V.5a.5.5 0 0 0-.57-.495l-7 1A.5.5 0 0 0 3 1.5V15H1.5zM11 2v13h1V2.5a.5.5 0 0 0-.5-.5H11zm-2.5 8c-.276 0-.5-.448-.5-1s.224-1 .5-1 .5.448.5 1-.224 1-.5 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDot = /*#__PURE__*/ makeIcon(\n  'Dot',\n  '<path fill-rule=\"evenodd\" d=\"M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDownload = /*#__PURE__*/ makeIcon(\n  'Download',\n  '<path fill-rule=\"evenodd\" d=\"M.5 9.9a.5.5 0 0 1 .5.5v2.5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2.5a.5.5 0 0 1 1 0v2.5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-2.5a.5.5 0 0 1 .5-.5z\"/><path fill-rule=\"evenodd\" d=\"M7.646 11.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 10.293V1.5a.5.5 0 0 0-1 0v8.793L5.354 8.146a.5.5 0 1 0-.708.708l3 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDroplet = /*#__PURE__*/ makeIcon(\n  'Droplet',\n  '<path fill-rule=\"evenodd\" d=\"M7.21.8C7.69.295 8 0 8 0c.109.363.234.708.371 1.038.812 1.946 2.073 3.35 3.197 4.6C12.878 7.096 14 8.345 14 10a6 6 0 0 1-12 0C2 6.668 5.58 2.517 7.21.8zm.413 1.021A31.25 31.25 0 0 0 5.794 3.99c-.726.95-1.436 2.008-1.96 3.07C3.304 8.133 3 9.138 3 10a5 5 0 0 0 10 0c0-1.201-.796-2.157-2.181-3.7l-.03-.032C9.75 5.11 8.5 3.72 7.623 1.82z\"/><path fill-rule=\"evenodd\" d=\"M4.553 7.776c.82-1.641 1.717-2.753 2.093-3.13l.708.708c-.29.29-1.128 1.311-1.907 2.87l-.894-.448z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDropletFill = /*#__PURE__*/ makeIcon(\n  'DropletFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 16a6 6 0 0 0 6-6c0-1.655-1.122-2.904-2.432-4.362C10.254 4.176 8.75 2.503 8 0c0 0-6 5.686-6 10a6 6 0 0 0 6 6zM6.646 4.646c-.376.377-1.272 1.489-2.093 3.13l.894.448c.78-1.559 1.616-2.58 1.907-2.87l-.708-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDropletHalf = /*#__PURE__*/ makeIcon(\n  'DropletHalf',\n  '<path fill-rule=\"evenodd\" d=\"M7.21.8C7.69.295 8 0 8 0c.109.363.234.708.371 1.038.812 1.946 2.073 3.35 3.197 4.6C12.878 7.096 14 8.345 14 10a6 6 0 0 1-12 0C2 6.668 5.58 2.517 7.21.8zm.413 1.021A31.25 31.25 0 0 0 5.794 3.99c-.726.95-1.436 2.008-1.96 3.07C3.304 8.133 3 9.138 3 10c0 0 2.5 1.5 5 .5s5-.5 5-.5c0-1.201-.796-2.157-2.181-3.7l-.03-.032C9.75 5.11 8.5 3.72 7.623 1.82z\"/><path fill-rule=\"evenodd\" d=\"M4.553 7.776c.82-1.641 1.717-2.753 2.093-3.13l.708.708c-.29.29-1.128 1.311-1.907 2.87l-.894-.448z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEarbuds = /*#__PURE__*/ makeIcon(\n  'Earbuds',\n  '<path fill-rule=\"evenodd\" d=\"M6.825 4.138c.596 2.141-.36 3.593-2.389 4.117a4.432 4.432 0 0 1-2.018.054c-.048-.01.9 2.778 1.522 4.61l.41 1.205a.52.52 0 0 1-.346.659l-.593.19a.548.548 0 0 1-.69-.34L.184 6.99c-.696-2.137.662-4.309 2.564-4.8 2.029-.523 3.402 0 4.076 1.948zm-.868 2.221c.43-.112.561-.993.292-1.969-.269-.975-.836-1.675-1.266-1.563-.43.112-.561.994-.292 1.969.269.975.836 1.675 1.266 1.563zm3.218-2.221c-.596 2.141.36 3.593 2.389 4.117a4.434 4.434 0 0 0 2.018.054c.048-.01-.9 2.778-1.522 4.61l-.41 1.205a.52.52 0 0 0 .346.659l.593.19c.289.092.6-.06.69-.34l2.536-7.643c.696-2.137-.662-4.309-2.564-4.8-2.029-.523-3.402 0-4.076 1.948zm.868 2.221c-.43-.112-.561-.993-.292-1.969.269-.975.836-1.675 1.266-1.563.43.112.561.994.292 1.969-.269.975-.836 1.675-1.266 1.563z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEasel = /*#__PURE__*/ makeIcon(\n  'Easel',\n  '<path d=\"M8.473.337a.5.5 0 0 0-.946 0L6.954 2h2.092L8.473.337zM12.15 11h-1.058l1.435 4.163a.5.5 0 0 0 .946-.326L12.15 11zM8.5 11h-1v2.5a.5.5 0 0 0 1 0V11zm-3.592 0H3.85l-1.323 3.837a.5.5 0 1 0 .946.326L4.908 11z\"/><path fill-rule=\"evenodd\" d=\"M14 3H2v7h12V3zM2 2a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEaselFill = /*#__PURE__*/ makeIcon(\n  'EaselFill',\n  '<path d=\"M8.473.337a.5.5 0 0 0-.946 0L6.954 2h2.092L8.473.337zM12.15 11h-1.058l1.435 4.163a.5.5 0 0 0 .946-.326L12.15 11zM8.5 11h-1v2.5a.5.5 0 0 0 1 0V11zm-3.592 0H3.85l-1.323 3.837a.5.5 0 1 0 .946.326L4.908 11zM1 3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEgg = /*#__PURE__*/ makeIcon(\n  'Egg',\n  '<path fill-rule=\"evenodd\" d=\"M8 15a5 5 0 0 0 5-5c0-1.956-.69-4.286-1.742-6.12-.524-.913-1.112-1.658-1.704-2.164C8.956 1.206 8.428 1 8 1c-.428 0-.956.206-1.554.716-.592.506-1.18 1.251-1.704 2.164C3.69 5.714 3 8.044 3 10a5 5 0 0 0 5 5zm0 1a6 6 0 0 0 6-6c0-4.314-3-10-6-10S2 5.686 2 10a6 6 0 0 0 6 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEggFill = /*#__PURE__*/ makeIcon(\n  'EggFill',\n  '<path d=\"M14 10a6 6 0 0 1-12 0C2 5.686 5 0 8 0s6 5.686 6 10z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEggFried = /*#__PURE__*/ makeIcon(\n  'EggFried',\n  '<path fill-rule=\"evenodd\" d=\"M13.665 6.113a1 1 0 0 1-.667-.977L13 5a4 4 0 0 0-6.483-3.136 1 1 0 0 1-.8.2 4 4 0 0 0-3.693 6.61 1 1 0 0 1 .2 1 4 4 0 0 0 6.67 4.087 1 1 0 0 1 1.262-.152 2.5 2.5 0 0 0 3.715-2.905 1 1 0 0 1 .341-1.113 2.001 2.001 0 0 0-.547-3.478zM14 5c0 .057 0 .113-.003.17a3.001 3.001 0 0 1 .822 5.216 3.5 3.5 0 0 1-5.201 4.065 5 5 0 0 1-8.336-5.109A5 5 0 0 1 5.896 1.08 5 5 0 0 1 14 5z\"/><circle cx=\"8\" cy=\"8\" r=\"3\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEject = /*#__PURE__*/ makeIcon(\n  'Eject',\n  '<path fill-rule=\"evenodd\" d=\"M7.27 1.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H1.656C.78 9.5.326 8.455.926 7.816L7.27 1.047zM14.346 8.5L8 1.731 1.654 8.5h12.692zM.5 11.5a1 1 0 0 1 1-1h13a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-13a1 1 0 0 1-1-1v-1zm14 0h-13v1h13v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEjectFill = /*#__PURE__*/ makeIcon(\n  'EjectFill',\n  '<path fill-rule=\"evenodd\" d=\"M7.27 1.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H1.656C.78 9.5.326 8.455.926 7.816L7.27 1.047zM.5 11.5a1 1 0 0 1 1-1h13a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-13a1 1 0 0 1-1-1v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiAngry = /*#__PURE__*/ makeIcon(\n  'EmojiAngry',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M4.285 12.433a.5.5 0 0 0 .683-.183A3.498 3.498 0 0 1 8 10.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 0 0 .866-.5A4.498 4.498 0 0 0 8 9.5a4.5 4.5 0 0 0-3.898 2.25.5.5 0 0 0 .183.683z\"/><path d=\"M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm4 0c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5z\"/><path fill-rule=\"evenodd\" d=\"M4.053 4.276a.5.5 0 0 1 .67-.223l2 1a.5.5 0 1 1-.447.894l-2-1a.5.5 0 0 1-.223-.67zm7.894 0a.5.5 0 0 0-.67-.223l-2 1a.5.5 0 1 0 .447.894l2-1a.5.5 0 0 0 .223-.67z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiAngryFill = /*#__PURE__*/ makeIcon(\n  'EmojiAngryFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zM4.053 4.276a.5.5 0 0 1 .67-.223l2 1a.5.5 0 0 1 .166.76c.071.206.111.44.111.687C7 7.328 6.552 8 6 8s-1-.672-1-1.5c0-.408.109-.778.285-1.049l-1.009-.504a.5.5 0 0 1-.223-.67zm.232 8.157a.5.5 0 0 0 .683-.183A3.498 3.498 0 0 1 8 10.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 1 0 .866-.5A4.498 4.498 0 0 0 8 9.5a4.5 4.5 0 0 0-3.898 2.25.5.5 0 0 0 .183.683zM10 8c.552 0 1-.672 1-1.5 0-.408-.109-.778-.285-1.049l1.009-.504a.5.5 0 1 0-.448-.894l-2 1a.5.5 0 0 0-.165.76A2.12 2.12 0 0 0 9 6.5c0 .828.448 1.5 1 1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiDizzy = /*#__PURE__*/ makeIcon(\n  'EmojiDizzy',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M9.146 5.146a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708.708l-.647.646.647.646a.5.5 0 0 1-.708.708l-.646-.647-.646.647a.5.5 0 1 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 0-.708zm-5 0a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 1 1 .708.708l-.647.646.647.646a.5.5 0 1 1-.708.708L5.5 7.207l-.646.647a.5.5 0 1 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 0-.708z\"/><path d=\"M10 11a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiDizzyFill = /*#__PURE__*/ makeIcon(\n  'EmojiDizzyFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zM4.146 5.146a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 1 1 .708.708l-.647.646.647.646a.5.5 0 1 1-.708.708L5.5 7.207l-.646.647a.5.5 0 1 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 0-.708zm5 0a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708.708l-.647.646.647.646a.5.5 0 0 1-.708.708l-.646-.647-.646.647a.5.5 0 1 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 0-.708zM8 13a2 2 0 1 0 0-4 2 2 0 0 0 0 4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiExpressionless = /*#__PURE__*/ makeIcon(\n  'EmojiExpressionless',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M4 10.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm5 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiExpressionlessFill = /*#__PURE__*/ makeIcon(\n  'EmojiExpressionlessFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zM4.5 6a.5.5 0 0 0 0 1h2a.5.5 0 0 0 0-1h-2zm5 0a.5.5 0 0 0 0 1h2a.5.5 0 0 0 0-1h-2zm-5 4a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiFrown = /*#__PURE__*/ makeIcon(\n  'EmojiFrown',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M4.285 12.433a.5.5 0 0 0 .683-.183A3.498 3.498 0 0 1 8 10.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 0 0 .866-.5A4.498 4.498 0 0 0 8 9.5a4.5 4.5 0 0 0-3.898 2.25.5.5 0 0 0 .183.683z\"/><path d=\"M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm4 0c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiFrownFill = /*#__PURE__*/ makeIcon(\n  'EmojiFrownFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm-2.715 5.933a.5.5 0 0 0 .683-.183A3.498 3.498 0 0 1 8 10.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 0 0 .866-.5A4.498 4.498 0 0 0 8 9.5a4.5 4.5 0 0 0-3.898 2.25.5.5 0 0 0 .183.683zM10 8c.552 0 1-.672 1-1.5S10.552 5 10 5s-1 .672-1 1.5S9.448 8 10 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiHeartEyes = /*#__PURE__*/ makeIcon(\n  'EmojiHeartEyes',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M11.315 10.014a.5.5 0 0 1 .548.736A4.498 4.498 0 0 1 7.965 13a4.498 4.498 0 0 1-3.898-2.25.5.5 0 0 1 .548-.736h.005l.017.005.067.015.252.055c.215.046.515.108.857.169.693.124 1.522.242 2.152.242.63 0 1.46-.118 2.152-.242a26.58 26.58 0 0 0 1.109-.224l.067-.015.017-.004.005-.002zM4.756 4.566c.763-1.424 4.02-.12.952 3.434-4.496-1.596-2.35-4.298-.952-3.434zm6.488 0c1.398-.864 3.544 1.838-.952 3.434-3.067-3.554.19-4.858.952-3.434z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiHeartEyesFill = /*#__PURE__*/ makeIcon(\n  'EmojiHeartEyesFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0zM4.756 4.566c.763-1.424 4.02-.12.952 3.434-4.496-1.596-2.35-4.298-.952-3.434zm6.559 5.448a.5.5 0 0 1 .548.736A4.498 4.498 0 0 1 7.965 13a4.498 4.498 0 0 1-3.898-2.25.5.5 0 0 1 .548-.736h.005l.017.005.067.015.252.055c.215.046.515.108.857.169.693.124 1.522.242 2.152.242.63 0 1.46-.118 2.152-.242a26.58 26.58 0 0 0 1.109-.224l.067-.015.017-.004.005-.002zm-.07-5.448c1.397-.864 3.543 1.838-.953 3.434-3.067-3.554.19-4.858.952-3.434z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiLaughing = /*#__PURE__*/ makeIcon(\n  'EmojiLaughing',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M12.331 9.5a1 1 0 0 1 0 1A4.998 4.998 0 0 1 8 13a4.998 4.998 0 0 1-4.33-2.5A1 1 0 0 1 4.535 9h6.93a1 1 0 0 1 .866.5z\"/><path d=\"M7 6.5c0 .828-.448 0-1 0s-1 .828-1 0S5.448 5 6 5s1 .672 1 1.5zm4 0c0 .828-.448 0-1 0s-1 .828-1 0S9.448 5 10 5s1 .672 1 1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiLaughingFill = /*#__PURE__*/ makeIcon(\n  'EmojiLaughingFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zM7 6.5c0 .501-.164.396-.415.235C6.42 6.629 6.218 6.5 6 6.5c-.218 0-.42.13-.585.235C5.164 6.896 5 7 5 6.5 5 5.672 5.448 5 6 5s1 .672 1 1.5zm5.331 3a1 1 0 0 1 0 1A4.998 4.998 0 0 1 8 13a4.998 4.998 0 0 1-4.33-2.5A1 1 0 0 1 4.535 9h6.93a1 1 0 0 1 .866.5zm-1.746-2.765C10.836 6.896 11 7 11 6.5c0-.828-.448-1.5-1-1.5s-1 .672-1 1.5c0 .501.164.396.415.235.165-.106.367-.235.585-.235.218 0 .42.13.585.235z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiNeutral = /*#__PURE__*/ makeIcon(\n  'EmojiNeutral',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M4 10.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5z\"/><path d=\"M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm4 0c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiNeutralFill = /*#__PURE__*/ makeIcon(\n  'EmojiNeutralFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm-3 4a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM10 8c.552 0 1-.672 1-1.5S10.552 5 10 5s-1 .672-1 1.5S9.448 8 10 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSmile = /*#__PURE__*/ makeIcon(\n  'EmojiSmile',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M4.285 9.567a.5.5 0 0 1 .683.183A3.498 3.498 0 0 0 8 11.5a3.498 3.498 0 0 0 3.032-1.75.5.5 0 1 1 .866.5A4.498 4.498 0 0 1 8 12.5a4.498 4.498 0 0 1-3.898-2.25.5.5 0 0 1 .183-.683z\"/><path d=\"M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm4 0c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSmileFill = /*#__PURE__*/ makeIcon(\n  'EmojiSmileFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zM4.285 9.567a.5.5 0 0 1 .683.183A3.498 3.498 0 0 0 8 11.5a3.498 3.498 0 0 0 3.032-1.75.5.5 0 1 1 .866.5A4.498 4.498 0 0 1 8 12.5a4.498 4.498 0 0 1-3.898-2.25.5.5 0 0 1 .183-.683zM10 8c.552 0 1-.672 1-1.5S10.552 5 10 5s-1 .672-1 1.5S9.448 8 10 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSmileUpsideDown = /*#__PURE__*/ makeIcon(\n  'EmojiSmileUpsideDown',\n  '<path fill-rule=\"evenodd\" d=\"M8 1a7 7 0 1 1 0 14A7 7 0 0 1 8 1zm0-1a8 8 0 1 1 0 16A8 8 0 0 1 8 0z\"/><path fill-rule=\"evenodd\" d=\"M4.285 6.433a.5.5 0 0 0 .683-.183A3.498 3.498 0 0 1 8 4.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 0 0 .866-.5A4.498 4.498 0 0 0 8 3.5a4.5 4.5 0 0 0-3.898 2.25.5.5 0 0 0 .183.683z\"/><path d=\"M7 9.5C7 8.672 6.552 8 6 8s-1 .672-1 1.5.448 1.5 1 1.5 1-.672 1-1.5zm4 0c0-.828-.448-1.5-1-1.5s-1 .672-1 1.5.448 1.5 1 1.5 1-.672 1-1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSmileUpsideDownFill = /*#__PURE__*/ makeIcon(\n  'EmojiSmileUpsideDownFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0zM7 9.5C7 8.672 6.552 8 6 8s-1 .672-1 1.5.448 1.5 1 1.5 1-.672 1-1.5zM4.285 6.433a.5.5 0 0 0 .683-.183A3.498 3.498 0 0 1 8 4.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 0 0 .866-.5A4.498 4.498 0 0 0 8 3.5a4.5 4.5 0 0 0-3.898 2.25.5.5 0 0 0 .183.683zM10 8c.552 0 1 .672 1 1.5s-.448 1.5-1 1.5-1-.672-1-1.5S9.448 8 10 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSunglasses = /*#__PURE__*/ makeIcon(\n  'EmojiSunglasses',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M4.285 9.567a.5.5 0 0 1 .683.183A3.498 3.498 0 0 0 8 11.5a3.498 3.498 0 0 0 3.032-1.75.5.5 0 1 1 .866.5A4.498 4.498 0 0 1 8 12.5a4.498 4.498 0 0 1-3.898-2.25.5.5 0 0 1 .183-.683zM6.5 6.497V6.5h-1c0-.568.447-.947.862-1.154C6.807 5.123 7.387 5 8 5s1.193.123 1.638.346c.415.207.862.586.862 1.154h-1v-.003l-.003-.01a.213.213 0 0 0-.036-.053.86.86 0 0 0-.27-.194C8.91 6.1 8.49 6 8 6c-.491 0-.912.1-1.19.24a.86.86 0 0 0-.271.194.213.213 0 0 0-.036.054l-.003.01z\"/><path d=\"M2.31 5.243A1 1 0 0 1 3.28 4H6a1 1 0 0 1 1 1v1a2 2 0 0 1-2 2h-.438a2 2 0 0 1-1.94-1.515L2.31 5.243zM9 5a1 1 0 0 1 1-1h2.72a1 1 0 0 1 .97 1.243l-.311 1.242A2 2 0 0 1 11.439 8H11a2 2 0 0 1-2-2V5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSunglassesFill = /*#__PURE__*/ makeIcon(\n  'EmojiSunglassesFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zM2.31 5.243A1 1 0 0 1 3.28 4H6a1 1 0 0 1 1 1v.116A4.22 4.22 0 0 1 8 5c.35 0 .69.04 1 .116V5a1 1 0 0 1 1-1h2.72a1 1 0 0 1 .97 1.243l-.311 1.242A2 2 0 0 1 11.439 8H11a2 2 0 0 1-1.994-1.839A2.99 2.99 0 0 0 8 6c-.393 0-.74.064-1.006.161A2 2 0 0 1 5 8h-.438a2 2 0 0 1-1.94-1.515L2.31 5.243zM4.969 9.75a.5.5 0 1 0-.866.5A4.498 4.498 0 0 0 8 12.5a4.5 4.5 0 0 0 3.898-2.25.5.5 0 1 0-.866-.5A3.498 3.498 0 0 1 8 11.5a3.498 3.498 0 0 1-3.032-1.75z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiWink = /*#__PURE__*/ makeIcon(\n  'EmojiWink',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M4.285 9.567a.5.5 0 0 1 .683.183A3.498 3.498 0 0 0 8 11.5a3.498 3.498 0 0 0 3.032-1.75.5.5 0 1 1 .866.5A4.498 4.498 0 0 1 8 12.5a4.498 4.498 0 0 1-3.898-2.25.5.5 0 0 1 .183-.683z\"/><path d=\"M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5z\"/><path fill-rule=\"evenodd\" d=\"M8.757 6.063a.5.5 0 0 1 .68.194.934.934 0 0 0 .813.493c.339 0 .645-.19.813-.493a.5.5 0 1 1 .874.486A1.934 1.934 0 0 1 10.25 7.75c-.73 0-1.356-.412-1.687-1.007a.5.5 0 0 1 .194-.68z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiWinkFill = /*#__PURE__*/ makeIcon(\n  'EmojiWinkFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zM4.285 9.567a.5.5 0 0 1 .683.183A3.498 3.498 0 0 0 8 11.5a3.498 3.498 0 0 0 3.032-1.75.5.5 0 1 1 .866.5A4.498 4.498 0 0 1 8 12.5a4.498 4.498 0 0 1-3.898-2.25.5.5 0 0 1 .183-.683zm5.152-3.31a.5.5 0 0 0-.874.486c.33.595.958 1.007 1.687 1.007.73 0 1.356-.412 1.687-1.007a.5.5 0 0 0-.874-.486.934.934 0 0 1-.813.493.934.934 0 0 1-.813-.493z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEnvelope = /*#__PURE__*/ makeIcon(\n  'Envelope',\n  '<path fill-rule=\"evenodd\" d=\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V4zm2-1a1 1 0 0 0-1 1v.217l7 4.2 7-4.2V4a1 1 0 0 0-1-1H2zm13 2.383l-4.758 2.855L15 11.114v-5.73zm-.034 6.878L9.271 8.82 8 9.583 6.728 8.82l-5.694 3.44A1 1 0 0 0 2 13h12a1 1 0 0 0 .966-.739zM1 11.114l4.758-2.876L1 5.383v5.73z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEnvelopeFill = /*#__PURE__*/ makeIcon(\n  'EnvelopeFill',\n  '<path fill-rule=\"evenodd\" d=\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414.05 3.555zM0 4.697v7.104l5.803-3.558L0 4.697zM6.761 8.83l-6.57 4.027A2 2 0 0 0 2 14h12a2 2 0 0 0 1.808-1.144l-6.57-4.027L8 9.586l-1.239-.757zm3.436-.586L16 11.801V4.697l-5.803 3.546z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEnvelopeOpen = /*#__PURE__*/ makeIcon(\n  'EnvelopeOpen',\n  '<path fill-rule=\"evenodd\" d=\"M8.47 1.318a1 1 0 0 0-.94 0l-6 3.2A1 1 0 0 0 1 5.4v.818l5.724 3.465L8 8.917l1.276.766L15 6.218V5.4a1 1 0 0 0-.53-.882l-6-3.2zM15 7.388l-4.754 2.877L15 13.117v-5.73zm-.035 6.874L8 10.083l-6.965 4.18A1 1 0 0 0 2 15h12a1 1 0 0 0 .965-.738zM1 13.117l4.754-2.852L1 7.387v5.73zM7.059.435a2 2 0 0 1 1.882 0l6 3.2A2 2 0 0 1 16 5.4V14a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V5.4a2 2 0 0 1 1.059-1.765l6-3.2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEnvelopeOpenFill = /*#__PURE__*/ makeIcon(\n  'EnvelopeOpenFill',\n  '<path d=\"M8.941.435a2 2 0 0 0-1.882 0l-6 3.2A2 2 0 0 0 0 5.4v.313l6.709 3.933L8 8.928l1.291.717L16 5.715V5.4a2 2 0 0 0-1.059-1.765l-6-3.2zM16 6.873l-5.693 3.337L16 13.372v-6.5zm-.059 7.611L8 10.072.059 14.484A2 2 0 0 0 2 16h12a2 2 0 0 0 1.941-1.516zM0 13.373l5.693-3.163L0 6.873v6.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamation = /*#__PURE__*/ makeIcon(\n  'Exclamation',\n  '<path d=\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationCircle = /*#__PURE__*/ makeIcon(\n  'ExclamationCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationCircleFill = /*#__PURE__*/ makeIcon(\n  'ExclamationCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM8 4a.905.905 0 0 0-.9.995l.35 3.507a.552.552 0 0 0 1.1 0l.35-3.507A.905.905 0 0 0 8 4zm.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationDiamond = /*#__PURE__*/ makeIcon(\n  'ExclamationDiamond',\n  '<path fill-rule=\"evenodd\" d=\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.482 1.482 0 0 1 0-2.098L6.95.435zm1.4.7a.495.495 0 0 0-.7 0L1.134 7.65a.495.495 0 0 0 0 .7l6.516 6.516a.495.495 0 0 0 .7 0l6.516-6.516a.495.495 0 0 0 0-.7L8.35 1.134z\"/><path d=\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationDiamondFill = /*#__PURE__*/ makeIcon(\n  'ExclamationDiamondFill',\n  '<path fill-rule=\"evenodd\" d=\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098L9.05.435zM8 4a.905.905 0 0 0-.9.995l.35 3.507a.552.552 0 0 0 1.1 0l.35-3.507A.905.905 0 0 0 8 4zm.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationOctagon = /*#__PURE__*/ makeIcon(\n  'ExclamationOctagon',\n  '<path fill-rule=\"evenodd\" d=\"M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z\"/><path d=\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationOctagonFill = /*#__PURE__*/ makeIcon(\n  'ExclamationOctagonFill',\n  '<path fill-rule=\"evenodd\" d=\"M11.46.146A.5.5 0 0 0 11.107 0H4.893a.5.5 0 0 0-.353.146L.146 4.54A.5.5 0 0 0 0 4.893v6.214a.5.5 0 0 0 .146.353l4.394 4.394a.5.5 0 0 0 .353.146h6.214a.5.5 0 0 0 .353-.146l4.394-4.394a.5.5 0 0 0 .146-.353V4.893a.5.5 0 0 0-.146-.353L11.46.146zM8 4a.905.905 0 0 0-.9.995l.35 3.507a.552.552 0 0 0 1.1 0l.35-3.507A.905.905 0 0 0 8 4zm.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationSquare = /*#__PURE__*/ makeIcon(\n  'ExclamationSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path d=\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationSquareFill = /*#__PURE__*/ makeIcon(\n  'ExclamationSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6 4a.905.905 0 0 0-.9.995l.35 3.507a.552.552 0 0 0 1.1 0l.35-3.507A.905.905 0 0 0 8 4zm.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationTriangle = /*#__PURE__*/ makeIcon(\n  'ExclamationTriangle',\n  '<path fill-rule=\"evenodd\" d=\"M7.938 2.016a.146.146 0 0 0-.054.057L1.027 13.74a.176.176 0 0 0-.002.183c.016.03.037.05.054.06.015.01.034.017.066.017h13.713a.12.12 0 0 0 .066-.017.163.163 0 0 0 .055-.06.176.176 0 0 0-.003-.183L8.12 2.073a.146.146 0 0 0-.054-.057A.13.13 0 0 0 8.002 2a.13.13 0 0 0-.064.016zm1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566z\"/><path d=\"M7.002 12a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationTriangleFill = /*#__PURE__*/ makeIcon(\n  'ExclamationTriangleFill',\n  '<path fill-rule=\"evenodd\" d=\"M8.982 1.566a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566zM8 5a.905.905 0 0 0-.9.995l.35 3.507a.552.552 0 0 0 1.1 0l.35-3.507A.905.905 0 0 0 8 5zm.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclude = /*#__PURE__*/ makeIcon(\n  'Exclude',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v2h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2H2a2 2 0 0 1-2-2V2zm12 2v7a1 1 0 0 1-1 1H4V5a1 1 0 0 1 1-1h7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEye = /*#__PURE__*/ makeIcon(\n  'Eye',\n  '<path fill-rule=\"evenodd\" d=\"M16 8s-3-5.5-8-5.5S0 8 0 8s3 5.5 8 5.5S16 8 16 8zM1.173 8a13.134 13.134 0 0 0 1.66 2.043C4.12 11.332 5.88 12.5 8 12.5c2.12 0 3.879-1.168 5.168-2.457A13.134 13.134 0 0 0 14.828 8a13.133 13.133 0 0 0-1.66-2.043C11.879 4.668 10.119 3.5 8 3.5c-2.12 0-3.879 1.168-5.168 2.457A13.133 13.133 0 0 0 1.172 8z\"/><path fill-rule=\"evenodd\" d=\"M8 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5zM4.5 8a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEyeFill = /*#__PURE__*/ makeIcon(\n  'EyeFill',\n  '<path d=\"M10.5 8a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0z\"/><path fill-rule=\"evenodd\" d=\"M0 8s3-5.5 8-5.5S16 8 16 8s-3 5.5-8 5.5S0 8 0 8zm8 3.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEyeSlash = /*#__PURE__*/ makeIcon(\n  'EyeSlash',\n  '<path d=\"M13.359 11.238C15.06 9.72 16 8 16 8s-3-5.5-8-5.5a7.028 7.028 0 0 0-2.79.588l.77.771A5.944 5.944 0 0 1 8 3.5c2.12 0 3.879 1.168 5.168 2.457A13.134 13.134 0 0 1 14.828 8c-.058.087-.122.183-.195.288-.335.48-.83 1.12-1.465 1.755-.165.165-.337.328-.517.486l.708.709z\"/><path d=\"M11.297 9.176a3.5 3.5 0 0 0-4.474-4.474l.823.823a2.5 2.5 0 0 1 2.829 2.829l.822.822zm-2.943 1.299l.822.822a3.5 3.5 0 0 1-4.474-4.474l.823.823a2.5 2.5 0 0 0 2.829 2.829z\"/><path d=\"M3.35 5.47c-.18.16-.353.322-.518.487A13.134 13.134 0 0 0 1.172 8l.195.288c.335.48.83 1.12 1.465 1.755C4.121 11.332 5.881 12.5 8 12.5c.716 0 1.39-.133 2.02-.36l.77.772A7.029 7.029 0 0 1 8 13.5C3 13.5 0 8 0 8s.939-1.721 2.641-3.238l.708.709z\"/><path fill-rule=\"evenodd\" d=\"M13.646 14.354l-12-12 .708-.708 12 12-.708.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEyeSlashFill = /*#__PURE__*/ makeIcon(\n  'EyeSlashFill',\n  '<path d=\"M10.79 12.912l-1.614-1.615a3.5 3.5 0 0 1-4.474-4.474l-2.06-2.06C.938 6.278 0 8 0 8s3 5.5 8 5.5a7.029 7.029 0 0 0 2.79-.588zM5.21 3.088A7.028 7.028 0 0 1 8 2.5c5 0 8 5.5 8 5.5s-.939 1.721-2.641 3.238l-2.062-2.062a3.5 3.5 0 0 0-4.474-4.474L5.21 3.089z\"/><path d=\"M5.525 7.646a2.5 2.5 0 0 0 2.829 2.829l-2.83-2.829zm4.95.708l-2.829-2.83a2.5 2.5 0 0 1 2.829 2.829z\"/><path fill-rule=\"evenodd\" d=\"M13.646 14.354l-12-12 .708-.708 12 12-.708.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEyeglasses = /*#__PURE__*/ makeIcon(\n  'Eyeglasses',\n  '<path fill-rule=\"evenodd\" d=\"M4 6a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm2.625.547a3 3 0 0 0-5.584.953H.5a.5.5 0 0 0 0 1h.541A3 3 0 0 0 7 8a1 1 0 0 1 2 0 3 3 0 0 0 5.959.5h.541a.5.5 0 0 0 0-1h-.541a3 3 0 0 0-5.584-.953A1.993 1.993 0 0 0 8 6c-.532 0-1.016.208-1.375.547zM14 8a2 2 0 1 0-4 0 2 2 0 0 0 4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFacebook = /*#__PURE__*/ makeIcon(\n  'Facebook',\n  '<path fill-rule=\"evenodd\" d=\"M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFile = /*#__PURE__*/ makeIcon(\n  'File',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileArrowDown = /*#__PURE__*/ makeIcon(\n  'FileArrowDown',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M8 5a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7.5 9.293V5.5A.5.5 0 0 1 8 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileArrowDownFill = /*#__PURE__*/ makeIcon(\n  'FileArrowDownFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM8 5a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7.5 9.293V5.5A.5.5 0 0 1 8 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileArrowUp = /*#__PURE__*/ makeIcon(\n  'FileArrowUp',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M8 11a.5.5 0 0 0 .5-.5V6.707l1.146 1.147a.5.5 0 0 0 .708-.708l-2-2a.5.5 0 0 0-.708 0l-2 2a.5.5 0 1 0 .708.708L7.5 6.707V10.5a.5.5 0 0 0 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileArrowUpFill = /*#__PURE__*/ makeIcon(\n  'FileArrowUpFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM7.5 6.707V10.5a.5.5 0 0 0 1 0V6.707l1.146 1.147a.5.5 0 0 0 .708-.708l-2-2a.5.5 0 0 0-.708 0l-2 2a.5.5 0 1 0 .708.708L7.5 6.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileBarGraph = /*#__PURE__*/ makeIcon(\n  'FileBarGraph',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path d=\"M4.5 12a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-1zm3 0a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-1zm3 0a.5.5 0 0 1-.5-.5v-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-.5.5h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileBarGraphFill = /*#__PURE__*/ makeIcon(\n  'FileBarGraphFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm-2 11.5a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-6a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v6zm-2.5.5a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-1zm-3 0a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileBinary = /*#__PURE__*/ makeIcon(\n  'FileBinary',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path d=\"M5.526 13.09c.976 0 1.524-.79 1.524-2.205 0-1.412-.548-2.203-1.524-2.203-.978 0-1.526.79-1.526 2.203 0 1.415.548 2.206 1.526 2.206zm-.832-2.205c0-1.05.29-1.612.832-1.612.358 0 .607.247.733.721L4.7 11.137a6.749 6.749 0 0 1-.006-.252zm.832 1.614c-.36 0-.606-.246-.732-.718l1.556-1.145c.003.079.005.164.005.249 0 1.052-.29 1.614-.829 1.614zm5.329.501v-.595H9.73V8.772h-.69l-1.19.786v.688L8.986 9.5h.05v2.906h-1.18V13h3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileBinaryFill = /*#__PURE__*/ makeIcon(\n  'FileBinaryFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM7.05 10.885c0 1.415-.548 2.206-1.524 2.206C4.548 13.09 4 12.3 4 10.885c0-1.412.548-2.203 1.526-2.203.976 0 1.524.79 1.524 2.203zM5.526 9.273c-.542 0-.832.563-.832 1.612 0 .088.003.173.006.252l1.56-1.143c-.126-.474-.375-.72-.733-.72zm-.732 2.508c.126.472.372.718.732.718.54 0 .83-.563.83-1.614 0-.085-.003-.17-.006-.25l-1.556 1.146zm6.061.624V13h-3v-.595h1.181V9.5h-.05l-1.136.747v-.688l1.19-.786h.69v3.633h1.125z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileBreak = /*#__PURE__*/ makeIcon(\n  'FileBreak',\n  '<path fill-rule=\"evenodd\" d=\"M0 10.5a.5.5 0 0 1 .5-.5h15a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5z\"/><path d=\"M12 0H4a2 2 0 0 0-2 2v7h1V2a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v7h1V2a2 2 0 0 0-2-2zm2 12h-1v2a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-2H2v2a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileBreakFill = /*#__PURE__*/ makeIcon(\n  'FileBreakFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v7h12V2a2 2 0 0 0-2-2zm2 12H2v2a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-2zM0 10.5a.5.5 0 0 1 .5-.5h15a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileCheck = /*#__PURE__*/ makeIcon(\n  'FileCheck',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M10.854 6.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 8.793l2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileCheckFill = /*#__PURE__*/ makeIcon(\n  'FileCheckFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm-1.146 6.854a.5.5 0 0 0-.708-.708L7.5 8.793 6.354 7.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileCode = /*#__PURE__*/ makeIcon(\n  'FileCode',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M8.646 5.646a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 8 8.646 6.354a.5.5 0 0 1 0-.708zm-1.292 0a.5.5 0 0 0-.708 0l-2 2a.5.5 0 0 0 0 .708l2 2a.5.5 0 0 0 .708-.708L5.707 8l1.647-1.646a.5.5 0 0 0 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileCodeFill = /*#__PURE__*/ makeIcon(\n  'FileCodeFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM6.646 5.646a.5.5 0 1 1 .708.708L5.707 8l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708l2-2zm2.708 0a.5.5 0 1 0-.708.708L10.293 8 8.646 9.646a.5.5 0 0 0 .708.708l2-2a.5.5 0 0 0 0-.708l-2-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileDiff = /*#__PURE__*/ makeIcon(\n  'FileDiff',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M5.5 10.5A.5.5 0 0 1 6 10h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5zM8 4a.5.5 0 0 1 .5.5V6H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V7H6a.5.5 0 0 1 0-1h1.5V4.5A.5.5 0 0 1 8 4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileDiffFill = /*#__PURE__*/ makeIcon(\n  'FileDiffFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM8.5 4.5a.5.5 0 0 0-1 0V6H6a.5.5 0 0 0 0 1h1.5v1.5a.5.5 0 0 0 1 0V7H10a.5.5 0 0 0 0-1H8.5V4.5zM6 10a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1H6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmark = /*#__PURE__*/ makeIcon(\n  'FileEarmark',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkArrowDown = /*#__PURE__*/ makeIcon(\n  'FileEarmarkArrowDown',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M8 6a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7.5 10.293V6.5A.5.5 0 0 1 8 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkArrowDownFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkArrowDownFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zm-1 4a.5.5 0 0 0-1 0v3.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 2a.5.5 0 0 0 .708 0l2-2a.5.5 0 0 0-.708-.708L8.5 11.293V7.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkArrowUp = /*#__PURE__*/ makeIcon(\n  'FileEarmarkArrowUp',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M8 12a.5.5 0 0 0 .5-.5V7.707l1.146 1.147a.5.5 0 0 0 .708-.708l-2-2a.5.5 0 0 0-.708 0l-2 2a.5.5 0 1 0 .708.708L7.5 7.707V11.5a.5.5 0 0 0 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkArrowUpFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkArrowUpFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM6.354 9.854a.5.5 0 0 1-.708-.708l2-2a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 8.707V12.5a.5.5 0 0 1-1 0V8.707L6.354 9.854z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBarGraph = /*#__PURE__*/ makeIcon(\n  'FileEarmarkBarGraph',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3zm-5 11a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-1zm3 0a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-1zm3 0a.5.5 0 0 1-.5-.5v-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-.5.5h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBarGraphFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkBarGraphFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zm.5 10a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-6a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v6zm-2.5.5a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-1zm-3 0a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBinary = /*#__PURE__*/ makeIcon(\n  'FileEarmarkBinary',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3zM5.526 14.09c.976 0 1.524-.79 1.524-2.205 0-1.412-.548-2.203-1.524-2.203-.978 0-1.526.79-1.526 2.203 0 1.415.548 2.206 1.526 2.206zm-.832-2.205c0-1.05.29-1.612.832-1.612.358 0 .607.247.733.721L4.7 12.137a6.749 6.749 0 0 1-.006-.252zm.832 1.614c-.36 0-.606-.246-.732-.718l1.556-1.145c.003.079.005.164.005.249 0 1.052-.29 1.614-.829 1.614zm5.329.501v-.595H9.73V9.772h-.69l-1.19.786v.688l1.136-.747h.05v2.906h-1.18V14h3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBinaryFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkBinaryFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zm-2.45 8.385c0 1.415-.548 2.206-1.524 2.206C4.548 14.09 4 13.3 4 11.885c0-1.412.548-2.203 1.526-2.203.976 0 1.524.79 1.524 2.203zm-1.524-1.612c-.542 0-.832.563-.832 1.612 0 .088.003.173.006.252l1.559-1.143c-.126-.474-.375-.72-.733-.72zm-.732 2.508c.126.472.372.718.732.718.54 0 .83-.563.83-1.614 0-.085-.003-.17-.006-.25l-1.556 1.146zm6.061.624V14h-3v-.595h1.181V10.5h-.05l-1.136.747v-.688l1.19-.786h.69v3.633h1.125z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBreak = /*#__PURE__*/ makeIcon(\n  'FileEarmarkBreak',\n  '<path fill-rule=\"evenodd\" d=\"M9 0H4a2 2 0 0 0-2 2v7h1V2a1 1 0 0 1 1-1h5v2.5A1.5 1.5 0 0 0 10.5 5H13v4h1V5L9 0zm5 12h-1v2a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-2H2v2a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-2zM0 10.5a.5.5 0 0 1 .5-.5h15a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBreakFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkBreakFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V9H2V2zm0 10v2a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-2H2zm7.5-8.5v-2l3 3h-2a1 1 0 0 1-1-1zm-9.5 7a.5.5 0 0 1 .5-.5h15a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkCheck = /*#__PURE__*/ makeIcon(\n  'FileEarmarkCheck',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M10.854 7.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 9.793l2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkCheckFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkCheckFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zm1.354 4.354a.5.5 0 0 0-.708-.708L7.5 9.793 6.354 8.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkCode = /*#__PURE__*/ makeIcon(\n  'FileEarmarkCode',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M8.646 6.646a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 9 8.646 7.354a.5.5 0 0 1 0-.708zm-1.292 0a.5.5 0 0 0-.708 0l-2 2a.5.5 0 0 0 0 .708l2 2a.5.5 0 0 0 .708-.708L5.707 9l1.647-1.646a.5.5 0 0 0 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkCodeFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkCodeFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM6.646 7.646a.5.5 0 1 1 .708.708L5.707 10l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708l2-2zm2.708 0a.5.5 0 1 0-.708.708L10.293 10l-1.647 1.646a.5.5 0 0 0 .708.708l2-2a.5.5 0 0 0 0-.708l-2-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkDiff = /*#__PURE__*/ makeIcon(\n  'FileEarmarkDiff',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M5.5 11.5A.5.5 0 0 1 6 11h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5zM8 5a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0v-4A.5.5 0 0 1 8 5z\"/><path fill-rule=\"evenodd\" d=\"M5.5 7.5A.5.5 0 0 1 6 7h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkDiffFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkDiffFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM8 6a.5.5 0 0 1 .5.5V8H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V9H6a.5.5 0 0 1 0-1h1.5V6.5A.5.5 0 0 1 8 6zm-2.5 6.5A.5.5 0 0 1 6 12h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkEasel = /*#__PURE__*/ makeIcon(\n  'FileEarmarkEasel',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3zm-1 3a.5.5 0 1 0-1 0h1zm1.527 5H8.973l.553 1.658a.5.5 0 1 0 .948-.316L10.027 11zM8.5 11h-1v1a.5.5 0 0 0 1 0v-1zm-1.473 0H5.973l-.447 1.342a.5.5 0 1 0 .948.316L7.027 11z\"/><path fill-rule=\"evenodd\" d=\"M4 7.5A1.5 1.5 0 0 1 5.5 6h5A1.5 1.5 0 0 1 12 7.5v2a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 9.5v-2zM5.5 7a.5.5 0 0 0-.5.5v2a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5h-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkEaselFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkEaselFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM8.5 6a.5.5 0 1 0-1 0h-2A1.5 1.5 0 0 0 4 7.5v2A1.5 1.5 0 0 0 5.5 11h.473l-.447 1.342a.5.5 0 1 0 .948.316L7.027 11H7.5v1a.5.5 0 0 0 1 0v-1h.473l.553 1.658a.5.5 0 1 0 .948-.316L10.027 11h.473A1.5 1.5 0 0 0 12 9.5v-2A1.5 1.5 0 0 0 10.5 6h-2zM5 7.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5v-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkExcel = /*#__PURE__*/ makeIcon(\n  'FileEarmarkExcel',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M5.18 6.616a.5.5 0 0 1 .704.064L8 9.219l2.116-2.54a.5.5 0 1 1 .768.641L8.651 10l2.233 2.68a.5.5 0 0 1-.768.64L8 10.781l-2.116 2.54a.5.5 0 0 1-.768-.641L7.349 10 5.116 7.32a.5.5 0 0 1 .064-.704z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkExcelFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkExcelFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM5.884 6.68a.5.5 0 1 0-.768.64L7.349 10l-2.233 2.68a.5.5 0 0 0 .768.64L8 10.781l2.116 2.54a.5.5 0 0 0 .768-.641L8.651 10l2.233-2.68a.5.5 0 0 0-.768-.64L8 9.219l-2.116-2.54z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0H4zm5.5 1.5v2a1 1 0 0 0 1 1h2l-3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkFont = /*#__PURE__*/ makeIcon(\n  'FileEarmarkFont',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3zm1.443 3H5.057L5 8h.5c.18-1.096.356-1.192 1.694-1.235l.293-.01v5.09c0 .47-.1.582-.898.655v.5H9.41v-.5c-.803-.073-.903-.184-.903-.654V6.755l.298.01c1.338.043 1.514.14 1.694 1.235h.5l-.057-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkFontFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkFontFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM5.057 6h5.886L11 8h-.5c-.18-1.096-.356-1.192-1.694-1.235l-.298-.01v5.09c0 .47.1.582.903.655v.5H6.59v-.5c.799-.073.898-.184.898-.654V6.755l-.293.01C5.856 6.808 5.68 6.905 5.5 8H5l.057-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkImage = /*#__PURE__*/ makeIcon(\n  'FileEarmarkImage',\n  '<path fill-rule=\"evenodd\" d=\"M12 16a2 2 0 0 0 2-2V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8zM3 2a1 1 0 0 1 1-1h5.5v2A1.5 1.5 0 0 0 11 4.5h2V10l-2.083-2.083a.5.5 0 0 0-.76.063L8 11 5.835 9.7a.5.5 0 0 0-.611.076L3 12V2z\"/><path fill-rule=\"evenodd\" d=\"M6.502 7a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkImageFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkImageFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 0a2 2 0 0 0-2 2v10.293l2.87-2.87a1 1 0 0 1 1.222-.15l1.77 1.06L9.75 7.69a1 1 0 0 1 1.52-.126L14 10.293V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0H4zM2 14v-.293l3.578-3.577 2.165 1.299.396.237.268-.375 2.157-3.02L14 11.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zM9.5 1.5v2a1 1 0 0 0 1 1h2l-3-3zm-1.498 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkLock = /*#__PURE__*/ makeIcon(\n  'FileEarmarkLock',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M8 6a1 1 0 0 0-1 1v1h2V7a1 1 0 0 0-1-1zm2 2.076V7a2 2 0 1 0-4 0v1.076c-.54.166-1 .597-1 1.224v2.4c0 .816.781 1.3 1.5 1.3h3c.719 0 1.5-.484 1.5-1.3V9.3c0-.627-.46-1.058-1-1.224zM6.105 9.125C6.02 9.193 6 9.258 6 9.3v2.4c0 .042.02.107.105.175A.637.637 0 0 0 6.5 12h3a.64.64 0 0 0 .395-.125c.085-.068.105-.133.105-.175V9.3c0-.042-.02-.107-.105-.175A.637.637 0 0 0 9.5 9h-3a.637.637 0 0 0-.395.125z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkLock2 = /*#__PURE__*/ makeIcon(\n  'FileEarmarkLock2',\n  '<path fill-rule=\"evenodd\" d=\"M8 6a1 1 0 0 0-1 1v1h2V7a1 1 0 0 0-1-1zm2 2.076V7a2 2 0 1 0-4 0v1.076c-.54.166-1 .597-1 1.224v2.4c0 .816.781 1.3 1.5 1.3h3c.719 0 1.5-.484 1.5-1.3V9.3c0-.627-.46-1.058-1-1.224z\"/><path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkLock2Fill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkLock2Fill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM7 7a1 1 0 0 1 2 0v1H7V7zm3 0v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 1 1 4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkLockFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkLockFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM7 7a1 1 0 0 1 2 0v1H7V7zm3 0v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 1 1 4 0zM6 9.3c0-.042.02-.107.105-.175A.637.637 0 0 1 6.5 9h3a.64.64 0 0 1 .395.125c.085.068.105.133.105.175v2.4c0 .042-.02.107-.105.175A.637.637 0 0 1 9.5 12h-3a.637.637 0 0 1-.395-.125C6.02 11.807 6 11.742 6 11.7V9.3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMedical = /*#__PURE__*/ makeIcon(\n  'FileEarmarkMedical',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M7 5a.5.5 0 0 1 .5.5v.634l.549-.317a.5.5 0 1 1 .5.866L8 7l.549.317a.5.5 0 1 1-.5.866L7.5 7.866V8.5a.5.5 0 0 1-1 0v-.634l-.549.317a.5.5 0 1 1-.5-.866L6 7l-.549-.317a.5.5 0 0 1 .5-.866l.549.317V5.5A.5.5 0 0 1 7 5zm-2 5.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMedicalFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkMedicalFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zm-3 2a.5.5 0 0 0-1 0v.634l-.549-.317a.5.5 0 1 0-.5.866L5 7l-.549.317a.5.5 0 1 0 .5.866l.549-.317V8.5a.5.5 0 1 0 1 0v-.634l.549.317a.5.5 0 1 0 .5-.866L7 7l.549-.317a.5.5 0 1 0-.5-.866l-.549.317V5.5zm-2 4.5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 2a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMinus = /*#__PURE__*/ makeIcon(\n  'FileEarmarkMinus',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M5.5 9a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMinusFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkMinusFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM6 8.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1H6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMusic = /*#__PURE__*/ makeIcon(\n  'FileEarmarkMusic',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M9.757 5.67A1 1 0 0 1 11 6.64v1.75l-2 .5v3.61c0 .495-.301.883-.662 1.123C7.974 13.866 7.499 14 7 14c-.5 0-.974-.134-1.338-.377-.36-.24-.662-.628-.662-1.123s.301-.883.662-1.123C6.026 11.134 6.501 11 7 11c.356 0 .7.068 1 .196V6.89a1 1 0 0 1 .757-.97l1-.25z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMusicFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkMusicFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM11 6.64a1 1 0 0 0-1.243-.97l-1 .25A1 1 0 0 0 8 6.89v4.306A2.572 2.572 0 0 0 7 11c-.5 0-.974.134-1.338.377-.36.24-.662.628-.662 1.123s.301.883.662 1.123c.364.243.839.377 1.338.377.5 0 .974-.134 1.338-.377.36-.24.662-.628.662-1.123V8.89l2-.5V6.64z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPerson = /*#__PURE__*/ makeIcon(\n  'FileEarmarkPerson',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M8 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/><path d=\"M8 12c4 0 5 1.755 5 1.755V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-.245S4 12 8 12z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPersonFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkPersonFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0zm2 5.755S12 12 8 12s-5 1.755-5 1.755V14a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1v-.245z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPlay = /*#__PURE__*/ makeIcon(\n  'FileEarmarkPlay',\n  '<path d=\"M6 11.117V6.883a.5.5 0 0 1 .757-.429l3.528 2.117a.5.5 0 0 1 0 .858l-3.528 2.117a.5.5 0 0 1-.757-.43z\"/><path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPlayFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkPlayFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM6 6.883v4.234a.5.5 0 0 0 .757.429l3.528-2.117a.5.5 0 0 0 0-.858L6.757 6.454a.5.5 0 0 0-.757.43z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPlus = /*#__PURE__*/ makeIcon(\n  'FileEarmarkPlus',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M8 6.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V11a.5.5 0 0 1-1 0V9.5H6a.5.5 0 0 1 0-1h1.5V7a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPlusFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkPlusFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM8.5 7a.5.5 0 0 0-1 0v1.5H6a.5.5 0 0 0 0 1h1.5V11a.5.5 0 0 0 1 0V9.5H10a.5.5 0 0 0 0-1H8.5V7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPost = /*#__PURE__*/ makeIcon(\n  'FileEarmarkPost',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3zM4 6.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-7z\"/><path fill-rule=\"evenodd\" d=\"M4 3.5a.5.5 0 0 1 .5-.5H7a.5.5 0 0 1 0 1H4.5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPostFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkPostFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zm-5-.5a.5.5 0 0 0 0 1H7a.5.5 0 0 0 0-1H4.5zm0 3a.5.5 0 0 0-.5.5v7a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.5-.5h-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPpt = /*#__PURE__*/ makeIcon(\n  'FileEarmarkPpt',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M6 5.5a.5.5 0 0 1 .5.5v7.5a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5z\"/><path fill-rule=\"evenodd\" d=\"M8.5 6.5a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm-3 2a3 3 0 1 1 6 0 3 3 0 0 1-6 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPptFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkPptFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM6.5 6a.5.5 0 0 0-1 0v7.5a.5.5 0 0 0 1 0v-2.764a3 3 0 1 0 0-4.472V6zm0 2.5a2 2 0 1 0 4 0 2 2 0 0 0-4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkRichtext = /*#__PURE__*/ makeIcon(\n  'FileEarmarkRichtext',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M4.5 12.5A.5.5 0 0 1 5 12h3a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm0-2A.5.5 0 0 1 5 10h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm1.639-3.708l1.33.886 1.854-1.855a.25.25 0 0 1 .289-.047l1.888.974V8.5a.5.5 0 0 1-.5.5H5a.5.5 0 0 1-.5-.5V8s1.54-1.274 1.639-1.208zM6.25 6a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkRichtextFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkRichtextFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM7 6.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0zm-.861 1.542l1.33.886 1.854-1.855a.25.25 0 0 1 .289-.047l1.888.974V9.5a.5.5 0 0 1-.5.5H5a.5.5 0 0 1-.5-.5V9s1.54-1.274 1.639-1.208zM5 11a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1H5zm0 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1H5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkRuled = /*#__PURE__*/ makeIcon(\n  'FileEarmarkRuled',\n  '<path fill-rule=\"evenodd\" d=\"M5 10H3V9h10v1H6v2h7v1H6v2H5v-2H3v-1h2v-2z\"/><path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkRuledFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkRuledFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM3 9v1h2v2H3v1h2v2h1v-2h7v-1H6v-2h7V9H3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkSlides = /*#__PURE__*/ makeIcon(\n  'FileEarmarkSlides',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3zm.5 10.5c0 .276-.895.5-2 .5s-2-.224-2-.5.895-.5 2-.5 2 .224 2 .5z\"/><path fill-rule=\"evenodd\" d=\"M4.504 6.438A.5.5 0 0 1 5 6h6a.5.5 0 0 1 .496.438l.5 4A.5.5 0 0 1 11.5 11h-3v2.016a7.795 7.795 0 0 0-1 0V11h-3a.5.5 0 0 1-.496-.562l.5-4zM7 7.221v2.558c0 .097.106.157.19.107l2.13-1.279a.125.125 0 0 0 0-.214l-2.13-1.28a.125.125 0 0 0-.19.109z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkSlidesFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkSlidesFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM5 6a.5.5 0 0 0-.496.438l-.5 4A.5.5 0 0 0 4.5 11h3v2.016c-.863.055-1.5.251-1.5.484 0 .276.895.5 2 .5s2-.224 2-.5c0-.233-.637-.429-1.5-.484V11h3a.5.5 0 0 0 .496-.562l-.5-4A.5.5 0 0 0 11 6H5zm2 3.78V7.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 0 1 0 .214l-2.13 1.28A.125.125 0 0 1 7 9.778z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkSpreadsheet = /*#__PURE__*/ makeIcon(\n  'FileEarmarkSpreadsheet',\n  '<path fill-rule=\"evenodd\" d=\"M5 10H3V9h10v1h-3v2h3v1h-3v2H9v-2H6v2H5v-2H3v-1h2v-2zm1 0v2h3v-2H6z\"/><path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkSpreadsheetFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkSpreadsheetFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM3 9v1h2v2H3v1h2v2h1v-2h3v2h1v-2h3v-1h-3v-2h3V9H3zm3 3v-2h3v2H6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkText = /*#__PURE__*/ makeIcon(\n  'FileEarmarkText',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M5 11.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkTextFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkTextFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM4.5 8a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7zM4 10.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkWord = /*#__PURE__*/ makeIcon(\n  'FileEarmarkWord',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M4.879 6.515a.5.5 0 0 1 .606.364l1.036 4.144.997-3.655a.5.5 0 0 1 .964 0l.997 3.655 1.036-4.144a.5.5 0 0 1 .97.242l-1.5 6a.5.5 0 0 1-.967.01L8 9.402l-1.018 3.73a.5.5 0 0 1-.967-.01l-1.5-6a.5.5 0 0 1 .364-.606z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkWordFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkWordFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM5.485 6.879a.5.5 0 1 0-.97.242l1.5 6a.5.5 0 0 0 .967.01L8 9.402l1.018 3.73a.5.5 0 0 0 .967-.01l1.5-6a.5.5 0 0 0-.97-.242l-1.036 4.144-.997-3.655a.5.5 0 0 0-.964 0l-.997 3.655L5.485 6.88z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkX = /*#__PURE__*/ makeIcon(\n  'FileEarmarkX',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M6.146 7.146a.5.5 0 0 1 .708 0L8 8.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 9l1.147 1.146a.5.5 0 0 1-.708.708L8 9.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 9 6.146 7.854a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkXFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkXFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zM6.854 7.146a.5.5 0 1 0-.708.708L7.293 9l-1.147 1.146a.5.5 0 0 0 .708.708L8 9.707l1.146 1.147a.5.5 0 0 0 .708-.708L8.707 9l1.147-1.146a.5.5 0 0 0-.708-.708L8 8.293 6.854 7.146z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkZip = /*#__PURE__*/ makeIcon(\n  'FileEarmarkZip',\n  '<path d=\"M4 0h5.5v1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h1V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/><path d=\"M9.5 3V0L14 4.5h-3A1.5 1.5 0 0 1 9.5 3z\"/><path fill-rule=\"evenodd\" d=\"M5 7.5a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v.938l.4 1.599a1 1 0 0 1-.416 1.074l-.93.62a1 1 0 0 1-1.11 0l-.929-.62a1 1 0 0 1-.415-1.074L5 8.438V7.5zm2 0H6v.938a1 1 0 0 1-.03.243l-.4 1.598.93.62.929-.62-.4-1.598A1 1 0 0 1 7 8.438V7.5z\"/><path d=\"M6 1h1.5v1H6zM5 2h1.5v1H5zm1 1h1.5v1H6zM5 4h1.5v1H5zm1 1h1.5v1H6V5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkZipFill = /*#__PURE__*/ makeIcon(\n  'FileEarmarkZipFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7.5 1.5v-2l3 3h-2a1 1 0 0 1-1-1zm-4-.5V2h-1V1H6v1h1v1H6v1h1v1H6v1h1v1H5.5V6h-1V5h1V4h-1V3h1zm0 4.5a1 1 0 0 0-1 1v.938l-.4 1.599a1 1 0 0 0 .416 1.074l.93.62a1 1 0 0 0 1.109 0l.93-.62a1 1 0 0 0 .415-1.074l-.4-1.599V8.5a1 1 0 0 0-1-1h-1zm0 1.938V8.5h1v.938a1 1 0 0 0 .03.243l.4 1.598-.93.62-.93-.62.4-1.598a1 1 0 0 0 .03-.243z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEasel = /*#__PURE__*/ makeIcon(\n  'FileEasel',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path d=\"M8.5 5a.5.5 0 1 0-1 0h1zm1.527 5H8.973l.553 1.658a.5.5 0 1 0 .948-.316L10.027 10zM8.5 10h-1v1a.5.5 0 0 0 1 0v-1zm-1.473 0H5.973l-.447 1.342a.5.5 0 1 0 .948.316L7.027 10z\"/><path fill-rule=\"evenodd\" d=\"M4 6.5A1.5 1.5 0 0 1 5.5 5h5A1.5 1.5 0 0 1 12 6.5v2a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 8.5v-2zM5.5 6a.5.5 0 0 0-.5.5v2a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5h-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEaselFill = /*#__PURE__*/ makeIcon(\n  'FileEaselFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM8.5 5a.5.5 0 1 0-1 0h-2A1.5 1.5 0 0 0 4 6.5v2A1.5 1.5 0 0 0 5.5 10h.473l-.447 1.342a.5.5 0 1 0 .948.316L7.027 10H7.5v1a.5.5 0 0 0 1 0v-1h.473l.553 1.658a.5.5 0 1 0 .948-.316L10.027 10h.473A1.5 1.5 0 0 0 12 8.5v-2A1.5 1.5 0 0 0 10.5 5h-2zM5 6.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5v-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileExcel = /*#__PURE__*/ makeIcon(\n  'FileExcel',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M5.18 4.616a.5.5 0 0 1 .704.064L8 7.219l2.116-2.54a.5.5 0 1 1 .768.641L8.651 8l2.233 2.68a.5.5 0 0 1-.768.64L8 8.781l-2.116 2.54a.5.5 0 0 1-.768-.641L7.349 8 5.116 5.32a.5.5 0 0 1 .064-.704z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileExcelFill = /*#__PURE__*/ makeIcon(\n  'FileExcelFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM5.884 4.68a.5.5 0 1 0-.768.64L7.349 8l-2.233 2.68a.5.5 0 0 0 .768.64L8 8.781l2.116 2.54a.5.5 0 0 0 .768-.641L8.651 8l2.233-2.68a.5.5 0 0 0-.768-.64L8 7.219l-2.116-2.54z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileFill = /*#__PURE__*/ makeIcon(\n  'FileFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileFont = /*#__PURE__*/ makeIcon(\n  'FileFont',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path d=\"M10.943 4H5.057L5 6h.5c.18-1.096.356-1.192 1.694-1.235l.293-.01v6.09c0 .47-.1.582-.898.655v.5H9.41v-.5c-.803-.073-.903-.184-.903-.654V4.755l.298.01c1.338.043 1.514.14 1.694 1.235h.5l-.057-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileFontFill = /*#__PURE__*/ makeIcon(\n  'FileFontFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM5.057 4h5.886L11 6h-.5c-.18-1.096-.356-1.192-1.694-1.235l-.298-.01v6.09c0 .47.1.582.903.655v.5H6.59v-.5c.799-.073.898-.184.898-.654V4.755l-.293.01C5.856 4.808 5.68 4.905 5.5 6H5l.057-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileImage = /*#__PURE__*/ makeIcon(\n  'FileImage',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v10l2.224-2.224a.5.5 0 0 1 .61-.075L8 11l2.157-3.02a.5.5 0 0 1 .76-.063L13 10V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M6.502 7a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileImageFill = /*#__PURE__*/ makeIcon(\n  'FileImageFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v8.293l-2.73-2.73a1 1 0 0 0-1.52.127l-1.889 2.644-1.769-1.062a1 1 0 0 0-1.222.15L2 12.292V2a2 2 0 0 1 2-2zm6.564 8.27L14 11.708V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-.293l3.578-3.577 2.165 1.299.396.237.268-.375 2.157-3.02zM8.002 5.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileLock = /*#__PURE__*/ makeIcon(\n  'FileLock',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M8 5a1 1 0 0 0-1 1v1h2V6a1 1 0 0 0-1-1zm2 2.076V6a2 2 0 1 0-4 0v1.076c-.54.166-1 .597-1 1.224v2.4c0 .816.781 1.3 1.5 1.3h3c.719 0 1.5-.484 1.5-1.3V8.3c0-.627-.46-1.058-1-1.224zM6.105 8.125C6.02 8.193 6 8.258 6 8.3v2.4c0 .042.02.107.105.175A.637.637 0 0 0 6.5 11h3a.64.64 0 0 0 .395-.125c.085-.068.105-.133.105-.175V8.3c0-.042-.02-.107-.105-.175A.637.637 0 0 0 9.5 8h-3a.637.637 0 0 0-.395.125z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileLock2 = /*#__PURE__*/ makeIcon(\n  'FileLock2',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M8 5a1 1 0 0 0-1 1v1h2V6a1 1 0 0 0-1-1zm2 2.076V6a2 2 0 1 0-4 0v1.076c-.54.166-1 .597-1 1.224v2.4c0 .816.781 1.3 1.5 1.3h3c.719 0 1.5-.484 1.5-1.3V8.3c0-.627-.46-1.058-1-1.224z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileLock2Fill = /*#__PURE__*/ makeIcon(\n  'FileLock2Fill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM7 6a1 1 0 0 1 2 0v1H7V6zm3 0v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V8.3c0-.627.46-1.058 1-1.224V6a2 2 0 1 1 4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileLockFill = /*#__PURE__*/ makeIcon(\n  'FileLockFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM7 6a1 1 0 0 1 2 0v1H7V6zm3 0v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V8.3c0-.627.46-1.058 1-1.224V6a2 2 0 1 1 4 0zM6 8.3c0-.042.02-.107.105-.175A.637.637 0 0 1 6.5 8h3a.64.64 0 0 1 .395.125c.085.068.105.133.105.175v2.4c0 .042-.02.107-.105.175A.637.637 0 0 1 9.5 11h-3a.637.637 0 0 1-.395-.125C6.02 10.807 6 10.742 6 10.7V8.3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileMedical = /*#__PURE__*/ makeIcon(\n  'FileMedical',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M8 4a.5.5 0 0 1 .5.5v.634l.549-.317a.5.5 0 1 1 .5.866L9 6l.549.317a.5.5 0 1 1-.5.866L8.5 6.866V7.5a.5.5 0 0 1-1 0v-.634l-.549.317a.5.5 0 1 1-.5-.866L7 6l-.549-.317a.5.5 0 0 1 .5-.866l.549.317V4.5A.5.5 0 0 1 8 4zM5 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileMedicalFill = /*#__PURE__*/ makeIcon(\n  'FileMedicalFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM8.5 4.5a.5.5 0 0 0-1 0v.634l-.549-.317a.5.5 0 1 0-.5.866L7 6l-.549.317a.5.5 0 1 0 .5.866l.549-.317V7.5a.5.5 0 1 0 1 0v-.634l.549.317a.5.5 0 1 0 .5-.866L9 6l.549-.317a.5.5 0 1 0-.5-.866l-.549.317V4.5zM5.5 9a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 2a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileMinus = /*#__PURE__*/ makeIcon(\n  'FileMinus',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M5.5 8a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileMinusFill = /*#__PURE__*/ makeIcon(\n  'FileMinusFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM6 7.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1H6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileMusic = /*#__PURE__*/ makeIcon(\n  'FileMusic',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M10.304 3.13a1 1 0 0 1 1.196.98v1.8l-2.5.5v5.09c0 .495-.301.883-.662 1.123C7.974 12.866 7.499 13 7 13c-.5 0-.974-.134-1.338-.377-.36-.24-.662-.628-.662-1.123s.301-.883.662-1.123C6.026 10.134 6.501 10 7 10c.356 0 .7.068 1 .196V4.41a1 1 0 0 1 .804-.98l1.5-.3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileMusicFill = /*#__PURE__*/ makeIcon(\n  'FileMusicFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm-.5 4.11a1 1 0 0 0-1.196-.98l-1.5.3A1 1 0 0 0 8 4.41v5.786A2.572 2.572 0 0 0 7 10c-.5 0-.974.134-1.338.377-.36.24-.662.628-.662 1.123s.301.883.662 1.123c.364.243.839.377 1.338.377.5 0 .974-.134 1.338-.377.36-.24.662-.628.662-1.123V6.41l2.5-.5v-1.8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePerson = /*#__PURE__*/ makeIcon(\n  'FilePerson',\n  '<path fill-rule=\"evenodd\" d=\"M12 1H4a1 1 0 0 0-1 1v10.755S4 11 8 11s5 1.755 5 1.755V2a1 1 0 0 0-1-1zM4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H4z\"/><path fill-rule=\"evenodd\" d=\"M8 10a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePersonFill = /*#__PURE__*/ makeIcon(\n  'FilePersonFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm-1 7a3 3 0 1 1-6 0 3 3 0 0 1 6 0zm-3 4c2.623 0 4.146.826 5 1.755V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-1.245C3.854 11.825 5.377 11 8 11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePlay = /*#__PURE__*/ makeIcon(\n  'FilePlay',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path d=\"M6 10.117V5.883a.5.5 0 0 1 .757-.429l3.528 2.117a.5.5 0 0 1 0 .858l-3.528 2.117a.5.5 0 0 1-.757-.43z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePlayFill = /*#__PURE__*/ makeIcon(\n  'FilePlayFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM6 5.883v4.234a.5.5 0 0 0 .757.429l3.528-2.117a.5.5 0 0 0 0-.858L6.757 5.454a.5.5 0 0 0-.757.43z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePlus = /*#__PURE__*/ makeIcon(\n  'FilePlus',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M8 5.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5 0 0 1-1 0V8.5H6a.5.5 0 0 1 0-1h1.5V6a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePlusFill = /*#__PURE__*/ makeIcon(\n  'FilePlusFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM8.5 6a.5.5 0 0 0-1 0v1.5H6a.5.5 0 0 0 0 1h1.5V10a.5.5 0 0 0 1 0V8.5H10a.5.5 0 0 0 0-1H8.5V6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePost = /*#__PURE__*/ makeIcon(\n  'FilePost',\n  '<path d=\"M4 5.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-8z\"/><path fill-rule=\"evenodd\" d=\"M4 3.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z\"/><path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePostFill = /*#__PURE__*/ makeIcon(\n  'FilePostFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM4.5 3a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 2a.5.5 0 0 0-.5.5v8a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5v-8a.5.5 0 0 0-.5-.5h-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePpt = /*#__PURE__*/ makeIcon(\n  'FilePpt',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M6 4a.5.5 0 0 1 .5.5V12a.5.5 0 0 1-1 0V4.5A.5.5 0 0 1 6 4z\"/><path fill-rule=\"evenodd\" d=\"M8.5 5a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm-3 2a3 3 0 1 1 6 0 3 3 0 0 1-6 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePptFill = /*#__PURE__*/ makeIcon(\n  'FilePptFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM6.5 4.5a.5.5 0 0 0-1 0V12a.5.5 0 0 0 1 0V9.236a3 3 0 1 0 0-4.472V4.5zm0 2.5a2 2 0 1 0 4 0 2 2 0 0 0-4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileRichtext = /*#__PURE__*/ makeIcon(\n  'FileRichtext',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M4.5 11.5A.5.5 0 0 1 5 11h3a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm0-2A.5.5 0 0 1 5 9h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm1.639-3.708l1.33.886 1.854-1.855a.25.25 0 0 1 .289-.047l1.888.974V7.5a.5.5 0 0 1-.5.5H5a.5.5 0 0 1-.5-.5V7s1.54-1.274 1.639-1.208zM6.25 5a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileRichtextFill = /*#__PURE__*/ makeIcon(\n  'FileRichtextFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM7 4.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0zm-.861 1.542l1.33.886 1.854-1.855a.25.25 0 0 1 .289-.047l1.888.974V7.5a.5.5 0 0 1-.5.5H5a.5.5 0 0 1-.5-.5V7s1.54-1.274 1.639-1.208zM5 9a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1H5zm0 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1H5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileRuled = /*#__PURE__*/ makeIcon(\n  'FileRuled',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm2-1a1 1 0 0 0-1 1v4h10V2a1 1 0 0 0-1-1H4zm9 6H6v2h7V7zm0 3H6v2h7v-2zm0 3H6v2h6a1 1 0 0 0 1-1v-1zm-8 2v-2H3v1a1 1 0 0 0 1 1h1zm-2-3h2v-2H3v2zm0-3h2V7H3v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileRuledFill = /*#__PURE__*/ makeIcon(\n  'FileRuledFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v4h12V2a2 2 0 0 0-2-2zm2 7H6v2h8V7zm0 3H6v2h8v-2zm0 3H6v3h6a2 2 0 0 0 2-2v-1zm-9 3v-3H2v1a2 2 0 0 0 2 2h1zm-3-4h3v-2H2v2zm0-3h3V7H2v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileSlides = /*#__PURE__*/ makeIcon(\n  'FileSlides',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path d=\"M10 11.5c0 .276-.895.5-2 .5s-2-.224-2-.5.895-.5 2-.5 2 .224 2 .5z\"/><path fill-rule=\"evenodd\" d=\"M4.504 4.438A.5.5 0 0 1 5 4h6a.5.5 0 0 1 .496.438l.5 4A.5.5 0 0 1 11.5 9h-3v2.016a7.795 7.795 0 0 0-1 0V9h-3a.5.5 0 0 1-.496-.562l.5-4zM7 5.221v2.558c0 .097.106.157.19.107l2.13-1.279a.125.125 0 0 0 0-.214l-2.13-1.28a.125.125 0 0 0-.19.109z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileSlidesFill = /*#__PURE__*/ makeIcon(\n  'FileSlidesFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM5 4a.5.5 0 0 0-.496.438l-.5 4A.5.5 0 0 0 4.5 9h3v2.016c-.863.055-1.5.251-1.5.484 0 .276.895.5 2 .5s2-.224 2-.5c0-.233-.637-.429-1.5-.484V9h3a.5.5 0 0 0 .496-.562l-.5-4A.5.5 0 0 0 11 4H5zm2 3.78V5.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 0 1 0 .214l-2.13 1.28A.125.125 0 0 1 7 7.778z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileSpreadsheet = /*#__PURE__*/ makeIcon(\n  'FileSpreadsheet',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm2-1a1 1 0 0 0-1 1v4h10V2a1 1 0 0 0-1-1H4zm9 6h-3v2h3V7zm0 3h-3v2h3v-2zm0 3h-3v2h2a1 1 0 0 0 1-1v-1zm-4 2v-2H6v2h3zm-4 0v-2H3v1a1 1 0 0 0 1 1h1zm-2-3h2v-2H3v2zm0-3h2V7H3v2zm3-2v2h3V7H6zm3 3H6v2h3v-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileSpreadsheetFill = /*#__PURE__*/ makeIcon(\n  'FileSpreadsheetFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v4h12V2a2 2 0 0 0-2-2zm2 7h-4v2h4V7zm0 3h-4v2h4v-2zm0 3h-4v3h2a2 2 0 0 0 2-2v-1zm-5 3v-3H6v3h3zm-4 0v-3H2v1a2 2 0 0 0 2 2h1zm-3-4h3v-2H2v2zm0-3h3V7H2v2zm4 0V7h3v2H6zm0 1h3v2H6v-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileText = /*#__PURE__*/ makeIcon(\n  'FileText',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M4.5 10.5A.5.5 0 0 1 5 10h3a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm0-2A.5.5 0 0 1 5 8h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm0-2A.5.5 0 0 1 5 6h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm0-2A.5.5 0 0 1 5 4h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileTextFill = /*#__PURE__*/ makeIcon(\n  'FileTextFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM5 4a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1H5zm-.5 2.5A.5.5 0 0 1 5 6h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zM5 8a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1H5zm0 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1H5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileWord = /*#__PURE__*/ makeIcon(\n  'FileWord',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M4.879 4.515a.5.5 0 0 1 .606.364l1.036 4.144.997-3.655a.5.5 0 0 1 .964 0l.997 3.655 1.036-4.144a.5.5 0 0 1 .97.242l-1.5 6a.5.5 0 0 1-.967.01L8 7.402l-1.018 3.73a.5.5 0 0 1-.967-.01l-1.5-6a.5.5 0 0 1 .364-.606z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileWordFill = /*#__PURE__*/ makeIcon(\n  'FileWordFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM5.485 4.879a.5.5 0 1 0-.97.242l1.5 6a.5.5 0 0 0 .967.01L8 7.402l1.018 3.73a.5.5 0 0 0 .967-.01l1.5-6a.5.5 0 0 0-.97-.242L9.479 9.023l-.997-3.655a.5.5 0 0 0-.964 0L6.52 9.023 5.485 4.879z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileX = /*#__PURE__*/ makeIcon(\n  'FileX',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M6.146 6.146a.5.5 0 0 1 .708 0L8 7.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 8l1.147 1.146a.5.5 0 0 1-.708.708L8 8.707 6.854 9.854a.5.5 0 0 1-.708-.708L7.293 8 6.146 6.854a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileXFill = /*#__PURE__*/ makeIcon(\n  'FileXFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM6.854 6.146a.5.5 0 1 0-.708.708L7.293 8 6.146 9.146a.5.5 0 1 0 .708.708L8 8.707l1.146 1.147a.5.5 0 0 0 .708-.708L8.707 8l1.147-1.146a.5.5 0 0 0-.708-.708L8 7.293 6.854 6.146z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileZip = /*#__PURE__*/ makeIcon(\n  'FileZip',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H4z\"/><path fill-rule=\"evenodd\" d=\"M6.5 7.5a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v.938l.4 1.599a1 1 0 0 1-.416 1.074l-.93.62a1 1 0 0 1-1.109 0l-.93-.62a1 1 0 0 1-.415-1.074l.4-1.599V7.5zm2 0h-1v.938a1 1 0 0 1-.03.243l-.4 1.598.93.62.93-.62-.4-1.598a1 1 0 0 1-.03-.243V7.5z\"/><path d=\"M7.5 1H9v1H7.5zm-1 1H8v1H6.5zm1 1H9v1H7.5zm-1 1H8v1H6.5zm1 1H9v1H7.5V5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileZipFill = /*#__PURE__*/ makeIcon(\n  'FileZipFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm2.5 8.5a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v.938l.4 1.599a1 1 0 0 1-.416 1.074l-.93.62a1 1 0 0 1-1.109 0l-.93-.62a1 1 0 0 1-.415-1.074l.4-1.599V8.5zm2 .938V8.5h-1v.938a1 1 0 0 1-.03.243l-.4 1.598.93.62.93-.62-.4-1.598a1 1 0 0 1-.03-.243zM7.5 3V2h-1V1H8v1h1v1H8v1h1v1H8v1h1v1H7.5V6h-1V5h1V4h-1V3h1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFiles = /*#__PURE__*/ makeIcon(\n  'Files',\n  '<path fill-rule=\"evenodd\" d=\"M4 2h7a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1H4z\"/><path d=\"M6 0h7a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H6a1 1 0 0 0-1 1H4a2 2 0 0 1 2-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilesAlt = /*#__PURE__*/ makeIcon(\n  'FilesAlt',\n  '<path fill-rule=\"evenodd\" d=\"M3 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3z\"/><path d=\"M13 3V2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilm = /*#__PURE__*/ makeIcon(\n  'Film',\n  '<path fill-rule=\"evenodd\" d=\"M0 1a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V1zm4 0h8v6H4V1zm8 8H4v6h8V9zM1 1h2v2H1V1zm2 3H1v2h2V4zM1 7h2v2H1V7zm2 3H1v2h2v-2zm-2 3h2v2H1v-2zM15 1h-2v2h2V1zm-2 3h2v2h-2V4zm2 3h-2v2h2V7zm-2 3h2v2h-2v-2zm2 3h-2v2h2v-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilter = /*#__PURE__*/ makeIcon(\n  'Filter',\n  '<path fill-rule=\"evenodd\" d=\"M6 10.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5zm-2-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-2-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilterCircle = /*#__PURE__*/ makeIcon(\n  'FilterCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M7 11.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5zm-2-3a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm-2-3a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilterCircleFill = /*#__PURE__*/ makeIcon(\n  'FilterCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zM3.5 5a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1h-9zM5 8.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm2 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilterLeft = /*#__PURE__*/ makeIcon(\n  'FilterLeft',\n  '<path fill-rule=\"evenodd\" d=\"M2 10.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilterRight = /*#__PURE__*/ makeIcon(\n  'FilterRight',\n  '<path fill-rule=\"evenodd\" d=\"M14 10.5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 .5-.5zm0-3a.5.5 0 0 0-.5-.5h-7a.5.5 0 0 0 0 1h7a.5.5 0 0 0 .5-.5zm0-3a.5.5 0 0 0-.5-.5h-11a.5.5 0 0 0 0 1h11a.5.5 0 0 0 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilterSquare = /*#__PURE__*/ makeIcon(\n  'FilterSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M6 11.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5zm-2-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-2-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilterSquareFill = /*#__PURE__*/ makeIcon(\n  'FilterSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm.5 5a.5.5 0 0 0 0 1h11a.5.5 0 0 0 0-1h-11zM4 8.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm2 3a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFlag = /*#__PURE__*/ makeIcon(\n  'Flag',\n  '<path fill-rule=\"evenodd\" d=\"M14.778.085A.5.5 0 0 1 15 .5V8a.5.5 0 0 1-.314.464L14.5 8l.186.464-.003.001-.006.003-.023.009a12.435 12.435 0 0 1-.397.15c-.264.095-.631.223-1.047.35-.816.252-1.879.523-2.71.523-.847 0-1.548-.28-2.158-.525l-.028-.01C7.68 8.71 7.14 8.5 6.5 8.5c-.7 0-1.638.23-2.437.477A19.626 19.626 0 0 0 3 9.342V15.5a.5.5 0 0 1-1 0V.5a.5.5 0 0 1 1 0v.282c.226-.079.496-.17.79-.26C4.606.272 5.67 0 6.5 0c.84 0 1.524.277 2.121.519l.043.018C9.286.788 9.828 1 10.5 1c.7 0 1.638-.23 2.437-.477a19.587 19.587 0 0 0 1.349-.476l.019-.007.004-.002h.001M14 1.221c-.22.078-.48.167-.766.255-.81.252-1.872.523-2.734.523-.886 0-1.592-.286-2.203-.534l-.008-.003C7.662 1.21 7.139 1 6.5 1c-.669 0-1.606.229-2.415.478A21.294 21.294 0 0 0 3 1.845v6.433c.22-.078.48-.167.766-.255C4.576 7.77 5.638 7.5 6.5 7.5c.847 0 1.548.28 2.158.525l.028.01C9.32 8.29 9.86 8.5 10.5 8.5c.668 0 1.606-.229 2.415-.478A21.317 21.317 0 0 0 14 7.655V1.222z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFlagFill = /*#__PURE__*/ makeIcon(\n  'FlagFill',\n  '<path fill-rule=\"evenodd\" d=\"M14.778.085A.5.5 0 0 1 15 .5V8a.5.5 0 0 1-.314.464L14.5 8l.186.464-.003.001-.006.003-.023.009a12.435 12.435 0 0 1-.397.15c-.264.095-.631.223-1.047.35-.816.252-1.879.523-2.71.523-.847 0-1.548-.28-2.158-.525l-.028-.01C7.68 8.71 7.14 8.5 6.5 8.5c-.7 0-1.638.23-2.437.477A19.626 19.626 0 0 0 3 9.342V15.5a.5.5 0 0 1-1 0V.5a.5.5 0 0 1 1 0v.282c.226-.079.496-.17.79-.26C4.606.272 5.67 0 6.5 0c.84 0 1.524.277 2.121.519l.043.018C9.286.788 9.828 1 10.5 1c.7 0 1.638-.23 2.437-.477a19.587 19.587 0 0 0 1.349-.476l.019-.007.004-.002h.001\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFlower1 = /*#__PURE__*/ makeIcon(\n  'Flower1',\n  '<path fill-rule=\"evenodd\" d=\"M6.174 1.184a2 2 0 0 1 3.652 0A2 2 0 0 1 12.99 3.01a2 2 0 0 1 1.826 3.164 2 2 0 0 1 0 3.652 2 2 0 0 1-1.826 3.164 2 2 0 0 1-3.164 1.826 2 2 0 0 1-3.652 0A2 2 0 0 1 3.01 12.99a2 2 0 0 1-1.826-3.164 2 2 0 0 1 0-3.652A2 2 0 0 1 3.01 3.01a2 2 0 0 1 3.164-1.826zM8 1a1 1 0 0 1 1 1l-.002.03a4.997 4.997 0 0 1-.064.387c-.049.241-.122.542-.213.887a60.59 60.59 0 0 1-.676 2.314L8 5.762l-.045-.144a60.59 60.59 0 0 1-.676-2.314 16.705 16.705 0 0 1-.213-.887 4.99 4.99 0 0 1-.064-.386A1 1 0 0 1 8 1zM2 9a1 1 0 1 1 .03-1.998l.091.01c.077.012.176.029.296.054.241.049.542.122.887.213a60.59 60.59 0 0 1 2.314.676L5.762 8l-.144.045c-.8.248-1.626.494-2.314.676-.345.091-.646.164-.887.213a4.99 4.99 0 0 1-.386.064L2 9zm7 5a1 1 0 0 1-2 0l.002-.03a4.996 4.996 0 0 1 .064-.386c.049-.242.122-.543.213-.888.182-.688.428-1.513.676-2.314L8 10.238l.045.144c.248.8.494 1.626.676 2.314.091.345.164.646.213.887a5.005 5.005 0 0 1 .064.386L9 14zm-5.696-2.134a1 1 0 0 1-1-1.732l.027-.014c.02-.01.048-.021.084-.036a5.09 5.09 0 0 1 .283-.102c.233-.078.53-.165.874-.258a60.598 60.598 0 0 1 2.343-.572l.147-.033-.103.11a58.239 58.239 0 0 1-1.666 1.743c-.253.252-.477.465-.66.629a5.001 5.001 0 0 1-.304.248l-.025.017zM4.5 14.062a1 1 0 0 0 1.366-.366l.014-.027c.01-.02.021-.048.036-.084a5.09 5.09 0 0 0 .102-.283c.078-.233.165-.53.258-.874a60.6 60.6 0 0 0 .572-2.343l.033-.147-.11.102a60.848 60.848 0 0 0-1.743 1.667 17.07 17.07 0 0 0-.629.66 5.06 5.06 0 0 0-.248.304l-.017.025a1 1 0 0 0 .366 1.366zm9.196-8.196a1 1 0 0 0-1-1.732l-.025.017a4.951 4.951 0 0 0-.303.248 16.69 16.69 0 0 0-.661.629A60.72 60.72 0 0 0 10.04 6.77l-.102.111.147-.033a60.6 60.6 0 0 0 2.342-.572c.345-.093.642-.18.875-.258a4.993 4.993 0 0 0 .367-.138.53.53 0 0 0 .027-.014zM11.5 1.938a1 1 0 0 1 .366 1.366l-.017.025a5.001 5.001 0 0 1-.248.303 17.01 17.01 0 0 1-.629.661A60.614 60.614 0 0 1 9.23 5.96l-.111.102.033-.147a60.62 60.62 0 0 1 .572-2.342c.093-.345.18-.642.258-.875a5.066 5.066 0 0 1 .138-.367l.014-.027a1 1 0 0 1 1.366-.366zM14 9a1 1 0 0 0 0-2l-.03.002a4.996 4.996 0 0 0-.386.064c-.242.049-.543.122-.888.213-.688.182-1.513.428-2.314.676L10.238 8l.144.045c.8.248 1.626.494 2.314.676.345.091.646.164.887.213a4.996 4.996 0 0 0 .386.064L14 9zM1.938 4.5a1 1 0 0 0 .393 1.38l.084.035c.072.03.166.064.283.103.233.078.53.165.874.258a60.88 60.88 0 0 0 2.343.572l.147.033-.103-.111a60.584 60.584 0 0 0-1.666-1.742 16.705 16.705 0 0 0-.66-.629 4.996 4.996 0 0 0-.304-.248l-.025-.017a1 1 0 0 0-1.366.366zm2.196-1.196A1 1 0 1 1 5.88 2.33c.01.02.021.048.036.084.029.072.063.166.102.283.078.233.165.53.258.875.186.687.387 1.524.572 2.342l.033.147-.11-.102a60.597 60.597 0 0 1-1.743-1.667 16.713 16.713 0 0 1-.629-.66 4.996 4.996 0 0 1-.248-.304l-.017-.025zm9.928 8.196a1 1 0 0 1-1.366.366l-.025-.017a4.946 4.946 0 0 1-.303-.248 16.71 16.71 0 0 1-.661-.629A60.73 60.73 0 0 1 10.04 9.23l-.102-.111.147.033c.818.185 1.655.386 2.342.572.345.093.642.18.875.258a5 5 0 0 1 .367.138 1 1 0 0 1 .394 1.38zm-3.928 2.196a1 1 0 0 0 1.732-1l-.017-.025a5.065 5.065 0 0 0-.248-.303 16.705 16.705 0 0 0-.629-.661A60.462 60.462 0 0 0 9.23 10.04l-.111-.102.033.147a60.6 60.6 0 0 0 .572 2.342c.093.345.18.642.258.875a4.985 4.985 0 0 0 .138.367.575.575 0 0 0 .014.027zM8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFlower2 = /*#__PURE__*/ makeIcon(\n  'Flower2',\n  '<path fill-rule=\"evenodd\" d=\"M8 16a4 4 0 0 0 4-4 4 4 0 0 0 0-8 4 4 0 0 0-8 0 4 4 0 1 0 0 8 4 4 0 0 0 4 4zm3-12a3 3 0 0 0-6 0c0 .073.01.155.03.247.544.241 1.091.638 1.598 1.084A2.987 2.987 0 0 1 8 5c.494 0 .96.12 1.372.331.507-.446 1.054-.843 1.598-1.084.02-.092.03-.174.03-.247zm-.812 6.052A2.99 2.99 0 0 0 11 8a2.99 2.99 0 0 0-.812-2.052c.215-.18.432-.346.647-.487C11.34 5.131 11.732 5 12 5a3 3 0 1 1 0 6c-.268 0-.66-.13-1.165-.461a6.833 6.833 0 0 1-.647-.487zm-3.56.617a3.001 3.001 0 0 0 2.744 0c.507.446 1.054.842 1.598 1.084.02.091.03.174.03.247a3 3 0 1 1-6 0c0-.073.01-.155.03-.247.544-.242 1.091-.638 1.598-1.084zm-.816-4.721A2.99 2.99 0 0 0 5 8c0 .794.308 1.516.812 2.052a6.83 6.83 0 0 1-.647.487C4.66 10.869 4.268 11 4 11a3 3 0 0 1 0-6c.268 0 .66.13 1.165.461.215.141.432.306.647.487zM8 9a1 1 0 1 1 0-2 1 1 0 0 1 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFlower3 = /*#__PURE__*/ makeIcon(\n  'Flower3',\n  '<path fill-rule=\"evenodd\" d=\"M11.424 8c.437-.052.811-.136 1.04-.268a2 2 0 0 0-2-3.464c-.229.132-.489.414-.752.767C9.886 4.63 10 4.264 10 4a2 2 0 1 0-4 0c0 .264.114.63.288 1.035-.263-.353-.523-.635-.752-.767a2 2 0 0 0-2 3.464c.229.132.603.216 1.04.268-.437.052-.811.136-1.04.268a2 2 0 1 0 2 3.464c.229-.132.489-.414.752-.767C6.114 11.37 6 11.736 6 12a2 2 0 1 0 4 0c0-.264-.114-.63-.288-1.035.263.353.523.635.752.767a2 2 0 1 0 2-3.464c-.229-.132-.603-.216-1.04-.268zM9 4a1 1 0 0 0-2 0 1.473 1.473 0 0 0 .045.206c.039.131.1.294.183.483.166.378.396.808.637 1.223l.135.23.135-.23c.241-.415.47-.845.637-1.223.083-.19.144-.352.183-.484.02-.065.031-.116.038-.154C9 4.018 9 4.002 9 4zM3.67 5.5a1 1 0 0 0 .366 1.366 1.47 1.47 0 0 0 .2.064c.134.032.305.06.51.083.411.045.898.061 1.379.06.09 0 .178 0 .266-.002a21.82 21.82 0 0 0-.131-.232 12.88 12.88 0 0 0-.742-1.163 4.215 4.215 0 0 0-.327-.4 1.472 1.472 0 0 0-.115-.11c-.025-.022-.038-.03-.04-.032A1 1 0 0 0 3.67 5.5zm1.366 5.366a1 1 0 0 1-1-1.732c.001 0 .016-.008.047-.02.037-.013.087-.028.153-.044.134-.032.305-.06.51-.083a12.88 12.88 0 0 1 1.379-.06c.09 0 .178 0 .266.002a21.82 21.82 0 0 1-.131.232c-.24.416-.497.83-.742 1.163a4.1 4.1 0 0 1-.327.4 1.483 1.483 0 0 1-.155.142zM9 12a1 1 0 0 1-2 0 1.476 1.476 0 0 1 .045-.206c.039-.131.1-.294.183-.483.166-.378.396-.808.637-1.223L8 9.858l.135.23c.241.415.47.845.637 1.223.083.19.144.352.183.484A1.338 1.338 0 0 1 9 12zm3.33-6.5a1 1 0 0 1-.366 1.366 1.478 1.478 0 0 1-.2.064c-.134.032-.305.06-.51.083-.412.045-.898.061-1.379.06-.09 0-.178 0-.266-.002l.131-.232c.24-.416.497-.83.742-1.163a4.1 4.1 0 0 1 .327-.4c.046-.05.085-.086.114-.11.026-.022.04-.03.041-.032a1 1 0 0 1 1.366.366zm-1.366 5.366a1 1 0 0 0 1-1.732c-.002 0-.016-.008-.047-.02a1.478 1.478 0 0 0-.153-.044 4.217 4.217 0 0 0-.51-.083 12.881 12.881 0 0 0-1.379-.06c-.09 0-.178 0-.266.002a22 22 0 0 0 .131.232c.24.416.497.83.742 1.163.122.167.232.3.327.4a1.494 1.494 0 0 0 .155.142zM8 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFolder = /*#__PURE__*/ makeIcon(\n  'Folder',\n  '<path d=\"M9.828 4a3 3 0 0 1-2.12-.879l-.83-.828A1 1 0 0 0 6.173 2H2.5a1 1 0 0 0-1 .981L1.546 4h-1L.5 3a2 2 0 0 1 2-2h3.672a2 2 0 0 1 1.414.586l.828.828A2 2 0 0 0 9.828 3v1z\"/><path fill-rule=\"evenodd\" d=\"M13.81 4H2.19a1 1 0 0 0-.996 1.09l.637 7a1 1 0 0 0 .995.91h10.348a1 1 0 0 0 .995-.91l.637-7A1 1 0 0 0 13.81 4zM2.19 3A2 2 0 0 0 .198 5.181l.637 7A2 2 0 0 0 2.826 14h10.348a2 2 0 0 0 1.991-1.819l.637-7A2 2 0 0 0 13.81 3H2.19z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFolder2 = /*#__PURE__*/ makeIcon(\n  'Folder2',\n  '<path fill-rule=\"evenodd\" d=\"M1 3.5A1.5 1.5 0 0 1 2.5 2h2.764c.958 0 1.76.56 2.311 1.184C7.985 3.648 8.48 4 9 4h4.5A1.5 1.5 0 0 1 15 5.5v7a1.5 1.5 0 0 1-1.5 1.5h-11A1.5 1.5 0 0 1 1 12.5v-9zM2.5 3a.5.5 0 0 0-.5.5V6h12v-.5a.5.5 0 0 0-.5-.5H9c-.964 0-1.71-.629-2.174-1.154C6.374 3.334 5.82 3 5.264 3H2.5zM14 7H2v5.5a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFolder2Open = /*#__PURE__*/ makeIcon(\n  'Folder2Open',\n  '<path fill-rule=\"evenodd\" d=\"M1 3.5A1.5 1.5 0 0 1 2.5 2h2.764c.958 0 1.76.56 2.311 1.184C7.985 3.648 8.48 4 9 4h4.5A1.5 1.5 0 0 1 15 5.5v.64c.57.265.94.876.856 1.546l-.64 5.124A2.5 2.5 0 0 1 12.733 15H3.266a2.5 2.5 0 0 1-2.481-2.19l-.64-5.124A1.5 1.5 0 0 1 1 6.14V3.5zM2 6h12v-.5a.5.5 0 0 0-.5-.5H9c-.964 0-1.71-.629-2.174-1.154C6.374 3.334 5.82 3 5.264 3H2.5a.5.5 0 0 0-.5.5V6zm-.367 1a.5.5 0 0 0-.496.562l.64 5.124A1.5 1.5 0 0 0 3.266 14h9.468a1.5 1.5 0 0 0 1.489-1.314l.64-5.124A.5.5 0 0 0 14.367 7H1.633z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFolderCheck = /*#__PURE__*/ makeIcon(\n  'FolderCheck',\n  '<path fill-rule=\"evenodd\" d=\"M9.828 4H2.19a1 1 0 0 0-.996 1.09l.637 7a1 1 0 0 0 .995.91H9v1H2.826a2 2 0 0 1-1.991-1.819l-.637-7a1.99 1.99 0 0 1 .342-1.31L.5 3a2 2 0 0 1 2-2h3.672a2 2 0 0 1 1.414.586l.828.828A2 2 0 0 0 9.828 3h3.982a2 2 0 0 1 1.992 2.181L15.546 8H14.54l.265-2.91A1 1 0 0 0 13.81 4H9.828zm-2.95-1.707L7.587 3H2.19c-.24 0-.47.042-.684.12L1.5 2.98a1 1 0 0 1 1-.98h3.672a1 1 0 0 1 .707.293z\"/><path fill-rule=\"evenodd\" d=\"M15.854 10.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708l1.146 1.147 2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFolderFill = /*#__PURE__*/ makeIcon(\n  'FolderFill',\n  '<path fill-rule=\"evenodd\" d=\"M9.828 3h3.982a2 2 0 0 1 1.992 2.181l-.637 7A2 2 0 0 1 13.174 14H2.826a2 2 0 0 1-1.991-1.819l-.637-7a1.99 1.99 0 0 1 .342-1.31L.5 3a2 2 0 0 1 2-2h3.672a2 2 0 0 1 1.414.586l.828.828A2 2 0 0 0 9.828 3zm-8.322.12C1.72 3.042 1.95 3 2.19 3h5.396l-.707-.707A1 1 0 0 0 6.172 2H2.5a1 1 0 0 0-1 .981l.006.139z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFolderMinus = /*#__PURE__*/ makeIcon(\n  'FolderMinus',\n  '<path fill-rule=\"evenodd\" d=\"M9.828 4H2.19a1 1 0 0 0-.996 1.09l.637 7a1 1 0 0 0 .995.91H9v1H2.826a2 2 0 0 1-1.991-1.819l-.637-7a1.99 1.99 0 0 1 .342-1.31L.5 3a2 2 0 0 1 2-2h3.672a2 2 0 0 1 1.414.586l.828.828A2 2 0 0 0 9.828 3h3.982a2 2 0 0 1 1.992 2.181L15.546 8H14.54l.265-2.91A1 1 0 0 0 13.81 4H9.828zm-2.95-1.707L7.587 3H2.19c-.24 0-.47.042-.684.12L1.5 2.98a1 1 0 0 1 1-.98h3.672a1 1 0 0 1 .707.293z\"/><path fill-rule=\"evenodd\" d=\"M11 11.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFolderPlus = /*#__PURE__*/ makeIcon(\n  'FolderPlus',\n  '<path fill-rule=\"evenodd\" d=\"M9.828 4H2.19a1 1 0 0 0-.996 1.09l.637 7a1 1 0 0 0 .995.91H9v1H2.826a2 2 0 0 1-1.991-1.819l-.637-7a1.99 1.99 0 0 1 .342-1.31L.5 3a2 2 0 0 1 2-2h3.672a2 2 0 0 1 1.414.586l.828.828A2 2 0 0 0 9.828 3h3.982a2 2 0 0 1 1.992 2.181L15.546 8H14.54l.265-2.91A1 1 0 0 0 13.81 4H9.828zm-2.95-1.707L7.587 3H2.19c-.24 0-.47.042-.684.12L1.5 2.98a1 1 0 0 1 1-.98h3.672a1 1 0 0 1 .707.293z\"/><path fill-rule=\"evenodd\" d=\"M13.5 10a.5.5 0 0 1 .5.5V12h1.5a.5.5 0 0 1 0 1H14v1.5a.5.5 0 0 1-1 0V13h-1.5a.5.5 0 0 1 0-1H13v-1.5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFolderSymlink = /*#__PURE__*/ makeIcon(\n  'FolderSymlink',\n  '<path d=\"M9.828 4a3 3 0 0 1-2.12-.879l-.83-.828A1 1 0 0 0 6.173 2H2.5a1 1 0 0 0-1 .981L1.546 4h-1L.5 3a2 2 0 0 1 2-2h3.672a2 2 0 0 1 1.414.586l.828.828A2 2 0 0 0 9.828 3v1z\"/><path fill-rule=\"evenodd\" d=\"M13.81 4H2.19a1 1 0 0 0-.996 1.09l.637 7a1 1 0 0 0 .995.91h10.348a1 1 0 0 0 .995-.91l.637-7A1 1 0 0 0 13.81 4zM2.19 3A2 2 0 0 0 .198 5.181l.637 7A2 2 0 0 0 2.826 14h10.348a2 2 0 0 0 1.991-1.819l.637-7A2 2 0 0 0 13.81 3H2.19z\"/><path d=\"M8.616 10.24l3.182-1.969a.443.443 0 0 0 0-.742l-3.182-1.97c-.27-.166-.616.036-.616.372V6.7c-.857 0-3.429 0-4 4.8 1.429-2.7 4-2.4 4-2.4v.769c0 .336.346.538.616.371z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFolderSymlinkFill = /*#__PURE__*/ makeIcon(\n  'FolderSymlinkFill',\n  '<path fill-rule=\"evenodd\" d=\"M13.81 3H9.828a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 6.172 1H2.5a2 2 0 0 0-2 2l.04.87a1.99 1.99 0 0 0-.342 1.311l.637 7A2 2 0 0 0 2.826 14h10.348a2 2 0 0 0 1.991-1.819l.637-7A2 2 0 0 0 13.81 3zM2.19 3c-.24 0-.47.042-.684.12L1.5 2.98a1 1 0 0 1 1-.98h3.672a1 1 0 0 1 .707.293L7.586 3H2.19zm9.608 5.271l-3.182 1.97c-.27.166-.616-.036-.616-.372V9.1s-2.571-.3-4 2.4c.571-4.8 3.143-4.8 4-4.8v-.769c0-.336.346-.538.616-.371l3.182 1.969c.27.166.27.576 0 .742z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFolderX = /*#__PURE__*/ makeIcon(\n  'FolderX',\n  '<path fill-rule=\"evenodd\" d=\"M9.828 4H2.19a1 1 0 0 0-.996 1.09l.637 7a1 1 0 0 0 .995.91H9v1H2.826a2 2 0 0 1-1.991-1.819l-.637-7a1.99 1.99 0 0 1 .342-1.31L.5 3a2 2 0 0 1 2-2h3.672a2 2 0 0 1 1.414.586l.828.828A2 2 0 0 0 9.828 3h3.982a2 2 0 0 1 1.992 2.181L15.546 8H14.54l.265-2.91A1 1 0 0 0 13.81 4H9.828zm-2.95-1.707L7.587 3H2.19c-.24 0-.47.042-.684.12L1.5 2.98a1 1 0 0 1 1-.98h3.672a1 1 0 0 1 .707.293z\"/><path fill-rule=\"evenodd\" d=\"M11.146 10.146a.5.5 0 0 1 .708 0L13 11.293l1.146-1.147a.5.5 0 0 1 .708.708L13.707 12l1.147 1.146a.5.5 0 0 1-.708.708L13 12.707l-1.146 1.147a.5.5 0 0 1-.708-.708L12.293 12l-1.147-1.146a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFonts = /*#__PURE__*/ makeIcon(\n  'Fonts',\n  '<path d=\"M12.258 3H3.747l-.082 2.46h.479c.26-1.544.758-1.783 2.693-1.845l.424-.013v7.827c0 .663-.144.82-1.3.923v.52h4.082v-.52c-1.162-.103-1.306-.26-1.306-.923V3.602l.43.013c1.935.062 2.434.301 2.694 1.846h.479L12.258 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconForward = /*#__PURE__*/ makeIcon(\n  'Forward',\n  '<path fill-rule=\"evenodd\" d=\"M9.502 5.513a.144.144 0 0 0-.202.134V6.65a.5.5 0 0 1-.5.5H2.5v2.9h6.3a.5.5 0 0 1 .5.5v1.003c0 .108.11.176.202.134l3.984-2.933a.51.51 0 0 1 .042-.028.147.147 0 0 0 0-.252.51.51 0 0 1-.042-.028L9.502 5.513zM8.3 5.647a1.144 1.144 0 0 1 1.767-.96l3.994 2.94a1.147 1.147 0 0 1 0 1.946l-3.994 2.94a1.144 1.144 0 0 1-1.767-.96v-.503H2a.5.5 0 0 1-.5-.5v-3.9a.5.5 0 0 1 .5-.5h6.3v-.503z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconForwardFill = /*#__PURE__*/ makeIcon(\n  'ForwardFill',\n  '<path d=\"M9.77 12.11l4.012-2.953a.647.647 0 0 0 0-1.114L9.771 5.09a.644.644 0 0 0-.971.557V6.65H2v3.9h6.8v1.003c0 .505.545.808.97.557z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFront = /*#__PURE__*/ makeIcon(\n  'Front',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v2h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2H2a2 2 0 0 1-2-2V2zm5 10v2a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2v5a2 2 0 0 1-2 2H5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFullscreen = /*#__PURE__*/ makeIcon(\n  'Fullscreen',\n  '<path fill-rule=\"evenodd\" d=\"M1.5 1a.5.5 0 0 0-.5.5v4a.5.5 0 0 1-1 0v-4A1.5 1.5 0 0 1 1.5 0h4a.5.5 0 0 1 0 1h-4zM10 .5a.5.5 0 0 1 .5-.5h4A1.5 1.5 0 0 1 16 1.5v4a.5.5 0 0 1-1 0v-4a.5.5 0 0 0-.5-.5h-4a.5.5 0 0 1-.5-.5zM.5 10a.5.5 0 0 1 .5.5v4a.5.5 0 0 0 .5.5h4a.5.5 0 0 1 0 1h-4A1.5 1.5 0 0 1 0 14.5v-4a.5.5 0 0 1 .5-.5zm15 0a.5.5 0 0 1 .5.5v4a1.5 1.5 0 0 1-1.5 1.5h-4a.5.5 0 0 1 0-1h4a.5.5 0 0 0 .5-.5v-4a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFullscreenExit = /*#__PURE__*/ makeIcon(\n  'FullscreenExit',\n  '<path fill-rule=\"evenodd\" d=\"M5.5 0a.5.5 0 0 1 .5.5v4A1.5 1.5 0 0 1 4.5 6h-4a.5.5 0 0 1 0-1h4a.5.5 0 0 0 .5-.5v-4a.5.5 0 0 1 .5-.5zm5 0a.5.5 0 0 1 .5.5v4a.5.5 0 0 0 .5.5h4a.5.5 0 0 1 0 1h-4A1.5 1.5 0 0 1 10 4.5v-4a.5.5 0 0 1 .5-.5zM0 10.5a.5.5 0 0 1 .5-.5h4A1.5 1.5 0 0 1 6 11.5v4a.5.5 0 0 1-1 0v-4a.5.5 0 0 0-.5-.5h-4a.5.5 0 0 1-.5-.5zm10 1a1.5 1.5 0 0 1 1.5-1.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 0-.5.5v4a.5.5 0 0 1-1 0v-4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFunnel = /*#__PURE__*/ makeIcon(\n  'Funnel',\n  '<path fill-rule=\"evenodd\" d=\"M1.5 1.5A.5.5 0 0 1 2 1h12a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.128.334L10 8.692V13.5a.5.5 0 0 1-.342.474l-3 1A.5.5 0 0 1 6 14.5V8.692L1.628 3.834A.5.5 0 0 1 1.5 3.5v-2zm1 .5v1.308l4.372 4.858A.5.5 0 0 1 7 8.5v5.306l2-.666V8.5a.5.5 0 0 1 .128-.334L13.5 3.308V2h-11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFunnelFill = /*#__PURE__*/ makeIcon(\n  'FunnelFill',\n  '<path fill-rule=\"evenodd\" d=\"M1.5 1.5A.5.5 0 0 1 2 1h12a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.128.334L10 8.692V13.5a.5.5 0 0 1-.342.474l-3 1A.5.5 0 0 1 6 14.5V8.692L1.628 3.834A.5.5 0 0 1 1.5 3.5v-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGear = /*#__PURE__*/ makeIcon(\n  'Gear',\n  '<path fill-rule=\"evenodd\" d=\"M8.837 1.626c-.246-.835-1.428-.835-1.674 0l-.094.319A1.873 1.873 0 0 1 4.377 3.06l-.292-.16c-.764-.415-1.6.42-1.184 1.185l.159.292a1.873 1.873 0 0 1-1.115 2.692l-.319.094c-.835.246-.835 1.428 0 1.674l.319.094a1.873 1.873 0 0 1 1.115 2.693l-.16.291c-.415.764.42 1.6 1.185 1.184l.292-.159a1.873 1.873 0 0 1 2.692 1.116l.094.318c.246.835 1.428.835 1.674 0l.094-.319a1.873 1.873 0 0 1 2.693-1.115l.291.16c.764.415 1.6-.42 1.184-1.185l-.159-.291a1.873 1.873 0 0 1 1.116-2.693l.318-.094c.835-.246.835-1.428 0-1.674l-.319-.094a1.873 1.873 0 0 1-1.115-2.692l.16-.292c.415-.764-.42-1.6-1.185-1.184l-.291.159A1.873 1.873 0 0 1 8.93 1.945l-.094-.319zm-2.633-.283c.527-1.79 3.065-1.79 3.592 0l.094.319a.873.873 0 0 0 1.255.52l.292-.16c1.64-.892 3.434.901 2.54 2.541l-.159.292a.873.873 0 0 0 .52 1.255l.319.094c1.79.527 1.79 3.065 0 3.592l-.319.094a.873.873 0 0 0-.52 1.255l.16.292c.893 1.64-.902 3.434-2.541 2.54l-.292-.159a.873.873 0 0 0-1.255.52l-.094.319c-.527 1.79-3.065 1.79-3.592 0l-.094-.319a.873.873 0 0 0-1.255-.52l-.292.16c-1.64.893-3.433-.902-2.54-2.541l.159-.292a.873.873 0 0 0-.52-1.255l-.319-.094c-1.79-.527-1.79-3.065 0-3.592l.319-.094a.873.873 0 0 0 .52-1.255l-.16-.292c-.892-1.64.902-3.433 2.541-2.54l.292.159a.873.873 0 0 0 1.255-.52l.094-.319z\"/><path fill-rule=\"evenodd\" d=\"M8 5.754a2.246 2.246 0 1 0 0 4.492 2.246 2.246 0 0 0 0-4.492zM4.754 8a3.246 3.246 0 1 1 6.492 0 3.246 3.246 0 0 1-6.492 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGearFill = /*#__PURE__*/ makeIcon(\n  'GearFill',\n  '<path fill-rule=\"evenodd\" d=\"M9.405 1.05c-.413-1.4-2.397-1.4-2.81 0l-.1.34a1.464 1.464 0 0 1-2.105.872l-.31-.17c-1.283-.698-2.686.705-1.987 1.987l.169.311c.446.82.023 1.841-.872 2.105l-.34.1c-1.4.413-1.4 2.397 0 2.81l.34.1a1.464 1.464 0 0 1 .872 2.105l-.17.31c-.698 1.283.705 2.686 1.987 1.987l.311-.169a1.464 1.464 0 0 1 2.105.872l.1.34c.413 1.4 2.397 1.4 2.81 0l.1-.34a1.464 1.464 0 0 1 2.105-.872l.31.17c1.283.698 2.686-.705 1.987-1.987l-.169-.311a1.464 1.464 0 0 1 .872-2.105l.34-.1c1.4-.413 1.4-2.397 0-2.81l-.34-.1a1.464 1.464 0 0 1-.872-2.105l.17-.31c.698-1.283-.705-2.686-1.987-1.987l-.311.169a1.464 1.464 0 0 1-2.105-.872l-.1-.34zM8 10.93a2.929 2.929 0 1 0 0-5.86 2.929 2.929 0 0 0 0 5.858z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGearWide = /*#__PURE__*/ makeIcon(\n  'GearWide',\n  '<path fill-rule=\"evenodd\" d=\"M8.932.727c-.243-.97-1.62-.97-1.864 0l-.071.286a.96.96 0 0 1-1.622.434l-.205-.211c-.695-.719-1.888-.03-1.613.931l.08.284a.96.96 0 0 1-1.186 1.187l-.284-.081c-.96-.275-1.65.918-.931 1.613l.211.205a.96.96 0 0 1-.434 1.622l-.286.071c-.97.243-.97 1.62 0 1.864l.286.071a.96.96 0 0 1 .434 1.622l-.211.205c-.719.695-.03 1.888.931 1.613l.284-.08a.96.96 0 0 1 1.187 1.187l-.081.283c-.275.96.918 1.65 1.613.931l.205-.211a.96.96 0 0 1 1.622.434l.071.286c.243.97 1.62.97 1.864 0l.071-.286a.96.96 0 0 1 1.622-.434l.205.211c.695.719 1.888.03 1.613-.931l-.08-.284a.96.96 0 0 1 1.187-1.187l.283.081c.96.275 1.65-.918.931-1.613l-.211-.205a.96.96 0 0 1 .434-1.622l.286-.071c.97-.243.97-1.62 0-1.864l-.286-.071a.96.96 0 0 1-.434-1.622l.211-.205c.719-.695.03-1.888-.931-1.613l-.284.08a.96.96 0 0 1-1.187-1.186l.081-.284c.275-.96-.918-1.65-1.613-.931l-.205.211a.96.96 0 0 1-1.622-.434L8.932.727zM8 12.997a4.998 4.998 0 1 0 0-9.995 4.998 4.998 0 0 0 0 9.996z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGearWideConnected = /*#__PURE__*/ makeIcon(\n  'GearWideConnected',\n  '<path fill-rule=\"evenodd\" d=\"M8.932.727c-.243-.97-1.62-.97-1.864 0l-.071.286a.96.96 0 0 1-1.622.434l-.205-.211c-.695-.719-1.888-.03-1.613.931l.08.284a.96.96 0 0 1-1.186 1.187l-.284-.081c-.96-.275-1.65.918-.931 1.613l.211.205a.96.96 0 0 1-.434 1.622l-.286.071c-.97.243-.97 1.62 0 1.864l.286.071a.96.96 0 0 1 .434 1.622l-.211.205c-.719.695-.03 1.888.931 1.613l.284-.08a.96.96 0 0 1 1.187 1.187l-.081.283c-.275.96.918 1.65 1.613.931l.205-.211a.96.96 0 0 1 1.622.434l.071.286c.243.97 1.62.97 1.864 0l.071-.286a.96.96 0 0 1 1.622-.434l.205.211c.695.719 1.888.03 1.613-.931l-.08-.284a.96.96 0 0 1 1.187-1.187l.283.081c.96.275 1.65-.918.931-1.613l-.211-.205a.96.96 0 0 1 .434-1.622l.286-.071c.97-.243.97-1.62 0-1.864l-.286-.071a.96.96 0 0 1-.434-1.622l.211-.205c.719-.695.03-1.888-.931-1.613l-.284.08a.96.96 0 0 1-1.187-1.186l.081-.284c.275-.96-.918-1.65-1.613-.931l-.205.211a.96.96 0 0 1-1.622-.434L8.932.727zM8 12.997a4.998 4.998 0 1 0 0-9.995 4.998 4.998 0 0 0 0 9.996z\"/><path fill-rule=\"evenodd\" d=\"M7.375 8L4.602 4.302l.8-.6L8.25 7.5h4.748v1H8.25L5.4 12.298l-.8-.6L7.376 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGem = /*#__PURE__*/ makeIcon(\n  'Gem',\n  '<path fill-rule=\"evenodd\" d=\"M3.1.7a.5.5 0 0 1 .4-.2h9a.5.5 0 0 1 .4.2l2.976 3.974c.149.185.156.45.01.644L8.4 15.3a.5.5 0 0 1-.8 0L.1 5.3a.5.5 0 0 1 0-.6l3-4zm11.386 3.785l-1.806-2.41-.776 2.413 2.582-.003zm-3.633.004l.961-2.989H4.186l.963 2.995 5.704-.006zM5.47 5.495l5.062-.005L8 13.366 5.47 5.495zm-1.371-.999l-.78-2.422-1.818 2.425 2.598-.003zM1.499 5.5l2.92-.003 2.193 6.82L1.5 5.5zm7.889 6.817l2.194-6.828 2.929-.003-5.123 6.831z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGeo = /*#__PURE__*/ makeIcon(\n  'Geo',\n  '<path fill-rule=\"evenodd\" d=\"M8 1a3 3 0 1 0 0 6 3 3 0 0 0 0-6zM4 4a4 4 0 1 1 4.5 3.969V13.5a.5.5 0 0 1-1 0V7.97A4 4 0 0 1 4 3.999zm2.493 8.574a.5.5 0 0 1-.411.575c-.712.118-1.28.295-1.655.493a1.319 1.319 0 0 0-.37.265.301.301 0 0 0-.057.09V14l.002.008a.147.147 0 0 0 .016.033.617.617 0 0 0 .145.15c.165.13.435.27.813.395.751.25 1.82.414 3.024.414s2.273-.163 3.024-.414c.378-.126.648-.265.813-.395a.619.619 0 0 0 .146-.15.148.148 0 0 0 .015-.033L12 14v-.004a.301.301 0 0 0-.057-.09 1.318 1.318 0 0 0-.37-.264c-.376-.198-.943-.375-1.655-.493a.5.5 0 1 1 .164-.986c.77.127 1.452.328 1.957.594C12.5 13 13 13.4 13 14c0 .426-.26.752-.544.977-.29.228-.68.413-1.116.558-.878.293-2.059.465-3.34.465-1.281 0-2.462-.172-3.34-.465-.436-.145-.826-.33-1.116-.558C3.26 14.752 3 14.426 3 14c0-.599.5-1 .961-1.243.505-.266 1.187-.467 1.957-.594a.5.5 0 0 1 .575.411z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGeoAlt = /*#__PURE__*/ makeIcon(\n  'GeoAlt',\n  '<path fill-rule=\"evenodd\" d=\"M12.166 8.94C12.696 7.867 13 6.862 13 6A5 5 0 0 0 3 6c0 .862.305 1.867.834 2.94.524 1.062 1.234 2.12 1.96 3.07A31.481 31.481 0 0 0 8 14.58l.208-.22a31.493 31.493 0 0 0 1.998-2.35c.726-.95 1.436-2.008 1.96-3.07zM8 16s6-5.686 6-10A6 6 0 0 0 2 6c0 4.314 6 10 6 10z\"/><path fill-rule=\"evenodd\" d=\"M8 8a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm0 1a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGeoAltFill = /*#__PURE__*/ makeIcon(\n  'GeoAltFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 16s6-5.686 6-10A6 6 0 0 0 2 6c0 4.314 6 10 6 10zm0-7a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGeoFill = /*#__PURE__*/ makeIcon(\n  'GeoFill',\n  '<path fill-rule=\"evenodd\" d=\"M4 4a4 4 0 1 1 4.5 3.969V13.5a.5.5 0 0 1-1 0V7.97A4 4 0 0 1 4 3.999zm2.493 8.574a.5.5 0 0 1-.411.575c-.712.118-1.28.295-1.655.493a1.319 1.319 0 0 0-.37.265.301.301 0 0 0-.057.09V14l.002.008a.147.147 0 0 0 .016.033.617.617 0 0 0 .145.15c.165.13.435.27.813.395.751.25 1.82.414 3.024.414s2.273-.163 3.024-.414c.378-.126.648-.265.813-.395a.619.619 0 0 0 .146-.15.148.148 0 0 0 .015-.033L12 14v-.004a.301.301 0 0 0-.057-.09 1.318 1.318 0 0 0-.37-.264c-.376-.198-.943-.375-1.655-.493a.5.5 0 1 1 .164-.986c.77.127 1.452.328 1.957.594C12.5 13 13 13.4 13 14c0 .426-.26.752-.544.977-.29.228-.68.413-1.116.558-.878.293-2.059.465-3.34.465-1.281 0-2.462-.172-3.34-.465-.436-.145-.826-.33-1.116-.558C3.26 14.752 3 14.426 3 14c0-.599.5-1 .961-1.243.505-.266 1.187-.467 1.957-.594a.5.5 0 0 1 .575.411z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGift = /*#__PURE__*/ makeIcon(\n  'Gift',\n  '<path fill-rule=\"evenodd\" d=\"M3 2.5a2.5 2.5 0 0 1 5 0 2.5 2.5 0 0 1 5 0v.006c0 .07 0 .27-.038.494H15a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1v7.5a1.5 1.5 0 0 1-1.5 1.5h-11A1.5 1.5 0 0 1 1 14.5V7a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h2.038A2.968 2.968 0 0 1 3 2.506V2.5zm1.068.5H7v-.5a1.5 1.5 0 1 0-3 0c0 .085.002.274.045.43a.522.522 0 0 0 .023.07zM9 3h2.932a.56.56 0 0 0 .023-.07c.043-.156.045-.345.045-.43a1.5 1.5 0 0 0-3 0V3zM1 4v2h6V4H1zm8 0v2h6V4H9zm5 3H9v8h4.5a.5.5 0 0 0 .5-.5V7zm-7 8V7H2v7.5a.5.5 0 0 0 .5.5H7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGiftFill = /*#__PURE__*/ makeIcon(\n  'GiftFill',\n  '<path fill-rule=\"evenodd\" d=\"M3 2.5a2.5 2.5 0 0 1 5 0 2.5 2.5 0 0 1 5 0v.006c0 .07 0 .27-.038.494H15a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h2.038A2.968 2.968 0 0 1 3 2.506V2.5zm1.068.5H7v-.5a1.5 1.5 0 1 0-3 0c0 .085.002.274.045.43a.522.522 0 0 0 .023.07zM9 3h2.932a.56.56 0 0 0 .023-.07c.043-.156.045-.345.045-.43a1.5 1.5 0 0 0-3 0V3z\"/><path d=\"M15 7v7.5a1.5 1.5 0 0 1-1.5 1.5H9V7h6zM2.5 16A1.5 1.5 0 0 1 1 14.5V7h6v9H2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGithub = /*#__PURE__*/ makeIcon(\n  'Github',\n  '<path fill-rule=\"evenodd\" d=\"M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGlobe = /*#__PURE__*/ makeIcon(\n  'Globe',\n  '<path fill-rule=\"evenodd\" d=\"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8zm7.5-6.923c-.67.204-1.335.82-1.887 1.855A7.97 7.97 0 0 0 5.145 4H7.5V1.077zM4.09 4H2.255a7.025 7.025 0 0 1 3.072-2.472 6.7 6.7 0 0 0-.597.933c-.247.464-.462.98-.64 1.539zm-.582 3.5h-2.49c.062-.89.291-1.733.656-2.5H3.82a13.652 13.652 0 0 0-.312 2.5zM4.847 5H7.5v2.5H4.51A12.5 12.5 0 0 1 4.846 5zM8.5 5v2.5h2.99a12.495 12.495 0 0 0-.337-2.5H8.5zM4.51 8.5H7.5V11H4.847a12.5 12.5 0 0 1-.338-2.5zm3.99 0V11h2.653c.187-.765.306-1.608.338-2.5H8.5zM5.145 12H7.5v2.923c-.67-.204-1.335-.82-1.887-1.855A7.97 7.97 0 0 1 5.145 12zm.182 2.472a6.696 6.696 0 0 1-.597-.933A9.268 9.268 0 0 1 4.09 12H2.255a7.024 7.024 0 0 0 3.072 2.472zM3.82 11H1.674a6.958 6.958 0 0 1-.656-2.5h2.49c.03.877.138 1.718.312 2.5zm6.853 3.472A7.024 7.024 0 0 0 13.745 12H11.91a9.27 9.27 0 0 1-.64 1.539 6.688 6.688 0 0 1-.597.933zM8.5 12h2.355a7.967 7.967 0 0 1-.468 1.068c-.552 1.035-1.218 1.65-1.887 1.855V12zm3.68-1h2.146c.365-.767.594-1.61.656-2.5h-2.49a13.65 13.65 0 0 1-.312 2.5zm2.802-3.5h-2.49A13.65 13.65 0 0 0 12.18 5h2.146c.365.767.594 1.61.656 2.5zM11.27 2.461c.247.464.462.98.64 1.539h1.835a7.024 7.024 0 0 0-3.072-2.472c.218.284.418.598.597.933zM10.855 4H8.5V1.077c.67.204 1.335.82 1.887 1.855.173.324.33.682.468 1.068z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGlobe2 = /*#__PURE__*/ makeIcon(\n  'Globe2',\n  '<path fill-rule=\"evenodd\" d=\"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8zm7.5-6.923c-.67.204-1.335.82-1.887 1.855-.143.268-.276.56-.395.872.705.157 1.472.257 2.282.287V1.077zM4.249 3.539a8.372 8.372 0 0 1-1.198-.49 7.01 7.01 0 0 1 2.276-1.52 6.7 6.7 0 0 0-.597.932 8.854 8.854 0 0 0-.48 1.079zM3.509 7.5H1.017A6.964 6.964 0 0 1 2.38 3.825c.47.258.995.482 1.565.667A13.4 13.4 0 0 0 3.508 7.5zm1.4-2.741c.808.187 1.681.301 2.591.332V7.5H4.51c.035-.987.176-1.914.399-2.741zM8.5 5.09V7.5h2.99a12.342 12.342 0 0 0-.399-2.741c-.808.187-1.681.301-2.591.332zM4.51 8.5H7.5v2.409c-.91.03-1.783.145-2.591.332a12.343 12.343 0 0 1-.4-2.741zm3.99 0v2.409c.91.03 1.783.145 2.591.332.223-.827.364-1.754.4-2.741H8.5zm-3.282 3.696A12.63 12.63 0 0 1 7.5 11.91v3.014c-.67-.204-1.335-.82-1.887-1.855a7.776 7.776 0 0 1-.395-.872zm.11 2.276a6.696 6.696 0 0 1-.598-.933 8.853 8.853 0 0 1-.481-1.079 8.38 8.38 0 0 0-1.198.49 7.01 7.01 0 0 0 2.276 1.522zm-1.383-2.964a9.083 9.083 0 0 0-1.565.667A6.963 6.963 0 0 1 1.018 8.5h2.49a13.36 13.36 0 0 0 .437 3.008zm6.728 2.964a7.009 7.009 0 0 0 2.275-1.521 8.376 8.376 0 0 0-1.197-.49 8.853 8.853 0 0 1-.481 1.078 6.688 6.688 0 0 1-.597.933zM8.5 11.909c.81.03 1.577.13 2.282.287-.12.312-.252.604-.395.872-.552 1.035-1.218 1.65-1.887 1.855V11.91zm3.555-.401c.57.185 1.095.409 1.565.667A6.963 6.963 0 0 0 14.982 8.5h-2.49a13.36 13.36 0 0 1-.437 3.008zM14.982 7.5h-2.49a13.361 13.361 0 0 0-.437-3.008 9.123 9.123 0 0 0 1.565-.667A6.963 6.963 0 0 1 14.982 7.5zM11.27 2.461c.177.334.339.694.482 1.078a8.368 8.368 0 0 0 1.196-.49 7.01 7.01 0 0 0-2.275-1.52c.218.283.418.597.597.932zm-.488 1.343c-.705.157-1.473.257-2.282.287V1.077c.67.204 1.335.82 1.887 1.855.143.268.276.56.395.872z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGoogle = /*#__PURE__*/ makeIcon(\n  'Google',\n  '<path d=\"M15.545 6.558a9.42 9.42 0 0 1 .139 1.626c0 2.434-.87 4.492-2.384 5.885h.002C11.978 15.292 10.158 16 8 16A8 8 0 1 1 8 0a7.689 7.689 0 0 1 5.352 2.082l-2.284 2.284A4.347 4.347 0 0 0 8 3.166c-2.087 0-3.86 1.408-4.492 3.304a4.792 4.792 0 0 0 0 3.063h.003c.635 1.893 2.405 3.301 4.492 3.301 1.078 0 2.004-.276 2.722-.764h-.003a3.702 3.702 0 0 0 1.599-2.431H8v-3.08h7.545z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGraphDown = /*#__PURE__*/ makeIcon(\n  'GraphDown',\n  '<path fill-rule=\"evenodd\" d=\"M0 0h1v15h15v1H0V0zm10 11.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-4a.5.5 0 0 0-1 0v2.6l-3.613-4.417a.5.5 0 0 0-.74-.037L7.06 8.233 3.404 3.206a.5.5 0 0 0-.808.588l4 5.5a.5.5 0 0 0 .758.06l2.609-2.61L13.445 11H10.5a.5.5 0 0 0-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGraphUp = /*#__PURE__*/ makeIcon(\n  'GraphUp',\n  '<path fill-rule=\"evenodd\" d=\"M0 0h1v15h15v1H0V0zm10 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V4.9l-3.613 4.417a.5.5 0 0 1-.74.037L7.06 6.767l-3.656 5.027a.5.5 0 0 1-.808-.588l4-5.5a.5.5 0 0 1 .758-.06l2.609 2.61L13.445 4H10.5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGrid = /*#__PURE__*/ makeIcon(\n  'Grid',\n  '<path fill-rule=\"evenodd\" d=\"M1 2.5A1.5 1.5 0 0 1 2.5 1h3A1.5 1.5 0 0 1 7 2.5v3A1.5 1.5 0 0 1 5.5 7h-3A1.5 1.5 0 0 1 1 5.5v-3zM2.5 2a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5h-3zm6.5.5A1.5 1.5 0 0 1 10.5 1h3A1.5 1.5 0 0 1 15 2.5v3A1.5 1.5 0 0 1 13.5 7h-3A1.5 1.5 0 0 1 9 5.5v-3zm1.5-.5a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5h-3zM1 10.5A1.5 1.5 0 0 1 2.5 9h3A1.5 1.5 0 0 1 7 10.5v3A1.5 1.5 0 0 1 5.5 15h-3A1.5 1.5 0 0 1 1 13.5v-3zm1.5-.5a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5h-3zm6.5.5A1.5 1.5 0 0 1 10.5 9h3a1.5 1.5 0 0 1 1.5 1.5v3a1.5 1.5 0 0 1-1.5 1.5h-3A1.5 1.5 0 0 1 9 13.5v-3zm1.5-.5a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5h-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGrid1x2 = /*#__PURE__*/ makeIcon(\n  'Grid1x2',\n  '<path fill-rule=\"evenodd\" d=\"M6 1H1v14h5V1zm9 0h-5v5h5V1zm0 9h-5v5h5v-5zM0 1a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V1zm9 0a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1V1zm1 8a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1v-5a1 1 0 0 0-1-1h-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGrid1x2Fill = /*#__PURE__*/ makeIcon(\n  'Grid1x2Fill',\n  '<path d=\"M0 1a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V1zm9 0a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1V1zm0 9a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1v-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGrid3x2 = /*#__PURE__*/ makeIcon(\n  'Grid3x2',\n  '<path fill-rule=\"evenodd\" d=\"M0 3.5A1.5 1.5 0 0 1 1.5 2h13A1.5 1.5 0 0 1 16 3.5v8a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 11.5v-8zM1.5 3a.5.5 0 0 0-.5.5V7h4V3H1.5zM5 8H1v3.5a.5.5 0 0 0 .5.5H5V8zm1 0h4v4H6V8zm4-1H6V3h4v4zm1 1v4h3.5a.5.5 0 0 0 .5-.5V8h-4zm0-1V3h3.5a.5.5 0 0 1 .5.5V7h-4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGrid3x2Gap = /*#__PURE__*/ makeIcon(\n  'Grid3x2Gap',\n  '<path fill-rule=\"evenodd\" d=\"M4 4H2v2h2V4zm1 7V9a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1zm0-5V4a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1zm5 5V9a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1zm0-5V4a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1zM9 4H7v2h2V4zm5 0h-2v2h2V4zM4 9H2v2h2V9zm5 0H7v2h2V9zm5 0h-2v2h2V9zm-3-5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1V4zm1 4a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V9a1 1 0 0 0-1-1h-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGrid3x2GapFill = /*#__PURE__*/ makeIcon(\n  'Grid3x2GapFill',\n  '<path d=\"M1 4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V4zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1V4zM1 9a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V9zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V9zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1V9z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGrid3x3 = /*#__PURE__*/ makeIcon(\n  'Grid3x3',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.5A1.5 1.5 0 0 1 1.5 0h13A1.5 1.5 0 0 1 16 1.5v13a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 14.5v-13zM1.5 1a.5.5 0 0 0-.5.5V5h4V1H1.5zM5 6H1v4h4V6zm1 4V6h4v4H6zm-1 1H1v3.5a.5.5 0 0 0 .5.5H5v-4zm1 0h4v4H6v-4zm5 0v4h3.5a.5.5 0 0 0 .5-.5V11h-4zm0-1h4V6h-4v4zm0-5h4V1.5a.5.5 0 0 0-.5-.5H11v4zm-1 0H6V1h4v4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGrid3x3Gap = /*#__PURE__*/ makeIcon(\n  'Grid3x3Gap',\n  '<path fill-rule=\"evenodd\" d=\"M4 2H2v2h2V2zm1 12v-2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1zm0-5V7a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1zm0-5V2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1zm5 10v-2a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1zm0-5V7a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1zm0-5V2a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1zM9 2H7v2h2V2zm5 0h-2v2h2V2zM4 7H2v2h2V7zm5 0H7v2h2V7zm5 0h-2v2h2V7zM4 12H2v2h2v-2zm5 0H7v2h2v-2zm5 0h-2v2h2v-2zM12 1a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1h-2zm-1 6a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1V7zm1 4a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1h-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGrid3x3GapFill = /*#__PURE__*/ makeIcon(\n  'Grid3x3GapFill',\n  '<path d=\"M1 2a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V2zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1V2zM1 7a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V7zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V7zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1V7zM1 12a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1v-2zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1v-2zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1v-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGridFill = /*#__PURE__*/ makeIcon(\n  'GridFill',\n  '<path fill-rule=\"evenodd\" d=\"M1 2.5A1.5 1.5 0 0 1 2.5 1h3A1.5 1.5 0 0 1 7 2.5v3A1.5 1.5 0 0 1 5.5 7h-3A1.5 1.5 0 0 1 1 5.5v-3zm8 0A1.5 1.5 0 0 1 10.5 1h3A1.5 1.5 0 0 1 15 2.5v3A1.5 1.5 0 0 1 13.5 7h-3A1.5 1.5 0 0 1 9 5.5v-3zm-8 8A1.5 1.5 0 0 1 2.5 9h3A1.5 1.5 0 0 1 7 10.5v3A1.5 1.5 0 0 1 5.5 15h-3A1.5 1.5 0 0 1 1 13.5v-3zm8 0A1.5 1.5 0 0 1 10.5 9h3a1.5 1.5 0 0 1 1.5 1.5v3a1.5 1.5 0 0 1-1.5 1.5h-3A1.5 1.5 0 0 1 9 13.5v-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGripHorizontal = /*#__PURE__*/ makeIcon(\n  'GripHorizontal',\n  '<path d=\"M2 8a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm0-3a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm3 3a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm0-3a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm3 3a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm0-3a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm3 3a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm0-3a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm3 3a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm0-3a1 1 0 1 1 0 2 1 1 0 0 1 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGripVertical = /*#__PURE__*/ makeIcon(\n  'GripVertical',\n  '<path d=\"M7 2a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zM7 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zM7 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm-3 3a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm-3 3a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHammer = /*#__PURE__*/ makeIcon(\n  'Hammer',\n  '<path d=\"M9.812 1.952a.5.5 0 0 1-.312.89c-1.671 0-2.852.596-3.616 1.185L4.857 5.073V6.21a.5.5 0 0 1-.146.354L3.425 7.853a.5.5 0 0 1-.708 0L.146 5.274a.5.5 0 0 1 0-.706l1.286-1.29a.5.5 0 0 1 .354-.146H2.84C4.505 1.228 6.216.862 7.557 1.04a5.009 5.009 0 0 1 2.077.782l.178.129z\"/><path fill-rule=\"evenodd\" d=\"M6.012 3.5a.5.5 0 0 1 .359.165l9.146 8.646A.5.5 0 0 1 15.5 13L14 14.5a.5.5 0 0 1-.756-.056L4.598 5.297a.5.5 0 0 1 .048-.65l1-1a.5.5 0 0 1 .366-.147z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHandIndex = /*#__PURE__*/ makeIcon(\n  'HandIndex',\n  '<path fill-rule=\"evenodd\" d=\"M6.75 1a.75.75 0 0 0-.75.75V9a.5.5 0 0 1-1 0v-.89l-1.003.2a.5.5 0 0 0-.399.546l.345 3.105a1.5 1.5 0 0 0 .243.666l1.433 2.15a.5.5 0 0 0 .416.223h6.385a.5.5 0 0 0 .434-.252l1.395-2.442a2.5 2.5 0 0 0 .317-.991l.272-2.715a1 1 0 0 0-.995-1.1H13.5v1a.5.5 0 0 1-1 0V7.154a4.208 4.208 0 0 0-.2-.26c-.187-.222-.368-.383-.486-.43-.124-.05-.392-.063-.708-.039a4.844 4.844 0 0 0-.106.01V8a.5.5 0 0 1-1 0V5.986c0-.167-.073-.272-.15-.314a1.657 1.657 0 0 0-.448-.182c-.179-.035-.5-.04-.816-.027l-.086.004V8a.5.5 0 0 1-1 0V1.75A.75.75 0 0 0 6.75 1zM8.5 4.466V1.75a1.75 1.75 0 0 0-3.5 0v5.34l-1.199.24a1.5 1.5 0 0 0-1.197 1.636l.345 3.106a2.5 2.5 0 0 0 .405 1.11l1.433 2.15A1.5 1.5 0 0 0 6.035 16h6.385a1.5 1.5 0 0 0 1.302-.756l1.395-2.441a3.5 3.5 0 0 0 .444-1.389l.272-2.715a2 2 0 0 0-1.99-2.199h-.582a5.184 5.184 0 0 0-.195-.248c-.191-.229-.51-.568-.88-.716-.364-.146-.846-.132-1.158-.108l-.132.012a1.26 1.26 0 0 0-.56-.642 2.634 2.634 0 0 0-.738-.288c-.31-.062-.739-.058-1.05-.046l-.048.002zm2.094 2.025z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHandIndexThumb = /*#__PURE__*/ makeIcon(\n  'HandIndexThumb',\n  '<path fill-rule=\"evenodd\" d=\"M6.75 1a.75.75 0 0 0-.75.75V9.5a.5.5 0 0 1-.854.354l-2.41-2.411a.517.517 0 0 0-.809.631l2.512 4.185 1.232 2.465a.5.5 0 0 0 .447.276h6.302a.5.5 0 0 0 .434-.252l1.395-2.442a2.5 2.5 0 0 0 .317-.991l.272-2.715a1 1 0 0 0-.995-1.1H13.5v1a.5.5 0 1 1-1 0V7.154a4.208 4.208 0 0 0-.2-.26c-.187-.222-.368-.383-.486-.43-.124-.05-.392-.063-.708-.039a4.844 4.844 0 0 0-.106.01V8a.5.5 0 1 1-1 0V5.986c0-.167-.073-.272-.15-.314a1.657 1.657 0 0 0-.448-.182c-.179-.035-.5-.04-.816-.027l-.086.004V8a.5.5 0 1 1-1 0V1.75A.75.75 0 0 0 6.75 1zM8.5 4.466V1.75a1.75 1.75 0 1 0-3.5 0v6.543L3.443 6.736A1.517 1.517 0 0 0 1.07 8.588l2.491 4.153 1.215 2.43A1.5 1.5 0 0 0 6.118 16h6.302a1.5 1.5 0 0 0 1.302-.756l1.395-2.441a3.5 3.5 0 0 0 .444-1.389l.272-2.715a2 2 0 0 0-1.99-2.199h-.582a5.114 5.114 0 0 0-.195-.248c-.191-.229-.51-.568-.88-.716-.364-.146-.846-.132-1.158-.108l-.132.012a1.26 1.26 0 0 0-.56-.642 2.634 2.634 0 0 0-.738-.288c-.31-.062-.739-.058-1.05-.046l-.048.002zm2.094 2.025z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHandThumbsDown = /*#__PURE__*/ makeIcon(\n  'HandThumbsDown',\n  '<path fill-rule=\"evenodd\" d=\"M6.956 14.534c.065.936.952 1.659 1.908 1.42l.261-.065a1.378 1.378 0 0 0 1.012-.965c.22-.816.533-2.512.062-4.51.136.02.285.037.443.051.713.065 1.669.071 2.516-.211.518-.173.994-.68 1.2-1.272a1.896 1.896 0 0 0-.234-1.734c.058-.118.103-.242.138-.362.077-.27.113-.568.113-.857 0-.288-.036-.585-.113-.856a2.094 2.094 0 0 0-.16-.403c.169-.387.107-.82-.003-1.149a3.162 3.162 0 0 0-.488-.9c.054-.153.076-.313.076-.465a1.86 1.86 0 0 0-.253-.912C13.1.757 12.437.28 11.5.28v1c.563 0 .901.272 1.066.56.086.15.121.3.121.416 0 .12-.035.165-.04.17l-.354.353.353.354c.202.202.407.512.505.805.104.312.043.44-.005.488l-.353.353.353.354c.043.043.105.141.154.315.048.167.075.37.075.581 0 .212-.027.415-.075.582-.05.174-.111.272-.154.315l-.353.353.353.354c.353.352.373.714.267 1.021-.122.35-.396.593-.571.651-.653.218-1.447.224-2.11.164a8.907 8.907 0 0 1-1.094-.17l-.014-.004H9.62a.5.5 0 0 0-.595.643 8.34 8.34 0 0 1 .145 4.725c-.03.112-.128.215-.288.255l-.262.066c-.306.076-.642-.156-.667-.519-.075-1.081-.239-2.15-.482-2.85-.174-.502-.603-1.267-1.238-1.977C5.597 8.926 4.715 8.23 3.62 7.93 3.226 7.823 3 7.534 3 7.28V3.279c0-.26.22-.515.553-.55 1.293-.138 1.936-.53 2.491-.869l.04-.024c.27-.165.495-.296.776-.393.277-.096.63-.163 1.14-.163h3.5v-1H8c-.605 0-1.07.08-1.466.217a4.823 4.823 0 0 0-.97.485l-.048.029c-.504.308-.999.61-2.068.723C2.682 1.815 2 2.434 2 3.279v4c0 .851.685 1.433 1.357 1.616.849.232 1.574.787 2.132 1.41.56.626.914 1.28 1.039 1.638.199.575.356 1.54.428 2.591z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHandThumbsUp = /*#__PURE__*/ makeIcon(\n  'HandThumbsUp',\n  '<path fill-rule=\"evenodd\" d=\"M6.956 1.745C7.021.81 7.908.087 8.864.325l.261.066c.463.116.874.456 1.012.965.22.816.533 2.511.062 4.51a9.84 9.84 0 0 1 .443-.051c.713-.065 1.669-.072 2.516.21.518.173.994.681 1.2 1.273.184.532.16 1.162-.234 1.733.058.119.103.242.138.363.077.27.113.567.113.856 0 .289-.036.586-.113.856-.039.135-.09.273-.16.404.169.387.107.819-.003 1.148a3.163 3.163 0 0 1-.488.901c.054.152.076.312.076.465 0 .305-.089.625-.253.912C13.1 15.522 12.437 16 11.5 16v-1c.563 0 .901-.272 1.066-.56a.865.865 0 0 0 .121-.416c0-.12-.035-.165-.04-.17l-.354-.354.353-.354c.202-.201.407-.511.505-.804.104-.312.043-.441-.005-.488l-.353-.354.353-.354c.043-.042.105-.14.154-.315.048-.167.075-.37.075-.581 0-.211-.027-.414-.075-.581-.05-.174-.111-.273-.154-.315L12.793 9l.353-.354c.353-.352.373-.713.267-1.02-.122-.35-.396-.593-.571-.652-.653-.217-1.447-.224-2.11-.164a8.907 8.907 0 0 0-1.094.171l-.014.003-.003.001a.5.5 0 0 1-.595-.643 8.34 8.34 0 0 0 .145-4.726c-.03-.111-.128-.215-.288-.255l-.262-.065c-.306-.077-.642.156-.667.518-.075 1.082-.239 2.15-.482 2.85-.174.502-.603 1.268-1.238 1.977-.637.712-1.519 1.41-2.614 1.708-.394.108-.62.396-.62.65v4.002c0 .26.22.515.553.55 1.293.137 1.936.53 2.491.868l.04.025c.27.164.495.296.776.393.277.095.63.163 1.14.163h3.5v1H8c-.605 0-1.07-.081-1.466-.218a4.82 4.82 0 0 1-.97-.484l-.048-.03c-.504-.307-.999-.609-2.068-.722C2.682 14.464 2 13.846 2 13V9c0-.85.685-1.432 1.357-1.615.849-.232 1.574-.787 2.132-1.41.56-.627.914-1.28 1.039-1.639.199-.575.356-1.539.428-2.59z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHandbag = /*#__PURE__*/ makeIcon(\n  'Handbag',\n  '<path fill-rule=\"evenodd\" d=\"M8 1a2 2 0 0 0-2 2v2h4V3a2 2 0 0 0-2-2zm3 4V3a3 3 0 1 0-6 0v2H3.361a1.5 1.5 0 0 0-1.483 1.277L.85 13.13A2.5 2.5 0 0 0 3.322 16h9.356a2.5 2.5 0 0 0 2.472-2.87l-1.028-6.853A1.5 1.5 0 0 0 12.64 5H11zm-1 1v1.5a.5.5 0 0 0 1 0V6h1.639a.5.5 0 0 1 .494.426l1.028 6.851A1.5 1.5 0 0 1 12.678 15H3.322a1.5 1.5 0 0 1-1.483-1.723l1.028-6.851A.5.5 0 0 1 3.36 6H5v1.5a.5.5 0 0 0 1 0V6h4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHandbagFill = /*#__PURE__*/ makeIcon(\n  'HandbagFill',\n  '<path d=\"M8 1a2 2 0 0 0-2 2v2H5V3a3 3 0 0 1 6 0v2h-1V3a2 2 0 0 0-2-2zM5 5H3.361a1.5 1.5 0 0 0-1.483 1.277L.85 13.13A2.5 2.5 0 0 0 3.322 16h9.356a2.5 2.5 0 0 0 2.472-2.87l-1.028-6.853A1.5 1.5 0 0 0 12.64 5H11v1.5a.5.5 0 0 1-1 0V5H6v1.5a.5.5 0 0 1-1 0V5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHash = /*#__PURE__*/ makeIcon(\n  'Hash',\n  '<path d=\"M8.39 12.648a1.32 1.32 0 0 0-.015.18c0 .305.21.508.5.508.266 0 .492-.172.555-.477l.554-2.703h1.204c.421 0 .617-.234.617-.547 0-.312-.188-.53-.617-.53h-.985l.516-2.524h1.265c.43 0 .618-.227.618-.547 0-.313-.188-.524-.618-.524h-1.046l.476-2.304a1.06 1.06 0 0 0 .016-.164.51.51 0 0 0-.516-.516.54.54 0 0 0-.539.43l-.523 2.554H7.617l.477-2.304c.008-.04.015-.118.015-.164a.512.512 0 0 0-.523-.516.539.539 0 0 0-.531.43L6.53 5.484H5.414c-.43 0-.617.22-.617.532 0 .312.187.539.617.539h.906l-.515 2.523H4.609c-.421 0-.609.219-.609.531 0 .313.188.547.61.547h.976l-.516 2.492c-.008.04-.015.125-.015.18 0 .305.21.508.5.508.265 0 .492-.172.554-.477l.555-2.703h2.242l-.515 2.492zm-1-6.109h2.266l-.515 2.563H6.859l.532-2.563z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHdd = /*#__PURE__*/ makeIcon(\n  'Hdd',\n  '<path fill-rule=\"evenodd\" d=\"M14 9H2a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1zM2 8a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1a2 2 0 0 0-2-2H2z\"/><path d=\"M5 10.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm-2 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0z\"/><path fill-rule=\"evenodd\" d=\"M4.094 4a.5.5 0 0 0-.44.26l-2.47 4.532A1.5 1.5 0 0 0 1 9.51v.99H0v-.99c0-.418.105-.83.305-1.197l2.472-4.531A1.5 1.5 0 0 1 4.094 3h7.812a1.5 1.5 0 0 1 1.317.782l2.472 4.53c.2.368.305.78.305 1.198v.99h-1v-.99a1.5 1.5 0 0 0-.183-.718L12.345 4.26a.5.5 0 0 0-.439-.26H4.094z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHddFill = /*#__PURE__*/ makeIcon(\n  'HddFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 10a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v1a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-1zm2.5 1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zm2 0a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1z\"/><path d=\"M.91 7.204A2.993 2.993 0 0 1 2 7h12c.384 0 .752.072 1.09.204l-1.867-3.422A1.5 1.5 0 0 0 11.906 3H4.094a1.5 1.5 0 0 0-1.317.782L.91 7.204z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHddNetwork = /*#__PURE__*/ makeIcon(\n  'HddNetwork',\n  '<path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path d=\"M5 4.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm-2 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0z\"/><path fill-rule=\"evenodd\" d=\"M7.5 10V7h1v3a1.5 1.5 0 0 1 1.5 1.5h5.5a.5.5 0 0 1 0 1H10A1.5 1.5 0 0 1 8.5 14h-1A1.5 1.5 0 0 1 6 12.5H.5a.5.5 0 0 1 0-1H6A1.5 1.5 0 0 1 7.5 10zm0 1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHddNetworkFill = /*#__PURE__*/ makeIcon(\n  'HddNetworkFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h5.5v3A1.5 1.5 0 0 0 6 11.5H.5a.5.5 0 0 0 0 1H6A1.5 1.5 0 0 0 7.5 14h1a1.5 1.5 0 0 0 1.5-1.5h5.5a.5.5 0 0 0 0-1H10A1.5 1.5 0 0 0 8.5 10V7H14a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm.5 3a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zm2 0a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHddRack = /*#__PURE__*/ makeIcon(\n  'HddRack',\n  '<path fill-rule=\"evenodd\" d=\"M14 10H2a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1zM2 9a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1a2 2 0 0 0-2-2H2z\"/><path d=\"M5 11.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm-2 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0z\"/><path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path d=\"M5 4.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm-2 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0z\"/><path fill-rule=\"evenodd\" d=\"M3 9V7h1v2H3zm9 0V7h1v2h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHddRackFill = /*#__PURE__*/ makeIcon(\n  'HddRackFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 9a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1a2 2 0 0 0-2-2H2zm.5 3a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zm2 0a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zM2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm.5 3a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zm2 0a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zM3 9V7h1v2H3zm9 0V7h1v2h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHddStack = /*#__PURE__*/ makeIcon(\n  'HddStack',\n  '<path fill-rule=\"evenodd\" d=\"M14 10H2a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1zM2 9a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1a2 2 0 0 0-2-2H2z\"/><path d=\"M5 11.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm-2 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0z\"/><path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path d=\"M5 4.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm-2 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHddStackFill = /*#__PURE__*/ makeIcon(\n  'HddStackFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 9a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1a2 2 0 0 0-2-2H2zm.5 3a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zm2 0a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zM2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm.5 3a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zm2 0a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHeadphones = /*#__PURE__*/ makeIcon(\n  'Headphones',\n  '<path fill-rule=\"evenodd\" d=\"M8 3a5 5 0 0 0-5 5v4.5H2V8a6 6 0 1 1 12 0v4.5h-1V8a5 5 0 0 0-5-5z\"/><path d=\"M11 10a1 1 0 0 1 1-1h2v4a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1v-3zm-6 0a1 1 0 0 0-1-1H2v4a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHeadset = /*#__PURE__*/ makeIcon(\n  'Headset',\n  '<path fill-rule=\"evenodd\" d=\"M8 1a5 5 0 0 0-5 5v4.5H2V6a6 6 0 1 1 12 0v4.5h-1V6a5 5 0 0 0-5-5z\"/><path d=\"M11 8a1 1 0 0 1 1-1h2v4a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V8zM5 8a1 1 0 0 0-1-1H2v4a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1V8z\"/><path fill-rule=\"evenodd\" d=\"M13.5 8.5a.5.5 0 0 1 .5.5v3a2.5 2.5 0 0 1-2.5 2.5H8a.5.5 0 0 1 0-1h3.5A1.5 1.5 0 0 0 13 12V9a.5.5 0 0 1 .5-.5z\"/><path d=\"M6.5 14a1 1 0 0 1 1-1h1a1 1 0 1 1 0 2h-1a1 1 0 0 1-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHeart = /*#__PURE__*/ makeIcon(\n  'Heart',\n  '<path fill-rule=\"evenodd\" d=\"M8 2.748l-.717-.737C5.6.281 2.514.878 1.4 3.053c-.523 1.023-.641 2.5.314 4.385.92 1.815 2.834 3.989 6.286 6.357 3.452-2.368 5.365-4.542 6.286-6.357.955-1.886.838-3.362.314-4.385C13.486.878 10.4.28 8.717 2.01L8 2.748zM8 15C-7.333 4.868 3.279-3.04 7.824 1.143c.06.055.119.112.176.171a3.12 3.12 0 0 1 .176-.17C12.72-3.042 23.333 4.867 8 15z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHeartFill = /*#__PURE__*/ makeIcon(\n  'HeartFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 1.314C12.438-3.248 23.534 4.735 8 15-7.534 4.736 3.562-3.248 8 1.314z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHeartHalf = /*#__PURE__*/ makeIcon(\n  'HeartHalf',\n  '<path fill-rule=\"evenodd\" d=\"M8 1.314C3.562-3.248-7.534 4.735 8 15V1.314z\"/><path fill-rule=\"evenodd\" d=\"M8 2.748l-.717-.737C5.6.281 2.514.878 1.4 3.053c-.523 1.023-.641 2.5.314 4.385.92 1.815 2.834 3.989 6.286 6.357 3.452-2.368 5.365-4.542 6.286-6.357.955-1.886.838-3.362.314-4.385C13.486.878 10.4.28 8.717 2.01L8 2.748zM8 15C-7.333 4.868 3.279-3.04 7.824 1.143c.06.055.119.112.176.171a3.12 3.12 0 0 1 .176-.17C12.72-3.042 23.333 4.867 8 15z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHeptagon = /*#__PURE__*/ makeIcon(\n  'Heptagon',\n  '<path fill-rule=\"evenodd\" d=\"M7.779.052a.5.5 0 0 1 .442 0l6.015 2.97a.5.5 0 0 1 .267.34l1.485 6.676a.5.5 0 0 1-.093.415l-4.162 5.354a.5.5 0 0 1-.395.193H4.662a.5.5 0 0 1-.395-.193L.105 10.453a.5.5 0 0 1-.093-.415l1.485-6.676a.5.5 0 0 1 .267-.34L7.779.053zM2.422 3.813l-1.383 6.212L4.907 15h6.186l3.868-4.975-1.383-6.212L8 1.058 2.422 3.813z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHeptagonFill = /*#__PURE__*/ makeIcon(\n  'HeptagonFill',\n  '<path fill-rule=\"evenodd\" d=\"M7.779.052a.5.5 0 0 1 .442 0l6.015 2.97a.5.5 0 0 1 .267.34l1.485 6.676a.5.5 0 0 1-.093.415l-4.162 5.354a.5.5 0 0 1-.395.193H4.662a.5.5 0 0 1-.395-.193L.105 10.453a.5.5 0 0 1-.093-.415l1.485-6.676a.5.5 0 0 1 .267-.34L7.779.053z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHeptagonHalf = /*#__PURE__*/ makeIcon(\n  'HeptagonHalf',\n  '<path fill-rule=\"evenodd\" d=\"M7.779.052a.5.5 0 0 1 .442 0l6.015 2.97a.5.5 0 0 1 .267.34l1.485 6.676a.5.5 0 0 1-.093.415l-4.162 5.354a.5.5 0 0 1-.395.193H4.662a.5.5 0 0 1-.395-.193L.105 10.453a.5.5 0 0 1-.093-.415l1.485-6.676a.5.5 0 0 1 .267-.34L7.779.053zM8 15h3.093l3.868-4.975-1.383-6.212L8 1.058V15z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHexagon = /*#__PURE__*/ makeIcon(\n  'Hexagon',\n  '<path fill-rule=\"evenodd\" d=\"M14 4.577L8 1 2 4.577v6.846L8 15l6-3.577V4.577zM8.5.134a1 1 0 0 0-1 0l-6 3.577a1 1 0 0 0-.5.866v6.846a1 1 0 0 0 .5.866l6 3.577a1 1 0 0 0 1 0l6-3.577a1 1 0 0 0 .5-.866V4.577a1 1 0 0 0-.5-.866L8.5.134z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHexagonFill = /*#__PURE__*/ makeIcon(\n  'HexagonFill',\n  '<path fill-rule=\"evenodd\" d=\"M8.5.134a1 1 0 0 0-1 0l-6 3.577a1 1 0 0 0-.5.866v6.846a1 1 0 0 0 .5.866l6 3.577a1 1 0 0 0 1 0l6-3.577a1 1 0 0 0 .5-.866V4.577a1 1 0 0 0-.5-.866L8.5.134z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHexagonHalf = /*#__PURE__*/ makeIcon(\n  'HexagonHalf',\n  '<path fill-rule=\"evenodd\" d=\"M14 4.577L8 1v14l6-3.577V4.577zM8.5.134a1 1 0 0 0-1 0l-6 3.577a1 1 0 0 0-.5.866v6.846a1 1 0 0 0 .5.866l6 3.577a1 1 0 0 0 1 0l6-3.577a1 1 0 0 0 .5-.866V4.577a1 1 0 0 0-.5-.866L8.5.134z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHourglass = /*#__PURE__*/ makeIcon(\n  'Hourglass',\n  '<path fill-rule=\"evenodd\" d=\"M2 1.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-1v1a4.5 4.5 0 0 1-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0 1 12.5 13v1h1a.5.5 0 0 1 0 1h-11a.5.5 0 1 1 0-1h1v-1a4.5 4.5 0 0 1 2.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 0 1 3.5 3V2h-1a.5.5 0 0 1-.5-.5zm2.5.5v1a3.5 3.5 0 0 0 1.989 3.158c.533.256 1.011.791 1.011 1.491v.702c0 .7-.478 1.235-1.011 1.491A3.5 3.5 0 0 0 4.5 13v1h7v-1a3.5 3.5 0 0 0-1.989-3.158C8.978 9.586 8.5 9.052 8.5 8.351v-.702c0-.7.478-1.235 1.011-1.491A3.5 3.5 0 0 0 11.5 3V2h-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHourglassBottom = /*#__PURE__*/ makeIcon(\n  'HourglassBottom',\n  '<path fill-rule=\"evenodd\" d=\"M2 1.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-1v1a4.5 4.5 0 0 1-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0 1 12.5 13v1h1a.5.5 0 0 1 0 1h-11a.5.5 0 1 1 0-1h1v-1a4.5 4.5 0 0 1 2.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 0 1 3.5 3V2h-1a.5.5 0 0 1-.5-.5zm2.5.5v1a3.5 3.5 0 0 0 1.989 3.158c.533.256 1.011.791 1.011 1.491v.702s.18.149.5.149.5-.15.5-.15v-.7c0-.701.478-1.236 1.011-1.492A3.5 3.5 0 0 0 11.5 3V2h-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHourglassSplit = /*#__PURE__*/ makeIcon(\n  'HourglassSplit',\n  '<path fill-rule=\"evenodd\" d=\"M2.5 15a.5.5 0 1 1 0-1h1v-1a4.5 4.5 0 0 1 2.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 0 1 3.5 3V2h-1a.5.5 0 0 1 0-1h11a.5.5 0 0 1 0 1h-1v1a4.5 4.5 0 0 1-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0 1 12.5 13v1h1a.5.5 0 0 1 0 1h-11zm2-13v1c0 .537.12 1.045.337 1.5h6.326c.216-.455.337-.963.337-1.5V2h-7zm3 6.35c0 .701-.478 1.236-1.011 1.492A3.5 3.5 0 0 0 4.5 13s.866-1.299 3-1.48V8.35zm1 0c0 .701.478 1.236 1.011 1.492A3.5 3.5 0 0 1 11.5 13s-.866-1.299-3-1.48V8.35z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHourglassTop = /*#__PURE__*/ makeIcon(\n  'HourglassTop',\n  '<path fill-rule=\"evenodd\" d=\"M2 14.5a.5.5 0 0 0 .5.5h11a.5.5 0 1 0 0-1h-1v-1a4.5 4.5 0 0 0-2.557-4.06c-.29-.139-.443-.377-.443-.59v-.7c0-.213.154-.451.443-.59A4.5 4.5 0 0 0 12.5 3V2h1a.5.5 0 0 0 0-1h-11a.5.5 0 0 0 0 1h1v1a4.5 4.5 0 0 0 2.557 4.06c.29.139.443.377.443.59v.7c0 .213-.154.451-.443.59A4.5 4.5 0 0 0 3.5 13v1h-1a.5.5 0 0 0-.5.5zm2.5-.5v-1a3.5 3.5 0 0 1 1.989-3.158c.533-.256 1.011-.79 1.011-1.491v-.702s.18.101.5.101.5-.1.5-.1v.7c0 .701.478 1.236 1.011 1.492A3.5 3.5 0 0 1 11.5 13v1h-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHouse = /*#__PURE__*/ makeIcon(\n  'House',\n  '<path fill-rule=\"evenodd\" d=\"M2 13.5V7h1v6.5a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5V7h1v6.5a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 13.5zm11-11V6l-2-2V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5z\"/><path fill-rule=\"evenodd\" d=\"M7.293 1.5a1 1 0 0 1 1.414 0l6.647 6.646a.5.5 0 0 1-.708.708L8 2.207 1.354 8.854a.5.5 0 1 1-.708-.708L7.293 1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHouseDoor = /*#__PURE__*/ makeIcon(\n  'HouseDoor',\n  '<path fill-rule=\"evenodd\" d=\"M7.646 1.146a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 .146.354v7a.5.5 0 0 1-.5.5H9.5a.5.5 0 0 1-.5-.5v-4H7v4a.5.5 0 0 1-.5.5H2a.5.5 0 0 1-.5-.5v-7a.5.5 0 0 1 .146-.354l6-6zM2.5 7.707V14H6v-4a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5v4h3.5V7.707L8 2.207l-5.5 5.5z\"/><path fill-rule=\"evenodd\" d=\"M13 2.5V6l-2-2V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHouseDoorFill = /*#__PURE__*/ makeIcon(\n  'HouseDoorFill',\n  '<path d=\"M6.5 10.995V14.5a.5.5 0 0 1-.5.5H2a.5.5 0 0 1-.5-.5v-7a.5.5 0 0 1 .146-.354l6-6a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 .146.354v7a.5.5 0 0 1-.5.5h-4a.5.5 0 0 1-.5-.5V11c0-.25-.25-.5-.5-.5H7c-.25 0-.5.25-.5.495z\"/><path fill-rule=\"evenodd\" d=\"M13 2.5V6l-2-2V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHouseFill = /*#__PURE__*/ makeIcon(\n  'HouseFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 3.293l6 6V13.5a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 13.5V9.293l6-6zm5-.793V6l-2-2V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5z\"/><path fill-rule=\"evenodd\" d=\"M7.293 1.5a1 1 0 0 1 1.414 0l6.647 6.646a.5.5 0 0 1-.708.708L8 2.207 1.354 8.854a.5.5 0 1 1-.708-.708L7.293 1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHr = /*#__PURE__*/ makeIcon(\n  'Hr',\n  '<path fill-rule=\"evenodd\" d=\"M0 8a.5.5 0 0 1 .5-.5h15a.5.5 0 0 1 0 1H.5A.5.5 0 0 1 0 8z\"/><path d=\"M4 3h8a1 1 0 0 1 1 1v2.5h1V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v2.5h1V4a1 1 0 0 1 1-1zM3 9.5H2V12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V9.5h-1V12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V9.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconImage = /*#__PURE__*/ makeIcon(\n  'Image',\n  '<path fill-rule=\"evenodd\" d=\"M14.002 2h-12a1 1 0 0 0-1 1v9l2.646-2.354a.5.5 0 0 1 .63-.062l2.66 1.773 3.71-3.71a.5.5 0 0 1 .577-.094L15.002 9.5V3a1 1 0 0 0-1-1zm-12-1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2h-12zm4 4.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconImageAlt = /*#__PURE__*/ makeIcon(\n  'ImageAlt',\n  '<path d=\"M10.648 6.646a.5.5 0 0 1 .577-.093l4.777 3.947V15a1 1 0 0 1-1 1h-14a1 1 0 0 1-1-1v-2l3.646-4.354a.5.5 0 0 1 .63-.062l2.66 2.773 3.71-4.71z\"/><path fill-rule=\"evenodd\" d=\"M4.5 5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconImageFill = /*#__PURE__*/ makeIcon(\n  'ImageFill',\n  '<path fill-rule=\"evenodd\" d=\"M.002 3a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-12a2 2 0 0 1-2-2V3zm1 9l2.646-2.354a.5.5 0 0 1 .63-.062l2.66 1.773 3.71-3.71a.5.5 0 0 1 .577-.094L15.002 9.5V13a1 1 0 0 1-1 1h-12a1 1 0 0 1-1-1v-1zm5-6.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconImages = /*#__PURE__*/ makeIcon(\n  'Images',\n  '<path fill-rule=\"evenodd\" d=\"M12.002 4h-10a1 1 0 0 0-1 1v8l2.646-2.354a.5.5 0 0 1 .63-.062l2.66 1.773 3.71-3.71a.5.5 0 0 1 .577-.094l1.777 1.947V5a1 1 0 0 0-1-1zm-10-1a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2h-10zm4 4.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/><path fill-rule=\"evenodd\" d=\"M4 2h10a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1v1a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2h1a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInbox = /*#__PURE__*/ makeIcon(\n  'Inbox',\n  '<path fill-rule=\"evenodd\" d=\"M4.98 4a.5.5 0 0 0-.39.188L1.54 8H6a.5.5 0 0 1 .5.5 1.5 1.5 0 1 0 3 0A.5.5 0 0 1 10 8h4.46l-3.05-3.812A.5.5 0 0 0 11.02 4H4.98zm9.954 5H10.45a2.5 2.5 0 0 1-4.9 0H1.066l.32 2.562a.5.5 0 0 0 .497.438h12.234a.5.5 0 0 0 .496-.438L14.933 9zM3.809 3.563A1.5 1.5 0 0 1 4.981 3h6.038a1.5 1.5 0 0 1 1.172.563l3.7 4.625a.5.5 0 0 1 .105.374l-.39 3.124A1.5 1.5 0 0 1 14.117 13H1.883a1.5 1.5 0 0 1-1.489-1.314l-.39-3.124a.5.5 0 0 1 .106-.374l3.7-4.625z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInboxFill = /*#__PURE__*/ makeIcon(\n  'InboxFill',\n  '<path fill-rule=\"evenodd\" d=\"M4.98 4a.5.5 0 0 0-.39.188L1.54 8H6a.5.5 0 0 1 .5.5 1.5 1.5 0 1 0 3 0A.5.5 0 0 1 10 8h4.46l-3.05-3.812A.5.5 0 0 0 11.02 4H4.98zm-1.17-.437A1.5 1.5 0 0 1 4.98 3h6.04a1.5 1.5 0 0 1 1.17.563l3.7 4.625a.5.5 0 0 1 .106.374l-.39 3.124A1.5 1.5 0 0 1 14.117 13H1.883a1.5 1.5 0 0 1-1.489-1.314l-.39-3.124a.5.5 0 0 1 .106-.374l3.7-4.625z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInboxes = /*#__PURE__*/ makeIcon(\n  'Inboxes',\n  '<path fill-rule=\"evenodd\" d=\"M4.98 1a.5.5 0 0 0-.39.188L1.54 5H6a.5.5 0 0 1 .5.5 1.5 1.5 0 0 0 3 0A.5.5 0 0 1 10 5h4.46l-3.05-3.812A.5.5 0 0 0 11.02 1H4.98zm9.954 5H10.45a2.5 2.5 0 0 1-4.9 0H1.066l.32 2.562A.5.5 0 0 0 1.884 9h12.234a.5.5 0 0 0 .496-.438L14.933 6zM3.809.563A1.5 1.5 0 0 1 4.981 0h6.038a1.5 1.5 0 0 1 1.172.563l3.7 4.625a.5.5 0 0 1 .105.374l-.39 3.124A1.5 1.5 0 0 1 14.117 10H1.883A1.5 1.5 0 0 1 .394 8.686l-.39-3.124a.5.5 0 0 1 .106-.374L3.81.563zM.125 11.17A.5.5 0 0 1 .5 11H6a.5.5 0 0 1 .5.5 1.5 1.5 0 0 0 3 0 .5.5 0 0 1 .5-.5h5.5a.5.5 0 0 1 .496.562l-.39 3.124A1.5 1.5 0 0 1 14.117 16H1.883a1.5 1.5 0 0 1-1.489-1.314l-.39-3.124a.5.5 0 0 1 .121-.393zm.941.83l.32 2.562a.5.5 0 0 0 .497.438h12.234a.5.5 0 0 0 .496-.438l.32-2.562H10.45a2.5 2.5 0 0 1-4.9 0H1.066z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInboxesFill = /*#__PURE__*/ makeIcon(\n  'InboxesFill',\n  '<path fill-rule=\"evenodd\" d=\"M4.98 1a.5.5 0 0 0-.39.188L1.54 5H6a.5.5 0 0 1 .5.5 1.5 1.5 0 0 0 3 0A.5.5 0 0 1 10 5h4.46l-3.05-3.812A.5.5 0 0 0 11.02 1H4.98zM3.81.563A1.5 1.5 0 0 1 4.98 0h6.04a1.5 1.5 0 0 1 1.17.563l3.7 4.625a.5.5 0 0 1 .106.374l-.39 3.124A1.5 1.5 0 0 1 14.117 10H1.883A1.5 1.5 0 0 1 .394 8.686l-.39-3.124a.5.5 0 0 1 .106-.374L3.81.563zM.125 11.17A.5.5 0 0 1 .5 11H6a.5.5 0 0 1 .5.5 1.5 1.5 0 0 0 3 0 .5.5 0 0 1 .5-.5h5.5a.5.5 0 0 1 .496.562l-.39 3.124A1.5 1.5 0 0 1 14.117 16H1.883a1.5 1.5 0 0 1-1.489-1.314l-.39-3.124a.5.5 0 0 1 .121-.393z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInfo = /*#__PURE__*/ makeIcon(\n  'Info',\n  '<path d=\"M8.93 6.588l-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533L8.93 6.588z\"/><circle cx=\"8\" cy=\"4.5\" r=\"1\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInfoCircle = /*#__PURE__*/ makeIcon(\n  'InfoCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M8.93 6.588l-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533L8.93 6.588z\"/><circle cx=\"8\" cy=\"4.5\" r=\"1\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInfoCircleFill = /*#__PURE__*/ makeIcon(\n  'InfoCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zm.93-9.412l-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533L8.93 6.588zM8 5.5a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInfoSquare = /*#__PURE__*/ makeIcon(\n  'InfoSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path d=\"M8.93 6.588l-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533L8.93 6.588z\"/><circle cx=\"8\" cy=\"4.5\" r=\"1\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInfoSquareFill = /*#__PURE__*/ makeIcon(\n  'InfoSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2zm8.93 4.588l-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533L8.93 6.588zM8 5.5a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInputCursor = /*#__PURE__*/ makeIcon(\n  'InputCursor',\n  '<path d=\"M10 5h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4v1h4a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-4v1zM6 5V4H2a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h4v-1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h4z\"/><path fill-rule=\"evenodd\" d=\"M8 1a.5.5 0 0 1 .5.5v13a.5.5 0 0 1-1 0v-13A.5.5 0 0 1 8 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInputCursorText = /*#__PURE__*/ makeIcon(\n  'InputCursorText',\n  '<path fill-rule=\"evenodd\" d=\"M5 2a.5.5 0 0 1 .5-.5c.862 0 1.573.287 2.06.566.174.099.321.198.44.286.119-.088.266-.187.44-.286A4.165 4.165 0 0 1 10.5 1.5a.5.5 0 0 1 0 1c-.638 0-1.177.213-1.564.434a3.49 3.49 0 0 0-.436.294V7.5H9a.5.5 0 0 1 0 1h-.5v4.272c.1.08.248.187.436.294.387.221.926.434 1.564.434a.5.5 0 0 1 0 1 4.165 4.165 0 0 1-2.06-.566A4.561 4.561 0 0 1 8 13.65a4.561 4.561 0 0 1-.44.285 4.165 4.165 0 0 1-2.06.566.5.5 0 0 1 0-1c.638 0 1.177-.213 1.564-.434.188-.107.335-.214.436-.294V8.5H7a.5.5 0 0 1 0-1h.5V3.228a3.49 3.49 0 0 0-.436-.294A3.166 3.166 0 0 0 5.5 2.5.5.5 0 0 1 5 2z\"/><path d=\"M10 5h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4v1h4a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-4v1zM6 5V4H2a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h4v-1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInstagram = /*#__PURE__*/ makeIcon(\n  'Instagram',\n  '<path d=\"M8 0C5.829 0 5.556.01 4.703.048 3.85.088 3.269.222 2.76.42a3.917 3.917 0 0 0-1.417.923A3.927 3.927 0 0 0 .42 2.76C.222 3.268.087 3.85.048 4.7.01 5.555 0 5.827 0 8.001c0 2.172.01 2.444.048 3.297.04.852.174 1.433.372 1.942.205.526.478.972.923 1.417.444.445.89.719 1.416.923.51.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.444-.01 3.298-.048c.851-.04 1.434-.174 1.943-.372a3.916 3.916 0 0 0 1.416-.923c.445-.445.718-.891.923-1.417.197-.509.332-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.299c-.04-.851-.175-1.433-.372-1.941a3.926 3.926 0 0 0-.923-1.417A3.911 3.911 0 0 0 13.24.42c-.51-.198-1.092-.333-1.943-.372C10.443.01 10.172 0 7.998 0h.003zm-.717 1.442h.718c2.136 0 2.389.007 3.232.046.78.035 1.204.166 1.486.275.373.145.64.319.92.599.28.28.453.546.598.92.11.281.24.705.275 1.485.039.843.047 1.096.047 3.231s-.008 2.389-.047 3.232c-.035.78-.166 1.203-.275 1.485a2.47 2.47 0 0 1-.599.919c-.28.28-.546.453-.92.598-.28.11-.704.24-1.485.276-.843.038-1.096.047-3.232.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.478 2.478 0 0 1-.92-.598 2.48 2.48 0 0 1-.6-.92c-.109-.281-.24-.705-.275-1.485-.038-.843-.046-1.096-.046-3.233 0-2.136.008-2.388.046-3.231.036-.78.166-1.204.276-1.486.145-.373.319-.64.599-.92.28-.28.546-.453.92-.598.282-.11.705-.24 1.485-.276.738-.034 1.024-.044 2.515-.045v.002zm4.988 1.328a.96.96 0 1 0 0 1.92.96.96 0 0 0 0-1.92zm-4.27 1.122a4.109 4.109 0 1 0 0 8.217 4.109 4.109 0 0 0 0-8.217zm0 1.441a2.667 2.667 0 1 1 0 5.334 2.667 2.667 0 0 1 0-5.334z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconIntersect = /*#__PURE__*/ makeIcon(\n  'Intersect',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v2h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2H2a2 2 0 0 1-2-2V2zm5 10v2a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2v5a2 2 0 0 1-2 2H5zm6-8H6a2 2 0 0 0-2 2v5H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournal = /*#__PURE__*/ makeIcon(\n  'Journal',\n  '<path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\"/><path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournalAlbum = /*#__PURE__*/ makeIcon(\n  'JournalAlbum',\n  '<path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\"/><path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm4-6.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5v-5z\"/><path fill-rule=\"evenodd\" d=\"M6 11.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournalArrowDown = /*#__PURE__*/ makeIcon(\n  'JournalArrowDown',\n  '<path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\"/><path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\"/><path fill-rule=\"evenodd\" d=\"M8 5a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7.5 9.293V5.5A.5.5 0 0 1 8 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournalArrowUp = /*#__PURE__*/ makeIcon(\n  'JournalArrowUp',\n  '<path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\"/><path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\"/><path fill-rule=\"evenodd\" d=\"M8 11a.5.5 0 0 0 .5-.5V6.707l1.146 1.147a.5.5 0 0 0 .708-.708l-2-2a.5.5 0 0 0-.708 0l-2 2a.5.5 0 1 0 .708.708L7.5 6.707V10.5a.5.5 0 0 0 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournalBookmark = /*#__PURE__*/ makeIcon(\n  'JournalBookmark',\n  '<path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\"/><path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\"/><path fill-rule=\"evenodd\" d=\"M6 8V1h1v6.117L8.743 6.07a.5.5 0 0 1 .514 0L11 7.117V1h1v7a.5.5 0 0 1-.757.429L9 7.083 6.757 8.43A.5.5 0 0 1 6 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournalBookmarkFill = /*#__PURE__*/ makeIcon(\n  'JournalBookmarkFill',\n  '<path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\"/><path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\"/><path fill-rule=\"evenodd\" d=\"M6 1h6v7a.5.5 0 0 1-.757.429L9 7.083 6.757 8.43A.5.5 0 0 1 6 8V1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournalCheck = /*#__PURE__*/ makeIcon(\n  'JournalCheck',\n  '<path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\"/><path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\"/><path fill-rule=\"evenodd\" d=\"M10.854 6.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 8.793l2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournalCode = /*#__PURE__*/ makeIcon(\n  'JournalCode',\n  '<path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\"/><path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\"/><path fill-rule=\"evenodd\" d=\"M8.646 5.646a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 8 8.646 6.354a.5.5 0 0 1 0-.708zm-1.292 0a.5.5 0 0 0-.708 0l-2 2a.5.5 0 0 0 0 .708l2 2a.5.5 0 0 0 .708-.708L5.707 8l1.647-1.646a.5.5 0 0 0 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournalMedical = /*#__PURE__*/ makeIcon(\n  'JournalMedical',\n  '<path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\"/><path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\"/><path fill-rule=\"evenodd\" d=\"M8 4a.5.5 0 0 1 .5.5v.634l.549-.317a.5.5 0 1 1 .5.866L9 6l.549.317a.5.5 0 1 1-.5.866L8.5 6.866V7.5a.5.5 0 0 1-1 0v-.634l-.549.317a.5.5 0 1 1-.5-.866L7 6l-.549-.317a.5.5 0 0 1 .5-.866l.549.317V4.5A.5.5 0 0 1 8 4zM5 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournalMinus = /*#__PURE__*/ makeIcon(\n  'JournalMinus',\n  '<path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\"/><path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\"/><path fill-rule=\"evenodd\" d=\"M5.5 8a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournalPlus = /*#__PURE__*/ makeIcon(\n  'JournalPlus',\n  '<path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\"/><path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\"/><path fill-rule=\"evenodd\" d=\"M8 5.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5 0 0 1-1 0V8.5H6a.5.5 0 0 1 0-1h1.5V6a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournalRichtext = /*#__PURE__*/ makeIcon(\n  'JournalRichtext',\n  '<path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\"/><path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\"/><path fill-rule=\"evenodd\" d=\"M5 11.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm1.639-4.208l1.33.886 1.854-1.855a.25.25 0 0 1 .289-.047L11 4.75V7a.5.5 0 0 1-.5.5h-5A.5.5 0 0 1 5 7v-.5s1.54-1.274 1.639-1.208zM6.75 4.5a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournalText = /*#__PURE__*/ makeIcon(\n  'JournalText',\n  '<path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\"/><path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\"/><path fill-rule=\"evenodd\" d=\"M5 10.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournalX = /*#__PURE__*/ makeIcon(\n  'JournalX',\n  '<path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\"/><path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\"/><path fill-rule=\"evenodd\" d=\"M6.146 6.146a.5.5 0 0 1 .708 0L8 7.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 8l1.147 1.146a.5.5 0 0 1-.708.708L8 8.707 6.854 9.854a.5.5 0 0 1-.708-.708L7.293 8 6.146 6.854a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJournals = /*#__PURE__*/ makeIcon(\n  'Journals',\n  '<path d=\"M3 2h8a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2h1a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1H1a2 2 0 0 1 2-2z\"/><path d=\"M5 0h8a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H5a1 1 0 0 0-1 1H3a2 2 0 0 1 2-2zM1 6v-.5a.5.5 0 0 1 1 0V6h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V9h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJoystick = /*#__PURE__*/ makeIcon(\n  'Joystick',\n  '<path d=\"M7.106 15.553L.553 12.276A1 1 0 0 1 0 11.382V9.471a1 1 0 0 1 .606-.89L6 6.269v1.088L1 9.5l5.658 2.83a3 3 0 0 0 2.684 0L15 9.5l-5-2.143V6.27l5.394 2.312a1 1 0 0 1 .606.89v1.911a1 1 0 0 1-.553.894l-6.553 3.277a2 2 0 0 1-1.788 0z\"/><path fill-rule=\"evenodd\" d=\"M7.5 9.5v-6h1v6h-1z\"/><path d=\"M10 9.75c0 .414-.895.75-2 .75s-2-.336-2-.75S6.895 9 8 9s2 .336 2 .75zM10 2a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJustify = /*#__PURE__*/ makeIcon(\n  'Justify',\n  '<path fill-rule=\"evenodd\" d=\"M2 12.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJustifyLeft = /*#__PURE__*/ makeIcon(\n  'JustifyLeft',\n  '<path fill-rule=\"evenodd\" d=\"M2 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJustifyRight = /*#__PURE__*/ makeIcon(\n  'JustifyRight',\n  '<path fill-rule=\"evenodd\" d=\"M6 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-4-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconKanban = /*#__PURE__*/ makeIcon(\n  'Kanban',\n  '<path fill-rule=\"evenodd\" d=\"M13.5 1h-11a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h11a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zm-11-1a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h11a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2h-11z\"/><path d=\"M6.5 3a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3zm-4 0a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3zm8 0a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconKanbanFill = /*#__PURE__*/ makeIcon(\n  'KanbanFill',\n  '<path fill-rule=\"evenodd\" d=\"M2.5 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h11a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2h-11zm5 2a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1h-1zm-5 1a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3zm9-1a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconKey = /*#__PURE__*/ makeIcon(\n  'Key',\n  '<path fill-rule=\"evenodd\" d=\"M0 8a4 4 0 0 1 7.465-2H14a.5.5 0 0 1 .354.146l1.5 1.5a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0L13 9.207l-.646.647a.5.5 0 0 1-.708 0L11 9.207l-.646.647a.5.5 0 0 1-.708 0L9 9.207l-.646.647A.5.5 0 0 1 8 10h-.535A4 4 0 0 1 0 8zm4-3a3 3 0 1 0 2.712 4.285A.5.5 0 0 1 7.163 9h.63l.853-.854a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708 0l.646.647.793-.793-1-1h-6.63a.5.5 0 0 1-.451-.285A3 3 0 0 0 4 5z\"/><path d=\"M4 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconKeyFill = /*#__PURE__*/ makeIcon(\n  'KeyFill',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 11.5a3.5 3.5 0 1 1 3.163-5H14L15.5 8 14 9.5l-1-1-1 1-1-1-1 1-1-1-1 1H6.663a3.5 3.5 0 0 1-3.163 2zM2.5 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconKeyboard = /*#__PURE__*/ makeIcon(\n  'Keyboard',\n  '<path fill-rule=\"evenodd\" d=\"M14 5H2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zM2 4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2H2z\"/><path d=\"M13 10.25a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zm0-2a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zm-5 0A.25.25 0 0 1 8.25 8h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 8 8.75v-.5zm2 0a.25.25 0 0 1 .25-.25h1.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-1.5a.25.25 0 0 1-.25-.25v-.5zm1 2a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zm-5-2A.25.25 0 0 1 6.25 8h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 6 8.75v-.5zm-2 0A.25.25 0 0 1 4.25 8h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 4 8.75v-.5zm-2 0A.25.25 0 0 1 2.25 8h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 2 8.75v-.5zm11-2a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zm-2 0a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zm-2 0A.25.25 0 0 1 9.25 6h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 9 6.75v-.5zm-2 0A.25.25 0 0 1 7.25 6h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 7 6.75v-.5zm-2 0A.25.25 0 0 1 5.25 6h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 5 6.75v-.5zm-3 0A.25.25 0 0 1 2.25 6h1.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-1.5A.25.25 0 0 1 2 6.75v-.5zm0 4a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zm2 0a.25.25 0 0 1 .25-.25h5.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-5.5a.25.25 0 0 1-.25-.25v-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconKeyboardFill = /*#__PURE__*/ makeIcon(\n  'KeyboardFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V6zm13 .25a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zM2.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 3 8.75v-.5A.25.25 0 0 0 2.75 8h-.5zM4 8.25A.25.25 0 0 1 4.25 8h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 4 8.75v-.5zM6.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 7 8.75v-.5A.25.25 0 0 0 6.75 8h-.5zM8 8.25A.25.25 0 0 1 8.25 8h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 8 8.75v-.5zM13.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zm0 2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zm-3-2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-1.5zm.75 2.25a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zM11.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zM9 6.25A.25.25 0 0 1 9.25 6h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 9 6.75v-.5zM7.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 8 6.75v-.5A.25.25 0 0 0 7.75 6h-.5zM5 6.25A.25.25 0 0 1 5.25 6h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 5 6.75v-.5zM2.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5A.25.25 0 0 0 4 6.75v-.5A.25.25 0 0 0 3.75 6h-1.5zM2 10.25a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zM4.25 10a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h5.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLadder = /*#__PURE__*/ makeIcon(\n  'Ladder',\n  '<path fill-rule=\"evenodd\" d=\"M4.5 1a.5.5 0 0 1 .5.5V2h6v-.5a.5.5 0 0 1 1 0v14a.5.5 0 0 1-1 0V15H5v.5a.5.5 0 0 1-1 0v-14a.5.5 0 0 1 .5-.5zM5 14h6v-2H5v2zm0-3h6V9H5v2zm0-3h6V6H5v2zm0-3h6V3H5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLamp = /*#__PURE__*/ makeIcon(\n  'Lamp',\n  '<path fill-rule=\"evenodd\" d=\"M13 3H3v4h10V3zM3 2a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H3zm4.5-1l.276-.553a.25.25 0 0 1 .448 0L8.5 1h-1zm-.012 9c-.337.646-.677 1.33-.95 1.949-.176.396-.318.75-.413 1.042a3.904 3.904 0 0 0-.102.36c-.01.047-.016.083-.02.11L6 13.5c0 .665.717 1.5 2 1.5s2-.835 2-1.5c0 0 0-.013-.004-.039a1.347 1.347 0 0 0-.02-.11 3.696 3.696 0 0 0-.1-.36 11.747 11.747 0 0 0-.413-1.042A34.827 34.827 0 0 0 8.513 10H7.487zm1.627-1h-2.23C6.032 10.595 5 12.69 5 13.5 5 14.88 6.343 16 8 16s3-1.12 3-2.5c0-.81-1.032-2.905-1.885-4.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLampFill = /*#__PURE__*/ makeIcon(\n  'LampFill',\n  '<path d=\"M2 3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3z\"/><path fill-rule=\"evenodd\" d=\"M7.5 1l.276-.553a.25.25 0 0 1 .448 0L8.5 1h-1zm-.615 8h2.23C9.968 10.595 11 12.69 11 13.5c0 1.38-1.343 2.5-3 2.5s-3-1.12-3-2.5c0-.81 1.032-2.905 1.885-4.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLaptop = /*#__PURE__*/ makeIcon(\n  'Laptop',\n  '<path fill-rule=\"evenodd\" d=\"M13.5 3h-11a.5.5 0 0 0-.5.5V11h12V3.5a.5.5 0 0 0-.5-.5zm-11-1A1.5 1.5 0 0 0 1 3.5V12h14V3.5A1.5 1.5 0 0 0 13.5 2h-11z\"/><path d=\"M0 12h16v.5a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 12.5V12z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLaptopFill = /*#__PURE__*/ makeIcon(\n  'LaptopFill',\n  '<path fill-rule=\"evenodd\" d=\"M2.5 2A1.5 1.5 0 0 0 1 3.5V12h14V3.5A1.5 1.5 0 0 0 13.5 2h-11z\"/><path d=\"M0 12h16v.5a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 12.5V12z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayers = /*#__PURE__*/ makeIcon(\n  'Layers',\n  '<path fill-rule=\"evenodd\" d=\"M3.188 8L.264 9.559a.5.5 0 0 0 0 .882l7.5 4a.5.5 0 0 0 .47 0l7.5-4a.5.5 0 0 0 0-.882L12.813 8l-1.063.567L14.438 10 8 13.433 1.562 10 4.25 8.567 3.187 8z\"/><path fill-rule=\"evenodd\" d=\"M7.765 1.559a.5.5 0 0 1 .47 0l7.5 4a.5.5 0 0 1 0 .882l-7.5 4a.5.5 0 0 1-.47 0l-7.5-4a.5.5 0 0 1 0-.882l7.5-4zM1.563 6L8 9.433 14.438 6 8 2.567 1.562 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayersFill = /*#__PURE__*/ makeIcon(\n  'LayersFill',\n  '<path fill-rule=\"evenodd\" d=\"M7.765 1.559a.5.5 0 0 1 .47 0l7.5 4a.5.5 0 0 1 0 .882l-7.5 4a.5.5 0 0 1-.47 0l-7.5-4a.5.5 0 0 1 0-.882l7.5-4z\"/><path fill-rule=\"evenodd\" d=\"M2.125 8.567l-1.86.992a.5.5 0 0 0 0 .882l7.5 4a.5.5 0 0 0 .47 0l7.5-4a.5.5 0 0 0 0-.882l-1.86-.992-5.17 2.756a1.5 1.5 0 0 1-1.41 0l-5.17-2.756z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayersHalf = /*#__PURE__*/ makeIcon(\n  'LayersHalf',\n  '<path fill-rule=\"evenodd\" d=\"M3.188 8L.264 9.559a.5.5 0 0 0 0 .882l7.5 4a.5.5 0 0 0 .47 0l7.5-4a.5.5 0 0 0 0-.882L12.813 8l-4.578 2.441a.5.5 0 0 1-.47 0L3.188 8z\"/><path fill-rule=\"evenodd\" d=\"M7.765 1.559a.5.5 0 0 1 .47 0l7.5 4a.5.5 0 0 1 0 .882l-7.5 4a.5.5 0 0 1-.47 0l-7.5-4a.5.5 0 0 1 0-.882l7.5-4zM1.563 6L8 9.433 14.438 6 8 2.567 1.562 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutSidebar = /*#__PURE__*/ makeIcon(\n  'LayoutSidebar',\n  '<path fill-rule=\"evenodd\" d=\"M14 2H2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1zM2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M4 14V2h1v12H4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutSidebarInset = /*#__PURE__*/ makeIcon(\n  'LayoutSidebarInset',\n  '<path fill-rule=\"evenodd\" d=\"M14 2H2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1zM2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H2z\"/><path d=\"M3 4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutSidebarInsetReverse = /*#__PURE__*/ makeIcon(\n  'LayoutSidebarInsetReverse',\n  '<path fill-rule=\"evenodd\" d=\"M2 2h12a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1zm12-1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h12z\"/><path d=\"M13 4a1 1 0 0 0-1-1h-2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutSidebarReverse = /*#__PURE__*/ makeIcon(\n  'LayoutSidebarReverse',\n  '<path fill-rule=\"evenodd\" d=\"M14 2H2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1zM2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M11 14V2h1v12h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutSplit = /*#__PURE__*/ makeIcon(\n  'LayoutSplit',\n  '<path fill-rule=\"evenodd\" d=\"M14 2H2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1zM2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M7.5 14V2h1v12h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutTextSidebar = /*#__PURE__*/ makeIcon(\n  'LayoutTextSidebar',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M11 15V1h1v14h-1zM3 3.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutTextSidebarReverse = /*#__PURE__*/ makeIcon(\n  'LayoutTextSidebarReverse',\n  '<path fill-rule=\"evenodd\" d=\"M2 1h12a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zm12-1a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12z\"/><path fill-rule=\"evenodd\" d=\"M5 15V1H4v14h1zm8-11.5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 .5-.5zm0 3a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 .5-.5zm0 3a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 .5-.5zm0 3a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutTextWindow = /*#__PURE__*/ makeIcon(\n  'LayoutTextWindow',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M11 15V4h1v11h-1zm4.5-11H.5V3h15v1zM3 6.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutTextWindowReverse = /*#__PURE__*/ makeIcon(\n  'LayoutTextWindowReverse',\n  '<path fill-rule=\"evenodd\" d=\"M2 1h12a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zm12-1a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12z\"/><path fill-rule=\"evenodd\" d=\"M5 15V4H4v11h1zM.5 4h15V3H.5v1zM13 6.5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 .5-.5zm0 3a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 .5-.5zm0 3a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutThreeColumns = /*#__PURE__*/ makeIcon(\n  'LayoutThreeColumns',\n  '<path fill-rule=\"evenodd\" d=\"M0 2.5A1.5 1.5 0 0 1 1.5 1h13A1.5 1.5 0 0 1 16 2.5v11a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 13.5v-11zM1.5 2a.5.5 0 0 0-.5.5v11a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-11a.5.5 0 0 0-.5-.5h-13z\"/><path fill-rule=\"evenodd\" d=\"M5 15V1h1v14H5zm5 0V1h1v14h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutWtf = /*#__PURE__*/ makeIcon(\n  'LayoutWtf',\n  '<path fill-rule=\"evenodd\" d=\"M5 1H1v8h4V1zM1 0a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1H1zm13 2H9v5h5V2zM9 1a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H9zM5 13H3v2h2v-2zm-2-1a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1H3zm12-1H9v2h6v-2zm-6-1a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1H9z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLifePreserver = /*#__PURE__*/ makeIcon(\n  'LifePreserver',\n  '<path fill-rule=\"evenodd\" d=\"M14.43 10.772l-2.788-1.115a4.015 4.015 0 0 1-1.985 1.985l1.115 2.788a7.025 7.025 0 0 0 3.658-3.658zM5.228 14.43l1.115-2.788a4.015 4.015 0 0 1-1.985-1.985L1.57 10.772a7.025 7.025 0 0 0 3.658 3.658zm9.202-9.202a7.025 7.025 0 0 0-3.658-3.658L9.657 4.358a4.015 4.015 0 0 1 1.985 1.985l2.788-1.115zm-8.087-.87L5.228 1.57A7.025 7.025 0 0 0 1.57 5.228l2.788 1.115a4.015 4.015 0 0 1 1.985-1.985zM8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zm0-5a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLightning = /*#__PURE__*/ makeIcon(\n  'Lightning',\n  '<path fill-rule=\"evenodd\" d=\"M11.251.068a.5.5 0 0 1 .227.58L9.677 6.5H13a.5.5 0 0 1 .364.843l-8 8.5a.5.5 0 0 1-.842-.49L6.323 9.5H3a.5.5 0 0 1-.364-.843l8-8.5a.5.5 0 0 1 .615-.09zM4.157 8.5H7a.5.5 0 0 1 .478.647L6.11 13.59l5.732-6.09H9a.5.5 0 0 1-.478-.647L9.89 2.41 4.157 8.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLightningFill = /*#__PURE__*/ makeIcon(\n  'LightningFill',\n  '<path fill-rule=\"evenodd\" d=\"M11.251.068a.5.5 0 0 1 .227.58L9.677 6.5H13a.5.5 0 0 1 .364.843l-8 8.5a.5.5 0 0 1-.842-.49L6.323 9.5H3a.5.5 0 0 1-.364-.843l8-8.5a.5.5 0 0 1 .615-.09z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLink = /*#__PURE__*/ makeIcon(\n  'Link',\n  '<path d=\"M6.354 5.5H4a3 3 0 0 0 0 6h3a3 3 0 0 0 2.83-4H9c-.086 0-.17.01-.25.031A2 2 0 0 1 7 10.5H4a2 2 0 1 1 0-4h1.535c.218-.376.495-.714.82-1z\"/><path d=\"M9 5.5a3 3 0 0 0-2.83 4h1.098A2 2 0 0 1 9 6.5h3a2 2 0 1 1 0 4h-1.535a4.02 4.02 0 0 1-.82 1H12a3 3 0 1 0 0-6H9z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLink45deg = /*#__PURE__*/ makeIcon(\n  'Link45deg',\n  '<path d=\"M4.715 6.542L3.343 7.914a3 3 0 1 0 4.243 4.243l1.828-1.829A3 3 0 0 0 8.586 5.5L8 6.086a1.001 1.001 0 0 0-.154.199 2 2 0 0 1 .861 3.337L6.88 11.45a2 2 0 1 1-2.83-2.83l.793-.792a4.018 4.018 0 0 1-.128-1.287z\"/><path d=\"M6.586 4.672A3 3 0 0 0 7.414 9.5l.775-.776a2 2 0 0 1-.896-3.346L9.12 3.55a2 2 0 0 1 2.83 2.83l-.793.792c.112.42.155.855.128 1.287l1.372-1.372a3 3 0 0 0-4.243-4.243L6.586 4.672z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLinkedin = /*#__PURE__*/ makeIcon(\n  'Linkedin',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.146C0 .513.526 0 1.175 0h13.65C15.474 0 16 .513 16 1.146v13.708c0 .633-.526 1.146-1.175 1.146H1.175C.526 16 0 15.487 0 14.854V1.146zm4.943 12.248V6.169H2.542v7.225h2.401zm-1.2-8.212c.837 0 1.358-.554 1.358-1.248-.015-.709-.52-1.248-1.342-1.248-.822 0-1.359.54-1.359 1.248 0 .694.521 1.248 1.327 1.248h.016zm4.908 8.212h-2.4s.03-6.547 0-7.225h2.4v1.023a5.54 5.54 0 0 0-.016.025h.016v-.025c.32-.493.89-1.193 2.165-1.193 1.58 0 2.764 1.033 2.764 3.252v4.143h-2.4V9.529c0-.972-.348-1.634-1.217-1.634-.664 0-1.059.447-1.233.878-.063.154-.079.37-.079.586v4.035z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconList = /*#__PURE__*/ makeIcon(\n  'List',\n  '<path fill-rule=\"evenodd\" d=\"M2.5 11.5A.5.5 0 0 1 3 11h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm0-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm0-4A.5.5 0 0 1 3 3h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconListCheck = /*#__PURE__*/ makeIcon(\n  'ListCheck',\n  '<path fill-rule=\"evenodd\" d=\"M5 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zM3.854 2.146a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0l-.5-.5a.5.5 0 1 1 .708-.708L2 3.293l1.146-1.147a.5.5 0 0 1 .708 0zm0 4a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0l-.5-.5a.5.5 0 1 1 .708-.708L2 7.293l1.146-1.147a.5.5 0 0 1 .708 0zm0 4a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0l-.5-.5a.5.5 0 0 1 .708-.708l.146.147 1.146-1.147a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconListNested = /*#__PURE__*/ makeIcon(\n  'ListNested',\n  '<path fill-rule=\"evenodd\" d=\"M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconListOl = /*#__PURE__*/ makeIcon(\n  'ListOl',\n  '<path fill-rule=\"evenodd\" d=\"M5 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5z\"/><path d=\"M1.713 11.865v-.474H2c.217 0 .363-.137.363-.317 0-.185-.158-.31-.361-.31-.223 0-.367.152-.373.31h-.59c.016-.467.373-.787.986-.787.588-.002.954.291.957.703a.595.595 0 0 1-.492.594v.033a.615.615 0 0 1 .569.631c.003.533-.502.8-1.051.8-.656 0-1-.37-1.008-.794h.582c.008.178.186.306.422.309.254 0 .424-.145.422-.35-.002-.195-.155-.348-.414-.348h-.3zm-.004-4.699h-.604v-.035c0-.408.295-.844.958-.844.583 0 .96.326.96.756 0 .389-.257.617-.476.848l-.537.572v.03h1.054V9H1.143v-.395l.957-.99c.138-.142.293-.304.293-.508 0-.18-.147-.32-.342-.32a.33.33 0 0 0-.342.338v.041zM2.564 5h-.635V2.924h-.031l-.598.42v-.567l.629-.443h.635V5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconListStars = /*#__PURE__*/ makeIcon(\n  'ListStars',\n  '<path fill-rule=\"evenodd\" d=\"M5 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5z\"/><path d=\"M2.242 2.194a.27.27 0 0 1 .516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.277.277 0 0 0-.094.3l.173.569c.078.256-.213.462-.423.3l-.417-.324a.267.267 0 0 0-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.277.277 0 0 0-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.271.271 0 0 0 .259-.194l.162-.53zm0 4a.27.27 0 0 1 .516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.277.277 0 0 0-.094.3l.173.569c.078.255-.213.462-.423.3l-.417-.324a.267.267 0 0 0-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.277.277 0 0 0-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.271.271 0 0 0 .259-.194l.162-.53zm0 4a.27.27 0 0 1 .516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.277.277 0 0 0-.094.3l.173.569c.078.255-.213.462-.423.3l-.417-.324a.267.267 0 0 0-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.277.277 0 0 0-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.271.271 0 0 0 .259-.194l.162-.53z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconListTask = /*#__PURE__*/ makeIcon(\n  'ListTask',\n  '<path fill-rule=\"evenodd\" d=\"M2 2.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5V3a.5.5 0 0 0-.5-.5H2zM3 3H2v1h1V3z\"/><path d=\"M5 3.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zM5.5 7a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1h-9zm0 4a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1h-9z\"/><path fill-rule=\"evenodd\" d=\"M1.5 7a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H2a.5.5 0 0 1-.5-.5V7zM2 7h1v1H2V7zm0 3.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5H2zm1 .5H2v1h1v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconListUl = /*#__PURE__*/ makeIcon(\n  'ListUl',\n  '<path fill-rule=\"evenodd\" d=\"M5 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm-3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm0 4a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm0 4a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLock = /*#__PURE__*/ makeIcon(\n  'Lock',\n  '<path fill-rule=\"evenodd\" d=\"M11.5 8h-7a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1V9a1 1 0 0 0-1-1zm-7-1a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h7a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-7zm0-3a3.5 3.5 0 1 1 7 0v3h-1V4a2.5 2.5 0 0 0-5 0v3h-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLockFill = /*#__PURE__*/ makeIcon(\n  'LockFill',\n  '<path d=\"M2.5 9a2 2 0 0 1 2-2h7a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-7a2 2 0 0 1-2-2V9z\"/><path fill-rule=\"evenodd\" d=\"M4.5 4a3.5 3.5 0 1 1 7 0v3h-1V4a2.5 2.5 0 0 0-5 0v3h-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMailbox = /*#__PURE__*/ makeIcon(\n  'Mailbox',\n  '<path fill-rule=\"evenodd\" d=\"M4 4a3 3 0 0 0-3 3v6h6V7a3 3 0 0 0-3-3zm0-1h8a4 4 0 0 1 4 4v6a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V7a4 4 0 0 1 4-4zm2.646 1A3.99 3.99 0 0 1 8 7v6h7V7a3 3 0 0 0-3-3H6.646z\"/><path fill-rule=\"evenodd\" d=\"M11.793 8.5H9v-1h5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.354-.146l-.853-.854z\"/><path d=\"M5 7c0 .552-.448 0-1 0s-1 .552-1 0a1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMailbox2 = /*#__PURE__*/ makeIcon(\n  'Mailbox2',\n  '<path fill-rule=\"evenodd\" d=\"M12 3H4a4 4 0 0 0-4 4v6a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V7a4 4 0 0 0-4-4zM8 7a3.99 3.99 0 0 0-1.354-3H12a3 3 0 0 1 3 3v6H8V7zm1 1.5h2.793l.853.854A.5.5 0 0 0 13 9.5h1a.5.5 0 0 0 .5-.5V8a.5.5 0 0 0-.5-.5H9v1zM4.585 7.157C4.836 7.264 5 7.334 5 7a1 1 0 0 0-2 0c0 .334.164.264.415.157C3.58 7.087 3.782 7 4 7c.218 0 .42.086.585.157z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMap = /*#__PURE__*/ makeIcon(\n  'Map',\n  '<path fill-rule=\"evenodd\" d=\"M15.817.113A.5.5 0 0 1 16 .5v14a.5.5 0 0 1-.402.49l-5 1a.502.502 0 0 1-.196 0L5.5 15.01l-4.902.98A.5.5 0 0 1 0 15.5v-14a.5.5 0 0 1 .402-.49l5-1a.5.5 0 0 1 .196 0L10.5.99l4.902-.98a.5.5 0 0 1 .415.103zM10 1.91l-4-.8v12.98l4 .8V1.91zm1 12.98l4-.8V1.11l-4 .8v12.98zm-6-.8V1.11l-4 .8v12.98l4-.8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMapFill = /*#__PURE__*/ makeIcon(\n  'MapFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 .5a.5.5 0 0 0-.598-.49L10.5.99 5.598.01a.5.5 0 0 0-.196 0l-5 1A.5.5 0 0 0 0 1.5v14a.5.5 0 0 0 .598.49l4.902-.98 4.902.98a.502.502 0 0 0 .196 0l5-1A.5.5 0 0 0 16 14.5V.5zM5 14.09V1.11l.5-.1.5.1v12.98l-.402-.08a.498.498 0 0 0-.196 0L5 14.09zm5 .8V1.91l.402.08a.5.5 0 0 0 .196 0L11 1.91v12.98l-.5.1-.5-.1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMarkdown = /*#__PURE__*/ makeIcon(\n  'Markdown',\n  '<path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M9.146 8.146a.5.5 0 0 1 .708 0L11.5 9.793l1.646-1.647a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 0-.708z\"/><path fill-rule=\"evenodd\" d=\"M11.5 5a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0v-4a.5.5 0 0 1 .5-.5z\"/><path d=\"M3.56 11V7.01h.056l1.428 3.239h.774l1.42-3.24h.056V11h1.073V5.001h-1.2l-1.71 3.894h-.039l-1.71-3.894H2.5V11h1.06z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMarkdownFill = /*#__PURE__*/ makeIcon(\n  'MarkdownFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V4zm11.5 1a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L11 9.293V5.5a.5.5 0 0 1 .5-.5zM3.56 7.01V11H2.5V5.001h1.208l1.71 3.894h.04l1.709-3.894h1.2V11H7.294V7.01h-.057l-1.42 3.239h-.773l-1.428-3.24H3.56z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMenuApp = /*#__PURE__*/ makeIcon(\n  'MenuApp',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.5A1.5 1.5 0 0 1 1.5 0h2A1.5 1.5 0 0 1 5 1.5v2A1.5 1.5 0 0 1 3.5 5h-2A1.5 1.5 0 0 1 0 3.5v-2zM1.5 1a.5.5 0 0 0-.5.5v2a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5h-2zM14 7H2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1zM2 6a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M15 11H1v-1h14v1zM2 12.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMenuAppFill = /*#__PURE__*/ makeIcon(\n  'MenuAppFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.5A1.5 1.5 0 0 1 1.5 0h2A1.5 1.5 0 0 1 5 1.5v2A1.5 1.5 0 0 1 3.5 5h-2A1.5 1.5 0 0 1 0 3.5v-2zM14 7H2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1zM2 6a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M15 11H1v-1h14v1zM2 12.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMenuButton = /*#__PURE__*/ makeIcon(\n  'MenuButton',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.5A1.5 1.5 0 0 1 1.5 0h8A1.5 1.5 0 0 1 11 1.5v2A1.5 1.5 0 0 1 9.5 5h-8A1.5 1.5 0 0 1 0 3.5v-2zM1.5 1a.5.5 0 0 0-.5.5v2a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5h-8zM14 7H2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1zM2 6a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M15 11H1v-1h14v1zM2 12.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5z\"/><path d=\"M7.823 2.823l-.396-.396A.25.25 0 0 1 7.604 2h.792a.25.25 0 0 1 .177.427l-.396.396a.25.25 0 0 1-.354 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMenuButtonFill = /*#__PURE__*/ makeIcon(\n  'MenuButtonFill',\n  '<path fill-rule=\"evenodd\" d=\"M14 7H2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1zM2 6a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M15 11H1v-1h14v1zM2 12.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zM1.5 0A1.5 1.5 0 0 0 0 1.5v2A1.5 1.5 0 0 0 1.5 5h8A1.5 1.5 0 0 0 11 3.5v-2A1.5 1.5 0 0 0 9.5 0h-8zm5.927 2.427l.396.396a.25.25 0 0 0 .354 0l.396-.396A.25.25 0 0 0 8.396 2h-.792a.25.25 0 0 0-.177.427z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMenuButtonWide = /*#__PURE__*/ makeIcon(\n  'MenuButtonWide',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.5A1.5 1.5 0 0 1 1.5 0h13A1.5 1.5 0 0 1 16 1.5v2A1.5 1.5 0 0 1 14.5 5h-13A1.5 1.5 0 0 1 0 3.5v-2zM1.5 1a.5.5 0 0 0-.5.5v2a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5h-13zM14 7H2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1zM2 6a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M15 11H1v-1h14v1zM2 12.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm0-10a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5zm0 6a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5z\"/><path d=\"M12.823 2.823l-.396-.396A.25.25 0 0 1 12.604 2h.792a.25.25 0 0 1 .177.427l-.396.396a.25.25 0 0 1-.354 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMenuButtonWideFill = /*#__PURE__*/ makeIcon(\n  'MenuButtonWideFill',\n  '<path fill-rule=\"evenodd\" d=\"M14 7H2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1zM2 6a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M15 11H1v-1h14v1zM2 12.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zM1.5 0A1.5 1.5 0 0 0 0 1.5v2A1.5 1.5 0 0 0 1.5 5h13A1.5 1.5 0 0 0 16 3.5v-2A1.5 1.5 0 0 0 14.5 0h-13zm1 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm9.927.427l.396.396a.25.25 0 0 0 .354 0l.396-.396A.25.25 0 0 0 13.396 2h-.792a.25.25 0 0 0-.177.427z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMenuDown = /*#__PURE__*/ makeIcon(\n  'MenuDown',\n  '<path fill-rule=\"evenodd\" d=\"M15 13V4a1 1 0 0 0-1-1h-3.586A2 2 0 0 1 9 2.414l-1-1-1 1A2 2 0 0 1 5.586 3H2a1 1 0 0 0-1 1v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM2 2a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2h-3.586a1 1 0 0 1-.707-.293L8.354.354a.5.5 0 0 0-.708 0L6.293 1.707A1 1 0 0 1 5.586 2H2z\"/><path fill-rule=\"evenodd\" d=\"M15 11H1v-1h14v1zm0-4H1V6h14v1zM2 12.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 0 1h-8a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMenuUp = /*#__PURE__*/ makeIcon(\n  'MenuUp',\n  '<path fill-rule=\"evenodd\" d=\"M15 3.207v9a1 1 0 0 1-1 1h-3.586A2 2 0 0 0 9 13.793l-1 1-1-1a2 2 0 0 0-1.414-.586H2a1 1 0 0 1-1-1v-9a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1zm-13 11a2 2 0 0 1-2-2v-9a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2h-3.586a1 1 0 0 0-.707.293l-1.353 1.354a.5.5 0 0 1-.708 0L6.293 14.5a1 1 0 0 0-.707-.293H2z\"/><path fill-rule=\"evenodd\" d=\"M15 5.207H1v1h14v-1zm0 4H1v1h14v-1zm-13-5.5a.5.5 0 0 0 .5.5h6a.5.5 0 1 0 0-1h-6a.5.5 0 0 0-.5.5zm0 4a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 0-1h-11a.5.5 0 0 0-.5.5zm0 4a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 0-1h-8a.5.5 0 0 0-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMic = /*#__PURE__*/ makeIcon(\n  'Mic',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 6.5A.5.5 0 0 1 4 7v1a4 4 0 0 0 8 0V7a.5.5 0 0 1 1 0v1a5 5 0 0 1-4.5 4.975V15h3a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1h3v-2.025A5 5 0 0 1 3 8V7a.5.5 0 0 1 .5-.5z\"/><path fill-rule=\"evenodd\" d=\"M10 8V3a2 2 0 1 0-4 0v5a2 2 0 1 0 4 0zM8 0a3 3 0 0 0-3 3v5a3 3 0 0 0 6 0V3a3 3 0 0 0-3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMicFill = /*#__PURE__*/ makeIcon(\n  'MicFill',\n  '<path d=\"M5 3a3 3 0 0 1 6 0v5a3 3 0 0 1-6 0V3z\"/><path fill-rule=\"evenodd\" d=\"M3.5 6.5A.5.5 0 0 1 4 7v1a4 4 0 0 0 8 0V7a.5.5 0 0 1 1 0v1a5 5 0 0 1-4.5 4.975V15h3a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1h3v-2.025A5 5 0 0 1 3 8V7a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMicMute = /*#__PURE__*/ makeIcon(\n  'MicMute',\n  '<path fill-rule=\"evenodd\" d=\"M12.734 9.613A4.995 4.995 0 0 0 13 8V7a.5.5 0 0 0-1 0v1c0 .274-.027.54-.08.799l.814.814zm-2.522 1.72A4 4 0 0 1 4 8V7a.5.5 0 0 0-1 0v1a5 5 0 0 0 4.5 4.975V15h-3a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-3v-2.025a4.973 4.973 0 0 0 2.43-.923l-.718-.719zM11 7.88V3a3 3 0 0 0-5.842-.963l.845.845A2 2 0 0 1 10 3v3.879l1 1zM8.738 9.86l.748.748A3 3 0 0 1 5 8V6.121l1 1V8a2 2 0 0 0 2.738 1.86zm4.908 3.494l-12-12 .708-.708 12 12-.708.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMicMuteFill = /*#__PURE__*/ makeIcon(\n  'MicMuteFill',\n  '<path fill-rule=\"evenodd\" d=\"M12.734 9.613A4.995 4.995 0 0 0 13 8V7a.5.5 0 0 0-1 0v1c0 .274-.027.54-.08.799l.814.814zm-2.522 1.72A4 4 0 0 1 4 8V7a.5.5 0 0 0-1 0v1a5 5 0 0 0 4.5 4.975V15h-3a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-3v-2.025a4.973 4.973 0 0 0 2.43-.923l-.718-.719zM11 7.88V3a3 3 0 0 0-5.842-.963L11 7.879zM5 6.12l4.486 4.486A3 3 0 0 1 5 8V6.121zm8.646 7.234l-12-12 .708-.708 12 12-.708.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMinecart = /*#__PURE__*/ makeIcon(\n  'Minecart',\n  '<path fill-rule=\"evenodd\" d=\"M4 15a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm0 1a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm8-1a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm0 1a2 2 0 1 0 0-4 2 2 0 0 0 0 4zM.115 3.18A.5.5 0 0 1 .5 3h15a.5.5 0 0 1 .491.592l-1.5 8A.5.5 0 0 1 14 12H2a.5.5 0 0 1-.491-.408l-1.5-8a.5.5 0 0 1 .106-.411zm.987.82l1.313 7h11.17l1.313-7H1.102z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMinecartLoaded = /*#__PURE__*/ makeIcon(\n  'MinecartLoaded',\n  '<path fill-rule=\"evenodd\" d=\"M4 15a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm0 1a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm8-1a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm0 1a2 2 0 1 0 0-4 2 2 0 0 0 0 4zM.115 3.18A.5.5 0 0 1 .5 3h15a.5.5 0 0 1 .491.592l-1.5 8A.5.5 0 0 1 14 12H2a.5.5 0 0 1-.491-.408l-1.5-8a.5.5 0 0 1 .106-.411zm.987.82l1.313 7h11.17l1.313-7H1.102z\"/><path fill-rule=\"evenodd\" d=\"M6 1a2.498 2.498 0 0 1 4 0c.818 0 1.545.394 2 1 .67 0 1.552.57 2 1h-2c-.314 0-.611-.15-.8-.4-.274-.365-.71-.6-1.2-.6-.314 0-.611-.15-.8-.4a1.497 1.497 0 0 0-2.4 0c-.189.25-.486.4-.8.4-.507 0-.955.251-1.228.638-.09.13-.194.25-.308.362H3c.13-.147.401-.432.562-.545a1.63 1.63 0 0 0 .393-.393A2.498 2.498 0 0 1 6 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMoon = /*#__PURE__*/ makeIcon(\n  'Moon',\n  '<path fill-rule=\"evenodd\" d=\"M14.53 10.53a7 7 0 0 1-9.058-9.058A7.003 7.003 0 0 0 8 15a7.002 7.002 0 0 0 6.53-4.47z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMouse = /*#__PURE__*/ makeIcon(\n  'Mouse',\n  '<path fill-rule=\"evenodd\" d=\"M8 3a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 3zm4 8V5a4 4 0 0 0-8 0v6a4 4 0 0 0 8 0zM8 0a5 5 0 0 0-5 5v6a5 5 0 0 0 10 0V5a5 5 0 0 0-5-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMouse2 = /*#__PURE__*/ makeIcon(\n  'Mouse2',\n  '<path fill-rule=\"evenodd\" d=\"M3 5.188C3 2.341 5.22 0 8 0s5 2.342 5 5.188v5.625C13 13.658 10.78 16 8 16s-5-2.342-5-5.188V5.189zm4.5-4.155C5.541 1.289 4 3.035 4 5.188V5.5h3.5V1.033zm1 0V5.5H12v-.313c0-2.152-1.541-3.898-3.5-4.154zM12 6.5H4v4.313C4 13.145 5.81 15 8 15s4-1.855 4-4.188V6.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMouse3 = /*#__PURE__*/ makeIcon(\n  'Mouse3',\n  '<path fill-rule=\"evenodd\" d=\"M5.473.463C5.896.157 6.407 0 7 0c1.26 0 2.981.123 4.403.825.72.355 1.375.864 1.85 1.59.475.728.747 1.642.747 2.772v5.625C14 13.659 11.78 16 9 16H7c-2.78 0-5-2.342-5-5.188V8.236A2.5 2.5 0 0 1 3.382 6L4 5.691v-.503c0-1.31.124-2.569.543-3.517.213-.482.512-.906.93-1.208zM4.017 6.801l-.188.093A1.5 1.5 0 0 0 3 8.236v2.576C3 13.146 4.81 15 7 15h2c2.19 0 4-1.855 4-4.188V5.189c0-.964-.23-1.683-.585-2.226-.356-.546-.86-.947-1.454-1.24C9.754 1.127 8.226 1 7 1c-.407 0-.708.105-.941.274-.239.172-.44.435-.602.801C5.127 2.823 5 3.907 5 5.187v.844a16.734 16.734 0 0 0 .008.448c.007.3.023.715.053 1.175.063.937.186 2.005.413 2.688a.5.5 0 1 1-.948.316c-.273-.817-.4-2-.462-2.937a27.75 27.75 0 0 1-.047-.92z\"/><path fill-rule=\"evenodd\" d=\"M9 .5a.5.5 0 0 1 .5.5v5.099l4.108.913a.5.5 0 0 1-.216.976l-9-2a.5.5 0 1 1 .216-.976l3.892.865V1A.5.5 0 0 1 9 .5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMusicNote = /*#__PURE__*/ makeIcon(\n  'MusicNote',\n  '<path d=\"M9 13c0 1.105-1.12 2-2.5 2S4 14.105 4 13s1.12-2 2.5-2 2.5.895 2.5 2z\"/><path fill-rule=\"evenodd\" d=\"M9 3v10H8V3h1z\"/><path d=\"M8 2.82a1 1 0 0 1 .804-.98l3-.6A1 1 0 0 1 13 2.22V4L8 5V2.82z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMusicNoteBeamed = /*#__PURE__*/ makeIcon(\n  'MusicNoteBeamed',\n  '<path d=\"M6 13c0 1.105-1.12 2-2.5 2S1 14.105 1 13c0-1.104 1.12-2 2.5-2s2.5.896 2.5 2zm9-2c0 1.105-1.12 2-2.5 2s-2.5-.895-2.5-2 1.12-2 2.5-2 2.5.895 2.5 2z\"/><path fill-rule=\"evenodd\" d=\"M14 11V2h1v9h-1zM6 3v10H5V3h1z\"/><path d=\"M5 2.905a1 1 0 0 1 .9-.995l8-.8a1 1 0 0 1 1.1.995V3L5 4V2.905z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMusicNoteList = /*#__PURE__*/ makeIcon(\n  'MusicNoteList',\n  '<path d=\"M12 13c0 1.105-1.12 2-2.5 2S7 14.105 7 13s1.12-2 2.5-2 2.5.895 2.5 2z\"/><path fill-rule=\"evenodd\" d=\"M12 3v10h-1V3h1z\"/><path d=\"M11 2.82a1 1 0 0 1 .804-.98l3-.6A1 1 0 0 1 16 2.22V4l-5 1V2.82z\"/><path fill-rule=\"evenodd\" d=\"M0 11.5a.5.5 0 0 1 .5-.5H4a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5zm0-4A.5.5 0 0 1 .5 7H8a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5zm0-4A.5.5 0 0 1 .5 3H8a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMusicPlayer = /*#__PURE__*/ makeIcon(\n  'MusicPlayer',\n  '<path fill-rule=\"evenodd\" d=\"M12 1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H4z\"/><path fill-rule=\"evenodd\" d=\"M11 3H5v3h6V3zM5 2a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H5zm3 11a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm3-2a3 3 0 1 1-6 0 3 3 0 0 1 6 0z\"/><circle cx=\"8\" cy=\"11\" r=\"1\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMusicPlayerFill = /*#__PURE__*/ makeIcon(\n  'MusicPlayerFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm2 1a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v2.5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V3zm7 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0z\"/><circle cx=\"8\" cy=\"11\" r=\"1\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconNewspaper = /*#__PURE__*/ makeIcon(\n  'Newspaper',\n  '<path fill-rule=\"evenodd\" d=\"M0 2.5A1.5 1.5 0 0 1 1.5 1h11A1.5 1.5 0 0 1 14 2.5v10.528c0 .3-.05.654-.238.972h.738a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 1 1 0v9a1.5 1.5 0 0 1-1.5 1.5H1.497A1.497 1.497 0 0 1 0 13.5v-11zM12 14c.37 0 .654-.211.853-.441.092-.106.147-.279.147-.531V2.5a.5.5 0 0 0-.5-.5h-11a.5.5 0 0 0-.5.5v11c0 .278.223.5.497.5H12z\"/><path d=\"M2 3h10v2H2V3zm0 3h4v3H2V6zm0 4h4v1H2v-1zm0 2h4v1H2v-1zm5-6h2v1H7V6zm3 0h2v1h-2V6zM7 8h2v1H7V8zm3 0h2v1h-2V8zm-3 2h2v1H7v-1zm3 0h2v1h-2v-1zm-3 2h2v1H7v-1zm3 0h2v1h-2v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconNodeMinus = /*#__PURE__*/ makeIcon(\n  'NodeMinus',\n  '<path fill-rule=\"evenodd\" d=\"M11 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8zM6.025 7.5a5 5 0 1 1 0 1H4A1.5 1.5 0 0 1 2.5 10h-1A1.5 1.5 0 0 1 0 8.5v-1A1.5 1.5 0 0 1 1.5 6h1A1.5 1.5 0 0 1 4 7.5h2.025zM1.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zM8 8a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5A.5.5 0 0 1 8 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconNodeMinusFill = /*#__PURE__*/ makeIcon(\n  'NodeMinusFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8a5 5 0 0 1-9.975.5H4A1.5 1.5 0 0 1 2.5 10h-1A1.5 1.5 0 0 1 0 8.5v-1A1.5 1.5 0 0 1 1.5 6h1A1.5 1.5 0 0 1 4 7.5h2.025A5 5 0 0 1 16 8zm-2 0a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5A.5.5 0 0 0 14 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconNodePlus = /*#__PURE__*/ makeIcon(\n  'NodePlus',\n  '<path fill-rule=\"evenodd\" d=\"M11 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8zM6.025 7.5a5 5 0 1 1 0 1H4A1.5 1.5 0 0 1 2.5 10h-1A1.5 1.5 0 0 1 0 8.5v-1A1.5 1.5 0 0 1 1.5 6h1A1.5 1.5 0 0 1 4 7.5h2.025zM11 5a.5.5 0 0 1 .5.5v2h2a.5.5 0 0 1 0 1h-2v2a.5.5 0 0 1-1 0v-2h-2a.5.5 0 0 1 0-1h2v-2A.5.5 0 0 1 11 5zM1.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconNodePlusFill = /*#__PURE__*/ makeIcon(\n  'NodePlusFill',\n  '<path fill-rule=\"evenodd\" d=\"M11 13a5 5 0 1 0-4.975-5.5H4A1.5 1.5 0 0 0 2.5 6h-1A1.5 1.5 0 0 0 0 7.5v1A1.5 1.5 0 0 0 1.5 10h1A1.5 1.5 0 0 0 4 8.5h2.025A5 5 0 0 0 11 13zm.5-7.5a.5.5 0 0 0-1 0v2h-2a.5.5 0 0 0 0 1h2v2a.5.5 0 0 0 1 0v-2h2a.5.5 0 0 0 0-1h-2v-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconNut = /*#__PURE__*/ makeIcon(\n  'Nut',\n  '<path fill-rule=\"evenodd\" d=\"M11.42 2H4.58L1.152 8l3.428 6h6.84l3.428-6-3.428-6zM4.58 1a1 1 0 0 0-.868.504l-3.429 6a1 1 0 0 0 0 .992l3.429 6A1 1 0 0 0 4.58 15h6.84a1 1 0 0 0 .868-.504l3.428-6a1 1 0 0 0 0-.992l-3.428-6A1 1 0 0 0 11.42 1H4.58z\"/><path fill-rule=\"evenodd\" d=\"M6.848 5.933a2.5 2.5 0 1 0 2.5 4.33 2.5 2.5 0 0 0-2.5-4.33zM5.067 9.848a3.5 3.5 0 1 1 6.062-3.5 3.5 3.5 0 0 1-6.062 3.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconNutFill = /*#__PURE__*/ makeIcon(\n  'NutFill',\n  '<path fill-rule=\"evenodd\" d=\"M4.58 1a1 1 0 0 0-.868.504l-3.429 6a1 1 0 0 0 0 .992l3.429 6A1 1 0 0 0 4.58 15h6.84a1 1 0 0 0 .868-.504l3.428-6a1 1 0 0 0 0-.992l-3.428-6A1 1 0 0 0 11.42 1H4.58zm5.018 9.696a3 3 0 1 0-3-5.196 3 3 0 0 0 3 5.196z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconOctagon = /*#__PURE__*/ makeIcon(\n  'Octagon',\n  '<path fill-rule=\"evenodd\" d=\"M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconOctagonFill = /*#__PURE__*/ makeIcon(\n  'OctagonFill',\n  '<path d=\"M11.107 0a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146A.5.5 0 0 1 4.893 0h6.214z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconOctagonHalf = /*#__PURE__*/ makeIcon(\n  'OctagonHalf',\n  '<path fill-rule=\"evenodd\" d=\"M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM8 15h2.9l4.1-4.1V5.1L10.9 1H8v14z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconOption = /*#__PURE__*/ makeIcon(\n  'Option',\n  '<path fill-rule=\"evenodd\" d=\"M1 2.5a.5.5 0 0 1 .5-.5h3.797a.5.5 0 0 1 .439.26L11 13h3.5a.5.5 0 0 1 0 1h-3.797a.5.5 0 0 1-.439-.26L5 3H1.5a.5.5 0 0 1-.5-.5zm10 0a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconOutlet = /*#__PURE__*/ makeIcon(\n  'Outlet',\n  '<path fill-rule=\"evenodd\" d=\"M3.34 2.994c.275-.338.68-.494 1.074-.494h7.172c.393 0 .798.156 1.074.494.578.708 1.84 2.534 1.84 5.006 0 2.472-1.262 4.297-1.84 5.006-.276.338-.68.494-1.074.494H4.414c-.394 0-.799-.156-1.074-.494C2.762 12.297 1.5 10.472 1.5 8c0-2.472 1.262-4.297 1.84-5.006zm1.074.506a.376.376 0 0 0-.299.126C3.599 4.259 2.5 5.863 2.5 8c0 2.137 1.099 3.74 1.615 4.374.06.073.163.126.3.126h7.17c.137 0 .24-.053.3-.126.516-.633 1.615-2.237 1.615-4.374 0-2.137-1.099-3.74-1.615-4.374a.376.376 0 0 0-.3-.126h-7.17z\"/><path fill-rule=\"evenodd\" d=\"M6 5.5a.5.5 0 0 1 .5.5v1.5a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5zm4 0a.5.5 0 0 1 .5.5v1.5a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5z\"/><path d=\"M7 10v1h2v-1a1 1 0 0 0-2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPaperclip = /*#__PURE__*/ makeIcon(\n  'Paperclip',\n  '<path fill-rule=\"evenodd\" d=\"M4.5 3a2.5 2.5 0 0 1 5 0v9a1.5 1.5 0 0 1-3 0V5a.5.5 0 0 1 1 0v7a.5.5 0 0 0 1 0V3a1.5 1.5 0 1 0-3 0v9a2.5 2.5 0 0 0 5 0V5a.5.5 0 0 1 1 0v7a3.5 3.5 0 1 1-7 0V3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconParagraph = /*#__PURE__*/ makeIcon(\n  'Paragraph',\n  '<path fill-rule=\"evenodd\" d=\"M8 1h4.5a.5.5 0 0 1 0 1H11v12.5a.5.5 0 0 1-1 0V2H9v12.5a.5.5 0 0 1-1 0V1z\"/><path d=\"M9 1v8H7a4 4 0 1 1 0-8h2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchCheck = /*#__PURE__*/ makeIcon(\n  'PatchCheck',\n  '<path fill-rule=\"evenodd\" d=\"M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 0 1 2.924 2.924l-.01.89.636.622a2.89 2.89 0 0 1 0 4.134l-.637.622.011.89a2.89 2.89 0 0 1-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 0 1-4.134 0l-.622-.637-.89.011a2.89 2.89 0 0 1-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 0 1 0-4.134l.637-.622-.011-.89a2.89 2.89 0 0 1 2.924-2.924l.89.01.622-.636a2.89 2.89 0 0 1 4.134 0l-.715.698a1.89 1.89 0 0 0-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 0 0-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 0 0 0 2.704l.944.92-.016 1.32a1.89 1.89 0 0 0 1.912 1.911l1.318-.016.921.944a1.89 1.89 0 0 0 2.704 0l.92-.944 1.32.016a1.89 1.89 0 0 0 1.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 0 0 0-2.704l-.944-.92.016-1.32a1.89 1.89 0 0 0-1.912-1.911l-1.318.016z\"/><path fill-rule=\"evenodd\" d=\"M10.354 6.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7 8.793l2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchCheckFll = /*#__PURE__*/ makeIcon(\n  'PatchCheckFll',\n  '<path fill-rule=\"evenodd\" d=\"M10.067.87a2.89 2.89 0 0 0-4.134 0l-.622.638-.89-.011a2.89 2.89 0 0 0-2.924 2.924l.01.89-.636.622a2.89 2.89 0 0 0 0 4.134l.637.622-.011.89a2.89 2.89 0 0 0 2.924 2.924l.89-.01.622.636a2.89 2.89 0 0 0 4.134 0l.622-.637.89.011a2.89 2.89 0 0 0 2.924-2.924l-.01-.89.636-.622a2.89 2.89 0 0 0 0-4.134l-.637-.622.011-.89a2.89 2.89 0 0 0-2.924-2.924l-.89.01-.622-.636zm.287 5.984a.5.5 0 0 0-.708-.708L7 8.793 5.854 7.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchExclamation = /*#__PURE__*/ makeIcon(\n  'PatchExclamation',\n  '<path d=\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z\"/><path fill-rule=\"evenodd\" d=\"M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 0 1 2.924 2.924l-.01.89.636.622a2.89 2.89 0 0 1 0 4.134l-.637.622.011.89a2.89 2.89 0 0 1-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 0 1-4.134 0l-.622-.637-.89.011a2.89 2.89 0 0 1-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 0 1 0-4.134l.637-.622-.011-.89a2.89 2.89 0 0 1 2.924-2.924l.89.01.622-.636a2.89 2.89 0 0 1 4.134 0l-.715.698a1.89 1.89 0 0 0-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 0 0-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 0 0 0 2.704l.944.92-.016 1.32a1.89 1.89 0 0 0 1.912 1.911l1.318-.016.921.944a1.89 1.89 0 0 0 2.704 0l.92-.944 1.32.016a1.89 1.89 0 0 0 1.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 0 0 0-2.704l-.944-.92.016-1.32a1.89 1.89 0 0 0-1.912-1.911l-1.318.016z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchExclamationFll = /*#__PURE__*/ makeIcon(\n  'PatchExclamationFll',\n  '<path fill-rule=\"evenodd\" d=\"M10.067.87a2.89 2.89 0 0 0-4.134 0l-.622.638-.89-.011a2.89 2.89 0 0 0-2.924 2.924l.01.89-.636.622a2.89 2.89 0 0 0 0 4.134l.637.622-.011.89a2.89 2.89 0 0 0 2.924 2.924l.89-.01.622.636a2.89 2.89 0 0 0 4.134 0l.622-.637.89.011a2.89 2.89 0 0 0 2.924-2.924l-.01-.89.636-.622a2.89 2.89 0 0 0 0-4.134l-.637-.622.011-.89a2.89 2.89 0 0 0-2.924-2.924l-.89.01-.622-.636zM8 4a.905.905 0 0 0-.9.995l.35 3.507a.553.553 0 0 0 1.1 0l.35-3.507A.905.905 0 0 0 8 4zm.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchMinus = /*#__PURE__*/ makeIcon(\n  'PatchMinus',\n  '<path fill-rule=\"evenodd\" d=\"M5.5 8a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/><path fill-rule=\"evenodd\" d=\"M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 0 1 2.924 2.924l-.01.89.636.622a2.89 2.89 0 0 1 0 4.134l-.637.622.011.89a2.89 2.89 0 0 1-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 0 1-4.134 0l-.622-.637-.89.011a2.89 2.89 0 0 1-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 0 1 0-4.134l.637-.622-.011-.89a2.89 2.89 0 0 1 2.924-2.924l.89.01.622-.636a2.89 2.89 0 0 1 4.134 0l-.715.698a1.89 1.89 0 0 0-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 0 0-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 0 0 0 2.704l.944.92-.016 1.32a1.89 1.89 0 0 0 1.912 1.911l1.318-.016.921.944a1.89 1.89 0 0 0 2.704 0l.92-.944 1.32.016a1.89 1.89 0 0 0 1.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 0 0 0-2.704l-.944-.92.016-1.32a1.89 1.89 0 0 0-1.912-1.911l-1.318.016z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchMinusFll = /*#__PURE__*/ makeIcon(\n  'PatchMinusFll',\n  '<path fill-rule=\"evenodd\" d=\"M10.067.87a2.89 2.89 0 0 0-4.134 0l-.622.638-.89-.011a2.89 2.89 0 0 0-2.924 2.924l.01.89-.636.622a2.89 2.89 0 0 0 0 4.134l.637.622-.011.89a2.89 2.89 0 0 0 2.924 2.924l.89-.01.622.636a2.89 2.89 0 0 0 4.134 0l.622-.637.89.011a2.89 2.89 0 0 0 2.924-2.924l-.01-.89.636-.622a2.89 2.89 0 0 0 0-4.134l-.637-.622.011-.89a2.89 2.89 0 0 0-2.924-2.924l-.89.01-.622-.636zM6 7.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1H6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchPlus = /*#__PURE__*/ makeIcon(\n  'PatchPlus',\n  '<path fill-rule=\"evenodd\" d=\"M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 0 1 2.924 2.924l-.01.89.636.622a2.89 2.89 0 0 1 0 4.134l-.637.622.011.89a2.89 2.89 0 0 1-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 0 1-4.134 0l-.622-.637-.89.011a2.89 2.89 0 0 1-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 0 1 0-4.134l.637-.622-.011-.89a2.89 2.89 0 0 1 2.924-2.924l.89.01.622-.636a2.89 2.89 0 0 1 4.134 0l-.715.698a1.89 1.89 0 0 0-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 0 0-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 0 0 0 2.704l.944.92-.016 1.32a1.89 1.89 0 0 0 1.912 1.911l1.318-.016.921.944a1.89 1.89 0 0 0 2.704 0l.92-.944 1.32.016a1.89 1.89 0 0 0 1.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 0 0 0-2.704l-.944-.92.016-1.32a1.89 1.89 0 0 0-1.912-1.911l-1.318.016z\"/><path fill-rule=\"evenodd\" d=\"M8 5.5a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5H6a.5.5 0 0 1 0-1h1.5V6a.5.5 0 0 1 .5-.5z\"/><path fill-rule=\"evenodd\" d=\"M7.5 8a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1H8.5V10a.5.5 0 0 1-1 0V8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchPlusFll = /*#__PURE__*/ makeIcon(\n  'PatchPlusFll',\n  '<path fill-rule=\"evenodd\" d=\"M10.067.87a2.89 2.89 0 0 0-4.134 0l-.622.638-.89-.011a2.89 2.89 0 0 0-2.924 2.924l.01.89-.636.622a2.89 2.89 0 0 0 0 4.134l.637.622-.011.89a2.89 2.89 0 0 0 2.924 2.924l.89-.01.622.636a2.89 2.89 0 0 0 4.134 0l.622-.637.89.011a2.89 2.89 0 0 0 2.924-2.924l-.01-.89.636-.622a2.89 2.89 0 0 0 0-4.134l-.637-.622.011-.89a2.89 2.89 0 0 0-2.924-2.924l-.89.01-.622-.636zM8.5 6a.5.5 0 0 0-1 0v1.5H6a.5.5 0 0 0 0 1h1.5V10a.5.5 0 0 0 1 0V8.5H10a.5.5 0 0 0 0-1H8.5V6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchQuestion = /*#__PURE__*/ makeIcon(\n  'PatchQuestion',\n  '<path d=\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM8.05 9.6c.336 0 .504-.24.554-.627.04-.534.198-.815.847-1.26.673-.475 1.049-1.09 1.049-1.986 0-1.325-.92-2.227-2.262-2.227-1.02 0-1.792.492-2.1 1.29A1.71 1.71 0 0 0 6 5.48c0 .393.203.64.545.64.272 0 .455-.147.564-.51.158-.592.525-.915 1.074-.915.61 0 1.03.446 1.03 1.084 0 .563-.208.885-.822 1.325-.619.433-.926.914-.926 1.64v.111c0 .428.208.745.585.745z\"/><path fill-rule=\"evenodd\" d=\"M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 0 1 2.924 2.924l-.01.89.636.622a2.89 2.89 0 0 1 0 4.134l-.637.622.011.89a2.89 2.89 0 0 1-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 0 1-4.134 0l-.622-.637-.89.011a2.89 2.89 0 0 1-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 0 1 0-4.134l.637-.622-.011-.89a2.89 2.89 0 0 1 2.924-2.924l.89.01.622-.636a2.89 2.89 0 0 1 4.134 0l-.715.698a1.89 1.89 0 0 0-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 0 0-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 0 0 0 2.704l.944.92-.016 1.32a1.89 1.89 0 0 0 1.912 1.911l1.318-.016.921.944a1.89 1.89 0 0 0 2.704 0l.92-.944 1.32.016a1.89 1.89 0 0 0 1.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 0 0 0-2.704l-.944-.92.016-1.32a1.89 1.89 0 0 0-1.912-1.911l-1.318.016z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchQuestionFll = /*#__PURE__*/ makeIcon(\n  'PatchQuestionFll',\n  '<path fill-rule=\"evenodd\" d=\"M5.933.87a2.89 2.89 0 0 1 4.134 0l.622.638.89-.011a2.89 2.89 0 0 1 2.924 2.924l-.01.89.636.622a2.89 2.89 0 0 1 0 4.134l-.637.622.011.89a2.89 2.89 0 0 1-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 0 1-4.134 0l-.622-.637-.89.011a2.89 2.89 0 0 1-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 0 1 0-4.134l.637-.622-.011-.89a2.89 2.89 0 0 1 2.924-2.924l.89.01.622-.636zM7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zm1.602-2.027c-.05.386-.218.627-.554.627-.377 0-.585-.317-.585-.745v-.11c0-.727.307-1.208.926-1.641.614-.44.822-.762.822-1.325 0-.638-.42-1.084-1.03-1.084-.55 0-.916.323-1.074.914-.109.364-.292.51-.564.51C6.203 6.12 6 5.873 6 5.48c0-.251.045-.468.139-.69.307-.798 1.079-1.29 2.099-1.29 1.341 0 2.262.902 2.262 2.227 0 .896-.376 1.511-1.05 1.986-.648.445-.806.726-.846 1.26z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPause = /*#__PURE__*/ makeIcon(\n  'Pause',\n  '<path fill-rule=\"evenodd\" d=\"M6 3.5a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V4a.5.5 0 0 1 .5-.5zm4 0a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V4a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPauseBtn = /*#__PURE__*/ makeIcon(\n  'PauseBtn',\n  '<path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M5 6.25a1.25 1.25 0 1 1 2.5 0v3.5a1.25 1.25 0 1 1-2.5 0v-3.5zm3.5 0a1.25 1.25 0 1 1 2.5 0v3.5a1.25 1.25 0 1 1-2.5 0v-3.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPauseBtnFill = /*#__PURE__*/ makeIcon(\n  'PauseBtnFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm4.25 3C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C7.5 5.56 6.94 5 6.25 5zm3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C11 5.56 10.44 5 9.75 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPauseCircle = /*#__PURE__*/ makeIcon(\n  'PauseCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M5 6.25a1.25 1.25 0 1 1 2.5 0v3.5a1.25 1.25 0 1 1-2.5 0v-3.5zm3.5 0a1.25 1.25 0 1 1 2.5 0v3.5a1.25 1.25 0 1 1-2.5 0v-3.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPauseCircleFill = /*#__PURE__*/ makeIcon(\n  'PauseCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM6.25 5C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C7.5 5.56 6.94 5 6.25 5zm3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C11 5.56 10.44 5 9.75 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPauseFill = /*#__PURE__*/ makeIcon(\n  'PauseFill',\n  '<path d=\"M5.5 3.5A1.5 1.5 0 0 1 7 5v6a1.5 1.5 0 0 1-3 0V5a1.5 1.5 0 0 1 1.5-1.5zm5 0A1.5 1.5 0 0 1 12 5v6a1.5 1.5 0 0 1-3 0V5a1.5 1.5 0 0 1 1.5-1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPeace = /*#__PURE__*/ makeIcon(\n  'Peace',\n  '<path fill-rule=\"evenodd\" d=\"M7.5 1.018a7 7 0 0 0-4.79 11.566L7.5 7.793V1.018zm1 0v6.775l4.79 4.79A7 7 0 0 0 8.5 1.018zm4.084 12.273L8.5 9.207v5.775a6.97 6.97 0 0 0 4.084-1.691zM7.5 14.982V9.207l-4.084 4.084A6.97 6.97 0 0 0 7.5 14.982zM0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPeaceFill = /*#__PURE__*/ makeIcon(\n  'PeaceFill',\n  '<path d=\"M14 13.292A8 8 0 0 0 8.5.015v7.778l5.5 5.5zm-.708.708L8.5 9.206v6.778a7.967 7.967 0 0 0 4.792-1.986zM7.5 15.985V9.207L2.708 14A7.967 7.967 0 0 0 7.5 15.985zM2 13.292A8 8 0 0 1 7.5.015v7.778l-5.5 5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPen = /*#__PURE__*/ makeIcon(\n  'Pen',\n  '<path fill-rule=\"evenodd\" d=\"M13.498.795l.149-.149a1.207 1.207 0 1 1 1.707 1.708l-.149.148a1.5 1.5 0 0 1-.059 2.059L4.854 14.854a.5.5 0 0 1-.233.131l-4 1a.5.5 0 0 1-.606-.606l1-4a.5.5 0 0 1 .131-.232l9.642-9.642a.5.5 0 0 0-.642.056L6.854 4.854a.5.5 0 1 1-.708-.708L9.44.854A1.5 1.5 0 0 1 11.5.796a1.5 1.5 0 0 1 1.998-.001zm-.644.766a.5.5 0 0 0-.707 0L1.95 11.756l-.764 3.057 3.057-.764L14.44 3.854a.5.5 0 0 0 0-.708l-1.585-1.585z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPenFill = /*#__PURE__*/ makeIcon(\n  'PenFill',\n  '<path fill-rule=\"evenodd\" d=\"M13.498.795l.149-.149a1.207 1.207 0 1 1 1.707 1.708l-.149.148a1.5 1.5 0 0 1-.059 2.059L4.854 14.854a.5.5 0 0 1-.233.131l-4 1a.5.5 0 0 1-.606-.606l1-4a.5.5 0 0 1 .131-.232l9.642-9.642a.5.5 0 0 0-.642.056L6.854 4.854a.5.5 0 1 1-.708-.708L9.44.854A1.5 1.5 0 0 1 11.5.796a1.5 1.5 0 0 1 1.998-.001z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPencil = /*#__PURE__*/ makeIcon(\n  'Pencil',\n  '<path fill-rule=\"evenodd\" d=\"M12.146.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1 0 .708l-10 10a.5.5 0 0 1-.168.11l-5 2a.5.5 0 0 1-.65-.65l2-5a.5.5 0 0 1 .11-.168l10-10zM11.207 2.5L13.5 4.793 14.793 3.5 12.5 1.207 11.207 2.5zm1.586 3L10.5 3.207 4 9.707V10h.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.5h.293l6.5-6.5zm-9.761 5.175l-.106.106-1.528 3.821 3.821-1.528.106-.106A.5.5 0 0 1 5 12.5V12h-.5a.5.5 0 0 1-.5-.5V11h-.5a.5.5 0 0 1-.468-.325z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPencilFill = /*#__PURE__*/ makeIcon(\n  'PencilFill',\n  '<path fill-rule=\"evenodd\" d=\"M12.854.146a.5.5 0 0 0-.707 0L10.5 1.793 14.207 5.5l1.647-1.646a.5.5 0 0 0 0-.708l-3-3zm.646 6.061L9.793 2.5 3.293 9H3.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.207l6.5-6.5zm-7.468 7.468A.5.5 0 0 1 6 13.5V13h-.5a.5.5 0 0 1-.5-.5V12h-.5a.5.5 0 0 1-.5-.5V11h-.5a.5.5 0 0 1-.5-.5V10h-.5a.499.499 0 0 1-.175-.032l-.179.178a.5.5 0 0 0-.11.168l-2 5a.5.5 0 0 0 .65.65l5-2a.5.5 0 0 0 .168-.11l.178-.178z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPencilSquare = /*#__PURE__*/ makeIcon(\n  'PencilSquare',\n  '<path d=\"M15.502 1.94a.5.5 0 0 1 0 .706L14.459 3.69l-2-2L13.502.646a.5.5 0 0 1 .707 0l1.293 1.293zm-1.75 2.456l-2-2L4.939 9.21a.5.5 0 0 0-.121.196l-.805 2.414a.25.25 0 0 0 .316.316l2.414-.805a.5.5 0 0 0 .196-.12l6.813-6.814z\"/><path fill-rule=\"evenodd\" d=\"M1 13.5A1.5 1.5 0 0 0 2.5 15h11a1.5 1.5 0 0 0 1.5-1.5v-6a.5.5 0 0 0-1 0v6a.5.5 0 0 1-.5.5h-11a.5.5 0 0 1-.5-.5v-11a.5.5 0 0 1 .5-.5H9a.5.5 0 0 0 0-1H2.5A1.5 1.5 0 0 0 1 2.5v11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPentagon = /*#__PURE__*/ makeIcon(\n  'Pentagon',\n  '<path fill-rule=\"evenodd\" d=\"M8 1.288l-6.842 5.56L3.733 15h8.534l2.575-8.153L8 1.288zM16 6.5L8 0 0 6.5 3 16h10l3-9.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPentagonFill = /*#__PURE__*/ makeIcon(\n  'PentagonFill',\n  '<path d=\"M8 0l8 6.5-3 9.5H3L0 6.5 8 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPentagonHalf = /*#__PURE__*/ makeIcon(\n  'PentagonHalf',\n  '<path fill-rule=\"evenodd\" d=\"M8 1.288V15h4.267l2.575-8.153L8 1.288zM16 6.5L8 0 0 6.5 3 16h10l3-9.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPeople = /*#__PURE__*/ makeIcon(\n  'People',\n  '<path fill-rule=\"evenodd\" d=\"M15 14s1 0 1-1-1-4-5-4-5 3-5 4 1 1 1 1h8zm-7.978-1h7.956a.274.274 0 0 0 .014-.002l.008-.002c-.002-.264-.167-1.03-.76-1.72C13.688 10.629 12.718 10 11 10c-1.717 0-2.687.63-3.24 1.276-.593.69-.759 1.457-.76 1.72a1.05 1.05 0 0 0 .022.004zM11 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm3-2a3 3 0 1 1-6 0 3 3 0 0 1 6 0zM6.936 9.28a5.88 5.88 0 0 0-1.23-.247A7.35 7.35 0 0 0 5 9c-4 0-5 3-5 4 0 .667.333 1 1 1h4.216A2.238 2.238 0 0 1 5 13c0-1.01.377-2.042 1.09-2.904.243-.294.526-.569.846-.816zM4.92 10c-1.668.02-2.615.64-3.16 1.276C1.163 11.97 1 12.739 1 13h3c0-1.045.323-2.086.92-3zM1.5 5.5a3 3 0 1 1 6 0 3 3 0 0 1-6 0zm3-2a2 2 0 1 0 0 4 2 2 0 0 0 0-4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPeopleFill = /*#__PURE__*/ makeIcon(\n  'PeopleFill',\n  '<path fill-rule=\"evenodd\" d=\"M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1H7zm4-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-5.784 6A2.238 2.238 0 0 1 5 13c0-1.355.68-2.75 1.936-3.72A6.325 6.325 0 0 0 5 9c-4 0-5 3-5 4s1 1 1 1h4.216zM4.5 8a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPercent = /*#__PURE__*/ makeIcon(\n  'Percent',\n  '<path fill-rule=\"evenodd\" d=\"M13.442 2.558a.625.625 0 0 1 0 .884l-10 10a.625.625 0 1 1-.884-.884l10-10a.625.625 0 0 1 .884 0zM4.5 6a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm0 1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5zm7 6a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm0 1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPerson = /*#__PURE__*/ makeIcon(\n  'Person',\n  '<path fill-rule=\"evenodd\" d=\"M10 5a2 2 0 1 1-4 0 2 2 0 0 1 4 0zM8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm6 5c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonBadge = /*#__PURE__*/ makeIcon(\n  'PersonBadge',\n  '<path fill-rule=\"evenodd\" d=\"M2 2.5A2.5 2.5 0 0 1 4.5 0h7A2.5 2.5 0 0 1 14 2.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2.5zM4.5 1A1.5 1.5 0 0 0 3 2.5v10.795a4.2 4.2 0 0 1 .776-.492C4.608 12.387 5.937 12 8 12s3.392.387 4.224.803a4.2 4.2 0 0 1 .776.492V2.5A1.5 1.5 0 0 0 11.5 1h-7z\"/><path fill-rule=\"evenodd\" d=\"M8 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM6 2.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonBadgeFill = /*#__PURE__*/ makeIcon(\n  'PersonBadgeFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm4.5 0a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zM8 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm5 2.755C12.146 12.825 10.623 12 8 12s-4.146.826-5 1.755V14a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1v-.245z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonBoundingBox = /*#__PURE__*/ makeIcon(\n  'PersonBoundingBox',\n  '<path fill-rule=\"evenodd\" d=\"M1.5 1a.5.5 0 0 0-.5.5v3a.5.5 0 0 1-1 0v-3A1.5 1.5 0 0 1 1.5 0h3a.5.5 0 0 1 0 1h-3zM11 .5a.5.5 0 0 1 .5-.5h3A1.5 1.5 0 0 1 16 1.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 1-.5-.5zM.5 11a.5.5 0 0 1 .5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 1 0 1h-3A1.5 1.5 0 0 1 0 14.5v-3a.5.5 0 0 1 .5-.5zm15 0a.5.5 0 0 1 .5.5v3a1.5 1.5 0 0 1-1.5 1.5h-3a.5.5 0 0 1 0-1h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 1 .5-.5z\"/><path fill-rule=\"evenodd\" d=\"M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonCheck = /*#__PURE__*/ makeIcon(\n  'PersonCheck',\n  '<path fill-rule=\"evenodd\" d=\"M8 5a2 2 0 1 1-4 0 2 2 0 0 1 4 0zM6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm6 5c0 1-1 1-1 1H1s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C9.516 10.68 8.289 10 6 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10zm4.854-7.85a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L12.5 7.793l2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonCheckFill = /*#__PURE__*/ makeIcon(\n  'PersonCheckFill',\n  '<path fill-rule=\"evenodd\" d=\"M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm9.854-2.854a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L12.5 7.793l2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonCircle = /*#__PURE__*/ makeIcon(\n  'PersonCircle',\n  '<path d=\"M13.468 12.37C12.758 11.226 11.195 10 8 10s-4.757 1.225-5.468 2.37A6.987 6.987 0 0 0 8 15a6.987 6.987 0 0 0 5.468-2.63z\"/><path fill-rule=\"evenodd\" d=\"M8 9a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/><path fill-rule=\"evenodd\" d=\"M8 1a7 7 0 1 0 0 14A7 7 0 0 0 8 1zM0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonDash = /*#__PURE__*/ makeIcon(\n  'PersonDash',\n  '<path fill-rule=\"evenodd\" d=\"M8 5a2 2 0 1 1-4 0 2 2 0 0 1 4 0zM6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm6 5c0 1-1 1-1 1H1s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C9.516 10.68 8.289 10 6 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10zM11 7.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonDashFill = /*#__PURE__*/ makeIcon(\n  'PersonDashFill',\n  '<path fill-rule=\"evenodd\" d=\"M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm5-.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonFill = /*#__PURE__*/ makeIcon(\n  'PersonFill',\n  '<path fill-rule=\"evenodd\" d=\"M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonLinesFill = /*#__PURE__*/ makeIcon(\n  'PersonLinesFill',\n  '<path fill-rule=\"evenodd\" d=\"M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm7 1.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm-2-3a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5zm2 9a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonPlus = /*#__PURE__*/ makeIcon(\n  'PersonPlus',\n  '<path fill-rule=\"evenodd\" d=\"M8 5a2 2 0 1 1-4 0 2 2 0 0 1 4 0zM6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm6 5c0 1-1 1-1 1H1s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C9.516 10.68 8.289 10 6 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10zM13.5 5a.5.5 0 0 1 .5.5V7h1.5a.5.5 0 0 1 0 1H14v1.5a.5.5 0 0 1-1 0V8h-1.5a.5.5 0 0 1 0-1H13V5.5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonPlusFill = /*#__PURE__*/ makeIcon(\n  'PersonPlusFill',\n  '<path fill-rule=\"evenodd\" d=\"M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm7.5-3a.5.5 0 0 1 .5.5V7h1.5a.5.5 0 0 1 0 1H14v1.5a.5.5 0 0 1-1 0V8h-1.5a.5.5 0 0 1 0-1H13V5.5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonSquare = /*#__PURE__*/ makeIcon(\n  'PersonSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M2 15v-1c0-1 1-4 6-4s6 3 6 4v1H2zm6-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonX = /*#__PURE__*/ makeIcon(\n  'PersonX',\n  '<path fill-rule=\"evenodd\" d=\"M8 5a2 2 0 1 1-4 0 2 2 0 0 1 4 0zM6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm6 5c0 1-1 1-1 1H1s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C9.516 10.68 8.289 10 6 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10zm1.146-7.85a.5.5 0 0 1 .708 0L14 6.293l1.146-1.147a.5.5 0 0 1 .708.708L14.707 7l1.147 1.146a.5.5 0 0 1-.708.708L14 7.707l-1.146 1.147a.5.5 0 0 1-.708-.708L13.293 7l-1.147-1.146a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonXFill = /*#__PURE__*/ makeIcon(\n  'PersonXFill',\n  '<path fill-rule=\"evenodd\" d=\"M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm6.146-2.854a.5.5 0 0 1 .708 0L14 6.293l1.146-1.147a.5.5 0 0 1 .708.708L14.707 7l1.147 1.146a.5.5 0 0 1-.708.708L14 7.707l-1.146 1.147a.5.5 0 0 1-.708-.708L13.293 7l-1.147-1.146a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPhone = /*#__PURE__*/ makeIcon(\n  'Phone',\n  '<path fill-rule=\"evenodd\" d=\"M11 1H5a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM5 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H5z\"/><path fill-rule=\"evenodd\" d=\"M8 14a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPhoneFill = /*#__PURE__*/ makeIcon(\n  'PhoneFill',\n  '<path fill-rule=\"evenodd\" d=\"M3 2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V2zm6 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPhoneLandscape = /*#__PURE__*/ makeIcon(\n  'PhoneLandscape',\n  '<path fill-rule=\"evenodd\" d=\"M1 4.5v6a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-6a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1zm-1 6a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-6a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v6z\"/><path fill-rule=\"evenodd\" d=\"M14 7.5a1 1 0 1 0-2 0 1 1 0 0 0 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPhoneLandscapeFill = /*#__PURE__*/ makeIcon(\n  'PhoneLandscapeFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 12.5a2 2 0 0 1-2-2v-6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v6a2 2 0 0 1-2 2H2zm11-6a1 1 0 1 1 0 2 1 1 0 0 1 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPhoneVibrate = /*#__PURE__*/ makeIcon(\n  'PhoneVibrate',\n  '<path fill-rule=\"evenodd\" d=\"M10 3H6a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM6 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H6z\"/><path fill-rule=\"evenodd\" d=\"M8 12a1 1 0 1 0 0-2 1 1 0 0 0 0 2zM1.599 4.058a.5.5 0 0 1 .208.676A6.967 6.967 0 0 0 1 8c0 1.18.292 2.292.807 3.266a.5.5 0 0 1-.884.468A7.968 7.968 0 0 1 0 8c0-1.347.334-2.619.923-3.734a.5.5 0 0 1 .676-.208zm12.802 0a.5.5 0 0 1 .676.208A7.967 7.967 0 0 1 16 8a7.967 7.967 0 0 1-.923 3.734.5.5 0 0 1-.884-.468A6.967 6.967 0 0 0 15 8c0-1.18-.292-2.292-.807-3.266a.5.5 0 0 1 .208-.676zM3.057 5.534a.5.5 0 0 1 .284.648A4.986 4.986 0 0 0 3 8c0 .642.12 1.255.34 1.818a.5.5 0 1 1-.93.364A5.986 5.986 0 0 1 2 8c0-.769.145-1.505.41-2.182a.5.5 0 0 1 .647-.284zm9.886 0a.5.5 0 0 1 .648.284C13.855 6.495 14 7.231 14 8c0 .769-.145 1.505-.41 2.182a.5.5 0 0 1-.93-.364C12.88 9.255 13 8.642 13 8c0-.642-.12-1.255-.34-1.818a.5.5 0 0 1 .283-.648z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPieChart = /*#__PURE__*/ makeIcon(\n  'PieChart',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M7.5 7.793V1h1v6.5H15v1H8.207l-4.853 4.854-.708-.708L7.5 7.793z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPieChartFill = /*#__PURE__*/ makeIcon(\n  'PieChartFill',\n  '<path d=\"M15.985 8.5H8.207l-5.5 5.5a8 8 0 0 0 13.277-5.5zM2 13.292A8 8 0 0 1 7.5.015v7.778l-5.5 5.5zM8.5.015V7.5h7.485A8.001 8.001 0 0 0 8.5.015z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPip = /*#__PURE__*/ makeIcon(\n  'Pip',\n  '<path fill-rule=\"evenodd\" d=\"M0 3.5A1.5 1.5 0 0 1 1.5 2h13A1.5 1.5 0 0 1 16 3.5v9a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 12.5v-9zM1.5 3a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5h-13z\"/><path d=\"M8 8.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5v-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPipFill = /*#__PURE__*/ makeIcon(\n  'PipFill',\n  '<path fill-rule=\"evenodd\" d=\"M1.5 2A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2h-13zm7 6a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5h-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlay = /*#__PURE__*/ makeIcon(\n  'Play',\n  '<path fill-rule=\"evenodd\" d=\"M10.804 8L5 4.633v6.734L10.804 8zm.792-.696a.802.802 0 0 1 0 1.392l-6.363 3.692C4.713 12.69 4 12.345 4 11.692V4.308c0-.653.713-.998 1.233-.696l6.363 3.692z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlayBtn = /*#__PURE__*/ makeIcon(\n  'PlayBtn',\n  '<path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M6.271 5.055a.5.5 0 0 1 .52.038l3.5 2.5a.5.5 0 0 1 0 .814l-3.5 2.5A.5.5 0 0 1 6 10.5v-5a.5.5 0 0 1 .271-.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlayBtnFill = /*#__PURE__*/ makeIcon(\n  'PlayBtnFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm4.79 3.093A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407l3.5-2.5a.5.5 0 0 0 0-.814l-3.5-2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlayCircle = /*#__PURE__*/ makeIcon(\n  'PlayCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M6.271 5.055a.5.5 0 0 1 .52.038l3.5 2.5a.5.5 0 0 1 0 .814l-3.5 2.5A.5.5 0 0 1 6 10.5v-5a.5.5 0 0 1 .271-.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlayCircleFill = /*#__PURE__*/ makeIcon(\n  'PlayCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM6.79 5.093A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407l3.5-2.5a.5.5 0 0 0 0-.814l-3.5-2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlayFill = /*#__PURE__*/ makeIcon(\n  'PlayFill',\n  '<path d=\"M11.596 8.697l-6.363 3.692c-.54.313-1.233-.066-1.233-.697V4.308c0-.63.692-1.01 1.233-.696l6.363 3.692a.802.802 0 0 1 0 1.393z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlug = /*#__PURE__*/ makeIcon(\n  'Plug',\n  '<path fill-rule=\"evenodd\" d=\"M6 0a.5.5 0 0 1 .5.5V3h3V.5a.5.5 0 0 1 1 0V3h1a.5.5 0 0 1 .5.5v3A3.5 3.5 0 0 1 8.5 10c-.002.434-.01.845-.04 1.22-.041.514-.126 1.003-.317 1.424a2.083 2.083 0 0 1-.97 1.028C6.725 13.9 6.169 14 5.5 14c-.998 0-1.61.33-1.974.718A1.922 1.922 0 0 0 3 16H2c0-.616.232-1.367.797-1.968C3.374 13.42 4.261 13 5.5 13c.581 0 .962-.088 1.218-.219.241-.123.4-.3.514-.55.121-.266.193-.621.23-1.09.027-.34.035-.718.037-1.141A3.5 3.5 0 0 1 4 6.5v-3a.5.5 0 0 1 .5-.5h1V.5A.5.5 0 0 1 6 0zM5 4v2.5A2.5 2.5 0 0 0 7.5 9h1A2.5 2.5 0 0 0 11 6.5V4H5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlugFill = /*#__PURE__*/ makeIcon(\n  'PlugFill',\n  '<path fill-rule=\"evenodd\" d=\"M6 0a.5.5 0 0 1 .5.5V3h3V.5a.5.5 0 0 1 1 0V3h1a.5.5 0 0 1 .5.5v3A3.5 3.5 0 0 1 8.5 10c-.002.434-.01.845-.04 1.22-.041.514-.126 1.003-.317 1.424a2.083 2.083 0 0 1-.97 1.028C6.725 13.9 6.169 14 5.5 14c-.998 0-1.61.33-1.974.718A1.922 1.922 0 0 0 3 16H2c0-.616.232-1.367.797-1.968C3.374 13.42 4.261 13 5.5 13c.581 0 .962-.088 1.218-.219.241-.123.4-.3.514-.55.121-.266.193-.621.23-1.09.027-.34.035-.718.037-1.141A3.5 3.5 0 0 1 4 6.5v-3a.5.5 0 0 1 .5-.5h1V.5A.5.5 0 0 1 6 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlus = /*#__PURE__*/ makeIcon(\n  'Plus',\n  '<path fill-rule=\"evenodd\" d=\"M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlusCircle = /*#__PURE__*/ makeIcon(\n  'PlusCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlusCircleFill = /*#__PURE__*/ makeIcon(\n  'PlusCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM8.5 4.5a.5.5 0 0 0-1 0v3h-3a.5.5 0 0 0 0 1h3v3a.5.5 0 0 0 1 0v-3h3a.5.5 0 0 0 0-1h-3v-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlusSquare = /*#__PURE__*/ makeIcon(\n  'PlusSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlusSquareFill = /*#__PURE__*/ makeIcon(\n  'PlusSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5a.5.5 0 0 0-1 0v3h-3a.5.5 0 0 0 0 1h3v3a.5.5 0 0 0 1 0v-3h3a.5.5 0 0 0 0-1h-3v-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPower = /*#__PURE__*/ makeIcon(\n  'Power',\n  '<path fill-rule=\"evenodd\" d=\"M5.578 4.437a5 5 0 1 0 4.922.044l.5-.866a6 6 0 1 1-5.908-.053l.486.875z\"/><path fill-rule=\"evenodd\" d=\"M7.5 8V1h1v7h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPrinter = /*#__PURE__*/ makeIcon(\n  'Printer',\n  '<path d=\"M11 2H5a1 1 0 0 0-1 1v2H3V3a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v2h-1V3a1 1 0 0 0-1-1zm3 4H2a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h1v1H2a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1z\"/><path fill-rule=\"evenodd\" d=\"M11 9H5a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1zM5 8a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H5z\"/><path d=\"M3 7.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPrinterFill = /*#__PURE__*/ makeIcon(\n  'PrinterFill',\n  '<path d=\"M5 1a2 2 0 0 0-2 2v1h10V3a2 2 0 0 0-2-2H5z\"/><path fill-rule=\"evenodd\" d=\"M11 9H5a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1z\"/><path fill-rule=\"evenodd\" d=\"M0 7a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2h-1v-2a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v2H2a2 2 0 0 1-2-2V7zm2.5 1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPuzzle = /*#__PURE__*/ makeIcon(\n  'Puzzle',\n  '<path d=\"M4.605 2.5V2v.5zM3.61 3.6l.498-.043V3.55l-.498.05zM7 2.5h.5A.5.5 0 0 0 7 2v.5zm-.676 1.454l.304.397-.304-.397zm3.352 0l-.304.397.304-.397zM9 2.5V2a.5.5 0 0 0-.5.5H9zm3.39 1.1l-.498-.05v.007l.498.043zM12.1 7l-.498-.043a.5.5 0 0 0 .498.543V7zm1.854-.676l.397.304-.397-.304zm0 3.352l.397-.304-.397.304zM12.1 9v-.5a.5.5 0 0 0-.498.542L12.1 9zm.29 3.4l-.498.043v.007l.498-.05zM9 13.5h-.5a.5.5 0 0 0 .5.5v-.5zm.676-1.454l-.304-.397.304.397zm-3.352 0l.304-.397-.304.397zM7 13.5v.5a.5.5 0 0 0 .5-.5H7zm-2.395 0V13v.5zm-.995-1.1l.498.05v-.007L3.61 12.4zM3.9 9l.498.042A.5.5 0 0 0 3.9 8.5V9zm-1.854.676l-.397-.304.397.304zm0-3.352l-.397.304.397-.304zM3.9 7v.5a.5.5 0 0 0 .498-.543L3.9 7zm.705-5a1.5 1.5 0 0 0-1.493 1.65l.995-.1A.5.5 0 0 1 4.605 3V2zM7 2H4.605v1H7V2zm.5.882V2.5h-1v.382h1zm-.872 1.469c.375-.287.872-.773.872-1.469h-1c0 .195-.147.42-.48.675l.608.794zM6.5 4.5l.001-.006a.113.113 0 0 1 .012-.025.459.459 0 0 1 .115-.118l-.608-.794c-.274.21-.52.528-.52.943h1zM8 5c-.491 0-.912-.1-1.19-.24a.86.86 0 0 1-.271-.194.213.213 0 0 1-.039-.063V4.5h-1c0 .568.447.947.862 1.154C6.807 5.877 7.387 6 8 6V5zm1.5-.5v.003a.213.213 0 0 1-.039.064.86.86 0 0 1-.27.193C8.91 4.9 8.49 5 8 5v1c.613 0 1.193-.123 1.638-.346.415-.207.862-.586.862-1.154h-1zm-.128-.15c.065.05.099.092.115.119.008.013.01.021.012.025L9.5 4.5h1c0-.415-.246-.733-.52-.943l-.608.794zM8.5 2.883c0 .696.497 1.182.872 1.469l.608-.794c-.333-.255-.48-.48-.48-.675h-1zm0-.382v.382h1V2.5h-1zm2.895-.5H9v1h2.395V2zm1.493 1.65A1.5 1.5 0 0 0 11.395 2v1a.5.5 0 0 1 .498.55l.995.1zm-.29 3.392l.29-3.4-.996-.085-.29 3.4.996.085zm.284-.542H12.1v1h.782v-1zm.675-.48c-.255.333-.48.48-.675.48v1c.696 0 1.182-.497 1.469-.872l-.794-.608zm.943-.52c-.415 0-.733.246-.943.52l.794.608a.459.459 0 0 1 .118-.115.113.113 0 0 1 .025-.012L14.5 6.5v-1zM16 8c0-.613-.123-1.193-.346-1.638-.207-.415-.586-.862-1.154-.862v1h.003l.01.003a.237.237 0 0 1 .053.036.86.86 0 0 1 .194.27c.14.28.24.7.24 1.191h1zm-1.5 2.5c.568 0 .947-.447 1.154-.862C15.877 9.193 16 8.613 16 8h-1c0 .491-.1.912-.24 1.19a.86.86 0 0 1-.194.271.214.214 0 0 1-.063.039H14.5v1zm-.943-.52c.21.274.528.52.943.52v-1l-.006-.001a.113.113 0 0 1-.025-.012.458.458 0 0 1-.118-.115l-.794.608zm-.675-.48c.195 0 .42.147.675.48l.794-.608c-.287-.375-.773-.872-1.469-.872v1zm-.782 0h.782v-1H12.1v1zm.788 2.858l-.29-3.4-.996.084.29 3.401.996-.085zM11.395 14a1.5 1.5 0 0 0 1.493-1.65l-.995.1a.5.5 0 0 1-.498.55v1zM9 14h2.395v-1H9v1zm.5-.5v-.382h-1v.382h1zm0-.382c0-.195.147-.42.48-.675l-.608-.794c-.375.287-.872.773-.872 1.469h1zm.48-.675c.274-.21.52-.528.52-.943h-1l-.001.006a.113.113 0 0 1-.012.025.459.459 0 0 1-.115.118l.608.794zm.52-.943c0-.568-.447-.947-.862-1.154C9.193 10.123 8.613 10 8 10v1c.492 0 .912.1 1.19.24.14.07.226.14.271.194a.214.214 0 0 1 .039.063v.003h1zM8 10c-.613 0-1.193.123-1.638.346-.415.207-.862.586-.862 1.154h1v-.003l.003-.01a.214.214 0 0 1 .036-.053.859.859 0 0 1 .27-.194C7.09 11.1 7.51 11 8 11v-1zm-2.5 1.5c0 .415.246.733.52.943l.608-.794a.459.459 0 0 1-.115-.118.113.113 0 0 1-.012-.025L6.5 11.5h-1zm.52.943c.333.255.48.48.48.675h1c0-.696-.497-1.182-.872-1.469l-.608.794zm.48.675v.382h1v-.382h-1zM4.605 14H7v-1H4.605v1zm-1.493-1.65A1.5 1.5 0 0 0 4.605 14v-1a.5.5 0 0 1-.498-.55l-.995-.1zm.29-3.393l-.29 3.401.996.085.29-3.4-.996-.086zm-.284.543H3.9v-1h-.782v1zm-.675.48c.255-.333.48-.48.675-.48v-1c-.696 0-1.182.497-1.469.872l.794.608zm-.943.52c.415 0 .733-.246.943-.52l-.794-.608a.459.459 0 0 1-.118.115.112.112 0 0 1-.025.012L1.5 9.5v1zM0 8c0 .613.123 1.193.346 1.638.207.415.586.862 1.154.862v-1h-.003a.213.213 0 0 1-.064-.039.86.86 0 0 1-.193-.27C1.1 8.91 1 8.49 1 8H0zm1.5-2.5c-.568 0-.947.447-1.154.862C.123 6.807 0 7.387 0 8h1c0-.492.1-.912.24-1.19a.86.86 0 0 1 .194-.271.213.213 0 0 1 .063-.039H1.5v-1zm.943.52c-.21-.274-.528-.52-.943-.52v1l.006.001a.112.112 0 0 1 .025.012c.027.016.068.05.118.115l.794-.608zm.675.48c-.195 0-.42-.147-.675-.48l-.794.608c.287.375.773.872 1.469.872v-1zm.782 0h-.782v1H3.9v-1zm-.788-2.858l.29 3.4.996-.085-.29-3.4-.996.085z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPuzzleFill = /*#__PURE__*/ makeIcon(\n  'PuzzleFill',\n  '<path fill-rule=\"evenodd\" d=\"M3.112 3.645A1.5 1.5 0 0 1 4.605 2H7a.5.5 0 0 1 .5.5v.382c0 .696-.497 1.182-.872 1.469a.459.459 0 0 0-.115.118.113.113 0 0 0-.012.025L6.5 4.5v.003l.003.01c.004.01.014.028.036.053a.86.86 0 0 0 .27.194C7.09 4.9 7.51 5 8 5c.492 0 .912-.1 1.19-.24a.86.86 0 0 0 .271-.194.213.213 0 0 0 .036-.054l.003-.01v-.008a.112.112 0 0 0-.012-.025.459.459 0 0 0-.115-.118c-.375-.287-.872-.773-.872-1.469V2.5A.5.5 0 0 1 9 2h2.395a1.5 1.5 0 0 1 1.493 1.645L12.645 6.5h.237c.195 0 .42-.147.675-.48.21-.274.528-.52.943-.52.568 0 .947.447 1.154.862C15.877 6.807 16 7.387 16 8s-.123 1.193-.346 1.638c-.207.415-.586.862-1.154.862-.415 0-.733-.246-.943-.52-.255-.333-.48-.48-.675-.48h-.237l.243 2.855A1.5 1.5 0 0 1 11.395 14H9a.5.5 0 0 1-.5-.5v-.382c0-.696.497-1.182.872-1.469a.459.459 0 0 0 .115-.118.113.113 0 0 0 .012-.025L9.5 11.5v-.003l-.003-.01a.214.214 0 0 0-.036-.053.859.859 0 0 0-.27-.194C8.91 11.1 8.49 11 8 11c-.491 0-.912.1-1.19.24a.859.859 0 0 0-.271.194.214.214 0 0 0-.036.054l-.003.01v.002l.001.006a.113.113 0 0 0 .012.025c.016.027.05.068.115.118.375.287.872.773.872 1.469v.382a.5.5 0 0 1-.5.5H4.605a1.5 1.5 0 0 1-1.493-1.645L3.356 9.5h-.238c-.195 0-.42.147-.675.48-.21.274-.528.52-.943.52-.568 0-.947-.447-1.154-.862C.123 9.193 0 8.613 0 8s.123-1.193.346-1.638C.553 5.947.932 5.5 1.5 5.5c.415 0 .733.246.943.52.255.333.48.48.675.48h.238l-.244-2.855z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconQuestion = /*#__PURE__*/ makeIcon(\n  'Question',\n  '<path d=\"M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionCircle = /*#__PURE__*/ makeIcon(\n  'QuestionCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionCircleFill = /*#__PURE__*/ makeIcon(\n  'QuestionCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.496 6.033a.237.237 0 0 1-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 0 1-.25.25h-.81a.25.25 0 0 1-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25h-.825zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionDiamond = /*#__PURE__*/ makeIcon(\n  'QuestionDiamond',\n  '<path fill-rule=\"evenodd\" d=\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.482 1.482 0 0 1 0-2.098L6.95.435zm1.4.7a.495.495 0 0 0-.7 0L1.134 7.65a.495.495 0 0 0 0 .7l6.516 6.516a.495.495 0 0 0 .7 0l6.516-6.516a.495.495 0 0 0 0-.7L8.35 1.134z\"/><path d=\"M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionDiamondFill = /*#__PURE__*/ makeIcon(\n  'QuestionDiamondFill',\n  '<path fill-rule=\"evenodd\" d=\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098L9.05.435zM5.495 6.033a.237.237 0 0 1-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 0 1-.25.25h-.81a.25.25 0 0 1-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25h-.825zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionOctagon = /*#__PURE__*/ makeIcon(\n  'QuestionOctagon',\n  '<path fill-rule=\"evenodd\" d=\"M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z\"/><path d=\"M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionOctagonFill = /*#__PURE__*/ makeIcon(\n  'QuestionOctagonFill',\n  '<path fill-rule=\"evenodd\" d=\"M11.46.146A.5.5 0 0 0 11.107 0H4.893a.5.5 0 0 0-.353.146L.146 4.54A.5.5 0 0 0 0 4.893v6.214a.5.5 0 0 0 .146.353l4.394 4.394a.5.5 0 0 0 .353.146h6.214a.5.5 0 0 0 .353-.146l4.394-4.394a.5.5 0 0 0 .146-.353V4.893a.5.5 0 0 0-.146-.353L11.46.146zM5.496 6.033a.237.237 0 0 1-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 0 1-.25.25h-.81a.25.25 0 0 1-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25h-.825zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionSquare = /*#__PURE__*/ makeIcon(\n  'QuestionSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path d=\"M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionSquareFill = /*#__PURE__*/ makeIcon(\n  'QuestionSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm3.496 6.033a.237.237 0 0 1-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 0 1-.25.25h-.81a.25.25 0 0 1-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25h-.825zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReceipt = /*#__PURE__*/ makeIcon(\n  'Receipt',\n  '<path fill-rule=\"evenodd\" d=\"M1.92.506a.5.5 0 0 1 .434.14L3 1.293l.646-.647a.5.5 0 0 1 .708 0L5 1.293l.646-.647a.5.5 0 0 1 .708 0L7 1.293l.646-.647a.5.5 0 0 1 .708 0L9 1.293l.646-.647a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .801.13l.5 1A.5.5 0 0 1 15 2v12a.5.5 0 0 1-.053.224l-.5 1a.5.5 0 0 1-.8.13L13 14.707l-.646.647a.5.5 0 0 1-.708 0L11 14.707l-.646.647a.5.5 0 0 1-.708 0L9 14.707l-.646.647a.5.5 0 0 1-.708 0L7 14.707l-.646.647a.5.5 0 0 1-.708 0L5 14.707l-.646.647a.5.5 0 0 1-.708 0L3 14.707l-.646.647a.5.5 0 0 1-.801-.13l-.5-1A.5.5 0 0 1 1 14V2a.5.5 0 0 1 .053-.224l.5-1a.5.5 0 0 1 .367-.27zm.217 1.338L2 2.118v11.764l.137.274.51-.51a.5.5 0 0 1 .707 0l.646.647.646-.646a.5.5 0 0 1 .708 0l.646.646.646-.646a.5.5 0 0 1 .708 0l.646.646.646-.646a.5.5 0 0 1 .708 0l.646.646.646-.646a.5.5 0 0 1 .708 0l.646.646.646-.646a.5.5 0 0 1 .708 0l.509.509.137-.274V2.118l-.137-.274-.51.51a.5.5 0 0 1-.707 0L12 1.707l-.646.647a.5.5 0 0 1-.708 0L10 1.707l-.646.647a.5.5 0 0 1-.708 0L8 1.707l-.646.647a.5.5 0 0 1-.708 0L6 1.707l-.646.647a.5.5 0 0 1-.708 0L4 1.707l-.646.647a.5.5 0 0 1-.708 0l-.509-.51z\"/><path fill-rule=\"evenodd\" d=\"M3 4.5a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm8-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReceiptCutoff = /*#__PURE__*/ makeIcon(\n  'ReceiptCutoff',\n  '<path fill-rule=\"evenodd\" d=\"M1.92.506a.5.5 0 0 1 .434.14L3 1.293l.646-.647a.5.5 0 0 1 .708 0L5 1.293l.646-.647a.5.5 0 0 1 .708 0L7 1.293l.646-.647a.5.5 0 0 1 .708 0L9 1.293l.646-.647a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .801.13l.5 1A.5.5 0 0 1 15 2v13h-1V2.118l-.137-.274-.51.51a.5.5 0 0 1-.707 0L12 1.707l-.646.647a.5.5 0 0 1-.708 0L10 1.707l-.646.647a.5.5 0 0 1-.708 0L8 1.707l-.646.647a.5.5 0 0 1-.708 0L6 1.707l-.646.647a.5.5 0 0 1-.708 0L4 1.707l-.646.647a.5.5 0 0 1-.708 0l-.509-.51L2 2.118V15H1V2a.5.5 0 0 1 .053-.224l.5-1a.5.5 0 0 1 .367-.27zM0 15.5a.5.5 0 0 1 .5-.5h15a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5z\"/><path fill-rule=\"evenodd\" d=\"M3 4.5a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm8-8a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReception0 = /*#__PURE__*/ makeIcon(\n  'Reception0',\n  '<path d=\"M0 13.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReception1 = /*#__PURE__*/ makeIcon(\n  'Reception1',\n  '<path d=\"M0 11.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-2zm4 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReception2 = /*#__PURE__*/ makeIcon(\n  'Reception2',\n  '<path d=\"M0 11.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-2zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-5zm4 5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReception3 = /*#__PURE__*/ makeIcon(\n  'Reception3',\n  '<path d=\"M0 11.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-2zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-5zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-8zm4 8a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReception4 = /*#__PURE__*/ makeIcon(\n  'Reception4',\n  '<path d=\"M0 11.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-2zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-5zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-8zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v11a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecord = /*#__PURE__*/ makeIcon(\n  'Record',\n  '<path fill-rule=\"evenodd\" d=\"M8 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm0 1A5 5 0 1 0 8 3a5 5 0 0 0 0 10z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecord2 = /*#__PURE__*/ makeIcon(\n  'Record2',\n  '<path fill-rule=\"evenodd\" d=\"M8 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm0 1A5 5 0 1 0 8 3a5 5 0 0 0 0 10z\"/><path d=\"M10 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecord2Fill = /*#__PURE__*/ makeIcon(\n  'Record2Fill',\n  '<path d=\"M10 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"/><path fill-rule=\"evenodd\" d=\"M8 13A5 5 0 1 0 8 3a5 5 0 0 0 0 10zm0-2a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecordBtn = /*#__PURE__*/ makeIcon(\n  'RecordBtn',\n  '<path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path d=\"M11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecordBtnFill = /*#__PURE__*/ makeIcon(\n  'RecordBtnFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm6 9a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecordCircle = /*#__PURE__*/ makeIcon(\n  'RecordCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecordCircleFill = /*#__PURE__*/ makeIcon(\n  'RecordCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-8 3a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecordFill = /*#__PURE__*/ makeIcon(\n  'RecordFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 13A5 5 0 1 0 8 3a5 5 0 0 0 0 10z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReply = /*#__PURE__*/ makeIcon(\n  'Reply',\n  '<path fill-rule=\"evenodd\" d=\"M9.502 5.013a.144.144 0 0 0-.202.134V6.3a.5.5 0 0 1-.5.5c-.667 0-2.013.005-3.3.822-.984.624-1.99 1.76-2.595 3.876C3.925 10.515 5.09 9.982 6.11 9.7a8.741 8.741 0 0 1 1.921-.306 7.403 7.403 0 0 1 .798.008h.013l.005.001h.001L8.8 9.9l.05-.498a.5.5 0 0 1 .45.498v1.153c0 .108.11.176.202.134l3.984-2.933a.494.494 0 0 1 .042-.028.147.147 0 0 0 0-.252.494.494 0 0 1-.042-.028L9.502 5.013zM8.3 10.386a7.745 7.745 0 0 0-1.923.277c-1.326.368-2.896 1.201-3.94 3.08a.5.5 0 0 1-.933-.305c.464-3.71 1.886-5.662 3.46-6.66 1.245-.79 2.527-.942 3.336-.971v-.66a1.144 1.144 0 0 1 1.767-.96l3.994 2.94a1.147 1.147 0 0 1 0 1.946l-3.994 2.94a1.144 1.144 0 0 1-1.767-.96v-.667z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReplyAll = /*#__PURE__*/ makeIcon(\n  'ReplyAll',\n  '<path fill-rule=\"evenodd\" d=\"M8.002 5.013a.144.144 0 0 0-.202.134V6.3a.5.5 0 0 1-.5.5c-.667 0-2.013.005-3.3.822-.984.624-1.99 1.76-2.595 3.876C2.425 10.515 3.59 9.982 4.61 9.7a8.741 8.741 0 0 1 1.921-.306 7.403 7.403 0 0 1 .798.008h.013l.005.001h.001L7.3 9.9l.05-.498a.5.5 0 0 1 .45.498v1.153c0 .108.11.176.202.134l3.984-2.933a.494.494 0 0 1 .042-.028.147.147 0 0 0 0-.252.494.494 0 0 1-.042-.028L8.002 5.013zM6.8 10.386a7.745 7.745 0 0 0-1.923.277c-1.326.368-2.896 1.201-3.94 3.08a.5.5 0 0 1-.933-.305c.464-3.71 1.886-5.662 3.46-6.66 1.245-.79 2.527-.942 3.336-.971v-.66a1.144 1.144 0 0 1 1.767-.96l3.994 2.94a1.147 1.147 0 0 1 0 1.946l-3.994 2.94a1.144 1.144 0 0 1-1.767-.96v-.667z\"/><path fill-rule=\"evenodd\" d=\"M10.868 4.293a.5.5 0 0 1 .7-.106l3.993 2.94a1.147 1.147 0 0 1 0 1.946l-3.994 2.94a.5.5 0 0 1-.593-.805l4.012-2.954a.493.493 0 0 1 .042-.028.147.147 0 0 0 0-.252.496.496 0 0 1-.042-.028l-4.012-2.954a.5.5 0 0 1-.106-.699z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReplyAllFill = /*#__PURE__*/ makeIcon(\n  'ReplyAllFill',\n  '<path d=\"M8.079 11.9l4.568-3.281a.719.719 0 0 0 0-1.238L8.079 4.1A.716.716 0 0 0 7 4.719V6c-1.5 0-6 0-7 8 2.5-4.5 7-4 7-4v1.281c0 .56.606.898 1.079.62z\"/><path fill-rule=\"evenodd\" d=\"M10.868 4.293a.5.5 0 0 1 .7-.106l3.993 2.94a1.147 1.147 0 0 1 0 1.946l-3.994 2.94a.5.5 0 0 1-.593-.805l4.012-2.954a.493.493 0 0 1 .042-.028.147.147 0 0 0 0-.252.496.496 0 0 1-.042-.028l-4.012-2.954a.5.5 0 0 1-.106-.699z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReplyFill = /*#__PURE__*/ makeIcon(\n  'ReplyFill',\n  '<path d=\"M9.079 11.9l4.568-3.281a.719.719 0 0 0 0-1.238L9.079 4.1A.716.716 0 0 0 8 4.719V6c-1.5 0-6 0-7 8 2.5-4.5 7-4 7-4v1.281c0 .56.606.898 1.079.62z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRss = /*#__PURE__*/ makeIcon(\n  'Rss',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path d=\"M5.5 12a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/><path fill-rule=\"evenodd\" d=\"M2.5 3.5a1 1 0 0 1 1-1c5.523 0 10 4.477 10 10a1 1 0 1 1-2 0 8 8 0 0 0-8-8 1 1 0 0 1-1-1zm0 4a1 1 0 0 1 1-1 6 6 0 0 1 6 6 1 1 0 1 1-2 0 4 4 0 0 0-4-4 1 1 0 0 1-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRssFill = /*#__PURE__*/ makeIcon(\n  'RssFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm1.5 2.5a1 1 0 0 0 0 2 8 8 0 0 1 8 8 1 1 0 1 0 2 0c0-5.523-4.477-10-10-10zm0 4a1 1 0 0 0 0 2 4 4 0 0 1 4 4 1 1 0 1 0 2 0 6 6 0 0 0-6-6zm.5 7a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconScissors = /*#__PURE__*/ makeIcon(\n  'Scissors',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 3.5c-.614-.884-.074-1.962.858-2.5L8 7.226 11.642 1c.932.538 1.472 1.616.858 2.5L8.81 8.61l1.556 2.661a2.5 2.5 0 1 1-.794.637L8 9.73l-1.572 2.177a2.5 2.5 0 1 1-.794-.637L7.19 8.61 3.5 3.5zm2.5 10a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm7 0a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconScrewdriver = /*#__PURE__*/ makeIcon(\n  'Screwdriver',\n  '<path fill-rule=\"evenodd\" d=\"M0 1l1-1 3.081 2.2a1 1 0 0 1 .419.815v.07a1 1 0 0 0 .293.708L10.5 9.5l.914-.305a1 1 0 0 1 1.023.242l3.356 3.356a1 1 0 0 1 0 1.414l-1.586 1.586a1 1 0 0 1-1.414 0l-3.356-3.356a1 1 0 0 1-.242-1.023L9.5 10.5 3.793 4.793a1 1 0 0 0-.707-.293h-.071a1 1 0 0 1-.814-.419L0 1zm11.354 9.646a.5.5 0 0 0-.708.708l3 3a.5.5 0 0 0 .708-.708l-3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSearch = /*#__PURE__*/ makeIcon(\n  'Search',\n  '<path fill-rule=\"evenodd\" d=\"M10.442 10.442a1 1 0 0 1 1.415 0l3.85 3.85a1 1 0 0 1-1.414 1.415l-3.85-3.85a1 1 0 0 1 0-1.415z\"/><path fill-rule=\"evenodd\" d=\"M6.5 12a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11zM13 6.5a6.5 6.5 0 1 1-13 0 6.5 6.5 0 0 1 13 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSegmentedNav = /*#__PURE__*/ makeIcon(\n  'SegmentedNav',\n  '<path fill-rule=\"evenodd\" d=\"M14 5H6v4h8a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zM2 4a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M10 9V5h1v4h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconServer = /*#__PURE__*/ makeIcon(\n  'Server',\n  '<path fill-rule=\"evenodd\" d=\"M1.333 2.667C1.333 1.194 4.318 0 8 0s6.667 1.194 6.667 2.667V4C14.665 5.474 11.68 6.667 8 6.667 4.318 6.667 1.333 5.473 1.333 4V2.667zm0 3.667v3C1.333 10.805 4.318 12 8 12c3.68 0 6.665-1.193 6.667-2.665V6.334c-.43.32-.931.58-1.458.79C11.81 7.684 9.967 8 8 8c-1.967 0-3.81-.317-5.21-.876a6.508 6.508 0 0 1-1.457-.79zm13.334 5.334c-.43.319-.931.578-1.458.789-1.4.56-3.242.876-5.209.876-1.967 0-3.81-.316-5.21-.876a6.51 6.51 0 0 1-1.457-.79v1.666C1.333 14.806 4.318 16 8 16s6.667-1.194 6.667-2.667v-1.665z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShare = /*#__PURE__*/ makeIcon(\n  'Share',\n  '<path fill-rule=\"evenodd\" d=\"M13.5 1a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3zM11 2.5a2.5 2.5 0 1 1 .603 1.628l-6.718 3.12a2.499 2.499 0 0 1 0 1.504l6.718 3.12a2.5 2.5 0 1 1-.488.876l-6.718-3.12a2.5 2.5 0 1 1 0-3.256l6.718-3.12A2.5 2.5 0 0 1 11 2.5zm-8.5 4a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3zm11 5.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShareFill = /*#__PURE__*/ makeIcon(\n  'ShareFill',\n  '<path fill-rule=\"evenodd\" d=\"M11 2.5a2.5 2.5 0 1 1 .603 1.628l-6.718 3.12a2.499 2.499 0 0 1 0 1.504l6.718 3.12a2.5 2.5 0 1 1-.488.876l-6.718-3.12a2.5 2.5 0 1 1 0-3.256l6.718-3.12A2.5 2.5 0 0 1 11 2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShield = /*#__PURE__*/ makeIcon(\n  'Shield',\n  '<path fill-rule=\"evenodd\" d=\"M5.443 1.991a60.17 60.17 0 0 0-2.725.802.454.454 0 0 0-.315.366C1.87 7.056 3.1 9.9 4.567 11.773c.736.94 1.533 1.636 2.197 2.093.333.228.626.394.857.5.116.053.21.089.282.11A.73.73 0 0 0 8 14.5c.007-.001.038-.005.097-.023.072-.022.166-.058.282-.111.23-.106.525-.272.857-.5a10.197 10.197 0 0 0 2.197-2.093C12.9 9.9 14.13 7.056 13.597 3.159a.454.454 0 0 0-.315-.366c-.626-.2-1.682-.526-2.725-.802C9.491 1.71 8.51 1.5 8 1.5c-.51 0-1.49.21-2.557.491zm-.256-.966C6.23.749 7.337.5 8 .5c.662 0 1.77.249 2.813.525a61.09 61.09 0 0 1 2.772.815c.528.168.926.623 1.003 1.184.573 4.197-.756 7.307-2.367 9.365a11.191 11.191 0 0 1-2.418 2.3 6.942 6.942 0 0 1-1.007.586c-.27.124-.558.225-.796.225s-.526-.101-.796-.225a6.908 6.908 0 0 1-1.007-.586 11.192 11.192 0 0 1-2.417-2.3C2.167 10.331.839 7.221 1.412 3.024A1.454 1.454 0 0 1 2.415 1.84a61.11 61.11 0 0 1 2.772-.815z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldCheck = /*#__PURE__*/ makeIcon(\n  'ShieldCheck',\n  '<path fill-rule=\"evenodd\" d=\"M5.443 1.991a60.17 60.17 0 0 0-2.725.802.454.454 0 0 0-.315.366C1.87 7.056 3.1 9.9 4.567 11.773c.736.94 1.533 1.636 2.197 2.093.333.228.626.394.857.5.116.053.21.089.282.11A.73.73 0 0 0 8 14.5c.007-.001.038-.005.097-.023.072-.022.166-.058.282-.111.23-.106.525-.272.857-.5a10.197 10.197 0 0 0 2.197-2.093C12.9 9.9 14.13 7.056 13.597 3.159a.454.454 0 0 0-.315-.366c-.626-.2-1.682-.526-2.725-.802C9.491 1.71 8.51 1.5 8 1.5c-.51 0-1.49.21-2.557.491zm-.256-.966C6.23.749 7.337.5 8 .5c.662 0 1.77.249 2.813.525a61.09 61.09 0 0 1 2.772.815c.528.168.926.623 1.003 1.184.573 4.197-.756 7.307-2.367 9.365a11.191 11.191 0 0 1-2.418 2.3 6.942 6.942 0 0 1-1.007.586c-.27.124-.558.225-.796.225s-.526-.101-.796-.225a6.908 6.908 0 0 1-1.007-.586 11.192 11.192 0 0 1-2.417-2.3C2.167 10.331.839 7.221 1.412 3.024A1.454 1.454 0 0 1 2.415 1.84a61.11 61.11 0 0 1 2.772-.815z\"/><path fill-rule=\"evenodd\" d=\"M10.854 6.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 8.793l2.646-2.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldExclamation = /*#__PURE__*/ makeIcon(\n  'ShieldExclamation',\n  '<path fill-rule=\"evenodd\" d=\"M5.443 1.991a60.17 60.17 0 0 0-2.725.802.454.454 0 0 0-.315.366C1.87 7.056 3.1 9.9 4.567 11.773c.736.94 1.533 1.636 2.197 2.093.333.228.626.394.857.5.116.053.21.089.282.11A.73.73 0 0 0 8 14.5c.007-.001.038-.005.097-.023.072-.022.166-.058.282-.111.23-.106.525-.272.857-.5a10.197 10.197 0 0 0 2.197-2.093C12.9 9.9 14.13 7.056 13.597 3.159a.454.454 0 0 0-.315-.366c-.626-.2-1.682-.526-2.725-.802C9.491 1.71 8.51 1.5 8 1.5c-.51 0-1.49.21-2.557.491zm-.256-.966C6.23.749 7.337.5 8 .5c.662 0 1.77.249 2.813.525a61.09 61.09 0 0 1 2.772.815c.528.168.926.623 1.003 1.184.573 4.197-.756 7.307-2.367 9.365a11.191 11.191 0 0 1-2.418 2.3 6.942 6.942 0 0 1-1.007.586c-.27.124-.558.225-.796.225s-.526-.101-.796-.225a6.908 6.908 0 0 1-1.007-.586 11.192 11.192 0 0 1-2.417-2.3C2.167 10.331.839 7.221 1.412 3.024A1.454 1.454 0 0 1 2.415 1.84a61.11 61.11 0 0 1 2.772-.815z\"/><path d=\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFill = /*#__PURE__*/ makeIcon(\n  'ShieldFill',\n  '<path fill-rule=\"evenodd\" d=\"M5.187 1.025C6.23.749 7.337.5 8 .5c.662 0 1.77.249 2.813.525a61.09 61.09 0 0 1 2.772.815c.528.168.926.623 1.003 1.184.573 4.197-.756 7.307-2.367 9.365a11.191 11.191 0 0 1-2.418 2.3 6.942 6.942 0 0 1-1.007.586c-.27.124-.558.225-.796.225s-.526-.101-.796-.225a6.908 6.908 0 0 1-1.007-.586 11.192 11.192 0 0 1-2.417-2.3C2.167 10.331.839 7.221 1.412 3.024A1.454 1.454 0 0 1 2.415 1.84a61.11 61.11 0 0 1 2.772-.815z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillCheck = /*#__PURE__*/ makeIcon(\n  'ShieldFillCheck',\n  '<path fill-rule=\"evenodd\" d=\"M8 .5c-.662 0-1.77.249-2.813.525a61.11 61.11 0 0 0-2.772.815 1.454 1.454 0 0 0-1.003 1.184c-.573 4.197.756 7.307 2.368 9.365a11.192 11.192 0 0 0 2.417 2.3c.371.256.715.451 1.007.586.27.124.558.225.796.225s.527-.101.796-.225c.292-.135.636-.33 1.007-.586a11.191 11.191 0 0 0 2.418-2.3c1.611-2.058 2.94-5.168 2.367-9.365a1.454 1.454 0 0 0-1.003-1.184 61.09 61.09 0 0 0-2.772-.815C9.77.749 8.663.5 8 .5zm2.854 6.354a.5.5 0 0 0-.708-.708L7.5 8.793 6.354 7.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillExclamation = /*#__PURE__*/ makeIcon(\n  'ShieldFillExclamation',\n  '<path fill-rule=\"evenodd\" d=\"M8 .5c-.662 0-1.77.249-2.813.525a61.11 61.11 0 0 0-2.772.815 1.454 1.454 0 0 0-1.003 1.184c-.573 4.197.756 7.307 2.368 9.365a11.192 11.192 0 0 0 2.417 2.3c.371.256.715.451 1.007.586.27.124.558.225.796.225s.527-.101.796-.225c.292-.135.636-.33 1.007-.586a11.191 11.191 0 0 0 2.418-2.3c1.611-2.058 2.94-5.168 2.367-9.365a1.454 1.454 0 0 0-1.003-1.184 61.09 61.09 0 0 0-2.772-.815C9.77.749 8.663.5 8 .5zM8 4a.905.905 0 0 0-.9.995l.35 3.507a.553.553 0 0 0 1.1 0l.35-3.507A.905.905 0 0 0 8 4zm.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillMinus = /*#__PURE__*/ makeIcon(\n  'ShieldFillMinus',\n  '<path fill-rule=\"evenodd\" d=\"M8 .5c-.662 0-1.77.249-2.813.525a61.11 61.11 0 0 0-2.772.815 1.454 1.454 0 0 0-1.003 1.184c-.573 4.197.756 7.307 2.368 9.365a11.192 11.192 0 0 0 2.417 2.3c.371.256.715.451 1.007.586.27.124.558.225.796.225s.527-.101.796-.225c.292-.135.636-.33 1.007-.586a11.191 11.191 0 0 0 2.418-2.3c1.611-2.058 2.94-5.168 2.367-9.365a1.454 1.454 0 0 0-1.003-1.184 61.09 61.09 0 0 0-2.772-.815C9.77.749 8.663.5 8 .5zm-2 7a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1H6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillPlus = /*#__PURE__*/ makeIcon(\n  'ShieldFillPlus',\n  '<path fill-rule=\"evenodd\" d=\"M8 .5c-.662 0-1.77.249-2.813.525a61.11 61.11 0 0 0-2.772.815 1.454 1.454 0 0 0-1.003 1.184c-.573 4.197.756 7.307 2.368 9.365a11.192 11.192 0 0 0 2.417 2.3c.371.256.715.451 1.007.586.27.124.558.225.796.225s.527-.101.796-.225c.292-.135.636-.33 1.007-.586a11.191 11.191 0 0 0 2.418-2.3c1.611-2.058 2.94-5.168 2.367-9.365a1.454 1.454 0 0 0-1.003-1.184 61.09 61.09 0 0 0-2.772-.815C9.77.749 8.663.5 8 .5zM8.5 6a.5.5 0 0 0-1 0v1.5H6a.5.5 0 0 0 0 1h1.5V10a.5.5 0 0 0 1 0V8.5H10a.5.5 0 0 0 0-1H8.5V6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillX = /*#__PURE__*/ makeIcon(\n  'ShieldFillX',\n  '<path fill-rule=\"evenodd\" d=\"M8 .5c-.662 0-1.77.249-2.813.525a61.11 61.11 0 0 0-2.772.815 1.454 1.454 0 0 0-1.003 1.184c-.573 4.197.756 7.307 2.368 9.365a11.192 11.192 0 0 0 2.417 2.3c.371.256.715.451 1.007.586.27.124.558.225.796.225s.527-.101.796-.225c.292-.135.636-.33 1.007-.586a11.191 11.191 0 0 0 2.418-2.3c1.611-2.058 2.94-5.168 2.367-9.365a1.454 1.454 0 0 0-1.003-1.184 61.09 61.09 0 0 0-2.772-.815C9.77.749 8.663.5 8 .5zM6.854 6.146a.5.5 0 1 0-.708.708L7.293 8 6.146 9.146a.5.5 0 1 0 .708.708L8 8.707l1.146 1.147a.5.5 0 0 0 .708-.708L8.707 8l1.147-1.146a.5.5 0 0 0-.708-.708L8 7.293 6.854 6.146z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldLock = /*#__PURE__*/ makeIcon(\n  'ShieldLock',\n  '<path fill-rule=\"evenodd\" d=\"M5.443 1.991a60.17 60.17 0 0 0-2.725.802.454.454 0 0 0-.315.366C1.87 7.056 3.1 9.9 4.567 11.773c.736.94 1.533 1.636 2.197 2.093.333.228.626.394.857.5.116.053.21.089.282.11A.73.73 0 0 0 8 14.5c.007-.001.038-.005.097-.023.072-.022.166-.058.282-.111.23-.106.525-.272.857-.5a10.197 10.197 0 0 0 2.197-2.093C12.9 9.9 14.13 7.056 13.597 3.159a.454.454 0 0 0-.315-.366c-.626-.2-1.682-.526-2.725-.802C9.491 1.71 8.51 1.5 8 1.5c-.51 0-1.49.21-2.557.491zm-.256-.966C6.23.749 7.337.5 8 .5c.662 0 1.77.249 2.813.525a61.09 61.09 0 0 1 2.772.815c.528.168.926.623 1.003 1.184.573 4.197-.756 7.307-2.367 9.365a11.191 11.191 0 0 1-2.418 2.3 6.942 6.942 0 0 1-1.007.586c-.27.124-.558.225-.796.225s-.526-.101-.796-.225a6.908 6.908 0 0 1-1.007-.586 11.192 11.192 0 0 1-2.417-2.3C2.167 10.331.839 7.221 1.412 3.024A1.454 1.454 0 0 1 2.415 1.84a61.11 61.11 0 0 1 2.772-.815z\"/><path d=\"M9.5 6.5a1.5 1.5 0 0 1-1 1.415l.385 1.99a.5.5 0 0 1-.491.595h-.788a.5.5 0 0 1-.49-.595l.384-1.99a1.5 1.5 0 1 1 2-1.415z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldLockFill = /*#__PURE__*/ makeIcon(\n  'ShieldLockFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 .5c-.662 0-1.77.249-2.813.525a61.11 61.11 0 0 0-2.772.815 1.454 1.454 0 0 0-1.003 1.184c-.573 4.197.756 7.307 2.368 9.365a11.192 11.192 0 0 0 2.417 2.3c.371.256.715.451 1.007.586.27.124.558.225.796.225s.527-.101.796-.225c.292-.135.636-.33 1.007-.586a11.191 11.191 0 0 0 2.418-2.3c1.611-2.058 2.94-5.168 2.367-9.365a1.454 1.454 0 0 0-1.003-1.184 61.09 61.09 0 0 0-2.772-.815C9.77.749 8.663.5 8 .5zm.5 7.415a1.5 1.5 0 1 0-1 0l-.385 1.99a.5.5 0 0 0 .491.595h.788a.5.5 0 0 0 .49-.595L8.5 7.915z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldMinus = /*#__PURE__*/ makeIcon(\n  'ShieldMinus',\n  '<path fill-rule=\"evenodd\" d=\"M5.443 1.991a60.17 60.17 0 0 0-2.725.802.454.454 0 0 0-.315.366C1.87 7.056 3.1 9.9 4.567 11.773c.736.94 1.533 1.636 2.197 2.093.333.228.626.394.857.5.116.053.21.089.282.11A.73.73 0 0 0 8 14.5c.007-.001.038-.005.097-.023.072-.022.166-.058.282-.111.23-.106.525-.272.857-.5a10.197 10.197 0 0 0 2.197-2.093C12.9 9.9 14.13 7.056 13.597 3.159a.454.454 0 0 0-.315-.366c-.626-.2-1.682-.526-2.725-.802C9.491 1.71 8.51 1.5 8 1.5c-.51 0-1.49.21-2.557.491zm-.256-.966C6.23.749 7.337.5 8 .5c.662 0 1.77.249 2.813.525a61.09 61.09 0 0 1 2.772.815c.528.168.926.623 1.003 1.184.573 4.197-.756 7.307-2.367 9.365a11.191 11.191 0 0 1-2.418 2.3 6.942 6.942 0 0 1-1.007.586c-.27.124-.558.225-.796.225s-.526-.101-.796-.225a6.908 6.908 0 0 1-1.007-.586 11.192 11.192 0 0 1-2.417-2.3C2.167 10.331.839 7.221 1.412 3.024A1.454 1.454 0 0 1 2.415 1.84a61.11 61.11 0 0 1 2.772-.815z\"/><path fill-rule=\"evenodd\" d=\"M5.5 8a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldPlus = /*#__PURE__*/ makeIcon(\n  'ShieldPlus',\n  '<path fill-rule=\"evenodd\" d=\"M5.443 1.991a60.17 60.17 0 0 0-2.725.802.454.454 0 0 0-.315.366C1.87 7.056 3.1 9.9 4.567 11.773c.736.94 1.533 1.636 2.197 2.093.333.228.626.394.857.5.116.053.21.089.282.11A.73.73 0 0 0 8 14.5c.007-.001.038-.005.097-.023.072-.022.166-.058.282-.111.23-.106.525-.272.857-.5a10.197 10.197 0 0 0 2.197-2.093C12.9 9.9 14.13 7.056 13.597 3.159a.454.454 0 0 0-.315-.366c-.626-.2-1.682-.526-2.725-.802C9.491 1.71 8.51 1.5 8 1.5c-.51 0-1.49.21-2.557.491zm-.256-.966C6.23.749 7.337.5 8 .5c.662 0 1.77.249 2.813.525a61.09 61.09 0 0 1 2.772.815c.528.168.926.623 1.003 1.184.573 4.197-.756 7.307-2.367 9.365a11.191 11.191 0 0 1-2.418 2.3 6.942 6.942 0 0 1-1.007.586c-.27.124-.558.225-.796.225s-.526-.101-.796-.225a6.908 6.908 0 0 1-1.007-.586 11.192 11.192 0 0 1-2.417-2.3C2.167 10.331.839 7.221 1.412 3.024A1.454 1.454 0 0 1 2.415 1.84a61.11 61.11 0 0 1 2.772-.815z\"/><path fill-rule=\"evenodd\" d=\"M8 5.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5 0 0 1-1 0V8.5H6a.5.5 0 0 1 0-1h1.5V6a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldShaded = /*#__PURE__*/ makeIcon(\n  'ShieldShaded',\n  '<path fill-rule=\"evenodd\" d=\"M5.443 1.991a60.17 60.17 0 0 0-2.725.802.454.454 0 0 0-.315.366C1.87 7.056 3.1 9.9 4.567 11.773c.736.94 1.533 1.636 2.197 2.093.333.228.626.394.857.5.116.053.21.089.282.11A.73.73 0 0 0 8 14.5c.007-.001.038-.005.097-.023.072-.022.166-.058.282-.111.23-.106.525-.272.857-.5a10.197 10.197 0 0 0 2.197-2.093C12.9 9.9 14.13 7.056 13.597 3.159a.454.454 0 0 0-.315-.366c-.626-.2-1.682-.526-2.725-.802C9.491 1.71 8.51 1.5 8 1.5c-.51 0-1.49.21-2.557.491zm-.256-.966C6.23.749 7.337.5 8 .5c.662 0 1.77.249 2.813.525a61.09 61.09 0 0 1 2.772.815c.528.168.926.623 1.003 1.184.573 4.197-.756 7.307-2.367 9.365a11.191 11.191 0 0 1-2.418 2.3 6.942 6.942 0 0 1-1.007.586c-.27.124-.558.225-.796.225s-.526-.101-.796-.225a6.908 6.908 0 0 1-1.007-.586 11.192 11.192 0 0 1-2.417-2.3C2.167 10.331.839 7.221 1.412 3.024A1.454 1.454 0 0 1 2.415 1.84a61.11 61.11 0 0 1 2.772-.815z\"/><path d=\"M8 2.25c.909 0 3.188.685 4.254 1.022a.94.94 0 0 1 .656.773c.814 6.424-4.13 9.452-4.91 9.452V2.25z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldSlash = /*#__PURE__*/ makeIcon(\n  'ShieldSlash',\n  '<path d=\"M1.357 3.478c-.42 3.969.87 6.928 2.423 8.911a11.192 11.192 0 0 0 2.417 2.3c.371.256.715.451 1.007.586.27.124.558.225.796.225s.527-.101.796-.225c.292-.135.636-.33 1.007-.586.466-.32.983-.74 1.502-1.263l-.707-.707a9.692 9.692 0 0 1-1.362 1.147 5.934 5.934 0 0 1-.857.5c-.116.053-.21.089-.282.11A.73.73 0 0 1 8 14.5c-.007-.001-.038-.005-.097-.023a2.273 2.273 0 0 1-.282-.111 5.934 5.934 0 0 1-.857-.5 10.197 10.197 0 0 1-2.197-2.093C3.262 10.107 2.145 7.672 2.289 4.41l-.932-.932zm11.053 6.81c.971-1.785 1.594-4.15 1.187-7.129a.454.454 0 0 0-.315-.366c-.626-.2-1.682-.526-2.725-.802C9.491 1.71 8.51 1.5 8 1.5c-.51 0-1.49.21-2.557.491a45.4 45.4 0 0 0-1.041.29l-.806-.806a52.727 52.727 0 0 1 1.591-.45C6.23.749 7.337.5 8 .5c.662 0 1.77.249 2.813.525a61.09 61.09 0 0 1 2.772.815c.528.168.926.623 1.003 1.184.458 3.355-.299 6.015-1.444 7.999l-.735-.735z\"/><path fill-rule=\"evenodd\" d=\"M14.646 15.354l-14-14 .708-.708 14 14-.707.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldSlashFill = /*#__PURE__*/ makeIcon(\n  'ShieldSlashFill',\n  '<path d=\"M1.357 3.478c-.42 3.969.87 6.928 2.423 8.911a11.192 11.192 0 0 0 2.417 2.3c.371.256.715.451 1.007.586.27.124.558.225.796.225s.527-.101.796-.225c.292-.135.636-.33 1.007-.586.466-.32.983-.74 1.502-1.263L1.357 3.478zm11.787 7.545c1.145-1.984 1.902-4.644 1.444-8a1.454 1.454 0 0 0-1.003-1.183 61.09 61.09 0 0 0-2.772-.815C9.77.749 8.663.5 8 .5c-.662 0-1.77.249-2.813.525-.548.145-1.1.303-1.59.45l9.547 9.548z\"/><path fill-rule=\"evenodd\" d=\"M14.646 15.354l-14-14 .708-.708 14 14-.707.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldX = /*#__PURE__*/ makeIcon(\n  'ShieldX',\n  '<path fill-rule=\"evenodd\" d=\"M5.443 1.991a60.17 60.17 0 0 0-2.725.802.454.454 0 0 0-.315.366C1.87 7.056 3.1 9.9 4.567 11.773c.736.94 1.533 1.636 2.197 2.093.333.228.626.394.857.5.116.053.21.089.282.11A.73.73 0 0 0 8 14.5c.007-.001.038-.005.097-.023.072-.022.166-.058.282-.111.23-.106.525-.272.857-.5a10.197 10.197 0 0 0 2.197-2.093C12.9 9.9 14.13 7.056 13.597 3.159a.454.454 0 0 0-.315-.366c-.626-.2-1.682-.526-2.725-.802C9.491 1.71 8.51 1.5 8 1.5c-.51 0-1.49.21-2.557.491zm-.256-.966C6.23.749 7.337.5 8 .5c.662 0 1.77.249 2.813.525a61.09 61.09 0 0 1 2.772.815c.528.168.926.623 1.003 1.184.573 4.197-.756 7.307-2.367 9.365a11.191 11.191 0 0 1-2.418 2.3 6.942 6.942 0 0 1-1.007.586c-.27.124-.558.225-.796.225s-.526-.101-.796-.225a6.908 6.908 0 0 1-1.007-.586 11.192 11.192 0 0 1-2.417-2.3C2.167 10.331.839 7.221 1.412 3.024A1.454 1.454 0 0 1 2.415 1.84a61.11 61.11 0 0 1 2.772-.815z\"/><path fill-rule=\"evenodd\" d=\"M6.146 6.146a.5.5 0 0 1 .708 0L8 7.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 8l1.147 1.146a.5.5 0 0 1-.708.708L8 8.707 6.854 9.854a.5.5 0 0 1-.708-.708L7.293 8 6.146 6.854a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShift = /*#__PURE__*/ makeIcon(\n  'Shift',\n  '<path fill-rule=\"evenodd\" d=\"M7.27 2.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v3a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1v-3H1.654C.78 10.5.326 9.455.924 8.816L7.27 2.047zM14.346 9.5L8 2.731 1.654 9.5H4.5a1 1 0 0 1 1 1v3h5v-3a1 1 0 0 1 1-1h2.846z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShiftFill = /*#__PURE__*/ makeIcon(\n  'ShiftFill',\n  '<path fill-rule=\"evenodd\" d=\"M7.27 2.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v3a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1v-3H1.654C.78 10.5.326 9.455.924 8.816L7.27 2.047z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShop = /*#__PURE__*/ makeIcon(\n  'Shop',\n  '<path fill-rule=\"evenodd\" d=\"M2.97 1.35A1 1 0 0 1 3.73 1h8.54a1 1 0 0 1 .76.35l2.609 3.044A1.5 1.5 0 0 1 16 5.37v.255a2.375 2.375 0 0 1-4.25 1.458A2.371 2.371 0 0 1 9.875 8 2.37 2.37 0 0 1 8 7.083 2.37 2.37 0 0 1 6.125 8a2.37 2.37 0 0 1-1.875-.917A2.375 2.375 0 0 1 0 5.625V5.37a1.5 1.5 0 0 1 .361-.976l2.61-3.045zm1.78 4.275a1.375 1.375 0 0 0 2.75 0 .5.5 0 0 1 1 0 1.375 1.375 0 0 0 2.75 0 .5.5 0 0 1 1 0 1.375 1.375 0 1 0 2.75 0V5.37a.5.5 0 0 0-.12-.325L12.27 2H3.73L1.12 5.045A.5.5 0 0 0 1 5.37v.255a1.375 1.375 0 0 0 2.75 0 .5.5 0 0 1 1 0zM1.5 8.5A.5.5 0 0 1 2 9v6h1v-5a1 1 0 0 1 1-1h3a1 1 0 0 1 1 1v5h6V9a.5.5 0 0 1 1 0v6h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1V9a.5.5 0 0 1 .5-.5zM4 15h3v-5H4v5zm5-5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1v-3zm3 0h-2v3h2v-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShopWindow = /*#__PURE__*/ makeIcon(\n  'ShopWindow',\n  '<path fill-rule=\"evenodd\" d=\"M2.97 1.35A1 1 0 0 1 3.73 1h8.54a1 1 0 0 1 .76.35l2.609 3.044A1.5 1.5 0 0 1 16 5.37v.255a2.375 2.375 0 0 1-4.25 1.458A2.371 2.371 0 0 1 9.875 8 2.37 2.37 0 0 1 8 7.083 2.37 2.37 0 0 1 6.125 8a2.37 2.37 0 0 1-1.875-.917A2.375 2.375 0 0 1 0 5.625V5.37a1.5 1.5 0 0 1 .361-.976l2.61-3.045zm1.78 4.275a1.375 1.375 0 0 0 2.75 0 .5.5 0 0 1 1 0 1.375 1.375 0 0 0 2.75 0 .5.5 0 0 1 1 0 1.375 1.375 0 1 0 2.75 0V5.37a.5.5 0 0 0-.12-.325L12.27 2H3.73L1.12 5.045A.5.5 0 0 0 1 5.37v.255a1.375 1.375 0 0 0 2.75 0 .5.5 0 0 1 1 0zM1.5 8.5A.5.5 0 0 1 2 9v6h12V9a.5.5 0 0 1 1 0v6h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1V9a.5.5 0 0 1 .5-.5zm2 .5a.5.5 0 0 1 .5.5V13h8V9.5a.5.5 0 0 1 1 0V13a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V9.5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShuffle = /*#__PURE__*/ makeIcon(\n  'Shuffle',\n  '<path fill-rule=\"evenodd\" d=\"M0 3.5A.5.5 0 0 1 .5 3H1c2.202 0 3.827 1.24 4.874 2.418.49.552.865 1.102 1.126 1.532.26-.43.636-.98 1.126-1.532C9.173 4.24 10.798 3 13 3v1c-1.798 0-3.173 1.01-4.126 2.082A9.624 9.624 0 0 0 7.556 8a9.624 9.624 0 0 0 1.317 1.918C9.828 10.99 11.204 12 13 12v1c-2.202 0-3.827-1.24-4.874-2.418A10.595 10.595 0 0 1 7 9.05c-.26.43-.636.98-1.126 1.532C4.827 11.76 3.202 13 1 13H.5a.5.5 0 0 1 0-1H1c1.798 0 3.173-1.01 4.126-2.082A9.624 9.624 0 0 0 6.444 8a9.624 9.624 0 0 0-1.317-1.918C4.172 5.01 2.796 4 1 4H.5a.5.5 0 0 1-.5-.5z\"/><path d=\"M13 5.466V1.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384l-2.36 1.966a.25.25 0 0 1-.41-.192zm0 9v-3.932a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384l-2.36 1.966a.25.25 0 0 1-.41-.192z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSignpost = /*#__PURE__*/ makeIcon(\n  'Signpost',\n  '<path d=\"M7 1.414V4h2V1.414a1 1 0 0 0-2 0z\"/><path fill-rule=\"evenodd\" d=\"M12.532 5H2v4h10.532l1.666-2-1.666-2zM2 4a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h10.532a1 1 0 0 0 .768-.36l1.933-2.32a.5.5 0 0 0 0-.64L13.3 4.36a1 1 0 0 0-.768-.36H2z\"/><path d=\"M7 10h2v6H7v-6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSignpost2 = /*#__PURE__*/ makeIcon(\n  'Signpost2',\n  '<path d=\"M7 1.414V2h2v-.586a1 1 0 0 0-2 0z\"/><path fill-rule=\"evenodd\" d=\"M13.5 3H2v2h11.5l.75-1-.75-1zM2 2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h11.5a1 1 0 0 0 .8-.4l.975-1.3a.5.5 0 0 0 0-.6L14.3 2.4a1 1 0 0 0-.8-.4H2zm.5 6H14v2H2.5l-.75-1 .75-1zM14 7a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2.5a1 1 0 0 1-.8-.4L.725 9.3a.5.5 0 0 1 0-.6L1.7 7.4a1 1 0 0 1 .8-.4H14z\"/><path d=\"M7 6h2v1H7V6zm0 5h2v5H7v-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSignpost2Fill = /*#__PURE__*/ makeIcon(\n  'Signpost2Fill',\n  '<path d=\"M7 1.414V16h2V1.414a1 1 0 0 0-2 0z\"/><path d=\"M1 3a1 1 0 0 1 1-1h11.5a1 1 0 0 1 .8.4l.975 1.3a.5.5 0 0 1 0 .6L14.3 5.6a1 1 0 0 1-.8.4H2a1 1 0 0 1-1-1V3zm14 5a1 1 0 0 0-1-1H2.5a1 1 0 0 0-.8.4L.725 8.7a.5.5 0 0 0 0 .6l.975 1.3a1 1 0 0 0 .8.4H14a1 1 0 0 0 1-1V8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSignpostFill = /*#__PURE__*/ makeIcon(\n  'SignpostFill',\n  '<path d=\"M7 1.414V4h2V1.414a1 1 0 0 0-2 0zM1 5a1 1 0 0 1 1-1h10.532a1 1 0 0 1 .768.36l1.933 2.32a.5.5 0 0 1 0 .64L13.3 9.64a1 1 0 0 1-.768.36H2a1 1 0 0 1-1-1V5zm6 5h2v6H7v-6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSignpostSplit = /*#__PURE__*/ makeIcon(\n  'SignpostSplit',\n  '<path d=\"M7 16h2V6H8V2h1v-.586a1 1 0 0 0-2 0V7h1v4H7v5z\"/><path fill-rule=\"evenodd\" d=\"M14 3H8v2h6l.75-1L14 3zM8 2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h6a1 1 0 0 0 .8-.4l.975-1.3a.5.5 0 0 0 0-.6L14.8 2.4A1 1 0 0 0 14 2H8zM2 8h6v2H2l-.75-1L2 8zm6-1a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-.8-.4L.225 9.3a.5.5 0 0 1 0-.6L1.2 7.4A1 1 0 0 1 2 7h6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSignpostSplitFill = /*#__PURE__*/ makeIcon(\n  'SignpostSplitFill',\n  '<path d=\"M7 16h2V6h5a1 1 0 0 0 .8-.4l.975-1.3a.5.5 0 0 0 0-.6L14.8 2.4A1 1 0 0 0 14 2H9v-.586a1 1 0 0 0-2 0V7H2a1 1 0 0 0-.8.4L.225 8.7a.5.5 0 0 0 0 .6l.975 1.3a1 1 0 0 0 .8.4h5v5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSim = /*#__PURE__*/ makeIcon(\n  'Sim',\n  '<path fill-rule=\"evenodd\" d=\"M2 1.5A1.5 1.5 0 0 1 3.5 0h7.086a1.5 1.5 0 0 1 1.06.44l1.915 1.914A1.5 1.5 0 0 1 14 3.414V14.5a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5v-13zM3.5 1a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5V3.414a.5.5 0 0 0-.146-.353l-1.915-1.915A.5.5 0 0 0 10.586 1H3.5z\"/><path fill-rule=\"evenodd\" d=\"M5.5 4a.5.5 0 0 0-.5.5V6h2.5V4h-2zm3 0v2H11V4.5a.5.5 0 0 0-.5-.5h-2zM11 7H5v2h6V7zm0 3H8.5v2h2a.5.5 0 0 0 .5-.5V10zm-3.5 2v-2H5v1.5a.5.5 0 0 0 .5.5h2zM4 4.5A1.5 1.5 0 0 1 5.5 3h5A1.5 1.5 0 0 1 12 4.5v7a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 11.5v-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSimFill = /*#__PURE__*/ makeIcon(\n  'SimFill',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 0A1.5 1.5 0 0 0 2 1.5v13A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5V3.414a1.5 1.5 0 0 0-.44-1.06L11.647.439A1.5 1.5 0 0 0 10.586 0H3.5zM5 4.5a.5.5 0 0 1 .5-.5h2v2H5V4.5zM8.5 6V4h2a.5.5 0 0 1 .5.5V6H8.5zM5 7h6v2H5V7zm3.5 3H11v1.5a.5.5 0 0 1-.5.5h-2v-2zm-1 0v2h-2a.5.5 0 0 1-.5-.5V10h2.5zm-2-7A1.5 1.5 0 0 0 4 4.5v7A1.5 1.5 0 0 0 5.5 13h5a1.5 1.5 0 0 0 1.5-1.5v-7A1.5 1.5 0 0 0 10.5 3h-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackward = /*#__PURE__*/ makeIcon(\n  'SkipBackward',\n  '<path fill-rule=\"evenodd\" d=\"M.5 3.5A.5.5 0 0 1 1 4v3.248l6.267-3.636c.52-.302 1.233.043 1.233.696v2.94l6.267-3.636c.52-.302 1.233.043 1.233.696v7.384c0 .653-.713.998-1.233.696L8.5 8.752v2.94c0 .653-.713.998-1.233.696L1 8.752V12a.5.5 0 0 1-1 0V4a.5.5 0 0 1 .5-.5zm7 1.133L1.696 8 7.5 11.367V4.633zm7.5 0L9.196 8 15 11.367V4.633z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardBtn = /*#__PURE__*/ makeIcon(\n  'SkipBackwardBtn',\n  '<path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path d=\"M4.271 5.055a.5.5 0 0 1 .52.038L7.5 7.028V5.5a.5.5 0 0 1 .79-.407L11 7.028V5.5a.5.5 0 0 1 1 0v5a.5.5 0 0 1-1 0V8.972l-2.71 1.935a.5.5 0 0 1-.79-.407V8.972l-2.71 1.935A.5.5 0 0 1 4 10.5v-5a.5.5 0 0 1 .271-.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardBtnFill = /*#__PURE__*/ makeIcon(\n  'SkipBackwardBtnFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm2.79 3.093A.5.5 0 0 0 4 5.5v5a.5.5 0 0 0 .79.407L7.5 8.972V10.5a.5.5 0 0 0 .79.407L11 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L8.29 5.093a.5.5 0 0 0-.79.407v1.528L4.79 5.093z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardCircle = /*#__PURE__*/ makeIcon(\n  'SkipBackwardCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M4.271 5.055a.5.5 0 0 1 .52.038L7.5 7.028V5.5a.5.5 0 0 1 .79-.407L11 7.028V5.5a.5.5 0 0 1 1 0v5a.5.5 0 0 1-1 0V8.972l-2.71 1.935a.5.5 0 0 1-.79-.407V8.972l-2.71 1.935A.5.5 0 0 1 4 10.5v-5a.5.5 0 0 1 .271-.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardCircleFill = /*#__PURE__*/ makeIcon(\n  'SkipBackwardCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM4.79 5.093A.5.5 0 0 0 4 5.5v5a.5.5 0 0 0 .79.407L7.5 8.972V10.5a.5.5 0 0 0 .79.407L11 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L8.29 5.093a.5.5 0 0 0-.79.407v1.528L4.79 5.093z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardFill = /*#__PURE__*/ makeIcon(\n  'SkipBackwardFill',\n  '<path fill-rule=\"evenodd\" d=\"M.5 3.5A.5.5 0 0 0 0 4v8a.5.5 0 0 0 1 0V4a.5.5 0 0 0-.5-.5z\"/><path d=\"M.904 8.697l6.363 3.692c.54.313 1.233-.066 1.233-.697V4.308c0-.63-.692-1.01-1.233-.696L.904 7.304a.802.802 0 0 0 0 1.393z\"/><path d=\"M8.404 8.697l6.363 3.692c.54.313 1.233-.066 1.233-.697V4.308c0-.63-.693-1.01-1.233-.696L8.404 7.304a.802.802 0 0 0 0 1.393z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEnd = /*#__PURE__*/ makeIcon(\n  'SkipEnd',\n  '<path fill-rule=\"evenodd\" d=\"M12 3.5a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V4a.5.5 0 0 1 .5-.5z\"/><path fill-rule=\"evenodd\" d=\"M10.804 8L5 4.633v6.734L10.804 8zm.792-.696a.802.802 0 0 1 0 1.392l-6.363 3.692C4.713 12.69 4 12.345 4 11.692V4.308c0-.653.713-.998 1.233-.696l6.363 3.692z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndBtn = /*#__PURE__*/ makeIcon(\n  'SkipEndBtn',\n  '<path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M6.271 5.055a.5.5 0 0 1 .52.038L9.5 7.028V5.5a.5.5 0 0 1 1 0v5a.5.5 0 0 1-1 0V8.972l-2.71 1.935A.5.5 0 0 1 6 10.5v-5a.5.5 0 0 1 .271-.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndBtnFill = /*#__PURE__*/ makeIcon(\n  'SkipEndBtnFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm4.79 3.093A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407L9.5 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L6.79 5.093z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndCircle = /*#__PURE__*/ makeIcon(\n  'SkipEndCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M6.271 5.055a.5.5 0 0 1 .52.038L9.5 7.028V5.5a.5.5 0 0 1 1 0v5a.5.5 0 0 1-1 0V8.972l-2.71 1.935A.5.5 0 0 1 6 10.5v-5a.5.5 0 0 1 .271-.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndCircleFill = /*#__PURE__*/ makeIcon(\n  'SkipEndCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM6.79 5.093A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407L9.5 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L6.79 5.093z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndFill = /*#__PURE__*/ makeIcon(\n  'SkipEndFill',\n  '<path fill-rule=\"evenodd\" d=\"M12 3.5a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V4a.5.5 0 0 1 .5-.5z\"/><path d=\"M11.596 8.697l-6.363 3.692c-.54.313-1.233-.066-1.233-.697V4.308c0-.63.692-1.01 1.233-.696l6.363 3.692a.802.802 0 0 1 0 1.393z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForward = /*#__PURE__*/ makeIcon(\n  'SkipForward',\n  '<path fill-rule=\"evenodd\" d=\"M15.5 3.5a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V8.752l-6.267 3.636c-.52.302-1.233-.043-1.233-.696v-2.94l-6.267 3.636C.713 12.69 0 12.345 0 11.692V4.308c0-.653.713-.998 1.233-.696L7.5 7.248v-2.94c0-.653.713-.998 1.233-.696L15 7.248V4a.5.5 0 0 1 .5-.5zM1 4.633v6.734L6.804 8 1 4.633zm7.5 0v6.734L14.304 8 8.5 4.633z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardBtn = /*#__PURE__*/ makeIcon(\n  'SkipForwardBtn',\n  '<path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path d=\"M11.729 5.055a.5.5 0 0 0-.52.038L8.5 7.028V5.5a.5.5 0 0 0-.79-.407L5 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407V8.972l2.71 1.935A.5.5 0 0 0 12 10.5v-5a.5.5 0 0 0-.271-.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardBtnFill = /*#__PURE__*/ makeIcon(\n  'SkipForwardBtnFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm9.21 3.093A.5.5 0 0 1 12 5.5v5a.5.5 0 0 1-.79.407L8.5 8.972V10.5a.5.5 0 0 1-.79.407L5 8.972V10.5a.5.5 0 0 1-1 0v-5a.5.5 0 0 1 1 0v1.528l2.71-1.935a.5.5 0 0 1 .79.407v1.528l2.71-1.935z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardCircle = /*#__PURE__*/ makeIcon(\n  'SkipForwardCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M11.729 5.055a.5.5 0 0 0-.52.038L8.5 7.028V5.5a.5.5 0 0 0-.79-.407L5 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407V8.972l2.71 1.935A.5.5 0 0 0 12 10.5v-5a.5.5 0 0 0-.271-.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardCircleFill = /*#__PURE__*/ makeIcon(\n  'SkipForwardCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-4.79-2.907A.5.5 0 0 1 12 5.5v5a.5.5 0 0 1-.79.407L8.5 8.972V10.5a.5.5 0 0 1-.79.407L5 8.972V10.5a.5.5 0 0 1-1 0v-5a.5.5 0 0 1 1 0v1.528l2.71-1.935a.5.5 0 0 1 .79.407v1.528l2.71-1.935z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardFill = /*#__PURE__*/ makeIcon(\n  'SkipForwardFill',\n  '<path fill-rule=\"evenodd\" d=\"M15.5 3.5a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V4a.5.5 0 0 1 .5-.5z\"/><path d=\"M7.596 8.697l-6.363 3.692C.693 12.702 0 12.322 0 11.692V4.308c0-.63.693-1.01 1.233-.696l6.363 3.692a.802.802 0 0 1 0 1.393z\"/><path d=\"M15.096 8.697l-6.363 3.692c-.54.313-1.233-.066-1.233-.697V4.308c0-.63.693-1.01 1.233-.696l6.363 3.692a.802.802 0 0 1 0 1.393z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStart = /*#__PURE__*/ makeIcon(\n  'SkipStart',\n  '<path fill-rule=\"evenodd\" d=\"M4.5 3.5A.5.5 0 0 0 4 4v8a.5.5 0 0 0 1 0V4a.5.5 0 0 0-.5-.5z\"/><path fill-rule=\"evenodd\" d=\"M5.696 8L11.5 4.633v6.734L5.696 8zm-.792-.696a.802.802 0 0 0 0 1.392l6.363 3.692c.52.302 1.233-.043 1.233-.696V4.308c0-.653-.713-.998-1.233-.696L4.904 7.304z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartBtn = /*#__PURE__*/ makeIcon(\n  'SkipStartBtn',\n  '<path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M5.771 10.945a.5.5 0 0 0 .52-.038L9 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L6.29 5.093a.5.5 0 0 0-.79.407v5a.5.5 0 0 0 .271.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartBtnFill = /*#__PURE__*/ makeIcon(\n  'SkipStartBtnFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm7.71 3.093a.5.5 0 0 1 .79.407v5a.5.5 0 0 1-.79.407L7 8.972V10.5a.5.5 0 0 1-1 0v-5a.5.5 0 0 1 1 0v1.528l2.71-1.935z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartCircle = /*#__PURE__*/ makeIcon(\n  'SkipStartCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M5.771 10.945a.5.5 0 0 0 .52-.038L9 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L6.29 5.093a.5.5 0 0 0-.79.407v5a.5.5 0 0 0 .271.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartCircleFill = /*#__PURE__*/ makeIcon(\n  'SkipStartCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-9.71 2.907a.5.5 0 0 1-.79-.407v-5a.5.5 0 0 1 .79-.407L9 7.028V5.5a.5.5 0 0 1 1 0v5a.5.5 0 0 1-1 0V8.972l-2.71 1.935z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartFill = /*#__PURE__*/ makeIcon(\n  'SkipStartFill',\n  '<path fill-rule=\"evenodd\" d=\"M4.5 3.5A.5.5 0 0 0 4 4v8a.5.5 0 0 0 1 0V4a.5.5 0 0 0-.5-.5z\"/><path d=\"M4.903 8.697l6.364 3.692c.54.313 1.232-.066 1.232-.697V4.308c0-.63-.692-1.01-1.232-.696L4.903 7.304a.802.802 0 0 0 0 1.393z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSlack = /*#__PURE__*/ makeIcon(\n  'Slack',\n  '<path d=\"M3.362 10.11c0 .926-.756 1.681-1.681 1.681S0 11.036 0 10.111C0 9.186.756 8.43 1.68 8.43h1.682v1.68zm.846 0c0-.924.756-1.68 1.681-1.68s1.681.756 1.681 1.68v4.21c0 .924-.756 1.68-1.68 1.68a1.685 1.685 0 0 1-1.682-1.68v-4.21zM5.89 3.362c-.926 0-1.682-.756-1.682-1.681S4.964 0 5.89 0s1.68.756 1.68 1.68v1.682H5.89zm0 .846c.924 0 1.68.756 1.68 1.681S6.814 7.57 5.89 7.57H1.68C.757 7.57 0 6.814 0 5.89c0-.926.756-1.681 1.68-1.681h4.21zm6.749 1.682c0-.926.755-1.681 1.68-1.681.925 0 1.681.755 1.681 1.68 0 .925-.756 1.681-1.68 1.681h-1.681V5.89zm-.848 0c0 .924-.755 1.68-1.68 1.68A1.685 1.685 0 0 1 8.43 5.89V1.68C8.43.757 9.186 0 10.11 0c.926 0 1.681.756 1.681 1.68v4.21zm-1.681 6.748c.926 0 1.682.756 1.682 1.681S11.036 16 10.11 16s-1.681-.756-1.681-1.68v-1.682h1.68zm0-.847c-.924 0-1.68-.755-1.68-1.68 0-.925.756-1.681 1.68-1.681h4.21c.924 0 1.68.756 1.68 1.68 0 .926-.756 1.681-1.68 1.681h-4.21z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSlash = /*#__PURE__*/ makeIcon(\n  'Slash',\n  '<path fill-rule=\"evenodd\" d=\"M11.354 4.646a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708l6-6a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSlashCircle = /*#__PURE__*/ makeIcon(\n  'SlashCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M11.354 4.646a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708l6-6a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSlashCircleFill = /*#__PURE__*/ makeIcon(\n  'SlashCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-4.646-2.646a.5.5 0 0 0-.708-.708l-6 6a.5.5 0 0 0 .708.708l6-6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSlashSquare = /*#__PURE__*/ makeIcon(\n  'SlashSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M11.354 4.646a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708l6-6a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSlashSquareFill = /*#__PURE__*/ makeIcon(\n  'SlashSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm9.354 5.354a.5.5 0 0 0-.708-.708l-6 6a.5.5 0 0 0 .708.708l6-6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSliders = /*#__PURE__*/ makeIcon(\n  'Sliders',\n  '<path fill-rule=\"evenodd\" d=\"M11.5 2a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3zM9.05 3a2.5 2.5 0 0 1 4.9 0H16v1h-2.05a2.5 2.5 0 0 1-4.9 0H0V3h9.05zM4.5 7a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3zM2.05 8a2.5 2.5 0 0 1 4.9 0H16v1H6.95a2.5 2.5 0 0 1-4.9 0H0V8h2.05zm9.45 4a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3zm-2.45 1a2.5 2.5 0 0 1 4.9 0H16v1h-2.05a2.5 2.5 0 0 1-4.9 0H0v-1h9.05z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSmartwatch = /*#__PURE__*/ makeIcon(\n  'Smartwatch',\n  '<path d=\"M14 5h.5a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5H14V5z\"/><path fill-rule=\"evenodd\" d=\"M8.5 4.5A.5.5 0 0 1 9 5v3.5a.5.5 0 0 1-.5.5H6a.5.5 0 0 1 0-1h2V5a.5.5 0 0 1 .5-.5z\"/><path fill-rule=\"evenodd\" d=\"M4.5 2h7A2.5 2.5 0 0 1 14 4.5v7a2.5 2.5 0 0 1-2.5 2.5h-7A2.5 2.5 0 0 1 2 11.5v-7A2.5 2.5 0 0 1 4.5 2zm0 1A1.5 1.5 0 0 0 3 4.5v7A1.5 1.5 0 0 0 4.5 13h7a1.5 1.5 0 0 0 1.5-1.5v-7A1.5 1.5 0 0 0 11.5 3h-7z\"/><path d=\"M4 2.05v-.383C4 .747 4.746 0 5.667 0h4.666C11.253 0 12 .746 12 1.667v.383a2.512 2.512 0 0 0-.5-.05h-7c-.171 0-.338.017-.5.05zm0 11.9c.162.033.329.05.5.05h7c.171 0 .338-.017.5-.05v.383c0 .92-.746 1.667-1.667 1.667H5.667C4.747 16 4 15.254 4 14.333v-.383z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortAlphaDown = /*#__PURE__*/ makeIcon(\n  'SortAlphaDown',\n  '<path fill-rule=\"evenodd\" d=\"M4 2a.5.5 0 0 1 .5.5v11a.5.5 0 0 1-1 0v-11A.5.5 0 0 1 4 2z\"/><path fill-rule=\"evenodd\" d=\"M6.354 11.146a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L4 12.793l1.646-1.647a.5.5 0 0 1 .708 0z\"/><path d=\"M9.664 7l.418-1.371h1.781L12.281 7h1.121l-1.78-5.332h-1.235L8.597 7h1.067zM11 2.687l.652 2.157h-1.351l.652-2.157H11zM9.027 14h3.934v-.867h-2.645v-.055l2.567-3.719v-.691H9.098v.867h2.507v.055l-2.578 3.719V14z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortAlphaDownAlt = /*#__PURE__*/ makeIcon(\n  'SortAlphaDownAlt',\n  '<path fill-rule=\"evenodd\" d=\"M4 2a.5.5 0 0 1 .5.5v11a.5.5 0 0 1-1 0v-11A.5.5 0 0 1 4 2z\"/><path fill-rule=\"evenodd\" d=\"M6.354 11.146a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L4 12.793l1.646-1.647a.5.5 0 0 1 .708 0z\"/><path d=\"M9.027 7h3.934v-.867h-2.645v-.055l2.567-3.719v-.691H9.098v.867h2.507v.055L9.027 6.309V7zm.637 7l.418-1.371h1.781L12.281 14h1.121l-1.78-5.332h-1.235L8.597 14h1.067zM11 9.687l.652 2.157h-1.351l.652-2.156H11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortAlphaUp = /*#__PURE__*/ makeIcon(\n  'SortAlphaUp',\n  '<path fill-rule=\"evenodd\" d=\"M4 14a.5.5 0 0 0 .5-.5v-11a.5.5 0 0 0-1 0v11a.5.5 0 0 0 .5.5z\"/><path fill-rule=\"evenodd\" d=\"M6.354 4.854a.5.5 0 0 0 0-.708l-2-2a.5.5 0 0 0-.708 0l-2 2a.5.5 0 1 0 .708.708L4 3.207l1.646 1.647a.5.5 0 0 0 .708 0z\"/><path d=\"M9.664 7l.418-1.371h1.781L12.281 7h1.121l-1.78-5.332h-1.235L8.597 7h1.067zM11 2.687l.652 2.157h-1.351l.652-2.157H11zM9.027 14h3.934v-.867h-2.645v-.055l2.567-3.719v-.691H9.098v.867h2.507v.055l-2.578 3.719V14z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortAlphaUpAlt = /*#__PURE__*/ makeIcon(\n  'SortAlphaUpAlt',\n  '<path fill-rule=\"evenodd\" d=\"M4 14a.5.5 0 0 0 .5-.5v-11a.5.5 0 0 0-1 0v11a.5.5 0 0 0 .5.5z\"/><path fill-rule=\"evenodd\" d=\"M6.354 4.854a.5.5 0 0 0 0-.708l-2-2a.5.5 0 0 0-.708 0l-2 2a.5.5 0 1 0 .708.708L4 3.207l1.646 1.647a.5.5 0 0 0 .708 0z\"/><path d=\"M9.027 7h3.934v-.867h-2.645v-.055l2.567-3.719v-.691H9.098v.867h2.507v.055L9.027 6.309V7zm.637 7l.418-1.371h1.781L12.281 14h1.121l-1.78-5.332h-1.235L8.597 14h1.067zM11 9.687l.652 2.157h-1.351l.652-2.156H11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortDown = /*#__PURE__*/ makeIcon(\n  'SortDown',\n  '<path fill-rule=\"evenodd\" d=\"M3 2a.5.5 0 0 1 .5.5v10a.5.5 0 0 1-1 0v-10A.5.5 0 0 1 3 2z\"/><path fill-rule=\"evenodd\" d=\"M5.354 10.146a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L3 11.793l1.646-1.647a.5.5 0 0 1 .708 0zM7 9.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0 9a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortDownAlt = /*#__PURE__*/ makeIcon(\n  'SortDownAlt',\n  '<path fill-rule=\"evenodd\" d=\"M3 3a.5.5 0 0 1 .5.5v10a.5.5 0 0 1-1 0v-10A.5.5 0 0 1 3 3z\"/><path fill-rule=\"evenodd\" d=\"M5.354 11.146a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L3 12.793l1.646-1.647a.5.5 0 0 1 .708 0zM7 6.5a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5zm0 3a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 0-1h-5a.5.5 0 0 0-.5.5zm0 3a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7a.5.5 0 0 0-.5.5zm0-9a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 0-1h-1a.5.5 0 0 0-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortNumericDown = /*#__PURE__*/ makeIcon(\n  'SortNumericDown',\n  '<path fill-rule=\"evenodd\" d=\"M4 2a.5.5 0 0 1 .5.5v11a.5.5 0 0 1-1 0v-11A.5.5 0 0 1 4 2z\"/><path fill-rule=\"evenodd\" d=\"M6.354 11.146a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L4 12.793l1.646-1.647a.5.5 0 0 1 .708 0z\"/><path d=\"M12.438 7V1.668H11.39l-1.262.906v.969l1.21-.86h.052V7h1.046zm-2.84 5.82c.054.621.625 1.278 1.761 1.278 1.422 0 2.145-.98 2.145-2.848 0-2.05-.973-2.688-2.063-2.688-1.125 0-1.972.688-1.972 1.836 0 1.145.808 1.758 1.719 1.758.69 0 1.113-.351 1.261-.742h.059c.031 1.027-.309 1.856-1.133 1.856-.43 0-.715-.227-.773-.45H9.598zm2.757-2.43c0 .637-.43.973-.933.973-.516 0-.934-.34-.934-.98 0-.625.407-1 .926-1 .543 0 .941.375.941 1.008z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortNumericDownAlt = /*#__PURE__*/ makeIcon(\n  'SortNumericDownAlt',\n  '<path fill-rule=\"evenodd\" d=\"M4 2a.5.5 0 0 1 .5.5v11a.5.5 0 0 1-1 0v-11A.5.5 0 0 1 4 2z\"/><path fill-rule=\"evenodd\" d=\"M6.354 11.146a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L4 12.793l1.646-1.647a.5.5 0 0 1 .708 0z\"/><path d=\"M9.598 5.82c.054.621.625 1.278 1.761 1.278 1.422 0 2.145-.98 2.145-2.848 0-2.05-.973-2.688-2.063-2.688-1.125 0-1.972.688-1.972 1.836 0 1.145.808 1.758 1.719 1.758.69 0 1.113-.351 1.261-.742h.059c.031 1.027-.309 1.856-1.133 1.856-.43 0-.715-.227-.773-.45H9.598zm2.757-2.43c0 .637-.43.973-.933.973-.516 0-.934-.34-.934-.98 0-.625.407-1 .926-1 .543 0 .941.375.941 1.008zM12.438 14V8.668H11.39l-1.262.906v.969l1.21-.86h.052V14h1.046z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortNumericUp = /*#__PURE__*/ makeIcon(\n  'SortNumericUp',\n  '<path fill-rule=\"evenodd\" d=\"M4 14a.5.5 0 0 0 .5-.5v-11a.5.5 0 0 0-1 0v11a.5.5 0 0 0 .5.5z\"/><path fill-rule=\"evenodd\" d=\"M6.354 4.854a.5.5 0 0 0 0-.708l-2-2a.5.5 0 0 0-.708 0l-2 2a.5.5 0 1 0 .708.708L4 3.207l1.646 1.647a.5.5 0 0 0 .708 0z\"/><path d=\"M12.438 7V1.668H11.39l-1.262.906v.969l1.21-.86h.052V7h1.046zm-2.84 5.82c.054.621.625 1.278 1.761 1.278 1.422 0 2.145-.98 2.145-2.848 0-2.05-.973-2.688-2.063-2.688-1.125 0-1.972.688-1.972 1.836 0 1.145.808 1.758 1.719 1.758.69 0 1.113-.351 1.261-.742h.059c.031 1.027-.309 1.856-1.133 1.856-.43 0-.715-.227-.773-.45H9.598zm2.757-2.43c0 .637-.43.973-.933.973-.516 0-.934-.34-.934-.98 0-.625.407-1 .926-1 .543 0 .941.375.941 1.008z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortNumericUpAlt = /*#__PURE__*/ makeIcon(\n  'SortNumericUpAlt',\n  '<path fill-rule=\"evenodd\" d=\"M4 14a.5.5 0 0 0 .5-.5v-11a.5.5 0 0 0-1 0v11a.5.5 0 0 0 .5.5z\"/><path fill-rule=\"evenodd\" d=\"M6.354 4.854a.5.5 0 0 0 0-.708l-2-2a.5.5 0 0 0-.708 0l-2 2a.5.5 0 1 0 .708.708L4 3.207l1.646 1.647a.5.5 0 0 0 .708 0z\"/><path d=\"M9.598 5.82c.054.621.625 1.278 1.761 1.278 1.422 0 2.145-.98 2.145-2.848 0-2.05-.973-2.688-2.063-2.688-1.125 0-1.972.688-1.972 1.836 0 1.145.808 1.758 1.719 1.758.69 0 1.113-.351 1.261-.742h.059c.031 1.027-.309 1.856-1.133 1.856-.43 0-.715-.227-.773-.45H9.598zm2.757-2.43c0 .637-.43.973-.933.973-.516 0-.934-.34-.934-.98 0-.625.407-1 .926-1 .543 0 .941.375.941 1.008zM12.438 14V8.668H11.39l-1.262.906v.969l1.21-.86h.052V14h1.046z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortUp = /*#__PURE__*/ makeIcon(\n  'SortUp',\n  '<path fill-rule=\"evenodd\" d=\"M3 13a.5.5 0 0 0 .5-.5v-10a.5.5 0 0 0-1 0v10a.5.5 0 0 0 .5.5z\"/><path fill-rule=\"evenodd\" d=\"M5.354 4.854a.5.5 0 0 0 0-.708l-2-2a.5.5 0 0 0-.708 0l-2 2a.5.5 0 1 0 .708.708L3 3.207l1.646 1.647a.5.5 0 0 0 .708 0zM7 9.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0 9a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortUpAlt = /*#__PURE__*/ makeIcon(\n  'SortUpAlt',\n  '<path fill-rule=\"evenodd\" d=\"M3 14a.5.5 0 0 0 .5-.5v-10a.5.5 0 0 0-1 0v10a.5.5 0 0 0 .5.5z\"/><path fill-rule=\"evenodd\" d=\"M5.354 5.854a.5.5 0 0 0 0-.708l-2-2a.5.5 0 0 0-.708 0l-2 2a.5.5 0 1 0 .708.708L3 4.207l1.646 1.647a.5.5 0 0 0 .708 0zM7 6.5a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5zm0 3a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 0-1h-5a.5.5 0 0 0-.5.5zm0 3a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7a.5.5 0 0 0-.5.5zm0-9a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 0-1h-1a.5.5 0 0 0-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSoundwave = /*#__PURE__*/ makeIcon(\n  'Soundwave',\n  '<path fill-rule=\"evenodd\" d=\"M8.5 2a.5.5 0 0 1 .5.5v11a.5.5 0 0 1-1 0v-11a.5.5 0 0 1 .5-.5zm-2 2a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 .5-.5zm4 0a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 .5-.5zm-6 1.5A.5.5 0 0 1 5 6v4a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5zm8 0a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5zm-10 1A.5.5 0 0 1 3 7v2a.5.5 0 0 1-1 0V7a.5.5 0 0 1 .5-.5zm12 0a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0V7a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSpeaker = /*#__PURE__*/ makeIcon(\n  'Speaker',\n  '<path fill-rule=\"evenodd\" d=\"M12 1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H4z\"/><path fill-rule=\"evenodd\" d=\"M8 4.75a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5zM8 6a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm0 3a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3zm-3.5 1.5a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSpeakerFill = /*#__PURE__*/ makeIcon(\n  'SpeakerFill',\n  '<path d=\"M9 4a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm-2.5 6.5a1.5 1.5 0 1 1 3 0 1.5 1.5 0 0 1-3 0z\"/><path fill-rule=\"evenodd\" d=\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H4zm6 4a2 2 0 1 1-4 0 2 2 0 0 1 4 0zM8 7a3.5 3.5 0 1 0 0 7 3.5 3.5 0 0 0 0-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSpellcheck = /*#__PURE__*/ makeIcon(\n  'Spellcheck',\n  '<path fill-rule=\"evenodd\" d=\"M8.217 11.068c1.216 0 1.948-.869 1.948-2.31v-.702c0-1.44-.727-2.305-1.929-2.305-.742 0-1.328.347-1.499.889h-.063V3.983h-1.29V11h1.27v-.791h.064c.21.532.776.86 1.499.86zm-.43-1.025c-.66 0-1.113-.518-1.113-1.28V8.12c0-.825.42-1.343 1.098-1.343.684 0 1.075.518 1.075 1.416v.45c0 .888-.386 1.401-1.06 1.401zm-5.583 1.035c.767 0 1.201-.356 1.406-.737h.059V11h1.216V7.519c0-1.314-.947-1.783-2.11-1.783C1.355 5.736.75 6.42.69 7.27h1.216c.064-.323.313-.552.84-.552.527 0 .864.249.864.771v.464H2.346C1.145 7.953.5 8.568.5 9.496c0 .977.693 1.582 1.704 1.582zm.42-.947c-.44 0-.845-.235-.845-.718 0-.395.269-.684.84-.684h.991v.538c0 .503-.444.864-.986.864zm8.897.567c-.577-.4-.9-1.088-.9-1.983v-.65c0-1.42.894-2.338 2.305-2.338 1.352 0 2.119.82 2.139 1.806h-1.187c-.04-.351-.283-.776-.918-.776-.674 0-1.045.517-1.045 1.328v.625c0 .468.121.834.343 1.067l-.737.92z\"/><path fill-rule=\"evenodd\" d=\"M14.469 9.414a.75.75 0 0 1 .117 1.055l-4 5a.75.75 0 0 1-1.116.061l-2.5-2.5a.75.75 0 1 1 1.06-1.06l1.908 1.907 3.476-4.346a.75.75 0 0 1 1.055-.117z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSquare = /*#__PURE__*/ makeIcon(\n  'Square',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSquareFill = /*#__PURE__*/ makeIcon(\n  'SquareFill',\n  '<path d=\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSquareHalf = /*#__PURE__*/ makeIcon(\n  'SquareHalf',\n  '<path fill-rule=\"evenodd\" d=\"M8 1h6a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H8V1zm6-1a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStar = /*#__PURE__*/ makeIcon(\n  'Star',\n  '<path fill-rule=\"evenodd\" d=\"M2.866 14.85c-.078.444.36.791.746.593l4.39-2.256 4.389 2.256c.386.198.824-.149.746-.592l-.83-4.73 3.523-3.356c.329-.314.158-.888-.283-.95l-4.898-.696L8.465.792a.513.513 0 0 0-.927 0L5.354 5.12l-4.898.696c-.441.062-.612.636-.283.95l3.523 3.356-.83 4.73zm4.905-2.767l-3.686 1.894.694-3.957a.565.565 0 0 0-.163-.505L1.71 6.745l4.052-.576a.525.525 0 0 0 .393-.288l1.847-3.658 1.846 3.658a.525.525 0 0 0 .393.288l4.052.575-2.906 2.77a.564.564 0 0 0-.163.506l.694 3.957-3.686-1.894a.503.503 0 0 0-.461 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStarFill = /*#__PURE__*/ makeIcon(\n  'StarFill',\n  '<path d=\"M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.283.95l-3.523 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStarHalf = /*#__PURE__*/ makeIcon(\n  'StarHalf',\n  '<path fill-rule=\"evenodd\" d=\"M5.354 5.119L7.538.792A.516.516 0 0 1 8 .5c.183 0 .366.097.465.292l2.184 4.327 4.898.696A.537.537 0 0 1 16 6.32a.55.55 0 0 1-.17.445l-3.523 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256a.519.519 0 0 1-.146.05c-.341.06-.668-.254-.6-.642l.83-4.73L.173 6.765a.55.55 0 0 1-.171-.403.59.59 0 0 1 .084-.302.513.513 0 0 1 .37-.245l4.898-.696zM8 12.027c.08 0 .16.018.232.056l3.686 1.894-.694-3.957a.564.564 0 0 1 .163-.505l2.906-2.77-4.052-.576a.525.525 0 0 1-.393-.288L8.002 2.223 8 2.226v9.8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStickies = /*#__PURE__*/ makeIcon(\n  'Stickies',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.5A1.5 1.5 0 0 1 1.5 0H13a1 1 0 0 1 1 1H1.5a.5.5 0 0 0-.5.5V14a1 1 0 0 1-1-1V1.5z\"/><path fill-rule=\"evenodd\" d=\"M2 3.5A1.5 1.5 0 0 1 3.5 2h11A1.5 1.5 0 0 1 16 3.5v6.086a1.5 1.5 0 0 1-.44 1.06l-4.914 4.915a1.5 1.5 0 0 1-1.06.439H3.5A1.5 1.5 0 0 1 2 14.5v-11zM3.5 3a.5.5 0 0 0-.5.5v11a.5.5 0 0 0 .5.5h6.086a.5.5 0 0 0 .353-.146l4.915-4.915A.5.5 0 0 0 15 9.586V3.5a.5.5 0 0 0-.5-.5h-11z\"/><path fill-rule=\"evenodd\" d=\"M10.5 10a.5.5 0 0 0-.5.5v5H9v-5A1.5 1.5 0 0 1 10.5 9h5v1h-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStickiesFill = /*#__PURE__*/ makeIcon(\n  'StickiesFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 1.5A1.5 1.5 0 0 1 1.5 0H13a1 1 0 0 1 1 1H1.5a.5.5 0 0 0-.5.5V14a1 1 0 0 1-1-1V1.5z\"/><path fill-rule=\"evenodd\" d=\"M3.5 2A1.5 1.5 0 0 0 2 3.5v11A1.5 1.5 0 0 0 3.5 16h6.086a1.5 1.5 0 0 0 1.06-.44l4.915-4.914A1.5 1.5 0 0 0 16 9.586V3.5A1.5 1.5 0 0 0 14.5 2h-11zm6 8.5v4.396c0 .223.27.335.427.177l5.146-5.146a.25.25 0 0 0-.177-.427H10.5a1 1 0 0 0-1 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSticky = /*#__PURE__*/ makeIcon(\n  'Sticky',\n  '<path fill-rule=\"evenodd\" d=\"M1 2.5A1.5 1.5 0 0 1 2.5 1h11A1.5 1.5 0 0 1 15 2.5v6.086a1.5 1.5 0 0 1-.44 1.06l-4.914 4.915a1.5 1.5 0 0 1-1.06.439H2.5A1.5 1.5 0 0 1 1 13.5v-11zM2.5 2a.5.5 0 0 0-.5.5v11a.5.5 0 0 0 .5.5h6.086a.5.5 0 0 0 .353-.146l4.915-4.915A.5.5 0 0 0 14 8.586V2.5a.5.5 0 0 0-.5-.5h-11z\"/><path fill-rule=\"evenodd\" d=\"M9.5 9a.5.5 0 0 0-.5.5v5H8v-5A1.5 1.5 0 0 1 9.5 8h5v1h-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStickyFill = /*#__PURE__*/ makeIcon(\n  'StickyFill',\n  '<path fill-rule=\"evenodd\" d=\"M2.5 1A1.5 1.5 0 0 0 1 2.5v11A1.5 1.5 0 0 0 2.5 15h6.086a1.5 1.5 0 0 0 1.06-.44l4.915-4.914A1.5 1.5 0 0 0 15 8.586V2.5A1.5 1.5 0 0 0 13.5 1h-11zm6 8.5v4.396c0 .223.27.335.427.177l5.146-5.146a.25.25 0 0 0-.177-.427H9.5a1 1 0 0 0-1 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStop = /*#__PURE__*/ makeIcon(\n  'Stop',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 5A1.5 1.5 0 0 1 5 3.5h6A1.5 1.5 0 0 1 12.5 5v6a1.5 1.5 0 0 1-1.5 1.5H5A1.5 1.5 0 0 1 3.5 11V5zM5 4.5a.5.5 0 0 0-.5.5v6a.5.5 0 0 0 .5.5h6a.5.5 0 0 0 .5-.5V5a.5.5 0 0 0-.5-.5H5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStopBtn = /*#__PURE__*/ makeIcon(\n  'StopBtn',\n  '<path fill-rule=\"evenodd\" d=\"M14 3H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M5 6.5A1.5 1.5 0 0 1 6.5 5h3A1.5 1.5 0 0 1 11 6.5v3A1.5 1.5 0 0 1 9.5 11h-3A1.5 1.5 0 0 1 5 9.5v-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStopBtnFill = /*#__PURE__*/ makeIcon(\n  'StopBtnFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm4.5 3A1.5 1.5 0 0 0 5 6.5v3A1.5 1.5 0 0 0 6.5 11h3A1.5 1.5 0 0 0 11 9.5v-3A1.5 1.5 0 0 0 9.5 5h-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStopCircle = /*#__PURE__*/ makeIcon(\n  'StopCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M5 6.5A1.5 1.5 0 0 1 6.5 5h3A1.5 1.5 0 0 1 11 6.5v3A1.5 1.5 0 0 1 9.5 11h-3A1.5 1.5 0 0 1 5 9.5v-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStopCircleFill = /*#__PURE__*/ makeIcon(\n  'StopCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM6.5 5A1.5 1.5 0 0 0 5 6.5v3A1.5 1.5 0 0 0 6.5 11h3A1.5 1.5 0 0 0 11 9.5v-3A1.5 1.5 0 0 0 9.5 5h-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStopFill = /*#__PURE__*/ makeIcon(\n  'StopFill',\n  '<path d=\"M5 3.5h6A1.5 1.5 0 0 1 12.5 5v6a1.5 1.5 0 0 1-1.5 1.5H5A1.5 1.5 0 0 1 3.5 11V5A1.5 1.5 0 0 1 5 3.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStoplights = /*#__PURE__*/ makeIcon(\n  'Stoplights',\n  '<path d=\"M9.5 3.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm0 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm0 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/><path fill-rule=\"evenodd\" d=\"M10 1H6a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM6 0a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H6z\"/><path d=\"M14 2h-2v2c1.2-.4 1.833-1.5 2-2zM2 2h2v2c-1.2-.4-1.833-1.5-2-2zm12 4h-2v2c1.2-.4 1.833-1.5 2-2zM2 6h2v2c-1.2-.4-1.833-1.5-2-2zm12 4h-2v2c1.2-.4 1.833-1.5 2-2zM2 10h2v2c-1.2-.4-1.833-1.5-2-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStoplightsFill = /*#__PURE__*/ makeIcon(\n  'StoplightsFill',\n  '<path fill-rule=\"evenodd\" d=\"M6 0a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H6zm3.5 3.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm0 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zM8 13a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/><path d=\"M14 2h-2v2c1.2-.4 1.833-1.5 2-2zM2 2h2v2c-1.2-.4-1.833-1.5-2-2zm12 4h-2v2c1.2-.4 1.833-1.5 2-2zM2 6h2v2c-1.2-.4-1.833-1.5-2-2zm12 4h-2v2c1.2-.4 1.833-1.5 2-2zM2 10h2v2c-1.2-.4-1.833-1.5-2-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStopwatch = /*#__PURE__*/ makeIcon(\n  'Stopwatch',\n  '<path fill-rule=\"evenodd\" d=\"M6 .5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1H9v1.07A7.001 7.001 0 0 1 8 16 7 7 0 0 1 7 2.07V1h-.5A.5.5 0 0 1 6 .5zM8 3a6 6 0 1 0 .001 12A6 6 0 0 0 8 3zm0 2.1a.5.5 0 0 1 .5.5V9a.5.5 0 0 1-.5.5H4.5a.5.5 0 0 1 0-1h3V5.6a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStopwatchFill = /*#__PURE__*/ makeIcon(\n  'StopwatchFill',\n  '<path fill-rule=\"evenodd\" d=\"M6.5 0a.5.5 0 0 0 0 1H7v1.07A7.001 7.001 0 0 0 8 16 7 7 0 0 0 9 2.07V1h.5a.5.5 0 0 0 0-1h-3zm2 5.6a.5.5 0 1 0-1 0v2.9h-3a.5.5 0 0 0 0 1H8a.5.5 0 0 0 .5-.5V5.6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSubtract = /*#__PURE__*/ makeIcon(\n  'Subtract',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v2h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2H2a2 2 0 0 1-2-2V2zm2-1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSuitClub = /*#__PURE__*/ makeIcon(\n  'SuitClub',\n  '<path fill-rule=\"evenodd\" d=\"M8 1a3.25 3.25 0 0 0-3.25 3.25c0 .186 0 .29.016.41.014.12.045.27.12.527l.19.665-.692-.028a3.25 3.25 0 1 0 2.357 5.334.5.5 0 0 1 .844.518l-.003.005-.006.015-.024.055a21.893 21.893 0 0 1-.438.92 22.38 22.38 0 0 1-1.266 2.197c-.013.018-.02.05.001.09.01.02.021.03.03.036A.036.036 0 0 0 5.9 15h4.2c.01 0 .016-.002.022-.006a.092.092 0 0 0 .029-.035c.02-.04.014-.073.001-.091a22.875 22.875 0 0 1-1.704-3.117l-.024-.054-.006-.015-.002-.004a.5.5 0 0 1 .838-.524c.601.7 1.516 1.168 2.496 1.168a3.25 3.25 0 1 0-.139-6.498l-.699.03.199-.671c.14-.47.14-.745.139-.927V4.25A3.25 3.25 0 0 0 8 1zm2.207 12.024c.225.405.487.848.78 1.294C11.437 15 10.975 16 10.1 16H5.9c-.876 0-1.338-1-.887-1.683.291-.442.552-.88.776-1.283a4.25 4.25 0 1 1-2.007-8.187 2.79 2.79 0 0 1-.009-.064c-.023-.187-.023-.348-.023-.52V4.25a4.25 4.25 0 0 1 8.5 0c0 .14 0 .333-.04.596a4.25 4.25 0 0 1-.46 8.476 4.186 4.186 0 0 1-1.543-.298z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSuitClubFill = /*#__PURE__*/ makeIcon(\n  'SuitClubFill',\n  '<path d=\"M11.5 4.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0z\"/><path d=\"M8 9a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0zm7 0a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0z\"/><path d=\"M5.602 14.153c.5-.758 1.224-1.98 1.83-3.498.187-.467.949-.467 1.136 0a19.816 19.816 0 0 0 1.83 3.498c.231.35-.02.847-.438.847H6.04c-.419 0-.67-.497-.438-.847z\"/><path d=\"M7 7h2v4H7V7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSuitDiamond = /*#__PURE__*/ makeIcon(\n  'SuitDiamond',\n  '<path fill-rule=\"evenodd\" d=\"M8.384 1.226a.463.463 0 0 0-.768 0l-4.56 6.468a.537.537 0 0 0 0 .612l4.56 6.469a.463.463 0 0 0 .768 0l4.56-6.469a.537.537 0 0 0 0-.612l-4.56-6.468zM6.848.613a1.39 1.39 0 0 1 2.304 0l4.56 6.468a1.61 1.61 0 0 1 0 1.838l-4.56 6.468a1.39 1.39 0 0 1-2.304 0L2.288 8.92a1.61 1.61 0 0 1 0-1.838L6.848.613z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSuitDiamondFill = /*#__PURE__*/ makeIcon(\n  'SuitDiamondFill',\n  '<path d=\"M2.45 7.4L7.2 1.067a1 1 0 0 1 1.6 0L13.55 7.4a1 1 0 0 1 0 1.2L8.8 14.933a1 1 0 0 1-1.6 0L2.45 8.6a1 1 0 0 1 0-1.2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSuitHeart = /*#__PURE__*/ makeIcon(\n  'SuitHeart',\n  '<path fill-rule=\"evenodd\" d=\"M8 6.236l.894-1.789c.222-.443.607-1.08 1.152-1.595C10.582 2.345 11.224 2 12 2c1.676 0 3 1.326 3 2.92 0 1.211-.554 2.066-1.868 3.37-.337.334-.721.695-1.146 1.093C10.878 10.423 9.5 11.717 8 13.447c-1.5-1.73-2.878-3.024-3.986-4.064-.425-.398-.81-.76-1.146-1.093C1.554 6.986 1 6.131 1 4.92 1 3.326 2.324 2 4 2c.776 0 1.418.345 1.954.852.545.515.93 1.152 1.152 1.595L8 6.236zm.392 8.292a.513.513 0 0 1-.784 0c-1.601-1.902-3.05-3.262-4.243-4.381C1.3 8.208 0 6.989 0 4.92 0 2.755 1.79 1 4 1c1.6 0 2.719 1.05 3.404 2.008.26.365.458.716.596.992a7.55 7.55 0 0 1 .596-.992C9.281 2.049 10.4 1 12 1c2.21 0 4 1.755 4 3.92 0 2.069-1.3 3.288-3.365 5.227-1.193 1.12-2.642 2.48-4.243 4.38z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSuitHeartFill = /*#__PURE__*/ makeIcon(\n  'SuitHeartFill',\n  '<path d=\"M4 1c2.21 0 4 1.755 4 3.92C8 2.755 9.79 1 12 1s4 1.755 4 3.92c0 3.263-3.234 4.414-7.608 9.608a.513.513 0 0 1-.784 0C3.234 9.334 0 8.183 0 4.92 0 2.755 1.79 1 4 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSuitSpade = /*#__PURE__*/ makeIcon(\n  'SuitSpade',\n  '<path fill-rule=\"evenodd\" d=\"M8 0a.5.5 0 0 1 .429.243c1.359 2.265 2.925 3.682 4.25 4.882.096.086.19.17.282.255C14.308 6.604 15.5 7.747 15.5 9.5a4 4 0 0 1-5.406 3.746c.235.39.491.782.722 1.131.434.659-.01 1.623-.856 1.623H6.04c-.845 0-1.29-.964-.856-1.623.263-.397.51-.777.728-1.134A4 4 0 0 1 .5 9.5c0-1.753 1.192-2.896 2.539-4.12l.281-.255c1.326-1.2 2.892-2.617 4.251-4.882A.5.5 0 0 1 8 0zM3.711 6.12C2.308 7.396 1.5 8.253 1.5 9.5a3 3 0 0 0 5.275 1.956.5.5 0 0 1 .868.43c-.094.438-.33.932-.611 1.428a29.247 29.247 0 0 1-1.013 1.614.03.03 0 0 0-.005.018.074.074 0 0 0 .024.054h3.924a.074.074 0 0 0 .024-.054.03.03 0 0 0-.005-.018c-.3-.455-.658-1.005-.96-1.535-.294-.514-.57-1.064-.664-1.507a.5.5 0 0 1 .868-.43A3 3 0 0 0 14.5 9.5c0-1.247-.808-2.104-2.211-3.38L12 5.86c-1.196-1.084-2.668-2.416-4-4.424-1.332 2.008-2.804 3.34-4 4.422l-.289.261z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSuitSpadeFill = /*#__PURE__*/ makeIcon(\n  'SuitSpadeFill',\n  '<path d=\"M5.602 14.153C6.272 13.136 7.348 11.28 8 9c.652 2.28 1.727 4.136 2.398 5.153.231.35-.02.847-.438.847H6.04c-.419 0-.67-.497-.438-.847z\"/><path d=\"M4.5 12.5A3.5 3.5 0 0 0 8 9a3.5 3.5 0 1 0 7 0c0-3-4-4-7-9-3 5-7 6-7 9a3.5 3.5 0 0 0 3.5 3.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSun = /*#__PURE__*/ makeIcon(\n  'Sun',\n  '<path d=\"M3.5 8a4.5 4.5 0 1 1 9 0 4.5 4.5 0 0 1-9 0z\"/><path fill-rule=\"evenodd\" d=\"M8.202.28a.25.25 0 0 0-.404 0l-.91 1.255a.25.25 0 0 1-.334.067L5.232.79a.25.25 0 0 0-.374.155l-.36 1.508a.25.25 0 0 1-.282.19l-1.532-.245a.25.25 0 0 0-.286.286l.244 1.532a.25.25 0 0 1-.189.282l-1.509.36a.25.25 0 0 0-.154.374l.812 1.322a.25.25 0 0 1-.067.333l-1.256.91a.25.25 0 0 0 0 .405l1.256.91a.25.25 0 0 1 .067.334L.79 10.768a.25.25 0 0 0 .154.374l1.51.36a.25.25 0 0 1 .188.282l-.244 1.532a.25.25 0 0 0 .286.286l1.532-.244a.25.25 0 0 1 .282.189l.36 1.508a.25.25 0 0 0 .374.155l1.322-.812a.25.25 0 0 1 .333.067l.91 1.256a.25.25 0 0 0 .405 0l.91-1.256a.25.25 0 0 1 .334-.067l1.322.812a.25.25 0 0 0 .374-.155l.36-1.508a.25.25 0 0 1 .282-.19l1.532.245a.25.25 0 0 0 .286-.286l-.244-1.532a.25.25 0 0 1 .189-.282l1.508-.36a.25.25 0 0 0 .155-.374l-.812-1.322a.25.25 0 0 1 .067-.333l1.256-.91a.25.25 0 0 0 0-.405l-1.256-.91a.25.25 0 0 1-.067-.334l.812-1.322a.25.25 0 0 0-.155-.374l-1.508-.36a.25.25 0 0 1-.19-.282l.245-1.532a.25.25 0 0 0-.286-.286l-1.532.244a.25.25 0 0 1-.282-.189l-.36-1.508a.25.25 0 0 0-.374-.155l-1.322.812a.25.25 0 0 1-.333-.067L8.203.28zM8 2.5a5.5 5.5 0 1 0 0 11 5.5 5.5 0 0 0 0-11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSunglasses = /*#__PURE__*/ makeIcon(\n  'Sunglasses',\n  '<path fill-rule=\"evenodd\" d=\"M3 5a2 2 0 0 0-2 2v.5H.5a.5.5 0 0 0 0 1H1V9a2 2 0 0 0 2 2h1a3 3 0 0 0 3-3 1 1 0 1 1 2 0 3 3 0 0 0 3 3h1a2 2 0 0 0 2-2v-.5h.5a.5.5 0 0 0 0-1H15V7a2 2 0 0 0-2-2h-2a2 2 0 0 0-1.888 1.338A1.99 1.99 0 0 0 8 6a1.99 1.99 0 0 0-1.112.338A2 2 0 0 0 5 5H3zm0 1a1 1 0 0 0-1 1v.941c0 .264.356.348.474.112l.228-.457a2 2 0 0 1 .894-.894l.457-.228C4.289 6.356 4.205 6 3.94 6H3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTable = /*#__PURE__*/ makeIcon(\n  'Table',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2zm15 2h-4v3h4V4zm0 4h-4v3h4V8zm0 4h-4v3h3a1 1 0 0 0 1-1v-2zm-5 3v-3H6v3h4zm-5 0v-3H1v2a1 1 0 0 0 1 1h3zm-4-4h4V8H1v3zm0-4h4V4H1v3zm5-3v3h4V4H6zm4 4H6v3h4V8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTablet = /*#__PURE__*/ makeIcon(\n  'Tablet',\n  '<path fill-rule=\"evenodd\" d=\"M12 1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H4z\"/><path fill-rule=\"evenodd\" d=\"M8 14a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTabletFill = /*#__PURE__*/ makeIcon(\n  'TabletFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2zm7 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTabletLandscape = /*#__PURE__*/ makeIcon(\n  'TabletLandscape',\n  '<path fill-rule=\"evenodd\" d=\"M1 4v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1zm-1 8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v8z\"/><path fill-rule=\"evenodd\" d=\"M14 8a1 1 0 1 0-2 0 1 1 0 0 0 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTabletLandscapeFill = /*#__PURE__*/ makeIcon(\n  'TabletLandscapeFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 14a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2zm11-7a1 1 0 1 1 0 2 1 1 0 0 1 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTag = /*#__PURE__*/ makeIcon(\n  'Tag',\n  '<path fill-rule=\"evenodd\" d=\"M2 2v4.586l7 7L13.586 9l-7-7H2zM1 2a1 1 0 0 1 1-1h4.586a1 1 0 0 1 .707.293l7 7a1 1 0 0 1 0 1.414l-4.586 4.586a1 1 0 0 1-1.414 0l-7-7A1 1 0 0 1 1 6.586V2z\"/><path fill-rule=\"evenodd\" d=\"M4.5 5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zm0 1a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTagFill = /*#__PURE__*/ makeIcon(\n  'TagFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 1a1 1 0 0 0-1 1v4.586a1 1 0 0 0 .293.707l7 7a1 1 0 0 0 1.414 0l4.586-4.586a1 1 0 0 0 0-1.414l-7-7A1 1 0 0 0 6.586 1H2zm4 3.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTags = /*#__PURE__*/ makeIcon(\n  'Tags',\n  '<path fill-rule=\"evenodd\" d=\"M3 2v4.586l7 7L14.586 9l-7-7H3zM2 2a1 1 0 0 1 1-1h4.586a1 1 0 0 1 .707.293l7 7a1 1 0 0 1 0 1.414l-4.586 4.586a1 1 0 0 1-1.414 0l-7-7A1 1 0 0 1 2 6.586V2z\"/><path fill-rule=\"evenodd\" d=\"M5.5 5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zm0 1a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/><path d=\"M1 7.086a1 1 0 0 0 .293.707L8.75 15.25l-.043.043a1 1 0 0 1-1.414 0l-7-7A1 1 0 0 1 0 7.586V3a1 1 0 0 1 1-1v5.086z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTagsFill = /*#__PURE__*/ makeIcon(\n  'TagsFill',\n  '<path fill-rule=\"evenodd\" d=\"M3 1a1 1 0 0 0-1 1v4.586a1 1 0 0 0 .293.707l7 7a1 1 0 0 0 1.414 0l4.586-4.586a1 1 0 0 0 0-1.414l-7-7A1 1 0 0 0 7.586 1H3zm4 3.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/><path d=\"M1 7.086a1 1 0 0 0 .293.707L8.75 15.25l-.043.043a1 1 0 0 1-1.414 0l-7-7A1 1 0 0 1 0 7.586V3a1 1 0 0 1 1-1v5.086z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephone = /*#__PURE__*/ makeIcon(\n  'Telephone',\n  '<path fill-rule=\"evenodd\" d=\"M3.654 1.328a.678.678 0 0 0-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 0 0 4.168 6.608 17.569 17.569 0 0 0 6.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 0 0-.063-1.015l-2.307-1.794a.678.678 0 0 0-.58-.122l-2.19.547a1.745 1.745 0 0 1-1.657-.459L5.482 8.062a1.745 1.745 0 0 1-.46-1.657l.548-2.19a.678.678 0 0 0-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 0 1 2.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneFill = /*#__PURE__*/ makeIcon(\n  'TelephoneFill',\n  '<path fill-rule=\"evenodd\" d=\"M2.267.98a1.636 1.636 0 0 1 2.448.152l1.681 2.162c.309.396.418.913.296 1.4l-.513 2.053a.636.636 0 0 0 .167.604L8.65 9.654a.636.636 0 0 0 .604.167l2.052-.513a1.636 1.636 0 0 1 1.401.296l2.162 1.681c.777.604.849 1.753.153 2.448l-.97.97c-.693.693-1.73.998-2.697.658a17.47 17.47 0 0 1-6.571-4.144A17.47 17.47 0 0 1 .639 4.646c-.34-.967-.035-2.004.658-2.698l.97-.969z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneForward = /*#__PURE__*/ makeIcon(\n  'TelephoneForward',\n  '<path fill-rule=\"evenodd\" d=\"M3.654 1.328a.678.678 0 0 0-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 0 0 4.168 6.608 17.569 17.569 0 0 0 6.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 0 0-.063-1.015l-2.307-1.794a.678.678 0 0 0-.58-.122l-2.19.547a1.745 1.745 0 0 1-1.657-.459L5.482 8.062a1.745 1.745 0 0 1-.46-1.657l.548-2.19a.678.678 0 0 0-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 0 1 2.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zm10.762.135a.5.5 0 0 1 .708 0l2.5 2.5a.5.5 0 0 1 0 .708l-2.5 2.5a.5.5 0 0 1-.708-.708L14.293 4H9.5a.5.5 0 0 1 0-1h4.793l-1.647-1.646a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneForwardFill = /*#__PURE__*/ makeIcon(\n  'TelephoneForwardFill',\n  '<path fill-rule=\"evenodd\" d=\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zm10.761.135a.5.5 0 0 1 .708 0l2.5 2.5a.5.5 0 0 1 0 .708l-2.5 2.5a.5.5 0 0 1-.708-.708L14.293 4H9.5a.5.5 0 0 1 0-1h4.793l-1.647-1.646a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneInbound = /*#__PURE__*/ makeIcon(\n  'TelephoneInbound',\n  '<path fill-rule=\"evenodd\" d=\"M15.854.146a.5.5 0 0 1 0 .708L11.707 5H14.5a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 1 0v2.793L15.146.146a.5.5 0 0 1 .708 0zm-12.2 1.182a.678.678 0 0 0-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 0 0 4.168 6.608 17.569 17.569 0 0 0 6.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 0 0-.063-1.015l-2.307-1.794a.678.678 0 0 0-.58-.122l-2.19.547a1.745 1.745 0 0 1-1.657-.459L5.482 8.062a1.745 1.745 0 0 1-.46-1.657l.548-2.19a.678.678 0 0 0-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 0 1 2.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneInboundFill = /*#__PURE__*/ makeIcon(\n  'TelephoneInboundFill',\n  '<path fill-rule=\"evenodd\" d=\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM15.854.146a.5.5 0 0 1 0 .708L11.707 5H14.5a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 1 0v2.793L15.146.146a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneMinus = /*#__PURE__*/ makeIcon(\n  'TelephoneMinus',\n  '<path fill-rule=\"evenodd\" d=\"M3.654 1.328a.678.678 0 0 0-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 0 0 4.168 6.608 17.569 17.569 0 0 0 6.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 0 0-.063-1.015l-2.307-1.794a.678.678 0 0 0-.58-.122l-2.19.547a1.745 1.745 0 0 1-1.657-.459L5.482 8.062a1.745 1.745 0 0 1-.46-1.657l.548-2.19a.678.678 0 0 0-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 0 1 2.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM10 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneMinusFill = /*#__PURE__*/ makeIcon(\n  'TelephoneMinusFill',\n  '<path fill-rule=\"evenodd\" d=\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM10 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneOutbound = /*#__PURE__*/ makeIcon(\n  'TelephoneOutbound',\n  '<path fill-rule=\"evenodd\" d=\"M3.654 1.328a.678.678 0 0 0-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 0 0 4.168 6.608 17.569 17.569 0 0 0 6.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 0 0-.063-1.015l-2.307-1.794a.678.678 0 0 0-.58-.122l-2.19.547a1.745 1.745 0 0 1-1.657-.459L5.482 8.062a1.745 1.745 0 0 1-.46-1.657l.548-2.19a.678.678 0 0 0-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 0 1 2.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM11 .5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V1.707l-4.146 4.147a.5.5 0 0 1-.708-.708L14.293 1H11.5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneOutboundFill = /*#__PURE__*/ makeIcon(\n  'TelephoneOutboundFill',\n  '<path fill-rule=\"evenodd\" d=\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM11 .5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V1.707l-4.146 4.147a.5.5 0 0 1-.708-.708L14.293 1H11.5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephonePlus = /*#__PURE__*/ makeIcon(\n  'TelephonePlus',\n  '<path fill-rule=\"evenodd\" d=\"M3.654 1.328a.678.678 0 0 0-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 0 0 4.168 6.608 17.569 17.569 0 0 0 6.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 0 0-.063-1.015l-2.307-1.794a.678.678 0 0 0-.58-.122l-2.19.547a1.745 1.745 0 0 1-1.657-.459L5.482 8.062a1.745 1.745 0 0 1-.46-1.657l.548-2.19a.678.678 0 0 0-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 0 1 2.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM12.5 1a.5.5 0 0 1 .5.5V3h1.5a.5.5 0 0 1 0 1H13v1.5a.5.5 0 0 1-1 0V4h-1.5a.5.5 0 0 1 0-1H12V1.5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephonePlusFill = /*#__PURE__*/ makeIcon(\n  'TelephonePlusFill',\n  '<path fill-rule=\"evenodd\" d=\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM12.5 1a.5.5 0 0 1 .5.5V3h1.5a.5.5 0 0 1 0 1H13v1.5a.5.5 0 0 1-1 0V4h-1.5a.5.5 0 0 1 0-1H12V1.5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneX = /*#__PURE__*/ makeIcon(\n  'TelephoneX',\n  '<path fill-rule=\"evenodd\" d=\"M3.654 1.328a.678.678 0 0 0-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 0 0 4.168 6.608 17.569 17.569 0 0 0 6.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 0 0-.063-1.015l-2.307-1.794a.678.678 0 0 0-.58-.122l-2.19.547a1.745 1.745 0 0 1-1.657-.459L5.482 8.062a1.745 1.745 0 0 1-.46-1.657l.548-2.19a.678.678 0 0 0-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 0 1 2.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zm9.262 1.135a.5.5 0 0 1 .708 0L13 2.793l1.146-1.147a.5.5 0 0 1 .708.708L13.707 3.5l1.147 1.146a.5.5 0 0 1-.708.708L13 4.207l-1.146 1.147a.5.5 0 0 1-.708-.708L12.293 3.5l-1.147-1.146a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneXFill = /*#__PURE__*/ makeIcon(\n  'TelephoneXFill',\n  '<path fill-rule=\"evenodd\" d=\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zm9.261 1.135a.5.5 0 0 1 .708 0L13 2.793l1.146-1.147a.5.5 0 0 1 .708.708L13.707 3.5l1.147 1.146a.5.5 0 0 1-.708.708L13 4.207l-1.146 1.147a.5.5 0 0 1-.708-.708L12.293 3.5l-1.147-1.146a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTerminal = /*#__PURE__*/ makeIcon(\n  'Terminal',\n  '<path fill-rule=\"evenodd\" d=\"M14 2H2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1zM2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M6 9a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3A.5.5 0 0 1 6 9zM3.146 4.146a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 1 1-.708-.708L4.793 6.5 3.146 4.854a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTerminalFill = /*#__PURE__*/ makeIcon(\n  'TerminalFill',\n  '<path fill-rule=\"evenodd\" d=\"M0 3a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3zm9.5 5.5h-3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1zm-6.354-.354L4.793 6.5 3.146 4.854a.5.5 0 1 1 .708-.708l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTextCenter = /*#__PURE__*/ makeIcon(\n  'TextCenter',\n  '<path fill-rule=\"evenodd\" d=\"M4 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-2-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm2-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-2-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTextIndentLeft = /*#__PURE__*/ makeIcon(\n  'TextIndentLeft',\n  '<path fill-rule=\"evenodd\" d=\"M2 3.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm.646 2.146a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L4.293 8 2.646 6.354a.5.5 0 0 1 0-.708zM7 6.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm-5 3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTextIndentRight = /*#__PURE__*/ makeIcon(\n  'TextIndentRight',\n  '<path fill-rule=\"evenodd\" d=\"M2 3.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm10.646 2.146a.5.5 0 0 1 .708.708L11.707 8l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708l2-2zM2 6.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTextLeft = /*#__PURE__*/ makeIcon(\n  'TextLeft',\n  '<path fill-rule=\"evenodd\" d=\"M2 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTextParagraph = /*#__PURE__*/ makeIcon(\n  'TextParagraph',\n  '<path fill-rule=\"evenodd\" d=\"M2 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm4-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTextRight = /*#__PURE__*/ makeIcon(\n  'TextRight',\n  '<path fill-rule=\"evenodd\" d=\"M6 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-4-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5zm4-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm-4-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTextarea = /*#__PURE__*/ makeIcon(\n  'Textarea',\n  '<path fill-rule=\"evenodd\" d=\"M1.5 2.5A1.5 1.5 0 0 1 3 1h10a1.5 1.5 0 0 1 1.5 1.5v3.563a2 2 0 0 1 0 3.874V13.5A1.5 1.5 0 0 1 13 15H3a1.5 1.5 0 0 1-1.5-1.5V9.937a2 2 0 0 1 0-3.874V2.5zm1 3.563a2 2 0 0 1 0 3.874V13.5a.5.5 0 0 0 .5.5h10a.5.5 0 0 0 .5-.5V9.937a2 2 0 0 1 0-3.874V2.5A.5.5 0 0 0 13 2H3a.5.5 0 0 0-.5.5v3.563zM2 7a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm12 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTextareaResize = /*#__PURE__*/ makeIcon(\n  'TextareaResize',\n  '<path fill-rule=\"evenodd\" d=\"M0 3.5A2.5 2.5 0 0 1 2.5 1h11A2.5 2.5 0 0 1 16 3.5v8.854a2.5 2.5 0 0 1-2.5 2.5h-11a2.5 2.5 0 0 1-2.5-2.5V3.5zM2.5 2A1.5 1.5 0 0 0 1 3.5v8.854a1.5 1.5 0 0 0 1.5 1.5h11a1.5 1.5 0 0 0 1.5-1.5V3.5A1.5 1.5 0 0 0 13.5 2h-11zm10.854 6.5a.5.5 0 0 1 0 .707l-3 3a.5.5 0 1 1-.708-.707l3-3a.5.5 0 0 1 .708 0zm0 2.5a.5.5 0 0 1 0 .707l-.5.5a.5.5 0 0 1-.708-.707l.5-.5a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTextareaT = /*#__PURE__*/ makeIcon(\n  'TextareaT',\n  '<path fill-rule=\"evenodd\" d=\"M1.5 2.5A1.5 1.5 0 0 1 3 1h10a1.5 1.5 0 0 1 1.5 1.5v3.563a2 2 0 0 1 0 3.874V13.5A1.5 1.5 0 0 1 13 15H3a1.5 1.5 0 0 1-1.5-1.5V9.937a2 2 0 0 1 0-3.874V2.5zm1 3.563a2 2 0 0 1 0 3.874V13.5a.5.5 0 0 0 .5.5h10a.5.5 0 0 0 .5-.5V9.937a2 2 0 0 1 0-3.874V2.5A.5.5 0 0 0 13 2H3a.5.5 0 0 0-.5.5v3.563zM2 7a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm12 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/><path d=\"M11.434 4H4.566L4.5 5.994h.386c.21-1.252.612-1.446 2.173-1.495l.343-.011v6.343c0 .537-.116.665-1.049.748V12h3.294v-.421c-.938-.083-1.054-.21-1.054-.748V4.488l.348.01c1.56.05 1.963.244 2.173 1.496h.386L11.434 4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconThermometer = /*#__PURE__*/ makeIcon(\n  'Thermometer',\n  '<path fill-rule=\"evenodd\" d=\"M6 2a2 2 0 1 1 4 0v7.627a3.5 3.5 0 1 1-4 0V2zm2-1a1 1 0 0 0-1 1v7.901a.5.5 0 0 1-.25.433A2.499 2.499 0 0 0 8 15a2.5 2.5 0 0 0 1.25-4.666.5.5 0 0 1-.25-.433V2a1 1 0 0 0-1-1z\"/><path d=\"M9.5 12.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconThermometerHalf = /*#__PURE__*/ makeIcon(\n  'ThermometerHalf',\n  '<path fill-rule=\"evenodd\" d=\"M6 2a2 2 0 1 1 4 0v7.627a3.5 3.5 0 1 1-4 0V2zm2-1a1 1 0 0 0-1 1v7.901a.5.5 0 0 1-.25.433A2.499 2.499 0 0 0 8 15a2.5 2.5 0 0 0 1.25-4.666.5.5 0 0 1-.25-.433V2a1 1 0 0 0-1-1z\"/><path d=\"M8.25 2a.25.25 0 0 0-.5 0v9.02a1.514 1.514 0 0 1 .5 0V2z\"/><path d=\"M9.5 12.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconThreeDots = /*#__PURE__*/ makeIcon(\n  'ThreeDots',\n  '<path fill-rule=\"evenodd\" d=\"M3 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconThreeDotsVertical = /*#__PURE__*/ makeIcon(\n  'ThreeDotsVertical',\n  '<path fill-rule=\"evenodd\" d=\"M9.5 13a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm0-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm0-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconToggle2Off = /*#__PURE__*/ makeIcon(\n  'Toggle2Off',\n  '<path d=\"M9 11c.628-.836 1-1.874 1-3a4.978 4.978 0 0 0-1-3h4a3 3 0 1 1 0 6H9z\"/><path fill-rule=\"evenodd\" d=\"M5 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm0 1A5 5 0 1 0 5 3a5 5 0 0 0 0 10z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconToggle2On = /*#__PURE__*/ makeIcon(\n  'Toggle2On',\n  '<path d=\"M7 5H3a3 3 0 0 0 0 6h4a4.995 4.995 0 0 1-.584-1H3a2 2 0 1 1 0-4h3.416c.156-.357.352-.692.584-1z\"/><path d=\"M16 8A5 5 0 1 1 6 8a5 5 0 0 1 10 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconToggleOff = /*#__PURE__*/ makeIcon(\n  'ToggleOff',\n  '<path fill-rule=\"evenodd\" d=\"M11 4a4 4 0 0 1 0 8H8a4.992 4.992 0 0 0 2-4 4.992 4.992 0 0 0-2-4h3zm-6 8a4 4 0 1 1 0-8 4 4 0 0 1 0 8zM0 8a5 5 0 0 0 5 5h6a5 5 0 0 0 0-10H5a5 5 0 0 0-5 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconToggleOn = /*#__PURE__*/ makeIcon(\n  'ToggleOn',\n  '<path fill-rule=\"evenodd\" d=\"M5 3a5 5 0 0 0 0 10h6a5 5 0 0 0 0-10H5zm6 9a4 4 0 1 0 0-8 4 4 0 0 0 0 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconToggles = /*#__PURE__*/ makeIcon(\n  'Toggles',\n  '<path fill-rule=\"evenodd\" d=\"M4.5 9a3.5 3.5 0 1 0 0 7h7a3.5 3.5 0 1 0 0-7h-7zm7 6a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5zm-7-14a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5zm2.45 0A3.49 3.49 0 0 1 8 3.5 3.49 3.49 0 0 1 6.95 6h4.55a2.5 2.5 0 0 0 0-5H6.95zM4.5 0h7a3.5 3.5 0 1 1 0 7h-7a3.5 3.5 0 1 1 0-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconToggles2 = /*#__PURE__*/ makeIcon(\n  'Toggles2',\n  '<path fill-rule=\"evenodd\" d=\"M2 4a2 2 0 0 1 2-2h8a2 2 0 1 1 0 4H4a2 2 0 0 1-2-2zm2-1a1 1 0 0 0 0 2h8a1 1 0 1 0 0-2H4z\"/><path d=\"M14 4a4 4 0 1 1-8 0 4 4 0 0 1 8 0z\"/><path fill-rule=\"evenodd\" d=\"M9.465 10H12a2 2 0 1 1 0 4H9.465c.34-.588.535-1.271.535-2 0-.729-.195-1.412-.535-2z\"/><path fill-rule=\"evenodd\" d=\"M6 15a3 3 0 1 1 0-6 3 3 0 0 1 0 6zm0 1a4 4 0 1 1 0-8 4 4 0 0 1 0 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTools = /*#__PURE__*/ makeIcon(\n  'Tools',\n  '<path fill-rule=\"evenodd\" d=\"M0 1l1-1 3.081 2.2a1 1 0 0 1 .419.815v.07a1 1 0 0 0 .293.708L10.5 9.5l.914-.305a1 1 0 0 1 1.023.242l3.356 3.356a1 1 0 0 1 0 1.414l-1.586 1.586a1 1 0 0 1-1.414 0l-3.356-3.356a1 1 0 0 1-.242-1.023L9.5 10.5 3.793 4.793a1 1 0 0 0-.707-.293h-.071a1 1 0 0 1-.814-.419L0 1zm11.354 9.646a.5.5 0 0 0-.708.708l3 3a.5.5 0 0 0 .708-.708l-3-3z\"/><path fill-rule=\"evenodd\" d=\"M15.898 2.223a3.003 3.003 0 0 1-3.679 3.674L5.878 12.15a3 3 0 1 1-2.027-2.027l6.252-6.341A3 3 0 0 1 13.778.1l-2.142 2.142L12 4l1.757.364 2.141-2.141zm-13.37 9.019L3.001 11l.471.242.529.026.287.445.445.287.026.529L5 13l-.242.471-.026.529-.445.287-.287.445-.529.026L3 15l-.471-.242L2 14.732l-.287-.445L1.268 14l-.026-.529L1 13l.242-.471.026-.529.445-.287.287-.445.529-.026z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTrash = /*#__PURE__*/ makeIcon(\n  'Trash',\n  '<path d=\"M5.5 5.5A.5.5 0 0 1 6 6v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5zm2.5 0a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5zm3 .5a.5.5 0 0 0-1 0v6a.5.5 0 0 0 1 0V6z\"/><path fill-rule=\"evenodd\" d=\"M14.5 3a1 1 0 0 1-1 1H13v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V4h-.5a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1H6a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1h3.5a1 1 0 0 1 1 1v1zM4.118 4L4 4.059V13a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V4.059L11.882 4H4.118zM2.5 3V2h11v1h-11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTrash2 = /*#__PURE__*/ makeIcon(\n  'Trash2',\n  '<path fill-rule=\"evenodd\" d=\"M3.18 4l1.528 9.164a1 1 0 0 0 .986.836h4.612a1 1 0 0 0 .986-.836L12.82 4H3.18zm.541 9.329A2 2 0 0 0 5.694 15h4.612a2 2 0 0 0 1.973-1.671L14 3H2l1.721 10.329z\"/><path d=\"M14 3c0 1.105-2.686 2-6 2s-6-.895-6-2 2.686-2 6-2 6 .895 6 2z\"/><path fill-rule=\"evenodd\" d=\"M12.9 3c-.18-.14-.497-.307-.974-.466C10.967 2.214 9.58 2 8 2s-2.968.215-3.926.534c-.477.16-.795.327-.975.466.18.14.498.307.975.466C5.032 3.786 6.42 4 8 4s2.967-.215 3.926-.534c.477-.16.795-.327.975-.466zM8 5c3.314 0 6-.895 6-2s-2.686-2-6-2-6 .895-6 2 2.686 2 6 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTrash2Fill = /*#__PURE__*/ makeIcon(\n  'Trash2Fill',\n  '<path d=\"M2.037 3.225l1.684 10.104A2 2 0 0 0 5.694 15h4.612a2 2 0 0 0 1.973-1.671l1.684-10.104C13.627 4.224 11.085 5 8 5c-3.086 0-5.627-.776-5.963-1.775z\"/><path fill-rule=\"evenodd\" d=\"M12.9 3c-.18-.14-.497-.307-.974-.466C10.967 2.214 9.58 2 8 2s-2.968.215-3.926.534c-.477.16-.795.327-.975.466.18.14.498.307.975.466C5.032 3.786 6.42 4 8 4s2.967-.215 3.926-.534c.477-.16.795-.327.975-.466zM8 5c3.314 0 6-.895 6-2s-2.686-2-6-2-6 .895-6 2 2.686 2 6 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTrashFill = /*#__PURE__*/ makeIcon(\n  'TrashFill',\n  '<path fill-rule=\"evenodd\" d=\"M2.5 1a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1H3v9a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V4h.5a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H10a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1H2.5zm3 4a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 .5-.5zM8 5a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7A.5.5 0 0 1 8 5zm3 .5a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0v-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTree = /*#__PURE__*/ makeIcon(\n  'Tree',\n  '<path fill-rule=\"evenodd\" d=\"M8 0a.5.5 0 0 1 .416.223l3 4.5A.5.5 0 0 1 11 5.5h-.098l2.022 3.235a.5.5 0 0 1-.424.765h-.191l1.638 3.276a.5.5 0 0 1-.447.724h-11a.5.5 0 0 1-.447-.724L3.69 9.5H3.5a.5.5 0 0 1-.424-.765L5.098 5.5H5a.5.5 0 0 1-.416-.777l3-4.5A.5.5 0 0 1 8 0zM5.934 4.5H6a.5.5 0 0 1 .424.765L4.402 8.5H4.5a.5.5 0 0 1 .447.724L3.31 12.5h9.382l-1.638-3.276A.5.5 0 0 1 11.5 8.5h.098L9.576 5.265A.5.5 0 0 1 10 4.5h.066L8 1.401 5.934 4.5z\"/><path d=\"M7 13.5h2V16H7v-2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTreeFill = /*#__PURE__*/ makeIcon(\n  'TreeFill',\n  '<path fill-rule=\"evenodd\" d=\"M8 0a.5.5 0 0 1 .416.223l3 4.5A.5.5 0 0 1 11 5.5h-.098l2.022 3.235a.5.5 0 0 1-.424.765h-.191l1.638 3.276a.5.5 0 0 1-.447.724h-11a.5.5 0 0 1-.447-.724L3.69 9.5H3.5a.5.5 0 0 1-.424-.765L5.098 5.5H5a.5.5 0 0 1-.416-.777l3-4.5A.5.5 0 0 1 8 0z\"/><path d=\"M7 13.5h2V16H7v-2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTriangle = /*#__PURE__*/ makeIcon(\n  'Triangle',\n  '<path fill-rule=\"evenodd\" d=\"M7.938 2.016a.146.146 0 0 0-.054.057L1.027 13.74a.176.176 0 0 0-.002.183c.016.03.037.05.054.06.015.01.034.017.066.017h13.713a.12.12 0 0 0 .066-.017.163.163 0 0 0 .055-.06.176.176 0 0 0-.003-.183L8.12 2.073a.146.146 0 0 0-.054-.057A.13.13 0 0 0 8.002 2a.13.13 0 0 0-.064.016zm1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTriangleFill = /*#__PURE__*/ makeIcon(\n  'TriangleFill',\n  '<path fill-rule=\"evenodd\" d=\"M7.022 1.566a1.13 1.13 0 0 1 1.96 0l6.857 11.667c.457.778-.092 1.767-.98 1.767H1.144c-.889 0-1.437-.99-.98-1.767L7.022 1.566z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTriangleHalf = /*#__PURE__*/ makeIcon(\n  'TriangleHalf',\n  '<path fill-rule=\"evenodd\" d=\"M8.065 2.016a.146.146 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.162.162 0 0 1-.054.06.115.115 0 0 1-.066.017l-6.856-.017V2a.13.13 0 0 1 .063.016zm-1.043-.45a1.13 1.13 0 0 1 1.96 0l6.857 11.667c.457.778-.092 1.767-.98 1.767H1.144c-.889 0-1.437-.99-.98-1.767L7.022 1.566z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTrophy = /*#__PURE__*/ makeIcon(\n  'Trophy',\n  '<path fill-rule=\"evenodd\" d=\"M2.5.5A.5.5 0 0 1 3 0h10a.5.5 0 0 1 .5.5c0 .538-.012 1.05-.034 1.536a3 3 0 1 1-1.133 5.89c-.79 1.865-1.878 2.777-2.833 3.011v2.173l1.425.356c.194.048.377.135.537.255L13.3 15.1a.5.5 0 0 1-.3.9H3a.5.5 0 0 1-.3-.9l1.838-1.379c.16-.12.343-.207.537-.255L6.5 13.11v-2.173c-.955-.234-2.043-1.146-2.833-3.012a3 3 0 1 1-1.132-5.89A33.076 33.076 0 0 1 2.5.5zm.099 2.54a2 2 0 0 0 .72 3.935c-.333-1.05-.588-2.346-.72-3.935zm10.083 3.935a2 2 0 0 0 .72-3.935c-.133 1.59-.388 2.885-.72 3.935zM3.504 1c.007.517.026 1.006.056 1.469.13 2.028.457 3.546.87 4.667C5.294 9.48 6.484 10 7 10a.5.5 0 0 1 .5.5v2.61a1 1 0 0 1-.757.97l-1.426.356a.5.5 0 0 0-.179.085L4.5 15h7l-.638-.479a.501.501 0 0 0-.18-.085l-1.425-.356a1 1 0 0 1-.757-.97V10.5A.5.5 0 0 1 9 10c.516 0 1.706-.52 2.57-2.864.413-1.12.74-2.64.87-4.667.03-.463.049-.952.056-1.469H3.504z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTrophyFill = /*#__PURE__*/ makeIcon(\n  'TrophyFill',\n  '<path fill-rule=\"evenodd\" d=\"M2.5.5A.5.5 0 0 1 3 0h10a.5.5 0 0 1 .5.5c0 .538-.012 1.05-.034 1.536a3 3 0 1 1-1.133 5.89c-.79 1.865-1.878 2.777-2.833 3.011v2.173l1.425.356c.194.048.377.135.537.255L13.3 15.1a.5.5 0 0 1-.3.9H3a.5.5 0 0 1-.3-.9l1.838-1.379c.16-.12.343-.207.537-.255L6.5 13.11v-2.173c-.955-.234-2.043-1.146-2.833-3.012a3 3 0 1 1-1.132-5.89A33.076 33.076 0 0 1 2.5.5zm.099 2.54a2 2 0 0 0 .72 3.935c-.333-1.05-.588-2.346-.72-3.935zm10.083 3.935a2 2 0 0 0 .72-3.935c-.133 1.59-.388 2.885-.72 3.935z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTruck = /*#__PURE__*/ makeIcon(\n  'Truck',\n  '<path fill-rule=\"evenodd\" d=\"M0 3.5A1.5 1.5 0 0 1 1.5 2h9A1.5 1.5 0 0 1 12 3.5V5h1.02a1.5 1.5 0 0 1 1.17.563l1.481 1.85a1.5 1.5 0 0 1 .329.938V10.5a1.5 1.5 0 0 1-1.5 1.5H14a2 2 0 1 1-4 0H5a2 2 0 1 1-3.998-.085A1.5 1.5 0 0 1 0 10.5v-7zm1.294 7.456A1.999 1.999 0 0 1 4.732 11h5.536a2.01 2.01 0 0 1 .732-.732V3.5a.5.5 0 0 0-.5-.5h-9a.5.5 0 0 0-.5.5v7a.5.5 0 0 0 .294.456zM12 10a2 2 0 0 1 1.732 1h.768a.5.5 0 0 0 .5-.5V8.35a.5.5 0 0 0-.11-.312l-1.48-1.85A.5.5 0 0 0 13.02 6H12v4zm-9 1a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm9 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTruckFlatbed = /*#__PURE__*/ makeIcon(\n  'TruckFlatbed',\n  '<path fill-rule=\"evenodd\" d=\"M11.5 4a.5.5 0 0 1 .5.5V5h1.02a1.5 1.5 0 0 1 1.17.563l1.481 1.85a1.5 1.5 0 0 1 .329.938V10.5a1.5 1.5 0 0 1-1.5 1.5H14a2 2 0 1 1-4 0H5a2 2 0 1 1-4 0 1 1 0 0 1-1-1v-1h11V4.5a.5.5 0 0 1 .5-.5zM3 11a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm9 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm1.732 0A2 2 0 0 0 12 10V6h1.02a.5.5 0 0 1 .39.188l1.48 1.85a.5.5 0 0 1 .11.313V10.5a.5.5 0 0 1-.5.5h-.768z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTv = /*#__PURE__*/ makeIcon(\n  'Tv',\n  '<path fill-rule=\"evenodd\" d=\"M2.5 13.5A.5.5 0 0 1 3 13h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zM13.991 3H2c-.325 0-.502.078-.602.145a.758.758 0 0 0-.254.302A1.46 1.46 0 0 0 1 4.01V10c0 .325.078.502.145.602.07.105.17.188.302.254a1.464 1.464 0 0 0 .538.143L2.01 11H14c.325 0 .502-.078.602-.145a.758.758 0 0 0 .254-.302 1.464 1.464 0 0 0 .143-.538L15 9.99V4c0-.325-.078-.502-.145-.602a.757.757 0 0 0-.302-.254A1.46 1.46 0 0 0 13.99 3zM14 2H2C0 2 0 4 0 4v6c0 2 2 2 2 2h12c2 0 2-2 2-2V4c0-2-2-2-2-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTvFill = /*#__PURE__*/ makeIcon(\n  'TvFill',\n  '<path fill-rule=\"evenodd\" d=\"M2.5 13.5A.5.5 0 0 1 3 13h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zM2 2h12s2 0 2 2v6s0 2-2 2H2s-2 0-2-2V4s0-2 2-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTwitch = /*#__PURE__*/ makeIcon(\n  'Twitch',\n  '<path d=\"M3.857 0L1 2.857v10.286h3.429V16l2.857-2.857H9.57L14.714 8V0H3.857zm9.714 7.429l-2.285 2.285H9l-2 2v-2H4.429V1.143h9.142v6.286z\"/><path d=\"M11.857 3.143h-1.143V6.57h1.143V3.143zm-3.143 0H7.571V6.57h1.143V3.143z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTwitter = /*#__PURE__*/ makeIcon(\n  'Twitter',\n  '<path d=\"M5.026 15c6.038 0 9.341-5.003 9.341-9.334 0-.14 0-.282-.006-.422A6.685 6.685 0 0 0 16 3.542a6.658 6.658 0 0 1-1.889.518 3.301 3.301 0 0 0 1.447-1.817 6.533 6.533 0 0 1-2.087.793A3.286 3.286 0 0 0 7.875 6.03a9.325 9.325 0 0 1-6.767-3.429 3.289 3.289 0 0 0 1.018 4.382A3.323 3.323 0 0 1 .64 6.575v.045a3.288 3.288 0 0 0 2.632 3.218 3.203 3.203 0 0 1-.865.115 3.23 3.23 0 0 1-.614-.057 3.283 3.283 0 0 0 3.067 2.277A6.588 6.588 0 0 1 .78 13.58a6.32 6.32 0 0 1-.78-.045A9.344 9.344 0 0 0 5.026 15z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconType = /*#__PURE__*/ makeIcon(\n  'Type',\n  '<path d=\"M2.244 13.081l.943-2.803H6.66l.944 2.803H8.86L5.54 3.75H4.322L1 13.081h1.244zm2.7-7.923L6.34 9.314H3.51l1.4-4.156h.034zm9.146 7.027h.035v.896h1.128V8.125c0-1.51-1.114-2.345-2.646-2.345-1.736 0-2.59.916-2.666 2.174h1.108c.068-.718.595-1.19 1.517-1.19.971 0 1.518.52 1.518 1.464v.731H12.19c-1.647.007-2.522.8-2.522 2.058 0 1.319.957 2.18 2.345 2.18 1.06 0 1.716-.43 2.078-1.011zm-1.763.035c-.752 0-1.456-.397-1.456-1.244 0-.65.424-1.115 1.408-1.115h1.805v.834c0 .896-.752 1.525-1.757 1.525z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTypeBold = /*#__PURE__*/ makeIcon(\n  'TypeBold',\n  '<path d=\"M8.21 13c2.106 0 3.412-1.087 3.412-2.823 0-1.306-.984-2.283-2.324-2.386v-.055a2.176 2.176 0 0 0 1.852-2.14c0-1.51-1.162-2.46-3.014-2.46H3.843V13H8.21zM5.908 4.674h1.696c.963 0 1.517.451 1.517 1.244 0 .834-.629 1.32-1.73 1.32H5.908V4.673zm0 6.788V8.598h1.73c1.217 0 1.88.492 1.88 1.415 0 .943-.643 1.449-1.832 1.449H5.907z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTypeH1 = /*#__PURE__*/ makeIcon(\n  'TypeH1',\n  '<path d=\"M8.637 13V3.669H7.379V7.62H2.758V3.67H1.5V13h1.258V8.728h4.62V13h1.259zm5.329 0V3.669h-1.244L10.5 5.316v1.265l2.16-1.565h.062V13h1.244z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTypeH2 = /*#__PURE__*/ makeIcon(\n  'TypeH2',\n  '<path d=\"M7.638 13V3.669H6.38V7.62H1.759V3.67H.5V13h1.258V8.728h4.62V13h1.259zm3.022-6.733v-.048c0-.889.63-1.668 1.716-1.668.957 0 1.675.608 1.675 1.572 0 .855-.554 1.504-1.067 2.085l-3.513 3.999V13H15.5v-1.094h-4.245v-.075l2.481-2.844c.875-.998 1.586-1.784 1.586-2.953 0-1.463-1.155-2.556-2.919-2.556-1.941 0-2.966 1.326-2.966 2.74v.049h1.223z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTypeH3 = /*#__PURE__*/ makeIcon(\n  'TypeH3',\n  '<path d=\"M7.637 13V3.669H6.379V7.62H1.758V3.67H.5V13h1.258V8.728h4.62V13h1.259zm3.625-4.272h1.018c1.142 0 1.935.67 1.949 1.674.013 1.005-.78 1.737-2.01 1.73-1.08-.007-1.853-.588-1.935-1.32H9.108c.069 1.327 1.224 2.386 3.083 2.386 1.935 0 3.343-1.155 3.309-2.789-.027-1.51-1.251-2.16-2.037-2.249v-.068c.704-.123 1.764-.91 1.723-2.229-.035-1.353-1.176-2.4-2.954-2.385-1.873.006-2.857 1.162-2.898 2.358h1.196c.062-.69.711-1.299 1.696-1.299.998 0 1.695.622 1.695 1.525.007.922-.718 1.592-1.695 1.592h-.964v1.074z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTypeItalic = /*#__PURE__*/ makeIcon(\n  'TypeItalic',\n  '<path d=\"M7.991 11.674L9.53 4.455c.123-.595.246-.71 1.347-.807l.11-.52H7.211l-.11.52c1.06.096 1.128.212 1.005.807L6.57 11.674c-.123.595-.246.71-1.346.806l-.11.52h3.774l.11-.52c-1.06-.095-1.129-.211-1.006-.806z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTypeStrikethrough = /*#__PURE__*/ makeIcon(\n  'TypeStrikethrough',\n  '<path d=\"M8.527 13.164c-2.153 0-3.589-1.107-3.705-2.81h1.23c.144 1.06 1.129 1.703 2.544 1.703 1.34 0 2.31-.705 2.31-1.675 0-.827-.547-1.374-1.914-1.675L8.046 8.5h3.45c.468.437.675.994.675 1.697 0 1.826-1.436 2.967-3.644 2.967zM6.602 6.5H5.167a2.776 2.776 0 0 1-.099-.76c0-1.627 1.436-2.768 3.48-2.768 1.969 0 3.39 1.175 3.445 2.85h-1.23c-.11-1.08-.964-1.743-2.25-1.743-1.23 0-2.18.602-2.18 1.607 0 .31.083.581.27.814z\"/><path fill-rule=\"evenodd\" d=\"M15 8.5H1v-1h14v1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTypeUnderline = /*#__PURE__*/ makeIcon(\n  'TypeUnderline',\n  '<path d=\"M5.313 3.136h-1.23V9.54c0 2.105 1.47 3.623 3.917 3.623s3.917-1.518 3.917-3.623V3.136h-1.23v6.323c0 1.49-.978 2.57-2.687 2.57-1.709 0-2.687-1.08-2.687-2.57V3.136z\"/><path fill-rule=\"evenodd\" d=\"M12.5 15h-9v-1h9v1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconUiChecks = /*#__PURE__*/ makeIcon(\n  'UiChecks',\n  '<path d=\"M7 2.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-1z\"/><path fill-rule=\"evenodd\" d=\"M2 1a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H2zm0 8a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2v-2a2 2 0 0 0-2-2H2zm.854-3.646l2-2a.5.5 0 1 0-.708-.708L2.5 4.293l-.646-.647a.5.5 0 1 0-.708.708l1 1a.5.5 0 0 0 .708 0zm0 8l2-2a.5.5 0 0 0-.708-.708L2.5 12.293l-.646-.647a.5.5 0 0 0-.708.708l1 1a.5.5 0 0 0 .708 0z\"/><path d=\"M7 10.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-1z\"/><path fill-rule=\"evenodd\" d=\"M7 5.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0 8a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconUiChecksGrid = /*#__PURE__*/ makeIcon(\n  'UiChecksGrid',\n  '<path fill-rule=\"evenodd\" d=\"M2 10a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1H2zm9-9a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1h-3zm0 9a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-3zm0-10a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h3a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2h-3zM2 9a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h3a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H2zm7 2a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2h-3a2 2 0 0 1-2-2v-3zM0 2a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2zm5.354.854l-2 2a.5.5 0 0 1-.708 0l-1-1a.5.5 0 1 1 .708-.708L3 3.793l1.646-1.647a.5.5 0 1 1 .708.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconUiRadios = /*#__PURE__*/ makeIcon(\n  'UiRadios',\n  '<path d=\"M7 2.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-1zM0 12a3 3 0 1 1 6 0 3 3 0 0 1-6 0zm7-1.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-1z\"/><path fill-rule=\"evenodd\" d=\"M7 5.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0 8a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zM3 1a3 3 0 1 0 0 6 3 3 0 0 0 0-6zm0 4.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconUiRadiosGrid = /*#__PURE__*/ makeIcon(\n  'UiRadiosGrid',\n  '<path fill-rule=\"evenodd\" d=\"M3.5 15a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5zm9-9a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5zm0 9a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5zM16 3.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0zm-9 9a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0zm5.5 3.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7zm-9-11a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm0 2a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconUnion = /*#__PURE__*/ makeIcon(\n  'Union',\n  '<path fill-rule=\"evenodd\" d=\"M0 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v2h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2H2a2 2 0 0 1-2-2V2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconUnlock = /*#__PURE__*/ makeIcon(\n  'Unlock',\n  '<path fill-rule=\"evenodd\" d=\"M9.655 8H2.333c-.264 0-.398.068-.471.121a.73.73 0 0 0-.224.296 1.626 1.626 0 0 0-.138.59V14c0 .342.076.531.14.635.064.106.151.18.256.237a1.122 1.122 0 0 0 .436.127l.013.001h7.322c.264 0 .398-.068.471-.121a.73.73 0 0 0 .224-.296 1.627 1.627 0 0 0 .138-.59V9c0-.342-.076-.531-.14-.635a.658.658 0 0 0-.255-.237A1.122 1.122 0 0 0 9.655 8zm.012-1H2.333C.5 7 .5 9 .5 9v5c0 2 1.833 2 1.833 2h7.334c1.833 0 1.833-2 1.833-2V9c0-2-1.833-2-1.833-2zM8.5 4a3.5 3.5 0 1 1 7 0v3h-1V4a2.5 2.5 0 0 0-5 0v3h-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconUnlockFill = /*#__PURE__*/ makeIcon(\n  'UnlockFill',\n  '<path d=\"M.5 9a2 2 0 0 1 2-2h7a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-7a2 2 0 0 1-2-2V9z\"/><path fill-rule=\"evenodd\" d=\"M8.5 4a3.5 3.5 0 1 1 7 0v3h-1V4a2.5 2.5 0 0 0-5 0v3h-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconUpc = /*#__PURE__*/ makeIcon(\n  'Upc',\n  '<path d=\"M3 4.5a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0v-7zm2 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0v-7zm2 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0v-7zm2 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-7zm3 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0v-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconUpcScan = /*#__PURE__*/ makeIcon(\n  'UpcScan',\n  '<path fill-rule=\"evenodd\" d=\"M1.5 1a.5.5 0 0 0-.5.5v3a.5.5 0 0 1-1 0v-3A1.5 1.5 0 0 1 1.5 0h3a.5.5 0 0 1 0 1h-3zM11 .5a.5.5 0 0 1 .5-.5h3A1.5 1.5 0 0 1 16 1.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 1-.5-.5zM.5 11a.5.5 0 0 1 .5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 1 0 1h-3A1.5 1.5 0 0 1 0 14.5v-3a.5.5 0 0 1 .5-.5zm15 0a.5.5 0 0 1 .5.5v3a1.5 1.5 0 0 1-1.5 1.5h-3a.5.5 0 0 1 0-1h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 1 .5-.5z\"/><path d=\"M3 4.5a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0v-7zm2 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0v-7zm2 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0v-7zm2 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-7zm3 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0v-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconUpload = /*#__PURE__*/ makeIcon(\n  'Upload',\n  '<path fill-rule=\"evenodd\" d=\"M.5 9.9a.5.5 0 0 1 .5.5v2.5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2.5a.5.5 0 0 1 1 0v2.5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-2.5a.5.5 0 0 1 .5-.5z\"/><path fill-rule=\"evenodd\" d=\"M7.646 1.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 2.707V11.5a.5.5 0 0 1-1 0V2.707L5.354 4.854a.5.5 0 1 1-.708-.708l3-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVectorPen = /*#__PURE__*/ makeIcon(\n  'VectorPen',\n  '<path fill-rule=\"evenodd\" d=\"M10.646.646a.5.5 0 0 1 .708 0l4 4a.5.5 0 0 1 0 .708l-1.902 1.902-.829 3.313a1.5 1.5 0 0 1-1.024 1.073L1.254 14.746 4.358 4.4A1.5 1.5 0 0 1 5.43 3.377l3.313-.828L10.646.646zm-1.8 2.908l-3.173.793a.5.5 0 0 0-.358.342l-2.57 8.565 8.567-2.57a.5.5 0 0 0 .34-.357l.794-3.174-3.6-3.6z\"/><path fill-rule=\"evenodd\" d=\"M2.832 13.228L8 9a1 1 0 1 0-1-1l-4.228 5.168-.026.086.086-.026z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconViewList = /*#__PURE__*/ makeIcon(\n  'ViewList',\n  '<path fill-rule=\"evenodd\" d=\"M3 4.5h10a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1H3zM1 2a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13A.5.5 0 0 1 1 2zm0 12a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13A.5.5 0 0 1 1 14z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconViewStacked = /*#__PURE__*/ makeIcon(\n  'ViewStacked',\n  '<path fill-rule=\"evenodd\" d=\"M3 0h10a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3zm0 8h10a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1H3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVinyl = /*#__PURE__*/ makeIcon(\n  'Vinyl',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M8 6a2 2 0 1 0 0 4 2 2 0 0 0 0-4zM4 8a4 4 0 1 1 8 0 4 4 0 0 1-8 0z\"/><path d=\"M9 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVinylFill = /*#__PURE__*/ makeIcon(\n  'VinylFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM8 6a2 2 0 1 0 0 4 2 2 0 0 0 0-4zM4 8a4 4 0 1 1 8 0 4 4 0 0 1-8 0zm4 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVoicemail = /*#__PURE__*/ makeIcon(\n  'Voicemail',\n  '<path fill-rule=\"evenodd\" d=\"M7 8.5A3.49 3.49 0 0 1 5.95 11h4.1a3.5 3.5 0 1 1 2.45 1h-9A3.5 3.5 0 1 1 7 8.5zm-6 0a2.5 2.5 0 1 1 5 0 2.5 2.5 0 0 1-5 0zm14 0a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeDown = /*#__PURE__*/ makeIcon(\n  'VolumeDown',\n  '<path fill-rule=\"evenodd\" d=\"M8.717 3.55A.5.5 0 0 1 9 4v8a.5.5 0 0 1-.812.39L5.825 10.5H3.5A.5.5 0 0 1 3 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06zM8 5.04L6.312 6.39A.5.5 0 0 1 6 6.5H4v3h2a.5.5 0 0 1 .312.11L8 10.96V5.04z\"/><path d=\"M10.707 11.182A4.486 4.486 0 0 0 12.025 8a4.486 4.486 0 0 0-1.318-3.182L10 5.525A3.489 3.489 0 0 1 11.025 8c0 .966-.392 1.841-1.025 2.475l.707.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeDownFill = /*#__PURE__*/ makeIcon(\n  'VolumeDownFill',\n  '<path fill-rule=\"evenodd\" d=\"M8.717 3.55A.5.5 0 0 1 9 4v8a.5.5 0 0 1-.812.39L5.825 10.5H3.5A.5.5 0 0 1 3 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06z\"/><path d=\"M10.707 11.182A4.486 4.486 0 0 0 12.025 8a4.486 4.486 0 0 0-1.318-3.182L10 5.525A3.489 3.489 0 0 1 11.025 8c0 .966-.392 1.841-1.025 2.475l.707.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeMute = /*#__PURE__*/ makeIcon(\n  'VolumeMute',\n  '<path fill-rule=\"evenodd\" d=\"M6.717 3.55A.5.5 0 0 1 7 4v8a.5.5 0 0 1-.812.39L3.825 10.5H1.5A.5.5 0 0 1 1 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06zM6 5.04L4.312 6.39A.5.5 0 0 1 4 6.5H2v3h2a.5.5 0 0 1 .312.11L6 10.96V5.04zm7.854.606a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708l4-4a.5.5 0 0 1 .708 0z\"/><path fill-rule=\"evenodd\" d=\"M9.146 5.646a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeMuteFill = /*#__PURE__*/ makeIcon(\n  'VolumeMuteFill',\n  '<path fill-rule=\"evenodd\" d=\"M6.717 3.55A.5.5 0 0 1 7 4v8a.5.5 0 0 1-.812.39L3.825 10.5H1.5A.5.5 0 0 1 1 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06zm7.137 2.096a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708l4-4a.5.5 0 0 1 .708 0z\"/><path fill-rule=\"evenodd\" d=\"M9.146 5.646a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeOff = /*#__PURE__*/ makeIcon(\n  'VolumeOff',\n  '<path fill-rule=\"evenodd\" d=\"M10.717 3.55A.5.5 0 0 1 11 4v8a.5.5 0 0 1-.812.39L7.825 10.5H5.5A.5.5 0 0 1 5 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06zM10 5.04L8.312 6.39A.5.5 0 0 1 8 6.5H6v3h2a.5.5 0 0 1 .312.11L10 10.96V5.04z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeOffFill = /*#__PURE__*/ makeIcon(\n  'VolumeOffFill',\n  '<path fill-rule=\"evenodd\" d=\"M10.717 3.55A.5.5 0 0 1 11 4v8a.5.5 0 0 1-.812.39L7.825 10.5H5.5A.5.5 0 0 1 5 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeUp = /*#__PURE__*/ makeIcon(\n  'VolumeUp',\n  '<path fill-rule=\"evenodd\" d=\"M6.717 3.55A.5.5 0 0 1 7 4v8a.5.5 0 0 1-.812.39L3.825 10.5H1.5A.5.5 0 0 1 1 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06zM6 5.04L4.312 6.39A.5.5 0 0 1 4 6.5H2v3h2a.5.5 0 0 1 .312.11L6 10.96V5.04z\"/><path d=\"M11.536 14.01A8.473 8.473 0 0 0 14.026 8a8.473 8.473 0 0 0-2.49-6.01l-.708.707A7.476 7.476 0 0 1 13.025 8c0 2.071-.84 3.946-2.197 5.303l.708.707z\"/><path d=\"M10.121 12.596A6.48 6.48 0 0 0 12.025 8a6.48 6.48 0 0 0-1.904-4.596l-.707.707A5.483 5.483 0 0 1 11.025 8a5.483 5.483 0 0 1-1.61 3.89l.706.706z\"/><path d=\"M8.707 11.182A4.486 4.486 0 0 0 10.025 8a4.486 4.486 0 0 0-1.318-3.182L8 5.525A3.489 3.489 0 0 1 9.025 8 3.49 3.49 0 0 1 8 10.475l.707.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeUpFill = /*#__PURE__*/ makeIcon(\n  'VolumeUpFill',\n  '<path d=\"M11.536 14.01A8.473 8.473 0 0 0 14.026 8a8.473 8.473 0 0 0-2.49-6.01l-.708.707A7.476 7.476 0 0 1 13.025 8c0 2.071-.84 3.946-2.197 5.303l.708.707z\"/><path d=\"M10.121 12.596A6.48 6.48 0 0 0 12.025 8a6.48 6.48 0 0 0-1.904-4.596l-.707.707A5.483 5.483 0 0 1 11.025 8a5.483 5.483 0 0 1-1.61 3.89l.706.706z\"/><path d=\"M8.707 11.182A4.486 4.486 0 0 0 10.025 8a4.486 4.486 0 0 0-1.318-3.182L8 5.525A3.489 3.489 0 0 1 9.025 8 3.49 3.49 0 0 1 8 10.475l.707.707z\"/><path fill-rule=\"evenodd\" d=\"M6.717 3.55A.5.5 0 0 1 7 4v8a.5.5 0 0 1-.812.39L3.825 10.5H1.5A.5.5 0 0 1 1 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVr = /*#__PURE__*/ makeIcon(\n  'Vr',\n  '<path d=\"M3 12V4a1 1 0 0 1 1-1h2.5V2H4a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5v-1H4a1 1 0 0 1-1-1zm6.5 1v1H12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H9.5v1H12a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H9.5z\"/><path fill-rule=\"evenodd\" d=\"M8 16a.5.5 0 0 1-.5-.5V.5a.5.5 0 0 1 1 0v15a.5.5 0 0 1-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWallet = /*#__PURE__*/ makeIcon(\n  'Wallet',\n  '<path fill-rule=\"evenodd\" d=\"M0 3a2 2 0 0 1 2-2h13.5a.5.5 0 0 1 0 1H15v2a1 1 0 0 1 1 1v8.5a1.5 1.5 0 0 1-1.5 1.5h-12A2.5 2.5 0 0 1 0 12.5V3zm1 1.732V12.5A1.5 1.5 0 0 0 2.5 14h12a.5.5 0 0 0 .5-.5V5H2a1.99 1.99 0 0 1-1-.268zM1 3a1 1 0 0 0 1 1h12V2H2a1 1 0 0 0-1 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWallet2 = /*#__PURE__*/ makeIcon(\n  'Wallet2',\n  '<path fill-rule=\"evenodd\" d=\"M12.136.326A1.5 1.5 0 0 1 14 1.78V3h.5A1.5 1.5 0 0 1 16 4.5v9a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 13.5v-9a1.5 1.5 0 0 1 1.432-1.499L12.136.326zM5.562 3H13V1.78a.5.5 0 0 0-.621-.484L5.562 3zM1.5 4a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5h-13z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWalletFill = /*#__PURE__*/ makeIcon(\n  'WalletFill',\n  '<path d=\"M1.5 2A1.5 1.5 0 0 0 0 3.5v2h6a.5.5 0 0 1 .5.5c0 .253.08.644.306.958.207.288.557.542 1.194.542.637 0 .987-.254 1.194-.542.226-.314.306-.705.306-.958a.5.5 0 0 1 .5-.5h6v-2A1.5 1.5 0 0 0 14.5 2h-13z\"/><path d=\"M16 6.5h-5.551a2.678 2.678 0 0 1-.443 1.042C9.613 8.088 8.963 8.5 8 8.5c-.963 0-1.613-.412-2.006-.958A2.679 2.679 0 0 1 5.551 6.5H0v6A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWatch = /*#__PURE__*/ makeIcon(\n  'Watch',\n  '<path fill-rule=\"evenodd\" d=\"M4 14.333v-1.86A5.985 5.985 0 0 1 2 8c0-1.777.772-3.374 2-4.472V1.667C4 .747 4.746 0 5.667 0h4.666C11.253 0 12 .746 12 1.667v1.86A5.985 5.985 0 0 1 14 8a5.985 5.985 0 0 1-2 4.472v1.861c0 .92-.746 1.667-1.667 1.667H5.667C4.747 16 4 15.254 4 14.333zM13 8A5 5 0 1 0 3 8a5 5 0 0 0 10 0z\"/><path d=\"M13.918 8.993A.502.502 0 0 0 14.5 8.5v-1a.5.5 0 0 0-.582-.493 6.044 6.044 0 0 1 0 1.986z\"/><path fill-rule=\"evenodd\" d=\"M8 4.5a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5H6a.5.5 0 0 1 0-1h1.5V5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWifi = /*#__PURE__*/ makeIcon(\n  'Wifi',\n  '<path d=\"M15.385 6.115a.485.485 0 0 0-.048-.736A12.443 12.443 0 0 0 8 3 12.44 12.44 0 0 0 .663 5.379a.485.485 0 0 0-.048.736.518.518 0 0 0 .668.05A11.448 11.448 0 0 1 8 4c2.507 0 4.827.802 6.717 2.164.204.148.489.13.668-.049z\"/><path d=\"M13.229 8.271c.216-.216.194-.578-.063-.745A9.456 9.456 0 0 0 8 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 0 0-.063.745.525.525 0 0 0 .652.065A8.46 8.46 0 0 1 8 7a8.46 8.46 0 0 1 4.577 1.336c.205.132.48.108.652-.065zm-2.183 2.183c.226-.226.185-.605-.1-.75A6.472 6.472 0 0 0 8 9c-1.06 0-2.062.254-2.946.704-.285.145-.326.524-.1.75l.015.015c.16.16.408.19.611.09A5.478 5.478 0 0 1 8 10c.868 0 1.69.201 2.42.56.203.1.45.07.611-.091l.015-.015zM9.06 12.44c.196-.196.198-.52-.04-.66A1.99 1.99 0 0 0 8 11.5a1.99 1.99 0 0 0-1.02.28c-.238.14-.236.464-.04.66l.706.706a.5.5 0 0 0 .708 0l.707-.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWifi1 = /*#__PURE__*/ makeIcon(\n  'Wifi1',\n  '<path d=\"M11.046 10.454c.226-.226.185-.605-.1-.75A6.473 6.473 0 0 0 8 9c-1.06 0-2.062.254-2.946.704-.285.145-.326.524-.1.75l.015.015c.16.16.407.19.611.09A5.478 5.478 0 0 1 8 10c.868 0 1.69.201 2.42.56.203.1.45.07.611-.091l.015-.015zM9.06 12.44c.196-.196.198-.52-.04-.66A1.99 1.99 0 0 0 8 11.5a1.99 1.99 0 0 0-1.02.28c-.238.14-.236.464-.04.66l.706.706a.5.5 0 0 0 .707 0l.708-.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWifi2 = /*#__PURE__*/ makeIcon(\n  'Wifi2',\n  '<path d=\"M13.229 8.271c.216-.216.194-.578-.063-.745A9.456 9.456 0 0 0 8 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 0 0-.063.745.525.525 0 0 0 .652.065A8.46 8.46 0 0 1 8 7a8.46 8.46 0 0 1 4.577 1.336c.205.132.48.108.652-.065zm-2.183 2.183c.226-.226.185-.605-.1-.75A6.473 6.473 0 0 0 8 9c-1.06 0-2.062.254-2.946.704-.285.145-.326.524-.1.75l.015.015c.16.16.408.19.611.09A5.478 5.478 0 0 1 8 10c.868 0 1.69.201 2.42.56.203.1.45.07.611-.091l.015-.015zM9.06 12.44c.196-.196.198-.52-.04-.66A1.99 1.99 0 0 0 8 11.5a1.99 1.99 0 0 0-1.02.28c-.238.14-.236.464-.04.66l.706.706a.5.5 0 0 0 .708 0l.707-.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWifiOff = /*#__PURE__*/ makeIcon(\n  'WifiOff',\n  '<path d=\"M10.706 3.294A12.545 12.545 0 0 0 8 3 12.44 12.44 0 0 0 .663 5.379a.485.485 0 0 0-.048.736.518.518 0 0 0 .668.05A11.448 11.448 0 0 1 8 4c.63 0 1.249.05 1.852.148l.854-.854zM8 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 0 0-.063.745.525.525 0 0 0 .652.065 8.448 8.448 0 0 1 3.51-1.27L8 6zm2.596 1.404l.785-.785c.63.24 1.228.545 1.785.907a.482.482 0 0 1 .063.745.525.525 0 0 1-.652.065 8.462 8.462 0 0 0-1.98-.932zM8 10l.934-.933a6.454 6.454 0 0 1 2.012.637c.285.145.326.524.1.75l-.015.015a.532.532 0 0 1-.611.09A5.478 5.478 0 0 0 8 10zm4.905-4.905l.747-.747c.59.3 1.153.645 1.685 1.03a.485.485 0 0 1 .048.737.518.518 0 0 1-.668.05 11.496 11.496 0 0 0-1.812-1.07zM9.02 11.78c.238.14.236.464.04.66l-.706.706a.5.5 0 0 1-.708 0l-.707-.707c-.195-.195-.197-.518.04-.66A1.99 1.99 0 0 1 8 11.5c.373 0 .722.102 1.02.28zm4.355-9.905a.53.53 0 1 1 .75.75l-10.75 10.75a.53.53 0 0 1-.75-.75l10.75-10.75z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWindow = /*#__PURE__*/ makeIcon(\n  'Window',\n  '<path fill-rule=\"evenodd\" d=\"M14 2H2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1zM2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M15 6H1V5h14v1z\"/><path d=\"M3 3.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm1.5 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm1.5 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWrench = /*#__PURE__*/ makeIcon(\n  'Wrench',\n  '<path fill-rule=\"evenodd\" d=\"M.102 2.223A3.004 3.004 0 0 0 3.78 5.897l6.341 6.252A3.003 3.003 0 0 0 13 16a3 3 0 1 0-.851-5.878L5.897 3.781A3.004 3.004 0 0 0 2.223.1l2.141 2.142L4 4l-1.757.364L.102 2.223zm13.37 9.019L13 11l-.471.242-.529.026-.287.445-.445.287-.026.529L11 13l.242.471.026.529.445.287.287.445.529.026L13 15l.471-.242.529-.026.287-.445.445-.287.026-.529L15 13l-.242-.471-.026-.529-.445-.287-.287-.445-.529-.026z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconX = /*#__PURE__*/ makeIcon(\n  'X',\n  '<path fill-rule=\"evenodd\" d=\"M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconXCircle = /*#__PURE__*/ makeIcon(\n  'XCircle',\n  '<path fill-rule=\"evenodd\" d=\"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path fill-rule=\"evenodd\" d=\"M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconXCircleFill = /*#__PURE__*/ makeIcon(\n  'XCircleFill',\n  '<path fill-rule=\"evenodd\" d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconXDiamond = /*#__PURE__*/ makeIcon(\n  'XDiamond',\n  '<path fill-rule=\"evenodd\" d=\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.482 1.482 0 0 1 0-2.098L6.95.435zm1.4.7a.495.495 0 0 0-.7 0L1.134 7.65a.495.495 0 0 0 0 .7l6.516 6.516a.495.495 0 0 0 .7 0l6.516-6.516a.495.495 0 0 0 0-.7L8.35 1.134z\"/><path fill-rule=\"evenodd\" d=\"M8.361 1.17a.51.51 0 0 0-.722 0L4.766 4.044 8 7.278l3.234-3.234L8.361 1.17zm3.595 3.596L8.722 8l3.234 3.234 2.873-2.873c.2-.2.2-.523 0-.722l-2.873-2.873zm-.722 7.19L8 8.722l-3.234 3.234 2.873 2.873c.2.2.523.2.722 0l2.873-2.873zm-7.19-.722L7.278 8 4.044 4.766 1.17 7.639a.511.511 0 0 0 0 .722l2.874 2.873zM6.917.45a1.531 1.531 0 0 1 2.166 0l6.469 6.468a1.532 1.532 0 0 1 0 2.166l-6.47 6.469a1.532 1.532 0 0 1-2.165 0L.45 9.082a1.531 1.531 0 0 1 0-2.165L6.917.45z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconXDiamondFill = /*#__PURE__*/ makeIcon(\n  'XDiamondFill',\n  '<path fill-rule=\"evenodd\" d=\"M9.05.435c-.58-.58-1.52-.58-2.1 0L4.047 3.339 8 7.293l3.954-3.954L9.049.435zm3.61 3.611L8.708 8l3.954 3.954 2.904-2.905c.58-.58.58-1.519 0-2.098l-2.904-2.905zm-.706 8.615L8 8.707l-3.954 3.954 2.905 2.904c.58.58 1.519.58 2.098 0l2.905-2.904zm-8.615-.707L7.293 8 3.339 4.046.435 6.951c-.58.58-.58 1.519 0 2.098l2.904 2.905z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconXOctagon = /*#__PURE__*/ makeIcon(\n  'XOctagon',\n  '<path fill-rule=\"evenodd\" d=\"M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z\"/><path fill-rule=\"evenodd\" d=\"M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconXOctagonFill = /*#__PURE__*/ makeIcon(\n  'XOctagonFill',\n  '<path fill-rule=\"evenodd\" d=\"M11.46.146A.5.5 0 0 0 11.107 0H4.893a.5.5 0 0 0-.353.146L.146 4.54A.5.5 0 0 0 0 4.893v6.214a.5.5 0 0 0 .146.353l4.394 4.394a.5.5 0 0 0 .353.146h6.214a.5.5 0 0 0 .353-.146l4.394-4.394a.5.5 0 0 0 .146-.353V4.893a.5.5 0 0 0-.146-.353L11.46.146zm-6.106 4.5a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconXSquare = /*#__PURE__*/ makeIcon(\n  'XSquare',\n  '<path fill-rule=\"evenodd\" d=\"M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z\"/><path fill-rule=\"evenodd\" d=\"M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconXSquareFill = /*#__PURE__*/ makeIcon(\n  'XSquareFill',\n  '<path fill-rule=\"evenodd\" d=\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm3.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconYoutube = /*#__PURE__*/ makeIcon(\n  'Youtube',\n  '<path fill-rule=\"evenodd\" d=\"M8.051 1.999h.089c.822.003 4.987.033 6.11.335a2.01 2.01 0 0 1 1.415 1.42c.101.38.172.883.22 1.402l.01.104.022.26.008.104c.065.914.073 1.77.074 1.957v.075c-.001.194-.01 1.108-.082 2.06l-.008.105-.009.104c-.05.572-.124 1.14-.235 1.558a2.007 2.007 0 0 1-1.415 1.42c-1.16.312-5.569.334-6.18.335h-.142c-.309 0-1.587-.006-2.927-.052l-.17-.006-.087-.004-.171-.007-.171-.007c-1.11-.049-2.167-.128-2.654-.26a2.007 2.007 0 0 1-1.415-1.419c-.111-.417-.185-.986-.235-1.558L.09 9.82l-.008-.104A31.4 31.4 0 0 1 0 7.68v-.122C.002 7.343.01 6.6.064 5.78l.007-.103.003-.052.008-.104.022-.26.01-.104c.048-.519.119-1.023.22-1.402a2.007 2.007 0 0 1 1.415-1.42c.487-.13 1.544-.21 2.654-.26l.17-.007.172-.006.086-.003.171-.007A99.788 99.788 0 0 1 7.858 2h.193zM6.4 5.209v4.818l4.157-2.408L6.4 5.209z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconZoomIn = /*#__PURE__*/ makeIcon(\n  'ZoomIn',\n  '<path fill-rule=\"evenodd\" d=\"M6.5 12a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11zM13 6.5a6.5 6.5 0 1 1-13 0 6.5 6.5 0 0 1 13 0z\"/><path d=\"M10.344 11.742c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1 6.538 6.538 0 0 1-1.398 1.4z\"/><path fill-rule=\"evenodd\" d=\"M6.5 3a.5.5 0 0 1 .5.5V6h2.5a.5.5 0 0 1 0 1H7v2.5a.5.5 0 0 1-1 0V7H3.5a.5.5 0 0 1 0-1H6V3.5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconZoomOut = /*#__PURE__*/ makeIcon(\n  'ZoomOut',\n  '<path fill-rule=\"evenodd\" d=\"M6.5 12a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11zM13 6.5a6.5 6.5 0 1 1-13 0 6.5 6.5 0 0 1 13 0z\"/><path d=\"M10.344 11.742c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1 6.538 6.538 0 0 1-1.398 1.4z\"/><path fill-rule=\"evenodd\" d=\"M3 6.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// --- END AUTO-GENERATED FILE ---\n","import { Vue, mergeData } from '../vue'\nimport { NAME_ICON } from '../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props'\nimport { RX_ICON_PREFIX } from '../constants/regex'\nimport { omit, sortKeys } from '../utils/object'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\nimport { pascalCase, trim } from '../utils/string'\nimport { BIconBlank } from './icons'\nimport { props as BVIconBaseProps } from './helpers/icon-base'\n\n// --- Helper methods ---\n\nconst findIconComponent = (ctx, iconName) => {\n  if (!ctx) {\n    return null\n  }\n  const components = (ctx.$options || {}).components\n  const iconComponent = components[iconName]\n  return iconComponent || findIconComponent(ctx.$parent, iconName)\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...omit(BVIconBaseProps, ['content', 'stacked']),\n    icon: makeProp(PROP_TYPE_STRING),\n    stacked: makeProp(PROP_TYPE_BOOLEAN, false)\n  }),\n  NAME_ICON\n)\n\n// --- Main component ---\n\n// Helper BIcon component\n// Requires the requested icon component to be installed\n// @vue/component\nexport const BIcon = /*#__PURE__*/ Vue.extend({\n  name: NAME_ICON,\n  functional: true,\n  props,\n  render(h, { data, props, parent }) {\n    const icon = pascalCase(trim(props.icon || '')).replace(RX_ICON_PREFIX, '')\n\n    // If parent context exists, we check to see if the icon has been registered\n    // either locally in the parent component, or globally at the `$root` level\n    // If not registered, we render a blank icon\n    return h(\n      icon ? findIconComponent(parent, `BIcon${icon}`) || BIconBlank : BIconBlank,\n      mergeData(data, { props: { ...props, icon: null } })\n    )\n  }\n})\n","export const CODE_BACKSPACE = 8\nexport const CODE_BREAK = 19\nexport const CODE_DELETE = 46\nexport const CODE_DOWN = 40\nexport const CODE_END = 35\nexport const CODE_ENTER = 13\nexport const CODE_ESC = 27\nexport const CODE_HOME = 36\nexport const CODE_LEFT = 37\nexport const CODE_PAGEDOWN = 34\nexport const CODE_PAGEUP = 33\nexport const CODE_RIGHT = 39\nexport const CODE_SPACE = 32\nexport const CODE_UP = 38\n","import { hasOwnProperty, keys } from './object'\nimport { isArray, isDate, isObject } from './inspect'\n\n// Assumes both a and b are arrays!\n// Handles when arrays are \"sparse\" (array.every(...) doesn't handle sparse)\nconst compareArrays = (a, b) => {\n  if (a.length !== b.length) {\n    return false\n  }\n  let equal = true\n  for (let i = 0; equal && i < a.length; i++) {\n    equal = looseEqual(a[i], b[i])\n  }\n  return equal\n}\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n * Returns boolean true or false\n */\nexport const looseEqual = (a, b) => {\n  if (a === b) {\n    return true\n  }\n  let aValidType = isDate(a)\n  let bValidType = isDate(b)\n  if (aValidType || bValidType) {\n    return aValidType && bValidType ? a.getTime() === b.getTime() : false\n  }\n  aValidType = isArray(a)\n  bValidType = isArray(b)\n  if (aValidType || bValidType) {\n    return aValidType && bValidType ? compareArrays(a, b) : false\n  }\n  aValidType = isObject(a)\n  bValidType = isObject(b)\n  if (aValidType || bValidType) {\n    /* istanbul ignore if: this if will probably never be called */\n    if (!aValidType || !bValidType) {\n      return false\n    }\n    const aKeysCount = keys(a).length\n    const bKeysCount = keys(b).length\n    if (aKeysCount !== bKeysCount) {\n      return false\n    }\n    for (const key in a) {\n      const aHasKey = hasOwnProperty(a, key)\n      const bHasKey = hasOwnProperty(b, key)\n      if ((aHasKey && !bHasKey) || (!aHasKey && bHasKey) || !looseEqual(a[key], b[key])) {\n        return false\n      }\n    }\n  }\n  return String(a) === String(b)\n}\n","import { Vue } from '../vue'\nimport { cloneDeep } from './clone-deep'\nimport { looseEqual } from './loose-equal'\nimport { hasOwnProperty, keys } from './object'\n\nconst isEmpty = value => !value || keys(value).length === 0\n\nexport const makePropWatcher = propName => ({\n  handler(newValue, oldValue) {\n    if (looseEqual(newValue, oldValue)) {\n      return\n    }\n    if (isEmpty(newValue) || isEmpty(oldValue)) {\n      this[propName] = cloneDeep(newValue)\n      return\n    }\n    for (const key in oldValue) {\n      if (!hasOwnProperty(newValue, key)) {\n        this.$delete(this.$data[propName], key)\n      }\n    }\n    for (const key in newValue) {\n      this.$set(this.$data[propName], key, newValue[key])\n    }\n  }\n})\n\nexport const makePropCacheMixin = (propName, proxyPropName) =>\n  Vue.extend({\n    data() {\n      return { [proxyPropName]: cloneDeep(this[propName]) }\n    },\n    watch: {\n      // Work around unwanted re-renders: https://github.com/vuejs/vue/issues/10115\n      [propName]: makePropWatcher(proxyPropName)\n    }\n  })\n","import { makePropCacheMixin } from '../utils/cache'\n\nexport const attrsMixin = makePropCacheMixin('$attrs', 'bvAttrs')\n","import { Vue } from '../vue'\nimport { HOOK_EVENT_NAME_BEFORE_DESTROY } from '../constants/events'\n\n// @vue/component\nexport const listenOnRootMixin = Vue.extend({\n  methods: {\n    /**\n     * Safely register event listeners on the root Vue node\n     * While Vue automatically removes listeners for individual components,\n     * when a component registers a listener on root and is destroyed,\n     * this orphans a callback because the node is gone,\n     * but the root does not clear the callback\n     *\n     * When registering a `$root` listener, it also registers a listener on\n     * the component's `beforeDestroy()` hook to automatically remove the\n     * event listener from the `$root` instance\n     *\n     * @param {string} event\n     * @param {function} callback\n     */\n    listenOnRoot(event, callback) {\n      this.$root.$on(event, callback)\n      this.$on(HOOK_EVENT_NAME_BEFORE_DESTROY, () => {\n        this.$root.$off(event, callback)\n      })\n    },\n\n    /**\n     * Safely register a `$once()` event listener on the root Vue node\n     * While Vue automatically removes listeners for individual components,\n     * when a component registers a listener on root and is destroyed,\n     * this orphans a callback because the node is gone,\n     * but the root does not clear the callback\n     *\n     * When registering a $root listener, it also registers a listener on\n     * the component's `beforeDestroy` hook to automatically remove the\n     * event listener from the $root instance.\n     *\n     * @param {string} event\n     * @param {function} callback\n     */\n    listenOnRootOnce(event, callback) {\n      this.$root.$once(event, callback)\n      this.$on(HOOK_EVENT_NAME_BEFORE_DESTROY, () => {\n        this.$root.$off(event, callback)\n      })\n    },\n\n    /**\n     * Convenience method for calling `vm.$emit()` on `vm.$root`\n     *\n     * @param {string} event\n     * @param {*} args\n     */\n    emitOnRoot(event, ...args) {\n      this.$root.$emit(event, ...args)\n    }\n  }\n})\n","import { makePropCacheMixin } from '../utils/cache'\n\nexport const listenersMixin = makePropCacheMixin('$listeners', 'bvListeners')\n","import { Vue } from '../../vue'\nimport { NAME_LINK } from '../../constants/components'\nimport { EVENT_NAME_CLICK } from '../../constants/events'\nimport {\n  PROP_TYPE_ARRAY_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_OBJECT_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { concat } from '../../utils/array'\nimport { attemptBlur, attemptFocus, isTag } from '../../utils/dom'\nimport { getRootEventName, stopEvent } from '../../utils/events'\nimport { isBoolean, isEvent, isFunction, isUndefined } from '../../utils/inspect'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { computeHref, computeRel, computeTag, isRouterLink } from '../../utils/router'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst ROOT_EVENT_NAME_CLICKED = getRootEventName(NAME_LINK, 'clicked')\n\n// --- Props ---\n\n// `<router-link>` specific props\nexport const routerLinkProps = {\n  activeClass: makeProp(PROP_TYPE_STRING),\n  append: makeProp(PROP_TYPE_BOOLEAN, false),\n  event: makeProp(PROP_TYPE_ARRAY_STRING, EVENT_NAME_CLICK),\n  exact: makeProp(PROP_TYPE_BOOLEAN, false),\n  exactActiveClass: makeProp(PROP_TYPE_STRING),\n  replace: makeProp(PROP_TYPE_BOOLEAN, false),\n  routerTag: makeProp(PROP_TYPE_STRING, 'a'),\n  to: makeProp(PROP_TYPE_OBJECT_STRING)\n}\n\n// `<nuxt-link>` specific props\nexport const nuxtLinkProps = {\n  noPrefetch: makeProp(PROP_TYPE_BOOLEAN, false),\n  // Must be `null` to fall back to the value defined in the\n  // `nuxt.config.js` configuration file for `router.prefetchLinks`\n  // We convert `null` to `undefined`, so that Nuxt.js will use the\n  // compiled default\n  // Vue treats `undefined` as default of `false` for Boolean props,\n  // so we must set it as `null` here to be a true tri-state prop\n  prefetch: makeProp(PROP_TYPE_BOOLEAN, null)\n}\n\n// All `<b-link>` props\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...nuxtLinkProps,\n    ...routerLinkProps,\n    active: makeProp(PROP_TYPE_BOOLEAN, false),\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    href: makeProp(PROP_TYPE_STRING),\n    // Must be `null` if no value provided\n    rel: makeProp(PROP_TYPE_STRING, null),\n    // To support 3rd party router links based on `<router-link>` (i.e. `g-link` for Gridsome)\n    // Default is to auto choose between `<router-link>` and `<nuxt-link>`\n    // Gridsome doesn't provide a mechanism to auto detect and has caveats\n    // such as not supporting FQDN URLs or hash only URLs\n    routerComponentName: makeProp(PROP_TYPE_STRING),\n    target: makeProp(PROP_TYPE_STRING, '_self')\n  }),\n  NAME_LINK\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BLink = /*#__PURE__*/ Vue.extend({\n  name: NAME_LINK,\n  // Mixin order is important!\n  mixins: [attrsMixin, listenersMixin, listenOnRootMixin, normalizeSlotMixin],\n  inheritAttrs: false,\n  props,\n  computed: {\n    computedTag() {\n      // We don't pass `this` as the first arg as we need reactivity of the props\n      const { to, disabled, routerComponentName } = this\n      return computeTag({ to, disabled, routerComponentName }, this)\n    },\n    isRouterLink() {\n      return isRouterLink(this.computedTag)\n    },\n    computedRel() {\n      // We don't pass `this` as the first arg as we need reactivity of the props\n      const { target, rel } = this\n      return computeRel({ target, rel })\n    },\n    computedHref() {\n      // We don't pass `this` as the first arg as we need reactivity of the props\n      const { to, href } = this\n      return computeHref({ to, href }, this.computedTag)\n    },\n    computedProps() {\n      const { prefetch } = this\n      return this.isRouterLink\n        ? {\n            ...pluckProps({ ...routerLinkProps, ...nuxtLinkProps }, this),\n            // Coerce `prefetch` value `null` to be `undefined`\n            prefetch: isBoolean(prefetch) ? prefetch : undefined,\n            // Pass `router-tag` as `tag` prop\n            tag: this.routerTag\n          }\n        : {}\n    },\n    computedAttrs() {\n      const {\n        bvAttrs,\n        computedHref: href,\n        computedRel: rel,\n        disabled,\n        target,\n        routerTag,\n        isRouterLink\n      } = this\n\n      return {\n        ...bvAttrs,\n        // If `href` attribute exists on `<router-link>` (even `undefined` or `null`)\n        // it fails working on SSR, so we explicitly add it here if needed\n        // (i.e. if `computedHref` is truthy)\n        ...(href ? { href } : {}),\n        // We don't render `rel` or `target` on non link tags when using `vue-router`\n        ...(isRouterLink && !isTag(routerTag, 'a') ? {} : { rel, target }),\n        tabindex: disabled ? '-1' : isUndefined(bvAttrs.tabindex) ? null : bvAttrs.tabindex,\n        'aria-disabled': disabled ? 'true' : null\n      }\n    },\n    computedListeners() {\n      return {\n        // Transfer all listeners (native) to the root element\n        ...this.bvListeners,\n        // We want to overwrite any click handler since our callback\n        // will invoke the user supplied handler(s) if `!this.disabled`\n        click: this.onClick\n      }\n    }\n  },\n  methods: {\n    onClick(event) {\n      const eventIsEvent = isEvent(event)\n      const isRouterLink = this.isRouterLink\n      const suppliedHandler = this.bvListeners.click\n      if (eventIsEvent && this.disabled) {\n        // Stop event from bubbling up\n        // Kill the event loop attached to this specific `EventTarget`\n        // Needed to prevent `vue-router` for doing its thing\n        stopEvent(event, { immediatePropagation: true })\n      } else {\n        /* istanbul ignore next: difficult to test, but we know it works */\n        if (isRouterLink && event.currentTarget.__vue__) {\n          // Router links do not emit instance `click` events, so we\n          // add in an `$emit('click', event)` on its Vue instance\n          event.currentTarget.__vue__.$emit(EVENT_NAME_CLICK, event)\n        }\n        // Call the suppliedHandler(s), if any provided\n        concat(suppliedHandler)\n          .filter(h => isFunction(h))\n          .forEach(handler => {\n            handler(...arguments)\n          })\n        // Emit the global `$root` click event\n        this.emitOnRoot(ROOT_EVENT_NAME_CLICKED, event)\n        // TODO: Remove deprecated 'clicked::link' event with next major release\n        this.emitOnRoot('clicked::link', event)\n      }\n      // Stop scroll-to-top behavior or navigation on\n      // regular links when href is just '#'\n      if (eventIsEvent && !isRouterLink && this.computedHref === '#') {\n        stopEvent(event, { propagation: false })\n      }\n    },\n    focus() {\n      attemptFocus(this.$el)\n    },\n    blur() {\n      attemptBlur(this.$el)\n    }\n  },\n  render(h) {\n    const { active, disabled } = this\n\n    return h(\n      this.computedTag,\n      {\n        class: { active, disabled },\n        attrs: this.computedAttrs,\n        props: this.computedProps,\n        // We must use `nativeOn` for `<router-link>`/`<nuxt-link>` instead of `on`\n        [this.isRouterLink ? 'nativeOn' : 'on']: this.computedListeners\n      },\n      this.normalizeSlot()\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BUTTON } from '../../constants/components'\nimport { CODE_ENTER, CODE_SPACE } from '../../constants/key-codes'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { concat } from '../../utils/array'\nimport { addClass, isTag, removeClass } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { isBoolean, isEvent, isFunction } from '../../utils/inspect'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { isLink as isLinkStrict } from '../../utils/router'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\ndelete linkProps.href.default\ndelete linkProps.to.default\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...linkProps,\n    block: makeProp(PROP_TYPE_BOOLEAN, false),\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    pill: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Tri-state: `true`, `false` or `null`\n    // => On, off, not a toggle\n    pressed: makeProp(PROP_TYPE_BOOLEAN, null),\n    size: makeProp(PROP_TYPE_STRING),\n    squared: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'button'),\n    type: makeProp(PROP_TYPE_STRING, 'button'),\n    variant: makeProp(PROP_TYPE_STRING, 'secondary')\n  }),\n  NAME_BUTTON\n)\n\n// --- Helper methods ---\n\n// Focus handler for toggle buttons\n// Needs class of 'focus' when focused\nconst handleFocus = event => {\n  if (event.type === 'focusin') {\n    addClass(event.target, 'focus')\n  } else if (event.type === 'focusout') {\n    removeClass(event.target, 'focus')\n  }\n}\n\n// Is the requested button a link?\n// If tag prop is set to `a`, we use a <b-link> to get proper disabled handling\nconst isLink = props => isLinkStrict(props) || isTag(props.tag, 'a')\n\n// Is the button to be a toggle button?\nconst isToggle = props => isBoolean(props.pressed)\n\n// Is the button \"really\" a button?\nconst isButton = props => !(isLink(props) || (props.tag && !isTag(props.tag, 'button')))\n\n// Is the requested tag not a button or link?\nconst isNonStandardTag = props => !isLink(props) && !isButton(props)\n\n// Compute required classes (non static classes)\nconst computeClass = props => [\n  `btn-${props.variant || 'secondary'}`,\n  {\n    [`btn-${props.size}`]: props.size,\n    'btn-block': props.block,\n    'rounded-pill': props.pill,\n    'rounded-0': props.squared && !props.pill,\n    disabled: props.disabled,\n    active: props.pressed\n  }\n]\n\n// Compute the link props to pass to b-link (if required)\nconst computeLinkProps = props => (isLink(props) ? pluckProps(linkProps, props) : {})\n\n// Compute the attributes for a button\nconst computeAttrs = (props, data) => {\n  const button = isButton(props)\n  const link = isLink(props)\n  const toggle = isToggle(props)\n  const nonStandardTag = isNonStandardTag(props)\n  const hashLink = link && props.href === '#'\n  const role = data.attrs && data.attrs.role ? data.attrs.role : null\n  let tabindex = data.attrs ? data.attrs.tabindex : null\n  if (nonStandardTag || hashLink) {\n    tabindex = '0'\n  }\n  return {\n    // Type only used for \"real\" buttons\n    type: button && !link ? props.type : null,\n    // Disabled only set on \"real\" buttons\n    disabled: button ? props.disabled : null,\n    // We add a role of button when the tag is not a link or button for ARIA\n    // Don't bork any role provided in `data.attrs` when `isLink` or `isButton`\n    // Except when link has `href` of `#`\n    role: nonStandardTag || hashLink ? 'button' : role,\n    // We set the `aria-disabled` state for non-standard tags\n    'aria-disabled': nonStandardTag ? String(props.disabled) : null,\n    // For toggles, we need to set the pressed state for ARIA\n    'aria-pressed': toggle ? String(props.pressed) : null,\n    // `autocomplete=\"off\"` is needed in toggle mode to prevent some browsers\n    // from remembering the previous setting when using the back button\n    autocomplete: toggle ? 'off' : null,\n    // `tabindex` is used when the component is not a button\n    // Links are tabbable, but don't allow disabled, while non buttons or links\n    // are not tabbable, so we mimic that functionality by disabling tabbing\n    // when disabled, and adding a `tabindex=\"0\"` to non buttons or non links\n    tabindex: props.disabled && !button ? '-1' : tabindex\n  }\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BButton = /*#__PURE__*/ Vue.extend({\n  name: NAME_BUTTON,\n  functional: true,\n  props,\n  render(h, { props, data, listeners, children }) {\n    const toggle = isToggle(props)\n    const link = isLink(props)\n    const nonStandardTag = isNonStandardTag(props)\n    const hashLink = link && props.href === '#'\n    const on = {\n      keydown(event) {\n        // When the link is a `href=\"#\"` or a non-standard tag (has `role=\"button\"`),\n        // we add a keydown handlers for CODE_SPACE/CODE_ENTER\n        /* istanbul ignore next */\n        if (props.disabled || !(nonStandardTag || hashLink)) {\n          return\n        }\n        const { keyCode } = event\n        // Add CODE_SPACE handler for `href=\"#\"` and CODE_ENTER handler for non-standard tags\n        if (keyCode === CODE_SPACE || (keyCode === CODE_ENTER && nonStandardTag)) {\n          const target = event.currentTarget || event.target\n          stopEvent(event, { propagation: false })\n          target.click()\n        }\n      },\n      click(event) {\n        /* istanbul ignore if: blink/button disabled should handle this */\n        if (props.disabled && isEvent(event)) {\n          stopEvent(event)\n        } else if (toggle && listeners && listeners['update:pressed']) {\n          // Send `.sync` updates to any \"pressed\" prop (if `.sync` listeners)\n          // `concat()` will normalize the value to an array without\n          // double wrapping an array value in an array\n          concat(listeners['update:pressed']).forEach(fn => {\n            if (isFunction(fn)) {\n              fn(!props.pressed)\n            }\n          })\n        }\n      }\n    }\n\n    if (toggle) {\n      on.focusin = handleFocus\n      on.focusout = handleFocus\n    }\n\n    const componentData = {\n      staticClass: 'btn',\n      class: computeClass(props),\n      props: computeLinkProps(props),\n      attrs: computeAttrs(props, data),\n      on\n    }\n\n    return h(link ? BLink : props.tag, mergeData(data, componentData), children)\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_AVATAR } from '../../constants/components'\nimport { EVENT_NAME_CLICK, EVENT_NAME_IMG_ERROR } from '../../constants/events'\nimport {\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_STRING,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_BADGE } from '../../constants/slots'\nimport { isNumber, isNumeric, isString } from '../../utils/inspect'\nimport { toFloat } from '../../utils/number'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BIcon } from '../../icons/icon'\nimport { BIconPersonFill } from '../../icons/icons'\nimport { BButton } from '../button/button'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Constants ---\n\nconst CLASS_NAME = 'b-avatar'\n\nconst SIZES = ['sm', null, 'lg']\n\nconst FONT_SIZE_SCALE = 0.4\nconst BADGE_FONT_SIZE_SCALE = FONT_SIZE_SCALE * 0.7\n\n// --- Helper methods ---\n\nexport const computeSize = value => {\n  // Parse to number when value is a float-like string\n  value = isString(value) && isNumeric(value) ? toFloat(value, 0) : value\n  // Convert all numbers to pixel values\n  return isNumber(value) ? `${value}px` : value || null\n}\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['active', 'event', 'routerTag'])\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...linkProps,\n    alt: makeProp(PROP_TYPE_STRING, 'avatar'),\n    ariaLabel: makeProp(PROP_TYPE_STRING),\n    badge: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n    badgeLeft: makeProp(PROP_TYPE_BOOLEAN, false),\n    badgeOffset: makeProp(PROP_TYPE_STRING),\n    badgeTop: makeProp(PROP_TYPE_BOOLEAN, false),\n    badgeVariant: makeProp(PROP_TYPE_STRING, 'primary'),\n    button: makeProp(PROP_TYPE_BOOLEAN, false),\n    buttonType: makeProp(PROP_TYPE_STRING, 'button'),\n    icon: makeProp(PROP_TYPE_STRING),\n    rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n    size: makeProp(PROP_TYPE_NUMBER_STRING),\n    square: makeProp(PROP_TYPE_BOOLEAN, false),\n    src: makeProp(PROP_TYPE_STRING),\n    text: makeProp(PROP_TYPE_STRING),\n    variant: makeProp(PROP_TYPE_STRING, 'secondary')\n  }),\n  NAME_AVATAR\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BAvatar = /*#__PURE__*/ Vue.extend({\n  name: NAME_AVATAR,\n  mixins: [normalizeSlotMixin],\n  inject: {\n    bvAvatarGroup: { default: null }\n  },\n  props,\n  data() {\n    return {\n      localSrc: this.src || null\n    }\n  },\n  computed: {\n    computedSize() {\n      // Always use the avatar group size\n      const { bvAvatarGroup } = this\n      return computeSize(bvAvatarGroup ? bvAvatarGroup.size : this.size)\n    },\n    computedVariant() {\n      const { bvAvatarGroup } = this\n      return bvAvatarGroup && bvAvatarGroup.variant ? bvAvatarGroup.variant : this.variant\n    },\n    computedRounded() {\n      const { bvAvatarGroup } = this\n      const square = bvAvatarGroup && bvAvatarGroup.square ? true : this.square\n      const rounded = bvAvatarGroup && bvAvatarGroup.rounded ? bvAvatarGroup.rounded : this.rounded\n      return square ? '0' : rounded === '' ? true : rounded || 'circle'\n    },\n    fontStyle() {\n      const { computedSize: size } = this\n      const fontSize = SIZES.indexOf(size) === -1 ? `calc(${size} * ${FONT_SIZE_SCALE})` : null\n      return fontSize ? { fontSize } : {}\n    },\n    marginStyle() {\n      const { computedSize: size, bvAvatarGroup } = this\n      const overlapScale = bvAvatarGroup ? bvAvatarGroup.overlapScale : 0\n      const value = size && overlapScale ? `calc(${size} * -${overlapScale})` : null\n      return value ? { marginLeft: value, marginRight: value } : {}\n    },\n    badgeStyle() {\n      const { computedSize: size, badgeTop, badgeLeft, badgeOffset } = this\n      const offset = badgeOffset || '0px'\n      return {\n        fontSize: SIZES.indexOf(size) === -1 ? `calc(${size} * ${BADGE_FONT_SIZE_SCALE} )` : null,\n        top: badgeTop ? offset : null,\n        bottom: badgeTop ? null : offset,\n        left: badgeLeft ? offset : null,\n        right: badgeLeft ? null : offset\n      }\n    }\n  },\n  watch: {\n    src(newValue, oldValue) {\n      if (newValue !== oldValue) {\n        this.localSrc = newValue || null\n      }\n    }\n  },\n  methods: {\n    onImgError(event) {\n      this.localSrc = null\n      this.$emit(EVENT_NAME_IMG_ERROR, event)\n    },\n    onClick(event) {\n      this.$emit(EVENT_NAME_CLICK, event)\n    }\n  },\n  render(h) {\n    const {\n      computedVariant: variant,\n      disabled,\n      computedRounded: rounded,\n      icon,\n      localSrc: src,\n      text,\n      fontStyle,\n      marginStyle,\n      computedSize: size,\n      button,\n      buttonType: type,\n      badge,\n      badgeVariant,\n      badgeStyle\n    } = this\n    const link = !button && isLink(this)\n    const tag = button ? BButton : link ? BLink : 'span'\n    const alt = this.alt\n    const ariaLabel = this.ariaLabel || null\n\n    let $content = null\n    if (this.hasNormalizedSlot()) {\n      // Default slot overrides props\n      $content = h('span', { staticClass: 'b-avatar-custom' }, [this.normalizeSlot()])\n    } else if (src) {\n      $content = h('img', {\n        style: variant ? {} : { width: '100%', height: '100%' },\n        attrs: { src, alt },\n        on: { error: this.onImgError }\n      })\n      $content = h('span', { staticClass: 'b-avatar-img' }, [$content])\n    } else if (icon) {\n      $content = h(BIcon, {\n        props: { icon },\n        attrs: { 'aria-hidden': 'true', alt }\n      })\n    } else if (text) {\n      $content = h(\n        'span',\n        {\n          staticClass: 'b-avatar-text',\n          style: fontStyle\n        },\n        [h('span', text)]\n      )\n    } else {\n      // Fallback default avatar content\n      $content = h(BIconPersonFill, { attrs: { 'aria-hidden': 'true', alt } })\n    }\n\n    let $badge = h()\n    const hasBadgeSlot = this.hasNormalizedSlot(SLOT_NAME_BADGE)\n    if (badge || badge === '' || hasBadgeSlot) {\n      const badgeText = badge === true ? '' : badge\n      $badge = h(\n        'span',\n        {\n          staticClass: 'b-avatar-badge',\n          class: { [`badge-${badgeVariant}`]: badgeVariant },\n          style: badgeStyle\n        },\n        [hasBadgeSlot ? this.normalizeSlot(SLOT_NAME_BADGE) : badgeText]\n      )\n    }\n\n    const componentData = {\n      staticClass: CLASS_NAME,\n      class: {\n        // Apply size class\n        [`${CLASS_NAME}-${size}`]: size && SIZES.indexOf(size) !== -1,\n        // We use badge styles for theme variants when not rendering `BButton`\n        [`badge-${variant}`]: !button && variant,\n        // Rounding/Square\n        rounded: rounded === true,\n        [`rounded-${rounded}`]: rounded && rounded !== true,\n        // Other classes\n        disabled\n      },\n      style: { ...marginStyle, width: size, height: size },\n      attrs: { 'aria-label': ariaLabel || null },\n      props: button ? { variant, disabled, type } : link ? pluckProps(linkProps, this) : {},\n      on: button || link ? { click: this.onClick } : {}\n    }\n\n    return h(tag, componentData, [$content, $badge])\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_AVATAR_GROUP } from '../../constants/components'\nimport {\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_STRING,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { mathMax, mathMin } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { computeSize } from './avatar'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    overlap: makeProp(PROP_TYPE_NUMBER_STRING, 0.3),\n    // Child avatars will prefer this prop (if set) over their own\n    rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n    // Child avatars will always use this over their own size\n    size: makeProp(PROP_TYPE_STRING),\n    // Child avatars will prefer this prop (if set) over their own\n    square: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'div'),\n    // Child avatars will prefer this variant over their own\n    variant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_AVATAR_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BAvatarGroup = /*#__PURE__*/ Vue.extend({\n  name: NAME_AVATAR_GROUP,\n  mixins: [normalizeSlotMixin],\n  provide() {\n    return { bvAvatarGroup: this }\n  },\n  props,\n  computed: {\n    computedSize() {\n      return computeSize(this.size)\n    },\n    overlapScale() {\n      return mathMin(mathMax(toFloat(this.overlap, 0), 0), 1) / 2\n    },\n    paddingStyle() {\n      let value = this.computedSize\n      value = value ? `calc(${value} * ${this.overlapScale})` : null\n      return value ? { paddingLeft: value, paddingRight: value } : {}\n    }\n  },\n  render(h) {\n    const $inner = h(\n      'div',\n      {\n        staticClass: 'b-avatar-group-inner',\n        style: this.paddingStyle\n      },\n      this.normalizeSlot()\n    )\n\n    return h(\n      this.tag,\n      {\n        staticClass: 'b-avatar-group',\n        attrs: { role: 'group' }\n      },\n      [$inner]\n    )\n  }\n})\n","import { BAvatar } from './avatar'\nimport { BAvatarGroup } from './avatar-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst AvatarPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BAvatar, BAvatarGroup }\n})\n\nexport { AvatarPlugin, BAvatar, BAvatarGroup }\n","import { Vue } from '../../vue'\nimport { NAME_BADGE } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\ndelete linkProps.href.default\ndelete linkProps.to.default\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...linkProps,\n    pill: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'span'),\n    variant: makeProp(PROP_TYPE_STRING, 'secondary')\n  }),\n  NAME_BADGE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BBadge = /*#__PURE__*/ Vue.extend({\n  name: NAME_BADGE,\n  mixins: [normalizeSlotMixin],\n  props,\n  render(h) {\n    const { variant, $props } = this\n    const link = isLink($props)\n    const tag = link ? BLink : this.tag\n\n    return h(\n      tag,\n      {\n        staticClass: 'badge',\n        class: [\n          variant ? `badge-${variant}` : 'badge-secondary',\n          {\n            'badge-pill': this.pill,\n            active: this.active,\n            disabled: this.disabled\n          }\n        ],\n        props: link ? pluckProps(linkProps, $props) : {}\n      },\n      this.normalizeSlot()\n    )\n  }\n})\n","import { BBadge } from './badge'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst BadgePlugin = /*#__PURE__*/ pluginFactory({\n  components: { BBadge }\n})\n\nexport { BadgePlugin, BBadge }\n","import { RX_HTML_TAGS } from '../constants/regex'\n\n// Removes anything that looks like an HTML tag from the supplied string\nexport const stripTags = (text = '') => String(text).replace(RX_HTML_TAGS, '')\n\n// Generate a `domProps` object for either `innerHTML`, `textContent` or an empty object\nexport const htmlOrText = (innerHTML, textContent) =>\n  innerHTML ? { innerHTML } : textContent ? { textContent } : {}\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BREADCRUMB_LINK } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { htmlOrText } from '../../utils/html'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...omit(BLinkProps, ['event', 'routerTag']),\n    ariaCurrent: makeProp(PROP_TYPE_STRING, 'location'),\n    html: makeProp(PROP_TYPE_STRING),\n    text: makeProp(PROP_TYPE_STRING)\n  }),\n  NAME_BREADCRUMB_LINK\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BBreadcrumbLink = /*#__PURE__*/ Vue.extend({\n  name: NAME_BREADCRUMB_LINK,\n  functional: true,\n  props,\n  render(h, { props: suppliedProps, data, children }) {\n    const { active } = suppliedProps\n    const tag = active ? 'span' : BLink\n\n    const componentData = {\n      attrs: { 'aria-current': active ? suppliedProps.ariaCurrent : null },\n      props: pluckProps(props, suppliedProps)\n    }\n\n    if (!children) {\n      componentData.domProps = htmlOrText(suppliedProps.html, suppliedProps.text)\n    }\n\n    return h(tag, mergeData(data, componentData), children)\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BREADCRUMB_ITEM } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { BBreadcrumbLink, props as BBreadcrumbLinkProps } from './breadcrumb-link'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(BBreadcrumbLinkProps, NAME_BREADCRUMB_ITEM)\n\n// --- Main component ---\n\n// @vue/component\nexport const BBreadcrumbItem = /*#__PURE__*/ Vue.extend({\n  name: NAME_BREADCRUMB_ITEM,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    return h(\n      'li',\n      mergeData(data, {\n        staticClass: 'breadcrumb-item',\n        class: { active: props.active }\n      }),\n      [h(BBreadcrumbLink, { props }, children)]\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BREADCRUMB } from '../../constants/components'\nimport { PROP_TYPE_ARRAY } from '../../constants/props'\nimport { isArray, isObject } from '../../utils/inspect'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { BBreadcrumbItem } from './breadcrumb-item'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    items: makeProp(PROP_TYPE_ARRAY)\n  },\n  NAME_BREADCRUMB\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BBreadcrumb = /*#__PURE__*/ Vue.extend({\n  name: NAME_BREADCRUMB,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { items } = props\n\n    // Build child nodes from items, if given\n    let childNodes = children\n    if (isArray(items)) {\n      let activeDefined = false\n      childNodes = items.map((item, idx) => {\n        if (!isObject(item)) {\n          item = { text: toString(item) }\n        }\n        // Copy the value here so we can normalize it\n        let { active } = item\n        if (active) {\n          activeDefined = true\n        }\n        // Auto-detect active by position in list\n        if (!active && !activeDefined) {\n          active = idx + 1 === items.length\n        }\n\n        return h(BBreadcrumbItem, { props: { ...item, active } })\n      })\n    }\n\n    return h('ol', mergeData(data, { staticClass: 'breadcrumb' }), childNodes)\n  }\n})\n","import { BBreadcrumb } from './breadcrumb'\nimport { BBreadcrumbItem } from './breadcrumb-item'\nimport { BBreadcrumbLink } from './breadcrumb-link'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst BreadcrumbPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BBreadcrumb, BBreadcrumbItem, BBreadcrumbLink }\n})\n\nexport { BreadcrumbPlugin, BBreadcrumb, BBreadcrumbItem, BBreadcrumbLink }\n","import { BButton } from './button'\nimport { BButtonClose } from './button-close'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ButtonPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BButton,\n    BBtn: BButton,\n    BButtonClose,\n    BBtnClose: BButtonClose\n  }\n})\n\nexport { ButtonPlugin, BButton, BButtonClose }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BUTTON_GROUP } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { pick, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { props as buttonProps } from '../button/button'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...pick(buttonProps, ['size']),\n    ariaRole: makeProp(PROP_TYPE_STRING, 'group'),\n    size: makeProp(PROP_TYPE_STRING),\n    tag: makeProp(PROP_TYPE_STRING, 'div'),\n    vertical: makeProp(PROP_TYPE_BOOLEAN, false)\n  }),\n  NAME_BUTTON_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BButtonGroup = /*#__PURE__*/ Vue.extend({\n  name: NAME_BUTTON_GROUP,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    return h(\n      props.tag,\n      mergeData(data, {\n        class: {\n          'btn-group': !props.vertical,\n          'btn-group-vertical': props.vertical,\n          [`btn-group-${props.size}`]: props.size\n        },\n        attrs: { role: props.ariaRole }\n      }),\n      children\n    )\n  }\n})\n","import { BButtonGroup } from './button-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ButtonGroupPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BButtonGroup,\n    BBtnGroup: BButtonGroup\n  }\n})\n\nexport { ButtonGroupPlugin, BButtonGroup }\n","import { Vue } from '../../vue'\nimport { NAME_BUTTON_TOOLBAR } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { CODE_DOWN, CODE_LEFT, CODE_RIGHT, CODE_UP } from '../../constants/key-codes'\nimport { attemptFocus, contains, isVisible, selectAll } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst ITEM_SELECTOR = [\n  '.btn:not(.disabled):not([disabled]):not(.dropdown-item)',\n  '.form-control:not(.disabled):not([disabled])',\n  'select:not(.disabled):not([disabled])',\n  'input[type=\"checkbox\"]:not(.disabled)',\n  'input[type=\"radio\"]:not(.disabled)'\n].join(',')\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    justify: makeProp(PROP_TYPE_BOOLEAN, false),\n    keyNav: makeProp(PROP_TYPE_BOOLEAN, false)\n  },\n  NAME_BUTTON_TOOLBAR\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BButtonToolbar = /*#__PURE__*/ Vue.extend({\n  name: NAME_BUTTON_TOOLBAR,\n  mixins: [normalizeSlotMixin],\n  props,\n  mounted() {\n    // Pre-set the tabindexes if the markup does not include\n    // `tabindex=\"-1\"` on the toolbar items\n    if (this.keyNav) {\n      this.getItems()\n    }\n  },\n  methods: {\n    getItems() {\n      const items = selectAll(ITEM_SELECTOR, this.$el)\n      // Ensure `tabindex=\"-1\"` is set on every item\n      items.forEach(item => {\n        item.tabIndex = -1\n      })\n      return items.filter(el => isVisible(el))\n    },\n    focusFirst() {\n      const items = this.getItems()\n      attemptFocus(items[0])\n    },\n    focusPrev(event) {\n      let items = this.getItems()\n      const index = items.indexOf(event.target)\n      if (index > -1) {\n        items = items.slice(0, index).reverse()\n        attemptFocus(items[0])\n      }\n    },\n    focusNext(event) {\n      let items = this.getItems()\n      const index = items.indexOf(event.target)\n      if (index > -1) {\n        items = items.slice(index + 1)\n        attemptFocus(items[0])\n      }\n    },\n    focusLast() {\n      const items = this.getItems().reverse()\n      attemptFocus(items[0])\n    },\n    onFocusin(event) {\n      const { $el } = this\n      if (event.target === $el && !contains($el, event.relatedTarget)) {\n        stopEvent(event)\n        this.focusFirst(event)\n      }\n    },\n    onKeydown(event) {\n      const { keyCode, shiftKey } = event\n      if (keyCode === CODE_UP || keyCode === CODE_LEFT) {\n        stopEvent(event)\n        shiftKey ? this.focusFirst(event) : this.focusPrev(event)\n      } else if (keyCode === CODE_DOWN || keyCode === CODE_RIGHT) {\n        stopEvent(event)\n        shiftKey ? this.focusLast(event) : this.focusNext(event)\n      }\n    }\n  },\n  render(h) {\n    const { keyNav } = this\n\n    return h(\n      'div',\n      {\n        staticClass: 'btn-toolbar',\n        class: { 'justify-content-between': this.justify },\n        attrs: {\n          role: 'toolbar',\n          tabindex: keyNav ? '0' : null\n        },\n        on: keyNav\n          ? {\n              focusin: this.onFocusin,\n              keydown: this.onKeydown\n            }\n          : {}\n      },\n      [this.normalizeSlot()]\n    )\n  }\n})\n","import { BButtonToolbar } from './button-toolbar'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ButtonToolbarPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BButtonToolbar,\n    BBtnToolbar: BButtonToolbar\n  }\n})\n\nexport { ButtonToolbarPlugin, BButtonToolbar }\n","export const CALENDAR_GREGORY = 'gregory'\nexport const CALENDAR_LONG = 'long'\nexport const CALENDAR_NARROW = 'narrow'\nexport const CALENDAR_SHORT = 'short'\n\nexport const DATE_FORMAT_2_DIGIT = '2-digit'\nexport const DATE_FORMAT_NUMERIC = 'numeric'\n","// Date utility functions\nimport { CALENDAR_GREGORY } from '../constants/date'\nimport { RX_DATE, RX_DATE_SPLIT } from '../constants/regex'\nimport { concat } from './array'\nimport { identity } from './identity'\nimport { isDate, isString } from './inspect'\nimport { toInteger } from './number'\n\n// --- Date utility methods ---\n\n// Create or clone a date (`new Date(...)` shortcut)\nexport const createDate = (...args) => new Date(...args)\n\n// Parse a date sting, or Date object, into a Date object (with no time information)\nexport const parseYMD = date => {\n  if (isString(date) && RX_DATE.test(date.trim())) {\n    const [year, month, day] = date.split(RX_DATE_SPLIT).map(v => toInteger(v, 1))\n    return createDate(year, month - 1, day)\n  } else if (isDate(date)) {\n    return createDate(date.getFullYear(), date.getMonth(), date.getDate())\n  }\n  return null\n}\n\n// Format a date object as `YYYY-MM-DD` format\nexport const formatYMD = date => {\n  date = parseYMD(date)\n  if (!date) {\n    return null\n  }\n  const year = date.getFullYear()\n  const month = `0${date.getMonth() + 1}`.slice(-2)\n  const day = `0${date.getDate()}`.slice(-2)\n  return `${year}-${month}-${day}`\n}\n\n// Given a locale (or locales), resolve the browser available locale\nexport const resolveLocale = (locales, calendar = CALENDAR_GREGORY) => /* istanbul ignore next */ {\n  locales = concat(locales).filter(identity)\n  const fmt = new Intl.DateTimeFormat(locales, { calendar })\n  return fmt.resolvedOptions().locale\n}\n\n// Create a `Intl.DateTimeFormat` formatter function\nexport const createDateFormatter = (locale, options) => /* istanbul ignore next */ {\n  const dtf = new Intl.DateTimeFormat(locale, options)\n  return dtf.format\n}\n\n// Determine if two dates are the same date (ignoring time portion)\nexport const datesEqual = (date1, date2) => {\n  // Returns true of the date portion of two date objects are equal\n  // We don't compare the time portion\n  return formatYMD(date1) === formatYMD(date2)\n}\n\n// --- Date \"math\" utility methods (for BCalendar component mainly) ---\n\nexport const firstDateOfMonth = date => {\n  date = createDate(date)\n  date.setDate(1)\n  return date\n}\n\nexport const lastDateOfMonth = date => {\n  date = createDate(date)\n  date.setMonth(date.getMonth() + 1)\n  date.setDate(0)\n  return date\n}\n\nexport const addYears = (date, numberOfYears) => {\n  date = createDate(date)\n  const month = date.getMonth()\n  date.setFullYear(date.getFullYear() + numberOfYears)\n  // Handle Feb 29th for leap years\n  if (date.getMonth() !== month) {\n    date.setDate(0)\n  }\n  return date\n}\n\nexport const oneMonthAgo = date => {\n  date = createDate(date)\n  const month = date.getMonth()\n  date.setMonth(month - 1)\n  // Handle when days in month are different\n  if (date.getMonth() === month) {\n    date.setDate(0)\n  }\n  return date\n}\n\nexport const oneMonthAhead = date => {\n  date = createDate(date)\n  const month = date.getMonth()\n  date.setMonth(month + 1)\n  // Handle when days in month are different\n  if (date.getMonth() === (month + 2) % 12) {\n    date.setDate(0)\n  }\n  return date\n}\n\nexport const oneYearAgo = date => {\n  return addYears(date, -1)\n}\n\nexport const oneYearAhead = date => {\n  return addYears(date, 1)\n}\n\nexport const oneDecadeAgo = date => {\n  return addYears(date, -10)\n}\n\nexport const oneDecadeAhead = date => {\n  return addYears(date, 10)\n}\n\n// Helper function to constrain a date between two values\n// Always returns a `Date` object or `null` if no date passed\nexport const constrainDate = (date, min = null, max = null) => {\n  // Ensure values are `Date` objects (or `null`)\n  date = parseYMD(date)\n  min = parseYMD(min) || date\n  max = parseYMD(max) || date\n  // Return a new `Date` object (or `null`)\n  return date ? (date < min ? min : date > max ? max : date) : null\n}\n","// Localization utilities\nimport { RX_STRIP_LOCALE_MODS } from '../constants/regex'\nimport { arrayIncludes } from './array'\nimport { toString } from './string'\n\n// Languages that are RTL\nconst RTL_LANGS = [\n  'ar',\n  'az',\n  'ckb',\n  'fa',\n  'he',\n  'ks',\n  'lrc',\n  'mzn',\n  'ps',\n  'sd',\n  'te',\n  'ug',\n  'ur',\n  'yi'\n].map(locale => locale.toLowerCase())\n\n// Returns true if the locale is RTL\nexport const isLocaleRTL = locale => {\n  // Determines if the locale is RTL (only single locale supported)\n  const parts = toString(locale)\n    .toLowerCase()\n    .replace(RX_STRIP_LOCALE_MODS, '')\n    .split('-')\n  const locale1 = parts.slice(0, 2).join('-')\n  const locale2 = parts[0]\n  return arrayIncludes(RTL_LANGS, locale1) || arrayIncludes(RTL_LANGS, locale2)\n}\n","// SSR safe client-side ID attribute generation\n// ID's can only be generated client-side, after mount\n// `this._uid` is not synched between server and client\nimport { COMPONENT_UID_KEY, Vue } from '../vue'\nimport { PROP_TYPE_STRING } from '../constants/props'\nimport { makeProp } from '../utils/props'\n\n// --- Props ---\n\nexport const props = {\n  id: makeProp(PROP_TYPE_STRING)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const idMixin = Vue.extend({\n  props,\n  data() {\n    return {\n      localId_: null\n    }\n  },\n  computed: {\n    safeId() {\n      // Computed property that returns a dynamic function for creating the ID\n      // Reacts to changes in both `.id` and `.localId_` and regenerates a new function\n      const id = this.id || this.localId_\n\n      // We return a function that accepts an optional suffix string\n      // So this computed prop looks and works like a method\n      // but benefits from Vue's computed prop caching\n      const fn = suffix => {\n        if (!id) {\n          return null\n        }\n        suffix = String(suffix || '').replace(/\\s+/g, '_')\n        return suffix ? id + '_' + suffix : id\n      }\n      return fn\n    }\n  },\n  mounted() {\n    // `mounted()` only occurs client-side\n    this.$nextTick(() => {\n      // Update DOM with auto-generated ID after mount\n      // to prevent SSR hydration errors\n      this.localId_ = `__BVID__${this[COMPONENT_UID_KEY]}`\n    })\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_CALENDAR } from '../../constants/components'\nimport {\n  CALENDAR_GREGORY,\n  CALENDAR_LONG,\n  CALENDAR_NARROW,\n  CALENDAR_SHORT,\n  DATE_FORMAT_2_DIGIT,\n  DATE_FORMAT_NUMERIC\n} from '../../constants/date'\nimport { EVENT_NAME_CONTEXT, EVENT_NAME_SELECTED } from '../../constants/events'\nimport {\n  CODE_DOWN,\n  CODE_END,\n  CODE_ENTER,\n  CODE_HOME,\n  CODE_LEFT,\n  CODE_PAGEDOWN,\n  CODE_PAGEUP,\n  CODE_RIGHT,\n  CODE_SPACE,\n  CODE_UP\n} from '../../constants/key-codes'\nimport {\n  PROP_TYPE_ARRAY_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_DATE_STRING,\n  PROP_TYPE_FUNCTION,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_OBJECT,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport {\n  SLOT_NAME_NAV_NEXT_DECADE,\n  SLOT_NAME_NAV_NEXT_MONTH,\n  SLOT_NAME_NAV_NEXT_YEAR,\n  SLOT_NAME_NAV_PEV_DECADE,\n  SLOT_NAME_NAV_PEV_MONTH,\n  SLOT_NAME_NAV_PEV_YEAR,\n  SLOT_NAME_NAV_THIS_MONTH\n} from '../../constants/slots'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport {\n  createDate,\n  createDateFormatter,\n  constrainDate,\n  datesEqual,\n  firstDateOfMonth,\n  formatYMD,\n  lastDateOfMonth,\n  oneMonthAgo,\n  oneMonthAhead,\n  oneYearAgo,\n  oneYearAhead,\n  oneDecadeAgo,\n  oneDecadeAhead,\n  parseYMD,\n  resolveLocale\n} from '../../utils/date'\nimport { attemptBlur, attemptFocus, requestAF } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isArray, isPlainObject, isString } from '../../utils/inspect'\nimport { isLocaleRTL } from '../../utils/locale'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { mathMax } from '../../utils/math'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { sortKeys } from '../../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport {\n  BIconChevronLeft,\n  BIconChevronDoubleLeft,\n  BIconChevronBarLeft,\n  BIconCircleFill\n} from '../../icons/icons'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('value', { type: PROP_TYPE_DATE_STRING })\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ariaControls: makeProp(PROP_TYPE_STRING),\n    // Makes calendar the full width of its parent container\n    block: makeProp(PROP_TYPE_BOOLEAN, false),\n    dateDisabledFn: makeProp(PROP_TYPE_FUNCTION),\n    // `Intl.DateTimeFormat` object\n    dateFormatOptions: makeProp(PROP_TYPE_OBJECT, {\n      year: DATE_FORMAT_NUMERIC,\n      month: CALENDAR_LONG,\n      day: DATE_FORMAT_NUMERIC,\n      weekday: CALENDAR_LONG\n    }),\n    // Function to set a class of (classes) on the date cell\n    // if passed a string or an array\n    // TODO:\n    //   If the function returns an object, look for class prop for classes,\n    //   and other props for handling events/details/descriptions\n    dateInfoFn: makeProp(PROP_TYPE_FUNCTION),\n    // 'ltr', 'rtl', or `null` (for auto detect)\n    direction: makeProp(PROP_TYPE_STRING),\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    // When `true`, renders a comment node, but keeps the component instance active\n    // Mainly for <b-form-date>, so that we can get the component's value and locale\n    // But we might just use separate date formatters, using the resolved locale\n    // (adjusted for the gregorian calendar)\n    hidden: makeProp(PROP_TYPE_BOOLEAN, false),\n    // When `true` makes the selected date header `sr-only`\n    hideHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n    // This specifies the calendar year/month/day that will be shown when\n    // first opening the datepicker if no v-model value is provided\n    // Default is the current date (or `min`/`max`)\n    initialDate: makeProp(PROP_TYPE_DATE_STRING),\n    // Labels for buttons and keyboard shortcuts\n    labelCalendar: makeProp(PROP_TYPE_STRING, 'Calendar'),\n    labelCurrentMonth: makeProp(PROP_TYPE_STRING, 'Current month'),\n    labelHelp: makeProp(PROP_TYPE_STRING, 'Use cursor keys to navigate calendar dates'),\n    labelNav: makeProp(PROP_TYPE_STRING, 'Calendar navigation'),\n    labelNextDecade: makeProp(PROP_TYPE_STRING, 'Next decade'),\n    labelNextMonth: makeProp(PROP_TYPE_STRING, 'Next month'),\n    labelNextYear: makeProp(PROP_TYPE_STRING, 'Next year'),\n    labelNoDateSelected: makeProp(PROP_TYPE_STRING, 'No date selected'),\n    labelPrevDecade: makeProp(PROP_TYPE_STRING, 'Previous decade'),\n    labelPrevMonth: makeProp(PROP_TYPE_STRING, 'Previous month'),\n    labelPrevYear: makeProp(PROP_TYPE_STRING, 'Previous year'),\n    labelSelected: makeProp(PROP_TYPE_STRING, 'Selected date'),\n    labelToday: makeProp(PROP_TYPE_STRING, 'Today'),\n    // Locale(s) to use\n    // Default is to use page/browser default setting\n    locale: makeProp(PROP_TYPE_ARRAY_STRING),\n    max: makeProp(PROP_TYPE_DATE_STRING),\n    min: makeProp(PROP_TYPE_DATE_STRING),\n    // Variant color to use for the navigation buttons\n    navButtonVariant: makeProp(PROP_TYPE_STRING, 'secondary'),\n    // Disable highlighting today's date\n    noHighlightToday: makeProp(PROP_TYPE_BOOLEAN, false),\n    noKeyNav: makeProp(PROP_TYPE_BOOLEAN, false),\n    readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n    roleDescription: makeProp(PROP_TYPE_STRING),\n    // Variant color to use for the selected date\n    selectedVariant: makeProp(PROP_TYPE_STRING, 'primary'),\n    // When `true` enables the decade navigation buttons\n    showDecadeNav: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Day of week to start calendar on\n    // `0` (Sunday), `1` (Monday), ... `6` (Saturday)\n    startWeekday: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n    // Variant color to use for today's date (defaults to `selectedVariant`)\n    todayVariant: makeProp(PROP_TYPE_STRING),\n    // Always return the `v-model` value as a date object\n    valueAsDate: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Format of the weekday names at the top of the calendar\n    // `short` is typically a 3 letter abbreviation,\n    // `narrow` is typically a single letter\n    // `long` is the full week day name\n    // Although some locales may override this (i.e `ar`, etc.)\n    weekdayHeaderFormat: makeProp(PROP_TYPE_STRING, CALENDAR_SHORT, value => {\n      return arrayIncludes([CALENDAR_LONG, CALENDAR_SHORT, CALENDAR_NARROW], value)\n    }),\n    // Has no effect if prop `block` is set\n    width: makeProp(PROP_TYPE_STRING, '270px')\n  }),\n  NAME_CALENDAR\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCalendar = Vue.extend({\n  name: NAME_CALENDAR,\n  // Mixin order is important!\n  mixins: [attrsMixin, idMixin, modelMixin, normalizeSlotMixin],\n  props,\n  data() {\n    const selected = formatYMD(this[MODEL_PROP_NAME]) || ''\n    return {\n      // Selected date\n      selectedYMD: selected,\n      // Date in calendar grid that has `tabindex` of `0`\n      activeYMD:\n        selected ||\n        formatYMD(constrainDate(this.initialDate || this.getToday()), this.min, this.max),\n      // Will be true if the calendar grid has/contains focus\n      gridHasFocus: false,\n      // Flag to enable the `aria-live` region(s) after mount\n      // to prevent screen reader \"outbursts\" when mounting\n      isLive: false\n    }\n  },\n  computed: {\n    valueId() {\n      return this.safeId()\n    },\n    widgetId() {\n      return this.safeId('_calendar-wrapper_')\n    },\n    navId() {\n      return this.safeId('_calendar-nav_')\n    },\n    gridId() {\n      return this.safeId('_calendar-grid_')\n    },\n    gridCaptionId() {\n      return this.safeId('_calendar-grid-caption_')\n    },\n    gridHelpId() {\n      return this.safeId('_calendar-grid-help_')\n    },\n    activeId() {\n      return this.activeYMD ? this.safeId(`_cell-${this.activeYMD}_`) : null\n    },\n    // TODO: Use computed props to convert `YYYY-MM-DD` to `Date` object\n    selectedDate() {\n      // Selected as a `Date` object\n      return parseYMD(this.selectedYMD)\n    },\n    activeDate() {\n      // Active as a `Date` object\n      return parseYMD(this.activeYMD)\n    },\n    computedMin() {\n      return parseYMD(this.min)\n    },\n    computedMax() {\n      return parseYMD(this.max)\n    },\n    computedWeekStarts() {\n      // `startWeekday` is a prop (constrained to `0` through `6`)\n      return mathMax(toInteger(this.startWeekday, 0), 0) % 7\n    },\n    computedLocale() {\n      // Returns the resolved locale used by the calendar\n      return resolveLocale(concat(this.locale).filter(identity), CALENDAR_GREGORY)\n    },\n    computedDateDisabledFn() {\n      const { dateDisabledFn } = this\n      return hasPropFunction(dateDisabledFn) ? dateDisabledFn : () => false\n    },\n    // TODO: Change `dateInfoFn` to handle events and notes as well as classes\n    computedDateInfoFn() {\n      const { dateInfoFn } = this\n      return hasPropFunction(dateInfoFn) ? dateInfoFn : () => ({})\n    },\n    calendarLocale() {\n      // This locale enforces the gregorian calendar (for use in formatter functions)\n      // Needed because IE 11 resolves `ar-IR` as islamic-civil calendar\n      // and IE 11 (and some other browsers) do not support the `calendar` option\n      // And we currently only support the gregorian calendar\n      const fmt = new Intl.DateTimeFormat(this.computedLocale, { calendar: CALENDAR_GREGORY })\n      const calendar = fmt.resolvedOptions().calendar\n      let locale = fmt.resolvedOptions().locale\n      /* istanbul ignore if: mainly for IE 11 and a few other browsers, hard to test in JSDOM */\n      if (calendar !== CALENDAR_GREGORY) {\n        // Ensure the locale requests the gregorian calendar\n        // Mainly for IE 11, and currently we can't handle non-gregorian calendars\n        // TODO: Should we always return this value?\n        locale = locale.replace(/-u-.+$/i, '').concat('-u-ca-gregory')\n      }\n      return locale\n    },\n    calendarYear() {\n      return this.activeDate.getFullYear()\n    },\n    calendarMonth() {\n      return this.activeDate.getMonth()\n    },\n    calendarFirstDay() {\n      // We set the time for this date to 12pm to work around\n      // date formatting issues in Firefox and Safari\n      // See: https://github.com/bootstrap-vue/bootstrap-vue/issues/5818\n      return createDate(this.calendarYear, this.calendarMonth, 1, 12)\n    },\n    calendarDaysInMonth() {\n      // We create a new date as to not mutate the original\n      const date = createDate(this.calendarFirstDay)\n      date.setMonth(date.getMonth() + 1, 0)\n      return date.getDate()\n    },\n    computedVariant() {\n      return `btn-${this.selectedVariant || 'primary'}`\n    },\n    computedTodayVariant() {\n      return `btn-outline-${this.todayVariant || this.selectedVariant || 'primary'}`\n    },\n    computedNavButtonVariant() {\n      return `btn-outline-${this.navButtonVariant || 'primary'}`\n    },\n    isRTL() {\n      // `true` if the language requested is RTL\n      const dir = toString(this.direction).toLowerCase()\n      if (dir === 'rtl') {\n        /* istanbul ignore next */\n        return true\n      } else if (dir === 'ltr') {\n        /* istanbul ignore next */\n        return false\n      }\n      return isLocaleRTL(this.computedLocale)\n    },\n    context() {\n      const { selectedYMD, activeYMD } = this\n      const selectedDate = parseYMD(selectedYMD)\n      const activeDate = parseYMD(activeYMD)\n      return {\n        // The current value of the `v-model`\n        selectedYMD,\n        selectedDate,\n        selectedFormatted: selectedDate\n          ? this.formatDateString(selectedDate)\n          : this.labelNoDateSelected,\n        // Which date cell is considered active due to navigation\n        activeYMD,\n        activeDate,\n        activeFormatted: activeDate ? this.formatDateString(activeDate) : '',\n        // `true` if the date is disabled (when using keyboard navigation)\n        disabled: this.dateDisabled(activeDate),\n        // Locales used in formatting dates\n        locale: this.computedLocale,\n        calendarLocale: this.calendarLocale,\n        rtl: this.isRTL\n      }\n    },\n    // Computed props that return a function reference\n    dateOutOfRange() {\n      // Check whether a date is within the min/max range\n      // Returns a new function ref if the pops change\n      // We do this as we need to trigger the calendar computed prop\n      // to update when these props update\n      const { computedMin: min, computedMax: max } = this\n      return date => {\n        // Handle both `YYYY-MM-DD` and `Date` objects\n        date = parseYMD(date)\n        return (min && date < min) || (max && date > max)\n      }\n    },\n    dateDisabled() {\n      // Returns a function for validating if a date is within range\n      // We grab this variables first to ensure a new function ref\n      // is generated when the props value changes\n      // We do this as we need to trigger the calendar computed prop\n      // to update when these props update\n      const rangeFn = this.dateOutOfRange\n      // Return the function ref\n      return date => {\n        // Handle both `YYYY-MM-DD` and `Date` objects\n        date = parseYMD(date)\n        const ymd = formatYMD(date)\n        return !!(rangeFn(date) || this.computedDateDisabledFn(ymd, date))\n      }\n    },\n    // Computed props that return date formatter functions\n    formatDateString() {\n      // Returns a date formatter function\n      return createDateFormatter(this.calendarLocale, {\n        // Ensure we have year, month, day shown for screen readers/ARIA\n        // If users really want to leave one of these out, they can\n        // pass `undefined` for the property value\n        year: DATE_FORMAT_NUMERIC,\n        month: DATE_FORMAT_2_DIGIT,\n        day: DATE_FORMAT_2_DIGIT,\n        // Merge in user supplied options\n        ...this.dateFormatOptions,\n        // Ensure hours/minutes/seconds are not shown\n        // As we do not support the time portion (yet)\n        hour: undefined,\n        minute: undefined,\n        second: undefined,\n        // Ensure calendar is gregorian\n        calendar: CALENDAR_GREGORY\n      })\n    },\n    formatYearMonth() {\n      // Returns a date formatter function\n      return createDateFormatter(this.calendarLocale, {\n        year: DATE_FORMAT_NUMERIC,\n        month: CALENDAR_LONG,\n        calendar: CALENDAR_GREGORY\n      })\n    },\n    formatWeekdayName() {\n      // Long weekday name for weekday header aria-label\n      return createDateFormatter(this.calendarLocale, {\n        weekday: CALENDAR_LONG,\n        calendar: CALENDAR_GREGORY\n      })\n    },\n    formatWeekdayNameShort() {\n      // Weekday header cell format\n      // defaults to 'short' 3 letter days, where possible\n      return createDateFormatter(this.calendarLocale, {\n        weekday: this.weekdayHeaderFormat || CALENDAR_SHORT,\n        calendar: CALENDAR_GREGORY\n      })\n    },\n    formatDay() {\n      // Calendar grid day number formatter\n      // We don't use DateTimeFormatter here as it can place extra\n      // character(s) after the number (i.e the `zh` locale)\n      const nf = new Intl.NumberFormat([this.computedLocale], {\n        style: 'decimal',\n        minimumIntegerDigits: 1,\n        minimumFractionDigits: 0,\n        maximumFractionDigits: 0,\n        notation: 'standard'\n      })\n      // Return a formatter function instance\n      return date => nf.format(date.getDate())\n    },\n    // Disabled states for the nav buttons\n    prevDecadeDisabled() {\n      const min = this.computedMin\n      return this.disabled || (min && lastDateOfMonth(oneDecadeAgo(this.activeDate)) < min)\n    },\n    prevYearDisabled() {\n      const min = this.computedMin\n      return this.disabled || (min && lastDateOfMonth(oneYearAgo(this.activeDate)) < min)\n    },\n    prevMonthDisabled() {\n      const min = this.computedMin\n      return this.disabled || (min && lastDateOfMonth(oneMonthAgo(this.activeDate)) < min)\n    },\n    thisMonthDisabled() {\n      // TODO: We could/should check if today is out of range\n      return this.disabled\n    },\n    nextMonthDisabled() {\n      const max = this.computedMax\n      return this.disabled || (max && firstDateOfMonth(oneMonthAhead(this.activeDate)) > max)\n    },\n    nextYearDisabled() {\n      const max = this.computedMax\n      return this.disabled || (max && firstDateOfMonth(oneYearAhead(this.activeDate)) > max)\n    },\n    nextDecadeDisabled() {\n      const max = this.computedMax\n      return this.disabled || (max && firstDateOfMonth(oneDecadeAhead(this.activeDate)) > max)\n    },\n    // Calendar dates generation\n    calendar() {\n      const matrix = []\n      const firstDay = this.calendarFirstDay\n      const calendarYear = firstDay.getFullYear()\n      const calendarMonth = firstDay.getMonth()\n      const daysInMonth = this.calendarDaysInMonth\n      const startIndex = firstDay.getDay() // `0`..`6`\n      const weekOffset = (this.computedWeekStarts > startIndex ? 7 : 0) - this.computedWeekStarts\n      // Build the calendar matrix\n      let currentDay = 0 - weekOffset - startIndex\n      for (let week = 0; week < 6 && currentDay < daysInMonth; week++) {\n        // For each week\n        matrix[week] = []\n        // The following could be a map function\n        for (let j = 0; j < 7; j++) {\n          // For each day in week\n          currentDay++\n          const date = createDate(calendarYear, calendarMonth, currentDay)\n          const month = date.getMonth()\n          const dayYMD = formatYMD(date)\n          const dayDisabled = this.dateDisabled(date)\n          // TODO: This could be a normalizer method\n          let dateInfo = this.computedDateInfoFn(dayYMD, parseYMD(dayYMD))\n          dateInfo =\n            isString(dateInfo) || isArray(dateInfo)\n              ? /* istanbul ignore next */ { class: dateInfo }\n              : isPlainObject(dateInfo)\n                ? { class: '', ...dateInfo }\n                : /* istanbul ignore next */ { class: '' }\n          matrix[week].push({\n            ymd: dayYMD,\n            // Cell content\n            day: this.formatDay(date),\n            label: this.formatDateString(date),\n            // Flags for styling\n            isThisMonth: month === calendarMonth,\n            isDisabled: dayDisabled,\n            // TODO: Handle other dateInfo properties such as notes/events\n            info: dateInfo\n          })\n        }\n      }\n      return matrix\n    },\n    calendarHeadings() {\n      return this.calendar[0].map(d => {\n        return {\n          text: this.formatWeekdayNameShort(parseYMD(d.ymd)),\n          label: this.formatWeekdayName(parseYMD(d.ymd))\n        }\n      })\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue, oldValue) {\n      const selected = formatYMD(newValue) || ''\n      const old = formatYMD(oldValue) || ''\n      if (!datesEqual(selected, old)) {\n        this.activeYMD = selected || this.activeYMD\n        this.selectedYMD = selected\n      }\n    },\n    selectedYMD(newYMD, oldYMD) {\n      // TODO:\n      //   Should we compare to `formatYMD(this.value)` and emit\n      //   only if they are different?\n      if (newYMD !== oldYMD) {\n        this.$emit(MODEL_EVENT_NAME, this.valueAsDate ? parseYMD(newYMD) || null : newYMD || '')\n      }\n    },\n    context(newValue, oldValue) {\n      if (!looseEqual(newValue, oldValue)) {\n        this.$emit(EVENT_NAME_CONTEXT, newValue)\n      }\n    },\n    hidden(newValue) {\n      // Reset the active focused day when hidden\n      this.activeYMD =\n        this.selectedYMD ||\n        formatYMD(this[MODEL_PROP_NAME] || this.constrainDate(this.initialDate || this.getToday()))\n      // Enable/disable the live regions\n      this.setLive(!newValue)\n    }\n  },\n  created() {\n    this.$nextTick(() => {\n      this.$emit(EVENT_NAME_CONTEXT, this.context)\n    })\n  },\n  mounted() {\n    this.setLive(true)\n  },\n  /* istanbul ignore next */\n  activated() {\n    this.setLive(true)\n  },\n  /* istanbul ignore next */\n  deactivated() {\n    this.setLive(false)\n  },\n  beforeDestroy() {\n    this.setLive(false)\n  },\n  methods: {\n    // Public method(s)\n    focus() {\n      if (!this.disabled) {\n        attemptFocus(this.$refs.grid)\n      }\n    },\n    blur() {\n      if (!this.disabled) {\n        attemptBlur(this.$refs.grid)\n      }\n    },\n    // Private methods\n    setLive(on) {\n      if (on) {\n        this.$nextTick(() => {\n          requestAF(() => {\n            this.isLive = true\n          })\n        })\n      } else {\n        this.isLive = false\n      }\n    },\n    getToday() {\n      return parseYMD(createDate())\n    },\n    constrainDate(date) {\n      // Constrains a date between min and max\n      // returns a new `Date` object instance\n      return constrainDate(date, this.computedMin, this.computedMax)\n    },\n    emitSelected(date) {\n      // Performed in a `$nextTick()` to (probably) ensure\n      // the input event has emitted first\n      this.$nextTick(() => {\n        this.$emit(EVENT_NAME_SELECTED, formatYMD(date) || '', parseYMD(date) || null)\n      })\n    },\n    // Event handlers\n    setGridFocusFlag(event) {\n      // Sets the gridHasFocus flag to make date \"button\" look focused\n      this.gridHasFocus = !this.disabled && event.type === 'focus'\n    },\n    onKeydownWrapper(event) {\n      // Calendar keyboard navigation\n      // Handles PAGEUP/PAGEDOWN/END/HOME/LEFT/UP/RIGHT/DOWN\n      // Focuses grid after updating\n      if (this.noKeyNav) {\n        /* istanbul ignore next */\n        return\n      }\n      const { altKey, ctrlKey, keyCode } = event\n      if (\n        !arrayIncludes(\n          [\n            CODE_PAGEUP,\n            CODE_PAGEDOWN,\n            CODE_END,\n            CODE_HOME,\n            CODE_LEFT,\n            CODE_UP,\n            CODE_RIGHT,\n            CODE_DOWN\n          ],\n          keyCode\n        )\n      ) {\n        /* istanbul ignore next */\n        return\n      }\n      stopEvent(event)\n      let activeDate = createDate(this.activeDate)\n      let checkDate = createDate(this.activeDate)\n      const day = activeDate.getDate()\n      const constrainedToday = this.constrainDate(this.getToday())\n      const isRTL = this.isRTL\n      if (keyCode === CODE_PAGEUP) {\n        // PAGEUP - Previous month/year\n        activeDate = (altKey ? (ctrlKey ? oneDecadeAgo : oneYearAgo) : oneMonthAgo)(activeDate)\n        // We check the first day of month to be in rage\n        checkDate = createDate(activeDate)\n        checkDate.setDate(1)\n      } else if (keyCode === CODE_PAGEDOWN) {\n        // PAGEDOWN - Next month/year\n        activeDate = (altKey ? (ctrlKey ? oneDecadeAhead : oneYearAhead) : oneMonthAhead)(\n          activeDate\n        )\n        // We check the last day of month to be in rage\n        checkDate = createDate(activeDate)\n        checkDate.setMonth(checkDate.getMonth() + 1)\n        checkDate.setDate(0)\n      } else if (keyCode === CODE_LEFT) {\n        // LEFT - Previous day (or next day for RTL)\n        activeDate.setDate(day + (isRTL ? 1 : -1))\n        activeDate = this.constrainDate(activeDate)\n        checkDate = activeDate\n      } else if (keyCode === CODE_RIGHT) {\n        // RIGHT - Next day (or previous day for RTL)\n        activeDate.setDate(day + (isRTL ? -1 : 1))\n        activeDate = this.constrainDate(activeDate)\n        checkDate = activeDate\n      } else if (keyCode === CODE_UP) {\n        // UP - Previous week\n        activeDate.setDate(day - 7)\n        activeDate = this.constrainDate(activeDate)\n        checkDate = activeDate\n      } else if (keyCode === CODE_DOWN) {\n        // DOWN - Next week\n        activeDate.setDate(day + 7)\n        activeDate = this.constrainDate(activeDate)\n        checkDate = activeDate\n      } else if (keyCode === CODE_HOME) {\n        // HOME - Today\n        activeDate = constrainedToday\n        checkDate = activeDate\n      } else if (keyCode === CODE_END) {\n        // END - Selected date, or today if no selected date\n        activeDate = parseYMD(this.selectedDate) || constrainedToday\n        checkDate = activeDate\n      }\n      if (!this.dateOutOfRange(checkDate) && !datesEqual(activeDate, this.activeDate)) {\n        // We only jump to date if within min/max\n        // We don't check for individual disabled dates though (via user function)\n        this.activeYMD = formatYMD(activeDate)\n      }\n      // Ensure grid is focused\n      this.focus()\n    },\n    onKeydownGrid(event) {\n      // Pressing enter/space on grid to select active date\n      const keyCode = event.keyCode\n      const activeDate = this.activeDate\n      if (keyCode === CODE_ENTER || keyCode === CODE_SPACE) {\n        stopEvent(event)\n        if (!this.disabled && !this.readonly && !this.dateDisabled(activeDate)) {\n          this.selectedYMD = formatYMD(activeDate)\n          this.emitSelected(activeDate)\n        }\n        // Ensure grid is focused\n        this.focus()\n      }\n    },\n    onClickDay(day) {\n      // Clicking on a date \"button\" to select it\n      const { selectedDate, activeDate } = this\n      const clickedDate = parseYMD(day.ymd)\n      if (!this.disabled && !day.isDisabled && !this.dateDisabled(clickedDate)) {\n        if (!this.readonly) {\n          // If readonly mode, we don't set the selected date, just the active date\n          // If the clicked date is equal to the already selected date, we don't update the model\n          this.selectedYMD = formatYMD(\n            datesEqual(clickedDate, selectedDate) ? selectedDate : clickedDate\n          )\n          this.emitSelected(clickedDate)\n        }\n        this.activeYMD = formatYMD(\n          datesEqual(clickedDate, activeDate) ? activeDate : createDate(clickedDate)\n        )\n        // Ensure grid is focused\n        this.focus()\n      }\n    },\n    gotoPrevDecade() {\n      this.activeYMD = formatYMD(this.constrainDate(oneDecadeAgo(this.activeDate)))\n    },\n    gotoPrevYear() {\n      this.activeYMD = formatYMD(this.constrainDate(oneYearAgo(this.activeDate)))\n    },\n    gotoPrevMonth() {\n      this.activeYMD = formatYMD(this.constrainDate(oneMonthAgo(this.activeDate)))\n    },\n    gotoCurrentMonth() {\n      // TODO: Maybe this goto date should be configurable?\n      this.activeYMD = formatYMD(this.constrainDate(this.getToday()))\n    },\n    gotoNextMonth() {\n      this.activeYMD = formatYMD(this.constrainDate(oneMonthAhead(this.activeDate)))\n    },\n    gotoNextYear() {\n      this.activeYMD = formatYMD(this.constrainDate(oneYearAhead(this.activeDate)))\n    },\n    gotoNextDecade() {\n      this.activeYMD = formatYMD(this.constrainDate(oneDecadeAhead(this.activeDate)))\n    },\n    onHeaderClick() {\n      if (!this.disabled) {\n        this.activeYMD = this.selectedYMD || formatYMD(this.getToday())\n        this.focus()\n      }\n    }\n  },\n  render(h) {\n    // If `hidden` prop is set, render just a placeholder node\n    if (this.hidden) {\n      return h()\n    }\n\n    const {\n      valueId,\n      widgetId,\n      navId,\n      gridId,\n      gridCaptionId,\n      gridHelpId,\n      activeId,\n      disabled,\n      noKeyNav,\n      isLive,\n      isRTL,\n      activeYMD,\n      selectedYMD,\n      safeId\n    } = this\n    const hideDecadeNav = !this.showDecadeNav\n    const todayYMD = formatYMD(this.getToday())\n    const highlightToday = !this.noHighlightToday\n\n    // Header showing current selected date\n    let $header = h(\n      'output',\n      {\n        staticClass: 'form-control form-control-sm text-center',\n        class: { 'text-muted': disabled, readonly: this.readonly || disabled },\n        attrs: {\n          id: valueId,\n          for: gridId,\n          role: 'status',\n          tabindex: disabled ? null : '-1',\n          // Mainly for testing purposes, as we do not know\n          // the exact format `Intl` will format the date string\n          'data-selected': toString(selectedYMD),\n          // We wait until after mount to enable `aria-live`\n          // to prevent initial announcement on page render\n          'aria-live': isLive ? 'polite' : 'off',\n          'aria-atomic': isLive ? 'true' : null\n        },\n        on: {\n          // Transfer focus/click to focus grid\n          // and focus active date (or today if no selection)\n          click: this.onHeaderClick,\n          focus: this.onHeaderClick\n        }\n      },\n      this.selectedDate\n        ? [\n            // We use `bdi` elements here in case the label doesn't match the locale\n            // Although IE 11 does not deal with <BDI> 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' // '&nbsp;'\n    )\n    $header = h(\n      'header',\n      {\n        staticClass: 'b-calendar-header',\n        class: { 'sr-only': this.hideHeader },\n        attrs: { title: this.selectedDate ? this.labelSelectedDate || null : null }\n      },\n      [$header]\n    )\n\n    // Content for the date navigation buttons\n    const navScope = { isRTL }\n    const navProps = { shiftV: 0.5 }\n    const navPrevProps = { ...navProps, flipH: isRTL }\n    const navNextProps = { ...navProps, flipH: !isRTL }\n    const $prevDecadeIcon =\n      this.normalizeSlot(SLOT_NAME_NAV_PEV_DECADE, navScope) ||\n      h(BIconChevronBarLeft, { props: navPrevProps })\n    const $prevYearIcon =\n      this.normalizeSlot(SLOT_NAME_NAV_PEV_YEAR, navScope) ||\n      h(BIconChevronDoubleLeft, { props: navPrevProps })\n    const $prevMonthIcon =\n      this.normalizeSlot(SLOT_NAME_NAV_PEV_MONTH, navScope) ||\n      h(BIconChevronLeft, { props: navPrevProps })\n    const $thisMonthIcon =\n      this.normalizeSlot(SLOT_NAME_NAV_THIS_MONTH, navScope) ||\n      h(BIconCircleFill, { props: navProps })\n    const $nextMonthIcon =\n      this.normalizeSlot(SLOT_NAME_NAV_NEXT_MONTH, navScope) ||\n      h(BIconChevronLeft, { props: navNextProps })\n    const $nextYearIcon =\n      this.normalizeSlot(SLOT_NAME_NAV_NEXT_YEAR, navScope) ||\n      h(BIconChevronDoubleLeft, { props: navNextProps })\n    const $nextDecadeIcon =\n      this.normalizeSlot(SLOT_NAME_NAV_NEXT_DECADE, navScope) ||\n      h(BIconChevronBarLeft, { props: navNextProps })\n\n    // Utility to create the date navigation buttons\n    const makeNavBtn = (content, label, handler, btnDisabled, shortcut) => {\n      return h(\n        'button',\n        {\n          staticClass: 'btn btn-sm border-0 flex-fill',\n          class: [this.computedNavButtonVariant, { disabled: btnDisabled }],\n          attrs: {\n            title: label || null,\n            type: 'button',\n            tabindex: noKeyNav ? '-1' : null,\n            'aria-label': label || null,\n            'aria-disabled': btnDisabled ? 'true' : null,\n            'aria-keyshortcuts': shortcut || null\n          },\n          on: btnDisabled ? {} : { click: handler }\n        },\n        [h('div', { attrs: { 'aria-hidden': 'true' } }, [content])]\n      )\n    }\n\n    // Generate the date navigation buttons\n    const $nav = h(\n      'div',\n      {\n        staticClass: 'b-calendar-nav d-flex',\n        attrs: {\n          id: navId,\n          role: 'group',\n          tabindex: noKeyNav ? '-1' : null,\n          'aria-hidden': disabled ? 'true' : null,\n          'aria-label': this.labelNav || null,\n          'aria-controls': gridId\n        }\n      },\n      [\n        hideDecadeNav\n          ? h()\n          : makeNavBtn(\n              $prevDecadeIcon,\n              this.labelPrevDecade,\n              this.gotoPrevDecade,\n              this.prevDecadeDisabled,\n              'Ctrl+Alt+PageDown'\n            ),\n        makeNavBtn(\n          $prevYearIcon,\n          this.labelPrevYear,\n          this.gotoPrevYear,\n          this.prevYearDisabled,\n          'Alt+PageDown'\n        ),\n        makeNavBtn(\n          $prevMonthIcon,\n          this.labelPrevMonth,\n          this.gotoPrevMonth,\n          this.prevMonthDisabled,\n          'PageDown'\n        ),\n        makeNavBtn(\n          $thisMonthIcon,\n          this.labelCurrentMonth,\n          this.gotoCurrentMonth,\n          this.thisMonthDisabled,\n          'Home'\n        ),\n        makeNavBtn(\n          $nextMonthIcon,\n          this.labelNextMonth,\n          this.gotoNextMonth,\n          this.nextMonthDisabled,\n          'PageUp'\n        ),\n        makeNavBtn(\n          $nextYearIcon,\n          this.labelNextYear,\n          this.gotoNextYear,\n          this.nextYearDisabled,\n          'Alt+PageUp'\n        ),\n        hideDecadeNav\n          ? h()\n          : makeNavBtn(\n              $nextDecadeIcon,\n              this.labelNextDecade,\n              this.gotoNextDecade,\n              this.nextDecadeDisabled,\n              'Ctrl+Alt+PageUp'\n            )\n      ]\n    )\n\n    // Caption for calendar grid\n    const $gridCaption = h(\n      'header',\n      {\n        staticClass: 'b-calendar-grid-caption text-center font-weight-bold',\n        class: { 'text-muted': disabled },\n        attrs: {\n          id: gridCaptionId,\n          'aria-live': isLive ? 'polite' : null,\n          'aria-atomic': isLive ? 'true' : null\n        },\n        key: 'grid-caption'\n      },\n      this.formatYearMonth(this.calendarFirstDay)\n    )\n\n    // Calendar weekday headings\n    const $gridWeekDays = h(\n      'div',\n      {\n        staticClass: 'b-calendar-grid-weekdays row no-gutters border-bottom',\n        attrs: { 'aria-hidden': 'true' }\n      },\n      this.calendarHeadings.map((d, idx) => {\n        return h(\n          'small',\n          {\n            staticClass: 'col text-truncate',\n            class: { 'text-muted': disabled },\n            attrs: {\n              title: d.label === d.text ? null : d.label,\n              'aria-label': d.label\n            },\n            key: idx\n          },\n          d.text\n        )\n      })\n    )\n\n    // Calendar day grid\n    let $gridBody = this.calendar.map(week => {\n      const $cells = week.map((day, dIndex) => {\n        const isSelected = day.ymd === selectedYMD\n        const isActive = day.ymd === activeYMD\n        const isToday = day.ymd === todayYMD\n        const idCell = safeId(`_cell-${day.ymd}_`)\n        // \"fake\" button\n        const $btn = h(\n          'span',\n          {\n            staticClass: 'btn border-0 rounded-circle text-nowrap',\n            // Should we add some classes to signify if today/selected/etc?\n            class: {\n              // Give the fake button a focus ring\n              focus: isActive && this.gridHasFocus,\n              // Styling\n              disabled: day.isDisabled || disabled,\n              active: isSelected, // makes the button look \"pressed\"\n              // Selected date style (need to computed from variant)\n              [this.computedVariant]: isSelected,\n              // Today day style (if not selected), same variant color as selected date\n              [this.computedTodayVariant]:\n                isToday && highlightToday && !isSelected && day.isThisMonth,\n              // Non selected/today styling\n              'btn-outline-light': !(isToday && highlightToday) && !isSelected && !isActive,\n              'btn-light': !(isToday && highlightToday) && !isSelected && isActive,\n              // Text styling\n              'text-muted': !day.isThisMonth && !isSelected,\n              'text-dark':\n                !(isToday && highlightToday) && !isSelected && !isActive && day.isThisMonth,\n              'font-weight-bold': (isSelected || day.isThisMonth) && !day.isDisabled\n            },\n            on: { click: () => this.onClickDay(day) }\n          },\n          day.day\n        )\n        return h(\n          'div', // Cell with button\n          {\n            staticClass: 'col p-0',\n            class: day.isDisabled ? 'bg-light' : day.info.class || '',\n            attrs: {\n              id: idCell,\n              role: 'button',\n              'data-date': day.ymd, // Primarily for testing purposes\n              // Only days in the month are presented as buttons to screen readers\n              'aria-hidden': day.isThisMonth ? null : 'true',\n              'aria-disabled': day.isDisabled || disabled ? 'true' : null,\n              'aria-label': [\n                day.label,\n                isSelected ? `(${this.labelSelected})` : null,\n                isToday ? `(${this.labelToday})` : null\n              ]\n                .filter(identity)\n                .join(' '),\n              // NVDA doesn't convey `aria-selected`, but does `aria-current`,\n              // ChromeVox doesn't convey `aria-current`, but does `aria-selected`,\n              // so we set both attributes for robustness\n              'aria-selected': isSelected ? 'true' : null,\n              'aria-current': isSelected ? 'date' : null\n            },\n            key: dIndex\n          },\n          [$btn]\n        )\n      })\n      // Return the week \"row\"\n      // We use the first day of the weeks YMD value as a\n      // key for efficient DOM patching / element re-use\n      return h(\n        'div',\n        {\n          staticClass: 'row no-gutters',\n          key: week[0].ymd\n        },\n        $cells\n      )\n    })\n    $gridBody = h(\n      'div',\n      {\n        // A key is only required on the body if we add in transition support\n        staticClass: 'b-calendar-grid-body',\n        style: disabled ? { pointerEvents: 'none' } : {}\n        // key: this.activeYMD.slice(0, -3)\n      },\n      $gridBody\n    )\n\n    const $gridHelp = h(\n      'footer',\n      {\n        staticClass: 'b-calendar-grid-help border-top small text-muted text-center bg-light',\n        attrs: {\n          id: gridHelpId\n        }\n      },\n      [h('div', { staticClass: 'small' }, this.labelHelp)]\n    )\n\n    const $grid = h(\n      'div',\n      {\n        staticClass: 'b-calendar-grid form-control h-auto text-center',\n        attrs: {\n          id: gridId,\n          role: 'application',\n          tabindex: noKeyNav ? '-1' : disabled ? null : '0',\n          'data-month': activeYMD.slice(0, -3), // `YYYY-MM`, mainly for testing\n          'aria-roledescription': this.labelCalendar || null,\n          'aria-labelledby': gridCaptionId,\n          'aria-describedby': gridHelpId,\n          // `aria-readonly` is not considered valid on `role=\"application\"`\n          // https://www.w3.org/TR/wai-aria-1.1/#aria-readonly\n          // 'aria-readonly': this.readonly && !disabled ? 'true' : null,\n          'aria-disabled': disabled ? 'true' : null,\n          'aria-activedescendant': activeId\n        },\n        on: {\n          keydown: this.onKeydownGrid,\n          focus: this.setGridFocusFlag,\n          blur: this.setGridFocusFlag\n        },\n        ref: 'grid'\n      },\n      [$gridCaption, $gridWeekDays, $gridBody, $gridHelp]\n    )\n\n    // Optional bottom slot\n    let $slot = this.normalizeSlot()\n    $slot = $slot ? h('footer', { staticClass: 'b-calendar-footer' }, $slot) : h()\n\n    const $widget = h(\n      'div',\n      {\n        staticClass: 'b-calendar-inner',\n        style: this.block ? {} : { width: this.width },\n        attrs: {\n          id: widgetId,\n          dir: isRTL ? 'rtl' : 'ltr',\n          lang: this.computedLocale || null,\n          role: 'group',\n          'aria-disabled': disabled ? 'true' : null,\n          // If datepicker controls an input, this will specify the ID of the input\n          'aria-controls': this.ariaControls || null,\n          // This should be a prop (so it can be changed to Date picker, etc, localized\n          'aria-roledescription': this.roleDescription || null,\n          'aria-describedby': [\n            // Should the attr (if present) go last?\n            // Or should this attr be a prop?\n            this.bvAttrs['aria-describedby'],\n            valueId,\n            gridHelpId\n          ]\n            .filter(identity)\n            .join(' ')\n        },\n        on: {\n          keydown: this.onKeydownWrapper\n        }\n      },\n      [$header, $nav, $grid, $slot]\n    )\n\n    // Wrap in an outer div that can be styled\n    return h('div', { staticClass: 'b-calendar', class: { 'd-block': this.block } }, [$widget])\n  }\n})\n","import { BCalendar } from './calendar'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst CalendarPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BCalendar }\n})\n\nexport { CalendarPlugin, BCalendar }\n","import { Vue } from '../vue'\nimport { NAME_CARD } from '../constants/components'\nimport { PROP_TYPE_STRING } from '../constants/props'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    bgVariant: makeProp(PROP_TYPE_STRING),\n    borderVariant: makeProp(PROP_TYPE_STRING),\n    tag: makeProp(PROP_TYPE_STRING, 'div'),\n    textVariant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_CARD\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const cardMixin = Vue.extend({\n  props\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_TITLE } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    title: makeProp(PROP_TYPE_STRING),\n    titleTag: makeProp(PROP_TYPE_STRING, 'h4')\n  },\n  NAME_CARD_TITLE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardTitle = /*#__PURE__*/ Vue.extend({\n  name: NAME_CARD_TITLE,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    return h(\n      props.titleTag,\n      mergeData(data, {\n        staticClass: 'card-title'\n      }),\n      children || toString(props.title)\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_SUB_TITLE } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    subTitle: makeProp(PROP_TYPE_STRING),\n    subTitleTag: makeProp(PROP_TYPE_STRING, 'h6'),\n    subTitleTextVariant: makeProp(PROP_TYPE_STRING, 'muted')\n  },\n  NAME_CARD_SUB_TITLE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardSubTitle = /*#__PURE__*/ Vue.extend({\n  name: NAME_CARD_SUB_TITLE,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    return h(\n      props.subTitleTag,\n      mergeData(data, {\n        staticClass: 'card-subtitle',\n        class: [props.subTitleTextVariant ? `text-${props.subTitleTextVariant}` : null]\n      }),\n      children || toString(props.subTitle)\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_BODY } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { sortKeys } from '../../utils/object'\nimport {\n  copyProps,\n  makeProp,\n  makePropsConfigurable,\n  pluckProps,\n  prefixPropName\n} from '../../utils/props'\nimport { props as cardProps } from '../../mixins/card'\nimport { BCardTitle, props as titleProps } from './card-title'\nimport { BCardSubTitle, props as subTitleProps } from './card-sub-title'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...titleProps,\n    ...subTitleProps,\n    ...copyProps(cardProps, prefixPropName.bind(null, 'body')),\n    bodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    overlay: makeProp(PROP_TYPE_BOOLEAN, false)\n  }),\n  NAME_CARD_BODY\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardBody = /*#__PURE__*/ Vue.extend({\n  name: NAME_CARD_BODY,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { bodyBgVariant, bodyBorderVariant, bodyTextVariant } = props\n\n    let $title = h()\n    if (props.title) {\n      $title = h(BCardTitle, { props: pluckProps(titleProps, props) })\n    }\n\n    let $subTitle = h()\n    if (props.subTitle) {\n      $subTitle = h(BCardSubTitle, {\n        props: pluckProps(subTitleProps, props),\n        class: ['mb-2']\n      })\n    }\n\n    return h(\n      props.bodyTag,\n      mergeData(data, {\n        staticClass: 'card-body',\n        class: [\n          {\n            'card-img-overlay': props.overlay,\n            [`bg-${bodyBgVariant}`]: bodyBgVariant,\n            [`border-${bodyBorderVariant}`]: bodyBorderVariant,\n            [`text-${bodyTextVariant}`]: bodyTextVariant\n          },\n          props.bodyClass\n        ]\n      }),\n      [$title, $subTitle, children]\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_HEADER } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { htmlOrText } from '../../utils/html'\nimport { sortKeys } from '../../utils/object'\nimport { copyProps, makeProp, makePropsConfigurable, prefixPropName } from '../../utils/props'\nimport { props as BCardProps } from '../../mixins/card'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...copyProps(BCardProps, prefixPropName.bind(null, 'header')),\n    header: makeProp(PROP_TYPE_STRING),\n    headerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    headerHtml: makeProp(PROP_TYPE_STRING)\n  }),\n  NAME_CARD_HEADER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardHeader = /*#__PURE__*/ Vue.extend({\n  name: NAME_CARD_HEADER,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { headerBgVariant, headerBorderVariant, headerTextVariant } = props\n\n    return h(\n      props.headerTag,\n      mergeData(data, {\n        staticClass: 'card-header',\n        class: [\n          props.headerClass,\n          {\n            [`bg-${headerBgVariant}`]: headerBgVariant,\n            [`border-${headerBorderVariant}`]: headerBorderVariant,\n            [`text-${headerTextVariant}`]: headerTextVariant\n          }\n        ],\n        domProps: children ? {} : htmlOrText(props.headerHtml, props.header)\n      }),\n      children\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_FOOTER } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { htmlOrText } from '../../utils/html'\nimport { sortKeys } from '../../utils/object'\nimport { copyProps, makeProp, makePropsConfigurable, prefixPropName } from '../../utils/props'\nimport { props as BCardProps } from '../../mixins/card'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...copyProps(BCardProps, prefixPropName.bind(null, 'footer')),\n    footer: makeProp(PROP_TYPE_STRING),\n    footerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    footerHtml: makeProp(PROP_TYPE_STRING)\n  }),\n  NAME_CARD_FOOTER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardFooter = /*#__PURE__*/ Vue.extend({\n  name: NAME_CARD_FOOTER,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { footerBgVariant, footerBorderVariant, footerTextVariant } = props\n\n    return h(\n      props.footerTag,\n      mergeData(data, {\n        staticClass: 'card-footer',\n        class: [\n          props.footerClass,\n          {\n            [`bg-${footerBgVariant}`]: footerBgVariant,\n            [`border-${footerBorderVariant}`]: footerBorderVariant,\n            [`text-${footerTextVariant}`]: footerTextVariant\n          }\n        ],\n        domProps: children ? {} : htmlOrText(props.footerHtml, props.footer)\n      }),\n      children\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_IMG } from '../../constants/components'\nimport {\n  PROP_TYPE_ARRAY_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_STRING,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { concat } from '../../utils/array'\nimport { identity } from '../../utils/identity'\nimport { isString } from '../../utils/inspect'\nimport { toInteger } from '../../utils/number'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\n\n// --- Constants --\n\n// Blank image with fill template\nconst BLANK_TEMPLATE =\n  '<svg width=\"%{w}\" height=\"%{h}\" ' +\n  'xmlns=\"http://www.w3.org/2000/svg\" ' +\n  'viewBox=\"0 0 %{w} %{h}\" preserveAspectRatio=\"none\">' +\n  '<rect width=\"100%\" height=\"100%\" style=\"fill:%{f};\"></rect>' +\n  '</svg>'\n\n// --- Helper methods ---\n\nconst makeBlankImgSrc = (width, height, color) => {\n  const src = encodeURIComponent(\n    BLANK_TEMPLATE.replace('%{w}', toString(width))\n      .replace('%{h}', toString(height))\n      .replace('%{f}', color)\n  )\n  return `data:image/svg+xml;charset=UTF-8,${src}`\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    alt: makeProp(PROP_TYPE_STRING),\n    blank: makeProp(PROP_TYPE_BOOLEAN, false),\n    blankColor: makeProp(PROP_TYPE_STRING, 'transparent'),\n    block: makeProp(PROP_TYPE_BOOLEAN, false),\n    center: makeProp(PROP_TYPE_BOOLEAN, false),\n    fluid: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Gives fluid images class `w-100` to make them grow to fit container\n    fluidGrow: makeProp(PROP_TYPE_BOOLEAN, false),\n    height: makeProp(PROP_TYPE_NUMBER_STRING),\n    left: makeProp(PROP_TYPE_BOOLEAN, false),\n    right: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Possible values:\n    //   `false`: no rounding of corners\n    //   `true`: slightly rounded corners\n    //   'top': top corners rounded\n    //   'right': right corners rounded\n    //   'bottom': bottom corners rounded\n    //   'left': left corners rounded\n    //   'circle': circle/oval\n    //   '0': force rounding off\n    rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n    sizes: makeProp(PROP_TYPE_ARRAY_STRING),\n    src: makeProp(PROP_TYPE_STRING),\n    srcset: makeProp(PROP_TYPE_ARRAY_STRING),\n    thumbnail: makeProp(PROP_TYPE_BOOLEAN, false),\n    width: makeProp(PROP_TYPE_NUMBER_STRING)\n  },\n  NAME_IMG\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BImg = /*#__PURE__*/ Vue.extend({\n  name: NAME_IMG,\n  functional: true,\n  props,\n  render(h, { props, data }) {\n    let { alt, src, block, fluidGrow, rounded } = props\n    let width = toInteger(props.width) || null\n    let height = toInteger(props.height) || null\n    let align = null\n    let srcset = concat(props.srcset)\n      .filter(identity)\n      .join(',')\n    let sizes = concat(props.sizes)\n      .filter(identity)\n      .join(',')\n\n    if (props.blank) {\n      if (!height && width) {\n        height = width\n      } else if (!width && height) {\n        width = height\n      }\n      if (!width && !height) {\n        width = 1\n        height = 1\n      }\n      // Make a blank SVG image\n      src = makeBlankImgSrc(width, height, props.blankColor || 'transparent')\n      // Disable srcset and sizes\n      srcset = null\n      sizes = null\n    }\n    if (props.left) {\n      align = 'float-left'\n    } else if (props.right) {\n      align = 'float-right'\n    } else if (props.center) {\n      align = 'mx-auto'\n      block = true\n    }\n\n    return h(\n      'img',\n      mergeData(data, {\n        attrs: {\n          src,\n          alt,\n          width: width ? toString(width) : null,\n          height: height ? toString(height) : null,\n          srcset: srcset || null,\n          sizes: sizes || null\n        },\n        class: {\n          'img-thumbnail': props.thumbnail,\n          'img-fluid': props.fluid || fluidGrow,\n          'w-100': fluidGrow,\n          rounded: rounded === '' || rounded === true,\n          [`rounded-${rounded}`]: isString(rounded) && rounded !== '',\n          [align]: align,\n          'd-block': block\n        }\n      })\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_IMG } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { pick, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { props as BImgProps } from '../image/img'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...pick(BImgProps, ['src', 'alt', 'width', 'height', 'left', 'right']),\n    bottom: makeProp(PROP_TYPE_BOOLEAN, false),\n    end: makeProp(PROP_TYPE_BOOLEAN, false),\n    start: makeProp(PROP_TYPE_BOOLEAN, false),\n    top: makeProp(PROP_TYPE_BOOLEAN, false)\n  }),\n  NAME_CARD_IMG\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardImg = /*#__PURE__*/ Vue.extend({\n  name: NAME_CARD_IMG,\n  functional: true,\n  props,\n  render(h, { props, data }) {\n    const { src, alt, width, height } = props\n\n    let baseClass = 'card-img'\n    if (props.top) {\n      baseClass += '-top'\n    } else if (props.right || props.end) {\n      baseClass += '-right'\n    } else if (props.bottom) {\n      baseClass += '-bottom'\n    } else if (props.left || props.start) {\n      baseClass += '-left'\n    }\n\n    return h(\n      'img',\n      mergeData(data, {\n        class: baseClass,\n        attrs: { src, alt, width, height }\n      })\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_FOOTER, SLOT_NAME_HEADER } from '../../constants/slots'\nimport { htmlOrText } from '../../utils/html'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport { sortKeys } from '../../utils/object'\nimport {\n  copyProps,\n  makeProp,\n  makePropsConfigurable,\n  pluckProps,\n  prefixPropName,\n  unprefixPropName\n} from '../../utils/props'\nimport { props as cardProps } from '../../mixins/card'\nimport { BCardBody, props as BCardBodyProps } from './card-body'\nimport { BCardHeader, props as BCardHeaderProps } from './card-header'\nimport { BCardFooter, props as BCardFooterProps } from './card-footer'\nimport { BCardImg, props as BCardImgProps } from './card-img'\n\n// --- Props ---\n\nconst cardImgProps = copyProps(BCardImgProps, prefixPropName.bind(null, 'img'))\ncardImgProps.imgSrc.required = false\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...BCardBodyProps,\n    ...BCardHeaderProps,\n    ...BCardFooterProps,\n    ...cardImgProps,\n    ...cardProps,\n    align: makeProp(PROP_TYPE_STRING),\n    noBody: makeProp(PROP_TYPE_BOOLEAN, false)\n  }),\n  NAME_CARD\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCard = /*#__PURE__*/ Vue.extend({\n  name: NAME_CARD,\n  functional: true,\n  props,\n  render(h, { props, data, slots, scopedSlots }) {\n    const {\n      imgSrc,\n      imgLeft,\n      imgRight,\n      imgStart,\n      imgEnd,\n      imgBottom,\n      header,\n      headerHtml,\n      footer,\n      footerHtml,\n      align,\n      textVariant,\n      bgVariant,\n      borderVariant\n    } = props\n    const $scopedSlots = scopedSlots || {}\n    const $slots = slots()\n    const slotScope = {}\n\n    let $imgFirst = h()\n    let $imgLast = h()\n    if (imgSrc) {\n      const $img = h(BCardImg, {\n        props: pluckProps(cardImgProps, props, unprefixPropName.bind(null, 'img'))\n      })\n\n      if (imgBottom) {\n        $imgLast = $img\n      } else {\n        $imgFirst = $img\n      }\n    }\n\n    let $header = h()\n    const hasHeaderSlot = hasNormalizedSlot(SLOT_NAME_HEADER, $scopedSlots, $slots)\n    if (hasHeaderSlot || header || headerHtml) {\n      $header = h(\n        BCardHeader,\n        {\n          props: pluckProps(BCardHeaderProps, props),\n          domProps: hasHeaderSlot ? {} : htmlOrText(headerHtml, header)\n        },\n        normalizeSlot(SLOT_NAME_HEADER, slotScope, $scopedSlots, $slots)\n      )\n    }\n\n    let $content = normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots)\n\n    // Wrap content in `<card-body>` when `noBody` prop set\n    if (!props.noBody) {\n      $content = h(BCardBody, { props: pluckProps(BCardBodyProps, props) }, $content)\n\n      // When the `overlap` prop is set we need to wrap the `<b-card-img>` and `<b-card-body>`\n      // into a relative positioned wrapper to don't distract a potential header or footer\n      if (props.overlay && imgSrc) {\n        $content = h('div', { staticClass: 'position-relative' }, [$imgFirst, $content, $imgLast])\n        // Reset image variables since they are already in the wrapper\n        $imgFirst = h()\n        $imgLast = h()\n      }\n    }\n\n    let $footer = h()\n    const hasFooterSlot = hasNormalizedSlot(SLOT_NAME_FOOTER, $scopedSlots, $slots)\n    if (hasFooterSlot || footer || footerHtml) {\n      $footer = h(\n        BCardFooter,\n        {\n          props: pluckProps(BCardFooterProps, props),\n          domProps: hasHeaderSlot ? {} : htmlOrText(footerHtml, footer)\n        },\n        normalizeSlot(SLOT_NAME_FOOTER, slotScope, $scopedSlots, $slots)\n      )\n    }\n\n    return h(\n      props.tag,\n      mergeData(data, {\n        staticClass: 'card',\n        class: {\n          'flex-row': imgLeft || imgStart,\n          'flex-row-reverse': (imgRight || imgEnd) && !(imgLeft || imgStart),\n          [`text-${align}`]: align,\n          [`bg-${bgVariant}`]: bgVariant,\n          [`border-${borderVariant}`]: borderVariant,\n          [`text-${textVariant}`]: textVariant\n        }\n      }),\n      [$imgFirst, $header, $content, $footer, $imgLast]\n    )\n  }\n})\n","// v-b-visible\n// Private visibility check directive\n// Based on IntersectionObserver\n//\n// Usage:\n//  v-b-visibility.<margin>.<once>=\"<callback>\"\n//\n//  Value:\n//  <callback>: 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//    <margin>: a positive decimal value of pixels away from viewport edge\n//              before being considered \"visible\". default is 0\n//    <once>:   keyword 'once', meaning when the element becomes visible and\n//              callback is called observation/notification will stop.\n//\n// When used in a render function:\n// export default {\n//   directives: { 'b-visible': VBVisible },\n//   render(h) {\n//     h(\n//       'div',\n//       {\n//         directives: [\n//           { name: 'b-visible', value=this.callback, modifiers: { '123':true, 'once':true } }\n//         ]\n//       }\n//     )\n//   }\n\nimport { RX_DIGITS } from '../../constants/regex'\nimport { requestAF } from '../../utils/dom'\nimport { isFunction } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { clone, keys } from '../../utils/object'\n\nconst OBSERVER_PROP_NAME = '__bv__visibility_observer'\n\nclass VisibilityObserver {\n  constructor(el, options, vnode) {\n    this.el = el\n    this.callback = options.callback\n    this.margin = options.margin || 0\n    this.once = options.once || false\n    this.observer = null\n    this.visible = undefined\n    this.doneOnce = false\n    // Create the observer instance (if possible)\n    this.createObserver(vnode)\n  }\n\n  createObserver(vnode) {\n    // Remove any previous observer\n    if (this.observer) {\n      /* istanbul ignore next */\n      this.stop()\n    }\n\n    // Should only be called once and `callback` prop should be a function\n    if (this.doneOnce || !isFunction(this.callback)) {\n      /* istanbul ignore next */\n      return\n    }\n\n    // Create the observer instance\n    try {\n      // Future: Possibly add in other modifiers for left/right/top/bottom\n      // offsets, root element reference, and thresholds\n      this.observer = new IntersectionObserver(this.handler.bind(this), {\n        // `null` = 'viewport'\n        root: null,\n        // Pixels away from view port to consider \"visible\"\n        rootMargin: this.margin,\n        // Intersection ratio of el and root (as a value from 0 to 1)\n        threshold: 0\n      })\n    } catch {\n      // No IntersectionObserver support, so just stop trying to observe\n      this.doneOnce = true\n      this.observer = undefined\n      this.callback(null)\n      return\n    }\n\n    // Start observing in a `$nextTick()` (to allow DOM to complete rendering)\n    /* istanbul ignore next: IntersectionObserver not supported in JSDOM */\n    vnode.context.$nextTick(() => {\n      requestAF(() => {\n        // Placed in an `if` just in case we were destroyed before\n        // this `requestAnimationFrame` runs\n        if (this.observer) {\n          this.observer.observe(this.el)\n        }\n      })\n    })\n  }\n\n  /* istanbul ignore next */\n  handler(entries) {\n    const entry = entries ? entries[0] : {}\n    const isIntersecting = Boolean(entry.isIntersecting || entry.intersectionRatio > 0.0)\n    if (isIntersecting !== this.visible) {\n      this.visible = isIntersecting\n      this.callback(isIntersecting)\n      if (this.once && this.visible) {\n        this.doneOnce = true\n        this.stop()\n      }\n    }\n  }\n\n  stop() {\n    /* istanbul ignore next */\n    this.observer && this.observer.disconnect()\n    this.observer = null\n  }\n}\n\nconst destroy = el => {\n  const observer = el[OBSERVER_PROP_NAME]\n  if (observer && observer.stop) {\n    observer.stop()\n  }\n  delete el[OBSERVER_PROP_NAME]\n}\n\nconst bind = (el, { value, modifiers }, vnode) => {\n  // `value` is the callback function\n  const options = {\n    margin: '0px',\n    once: false,\n    callback: value\n  }\n  // Parse modifiers\n  keys(modifiers).forEach(mod => {\n    /* istanbul ignore else: Until <b-img-lazy> is switched to use this directive */\n    if (RX_DIGITS.test(mod)) {\n      options.margin = `${mod}px`\n    } else if (mod.toLowerCase() === 'once') {\n      options.once = true\n    }\n  })\n  // Destroy any previous observer\n  destroy(el)\n  // Create new observer\n  el[OBSERVER_PROP_NAME] = new VisibilityObserver(el, options, vnode)\n  // Store the current modifiers on the object (cloned)\n  el[OBSERVER_PROP_NAME]._prevModifiers = clone(modifiers)\n}\n\n// When the directive options may have been updated (or element)\nconst componentUpdated = (el, { value, oldValue, modifiers }, vnode) => {\n  // Compare value/oldValue and modifiers to see if anything has changed\n  // and if so, destroy old observer and create new observer\n  /* istanbul ignore next */\n  modifiers = clone(modifiers)\n  /* istanbul ignore next */\n  if (\n    el &&\n    (value !== oldValue ||\n      !el[OBSERVER_PROP_NAME] ||\n      !looseEqual(modifiers, el[OBSERVER_PROP_NAME]._prevModifiers))\n  ) {\n    // Re-bind on element\n    bind(el, { value, modifiers }, vnode)\n  }\n}\n\n// When directive un-binds from element\nconst unbind = el => {\n  // Remove the observer\n  destroy(el)\n}\n\n// Export the directive\nexport const VBVisible = {\n  bind,\n  componentUpdated,\n  unbind\n}\n","import { Vue } from '../../vue'\nimport { NAME_IMG_LAZY } from '../../constants/components'\nimport { HAS_INTERACTION_OBSERVER_SUPPORT } from '../../constants/env'\nimport { MODEL_EVENT_NAME_PREFIX } from '../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { concat } from '../../utils/array'\nimport { identity } from '../../utils/identity'\nimport { toInteger } from '../../utils/number'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { VBVisible } from '../../directives/visible/visible'\nimport { BImg, props as BImgProps } from './img'\n\n// --- Constants ---\n\nconst MODEL_PROP_NAME_SHOW = 'show'\nconst MODEL_EVENT_NAME_SHOW = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_SHOW\n\n// --- Props ---\n\nconst imgProps = omit(BImgProps, ['blank'])\n\nexport const props = makePropsConfigurable(\n  {\n    ...imgProps,\n    blankColor: makeProp(PROP_TYPE_STRING, 'transparent'),\n    blankHeight: makeProp(PROP_TYPE_NUMBER_STRING),\n    // If `null`, a blank image is generated\n    blankSrc: makeProp(PROP_TYPE_STRING, null),\n    blankWidth: makeProp(PROP_TYPE_NUMBER_STRING),\n    // Distance away from viewport (in pixels)\n    // before being considered \"visible\"\n    offset: makeProp(PROP_TYPE_NUMBER_STRING, 360),\n    [MODEL_PROP_NAME_SHOW]: makeProp(PROP_TYPE_BOOLEAN, false)\n  },\n  NAME_IMG_LAZY\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BImgLazy = /*#__PURE__*/ Vue.extend({\n  name: NAME_IMG_LAZY,\n  directives: {\n    'b-visible': VBVisible\n  },\n  props,\n  data() {\n    return {\n      isShown: this[MODEL_PROP_NAME_SHOW]\n    }\n  },\n  computed: {\n    computedSrc() {\n      const { blankSrc } = this\n      return !blankSrc || this.isShown ? this.src : blankSrc\n    },\n    computedBlank() {\n      return !(this.isShown || this.blankSrc)\n    },\n    computedWidth() {\n      const { width } = this\n      return this.isShown ? width : this.blankWidth || width\n    },\n    computedHeight() {\n      const { height } = this\n      return this.isShown ? height : this.blankHeight || height\n    },\n    computedSrcset() {\n      const srcset = concat(this.srcset)\n        .filter(identity)\n        .join(',')\n\n      return !this.blankSrc || this.isShown ? srcset : null\n    },\n    computedSizes() {\n      const sizes = concat(this.sizes)\n        .filter(identity)\n        .join(',')\n\n      return !this.blankSrc || this.isShown ? sizes : null\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME_SHOW](newValue, oldValue) {\n      if (newValue !== oldValue) {\n        // If `IntersectionObserver` support is not available, image is always shown\n        const visible = HAS_INTERACTION_OBSERVER_SUPPORT ? newValue : true\n\n        this.isShown = visible\n\n        // Ensure the show prop is synced (when no `IntersectionObserver`)\n        if (visible !== newValue) {\n          this.$nextTick(this.updateShowProp)\n        }\n      }\n    },\n    isShown(newValue, oldValue) {\n      // Update synched show prop\n      if (newValue !== oldValue) {\n        this.updateShowProp()\n      }\n    }\n  },\n  mounted() {\n    // If `IntersectionObserver` is not available, image is always shown\n    this.isShown = HAS_INTERACTION_OBSERVER_SUPPORT ? this[MODEL_PROP_NAME_SHOW] : true\n  },\n  methods: {\n    updateShowProp() {\n      this.$emit(MODEL_EVENT_NAME_SHOW, this.isShown)\n    },\n    doShow(visible) {\n      // If IntersectionObserver is not supported, the callback\n      // will be called with `null` rather than `true` or `false`\n      if ((visible || visible === null) && !this.isShown) {\n        this.isShown = true\n      }\n    }\n  },\n  render(h) {\n    const directives = []\n    if (!this.isShown) {\n      // We only add the visible directive if we are not shown\n      directives.push({\n        // Visible directive will silently do nothing if\n        // IntersectionObserver is not supported\n        name: 'b-visible',\n        // Value expects a callback (passed one arg of `visible` = `true` or `false`)\n        value: this.doShow,\n        modifiers: {\n          // Root margin from viewport\n          [`${toInteger(this.offset, 0)}`]: true,\n          // Once the image is shown, stop observing\n          once: true\n        }\n      })\n    }\n\n    return h(BImg, {\n      directives,\n      props: {\n        // Computed value props\n        src: this.computedSrc,\n        blank: this.computedBlank,\n        width: this.computedWidth,\n        height: this.computedHeight,\n        srcset: this.computedSrcset || null,\n        sizes: this.computedSizes || null,\n        // Passthrough props\n        ...pluckProps(imgProps, this.$props)\n      }\n    })\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_IMG_LAZY } from '../../constants/components'\nimport { keys, omit, sortKeys } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { props as BImgProps } from '../image/img'\nimport { BImgLazy, props as BImgLazyProps } from '../image/img-lazy'\nimport { props as BCardImgProps } from './card-img'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...omit(BImgLazyProps, keys(BImgProps)),\n    ...omit(BCardImgProps, ['src', 'alt', 'width', 'height'])\n  }),\n  NAME_CARD_IMG_LAZY\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardImgLazy = /*#__PURE__*/ Vue.extend({\n  name: NAME_CARD_IMG_LAZY,\n  functional: true,\n  props,\n  render(h, { props, data }) {\n    let baseClass = 'card-img'\n    if (props.top) {\n      baseClass += '-top'\n    } else if (props.right || props.end) {\n      baseClass += '-right'\n    } else if (props.bottom) {\n      baseClass += '-bottom'\n    } else if (props.left || props.start) {\n      baseClass += '-left'\n    }\n\n    return h(\n      BImgLazy,\n      mergeData(data, {\n        class: [baseClass],\n        // Exclude `left` and `right` props before passing to `<b-img-lazy>`\n        props: omit(props, ['left', 'right'])\n      })\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_TEXT } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    textTag: makeProp(PROP_TYPE_STRING, 'p')\n  },\n  NAME_CARD_TEXT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardText = /*#__PURE__*/ Vue.extend({\n  name: NAME_CARD_TEXT,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    return h(props.textTag, mergeData(data, { staticClass: 'card-text' }), children)\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_GROUP } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    columns: makeProp(PROP_TYPE_BOOLEAN, false),\n    deck: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'div')\n  },\n  NAME_CARD_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardGroup = /*#__PURE__*/ Vue.extend({\n  name: NAME_CARD_GROUP,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    return h(\n      props.tag,\n      mergeData(data, {\n        class: props.deck ? 'card-deck' : props.columns ? 'card-columns' : 'card-group'\n      }),\n      children\n    )\n  }\n})\n","import { BCard } from './card'\nimport { BCardHeader } from './card-header'\nimport { BCardBody } from './card-body'\nimport { BCardTitle } from './card-title'\nimport { BCardSubTitle } from './card-sub-title'\nimport { BCardFooter } from './card-footer'\nimport { BCardImg } from './card-img'\nimport { BCardImgLazy } from './card-img-lazy'\nimport { BCardText } from './card-text'\nimport { BCardGroup } from './card-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst CardPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BCard,\n    BCardHeader,\n    BCardBody,\n    BCardTitle,\n    BCardSubTitle,\n    BCardFooter,\n    BCardImg,\n    BCardImgLazy,\n    BCardText,\n    BCardGroup\n  }\n})\n\nexport {\n  CardPlugin,\n  BCard,\n  BCardHeader,\n  BCardBody,\n  BCardTitle,\n  BCardSubTitle,\n  BCardFooter,\n  BCardImg,\n  BCardImgLazy,\n  BCardText,\n  BCardGroup\n}\n","export const noop = () => {}\n","import { MutationObs, isElement } from './dom'\nimport { warnNoMutationObserverSupport } from './warn'\n\n/**\n * Observe a DOM element changes, falls back to eventListener mode\n * @param {Element} el The DOM element to observe\n * @param {Function} callback callback to be called on change\n * @param {object} [options={childList: true, subtree: true}] observe options\n * @see https://stackoverflow.com/questions/3219758\n */\nexport const observeDom = (\n  el,\n  callback,\n  options\n) => /* istanbul ignore next: difficult to test in JSDOM */ {\n  // Handle cases where we might be passed a Vue instance\n  el = el ? el.$el || el : null\n\n  // Early exit when we have no element\n  /* istanbul ignore next: difficult to test in JSDOM */\n  if (!isElement(el)) {\n    return null\n  }\n\n  // Exit and throw a warning when `MutationObserver` isn't available\n  if (warnNoMutationObserverSupport('observeDom')) {\n    return null\n  }\n\n  // Define a new observer\n  const obs = new MutationObs(mutations => {\n    let changed = false\n\n    // A mutation can contain several change records, so we loop\n    // through them to see what has changed\n    // We break out of the loop early if any \"significant\" change\n    // has been detected\n    for (let i = 0; i < mutations.length && !changed; i++) {\n      // The mutation record\n      const mutation = mutations[i]\n      // Mutation type\n      const type = mutation.type\n      // DOM node (could be any DOM node type - HTMLElement, Text, comment, etc.)\n      const target = mutation.target\n\n      // Detect whether a change happened based on type and target\n      if (type === 'characterData' && target.nodeType === Node.TEXT_NODE) {\n        // We ignore nodes that are not TEXT (i.e. comments, etc.)\n        // as they don't change layout\n        changed = true\n      } else if (type === 'attributes') {\n        changed = true\n      } else if (\n        type === 'childList' &&\n        (mutation.addedNodes.length > 0 || mutation.removedNodes.length > 0)\n      ) {\n        // This includes HTMLElement and text nodes being\n        // added/removed/re-arranged\n        changed = true\n      }\n    }\n\n    // We only call the callback if a change that could affect\n    // layout/size truly happened\n    if (changed) {\n      callback()\n    }\n  })\n\n  // Have the observer observe foo for changes in children, etc\n  obs.observe(el, { childList: true, subtree: true, ...options })\n\n  // We return a reference to the observer so that `obs.disconnect()`\n  // can be called if necessary\n  // To reduce overhead when the root element is hidden\n  return obs\n}\n","import { Vue } from '../../vue'\nimport { NAME_CAROUSEL } from '../../constants/components'\nimport { IS_BROWSER, HAS_POINTER_EVENT_SUPPORT, HAS_TOUCH_SUPPORT } from '../../constants/env'\nimport {\n  EVENT_NAME_PAUSED,\n  EVENT_NAME_SLIDING_END,\n  EVENT_NAME_SLIDING_START,\n  EVENT_NAME_UNPAUSED,\n  EVENT_OPTIONS_NO_CAPTURE\n} from '../../constants/events'\nimport { CODE_ENTER, CODE_LEFT, CODE_RIGHT, CODE_SPACE } from '../../constants/key-codes'\nimport {\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_NUMBER,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport {\n  addClass,\n  getActiveElement,\n  reflow,\n  removeClass,\n  requestAF,\n  selectAll,\n  setAttr\n} from '../../utils/dom'\nimport { eventOn, eventOff, stopEvent } from '../../utils/events'\nimport { isUndefined } from '../../utils/inspect'\nimport { mathAbs, mathFloor, mathMax, mathMin } from '../../utils/math'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { noop } from '../../utils/noop'\nimport { sortKeys } from '../../utils/object'\nimport { observeDom } from '../../utils/observe-dom'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n  type: PROP_TYPE_NUMBER,\n  defaultValue: 0\n})\n\n// Slide directional classes\nconst DIRECTION = {\n  next: {\n    dirClass: 'carousel-item-left',\n    overlayClass: 'carousel-item-next'\n  },\n  prev: {\n    dirClass: 'carousel-item-right',\n    overlayClass: 'carousel-item-prev'\n  }\n}\n\n// Fallback Transition duration (with a little buffer) in ms\nconst TRANS_DURATION = 600 + 50\n\n// Time for mouse compat events to fire after touch\nconst TOUCH_EVENT_COMPAT_WAIT = 500\n\n// Number of pixels to consider touch move a swipe\nconst SWIPE_THRESHOLD = 40\n\n// PointerEvent pointer types\nconst PointerType = {\n  TOUCH: 'touch',\n  PEN: 'pen'\n}\n\n// Transition Event names\nconst TransitionEndEvents = {\n  WebkitTransition: 'webkitTransitionEnd',\n  MozTransition: 'transitionend',\n  OTransition: 'otransitionend oTransitionEnd',\n  transition: 'transitionend'\n}\n\n// --- Helper methods ---\n\n// Return the browser specific transitionEnd event name\nconst getTransitionEndEvent = el => {\n  for (const name in TransitionEndEvents) {\n    if (!isUndefined(el.style[name])) {\n      return TransitionEndEvents[name]\n    }\n  }\n  // Fallback\n  /* istanbul ignore next */\n  return null\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    background: makeProp(PROP_TYPE_STRING),\n    controls: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Enable cross-fade animation instead of slide animation\n    fade: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Sniffed by carousel-slide\n    imgHeight: makeProp(PROP_TYPE_NUMBER_STRING),\n    // Sniffed by carousel-slide\n    imgWidth: makeProp(PROP_TYPE_NUMBER_STRING),\n    indicators: makeProp(PROP_TYPE_BOOLEAN, false),\n    interval: makeProp(PROP_TYPE_NUMBER, 5000),\n    labelGotoSlide: makeProp(PROP_TYPE_STRING, 'Goto slide'),\n    labelIndicators: makeProp(PROP_TYPE_STRING, 'Select a slide to display'),\n    labelNext: makeProp(PROP_TYPE_STRING, 'Next slide'),\n    labelPrev: makeProp(PROP_TYPE_STRING, 'Previous slide'),\n    // Disable slide/fade animation\n    noAnimation: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Disable pause on hover\n    noHoverPause: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Sniffed by carousel-slide\n    noTouch: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Disable wrapping/looping when start/end is reached\n    noWrap: makeProp(PROP_TYPE_BOOLEAN, false)\n  }),\n  NAME_CAROUSEL\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCarousel = /*#__PURE__*/ Vue.extend({\n  name: NAME_CAROUSEL,\n  mixins: [idMixin, modelMixin, normalizeSlotMixin],\n  provide() {\n    return { bvCarousel: this }\n  },\n  props,\n  data() {\n    return {\n      index: this[MODEL_PROP_NAME] || 0,\n      isSliding: false,\n      transitionEndEvent: null,\n      slides: [],\n      direction: null,\n      isPaused: !(toInteger(this.interval, 0) > 0),\n      // Touch event handling values\n      touchStartX: 0,\n      touchDeltaX: 0\n    }\n  },\n  computed: {\n    numSlides() {\n      return this.slides.length\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue, oldValue) {\n      if (newValue !== oldValue) {\n        this.setSlide(toInteger(newValue, 0))\n      }\n    },\n    interval(newValue, oldValue) {\n      /* istanbul ignore next */\n      if (newValue === oldValue) {\n        return\n      }\n      if (!newValue) {\n        // Pausing slide show\n        this.pause(false)\n      } else {\n        // Restarting or Changing interval\n        this.pause(true)\n        this.start(false)\n      }\n    },\n    isPaused(newValue, oldValue) {\n      if (newValue !== oldValue) {\n        this.$emit(newValue ? EVENT_NAME_PAUSED : EVENT_NAME_UNPAUSED)\n      }\n    },\n    index(to, from) {\n      /* istanbul ignore next */\n      if (to === from || this.isSliding) {\n        return\n      }\n      this.doSlide(to, from)\n    }\n  },\n  created() {\n    // Create private non-reactive props\n    this.$_interval = null\n    this.$_animationTimeout = null\n    this.$_touchTimeout = null\n    this.$_observer = null\n    // Set initial paused state\n    this.isPaused = !(toInteger(this.interval, 0) > 0)\n  },\n  mounted() {\n    // Cache current browser transitionend event name\n    this.transitionEndEvent = getTransitionEndEvent(this.$el) || null\n    // Get all slides\n    this.updateSlides()\n    // Observe child changes so we can update slide list\n    this.setObserver(true)\n  },\n  beforeDestroy() {\n    this.clearInterval()\n    this.clearAnimationTimeout()\n    this.clearTouchTimeout()\n    this.setObserver(false)\n  },\n  methods: {\n    clearInterval() {\n      clearInterval(this.$_interval)\n      this.$_interval = null\n    },\n    clearAnimationTimeout() {\n      clearTimeout(this.$_animationTimeout)\n      this.$_animationTimeout = null\n    },\n    clearTouchTimeout() {\n      clearTimeout(this.$_touchTimeout)\n      this.$_touchTimeout = null\n    },\n    setObserver(on = false) {\n      this.$_observer && this.$_observer.disconnect()\n      this.$_observer = null\n      if (on) {\n        this.$_observer = observeDom(this.$refs.inner, this.updateSlides.bind(this), {\n          subtree: false,\n          childList: true,\n          attributes: true,\n          attributeFilter: ['id']\n        })\n      }\n    },\n    // Set slide\n    setSlide(slide, direction = null) {\n      // Don't animate when page is not visible\n      /* istanbul ignore if: difficult to test */\n      if (IS_BROWSER && document.visibilityState && document.hidden) {\n        return\n      }\n      const noWrap = this.noWrap\n      const numSlides = this.numSlides\n      // Make sure we have an integer (you never know!)\n      slide = mathFloor(slide)\n      // Don't do anything if nothing to slide to\n      if (numSlides === 0) {\n        return\n      }\n      // Don't change slide while transitioning, wait until transition is done\n      if (this.isSliding) {\n        // Schedule slide after sliding complete\n        this.$once(EVENT_NAME_SLIDING_END, () => {\n          // Wrap in `requestAF()` to allow the slide to properly finish to avoid glitching\n          requestAF(() => this.setSlide(slide, direction))\n        })\n        return\n      }\n      this.direction = direction\n      // Set new slide index\n      // Wrap around if necessary (if no-wrap not enabled)\n      this.index =\n        slide >= numSlides\n          ? noWrap\n            ? numSlides - 1\n            : 0\n          : slide < 0\n            ? noWrap\n              ? 0\n              : numSlides - 1\n            : slide\n      // Ensure the v-model is synched up if no-wrap is enabled\n      // and user tried to slide pass either ends\n      if (noWrap && this.index !== slide && this.index !== this[MODEL_PROP_NAME]) {\n        this.$emit(MODEL_EVENT_NAME, this.index)\n      }\n    },\n    // Previous slide\n    prev() {\n      this.setSlide(this.index - 1, 'prev')\n    },\n    // Next slide\n    next() {\n      this.setSlide(this.index + 1, 'next')\n    },\n    // Pause auto rotation\n    pause(event) {\n      if (!event) {\n        this.isPaused = true\n      }\n      this.clearInterval()\n    },\n    // Start auto rotate slides\n    start(event) {\n      if (!event) {\n        this.isPaused = false\n      }\n      /* istanbul ignore next: most likely will never happen, but just in case */\n      this.clearInterval()\n      // Don't start if no interval, or less than 2 slides\n      if (this.interval && this.numSlides > 1) {\n        this.$_interval = setInterval(this.next, mathMax(1000, this.interval))\n      }\n    },\n    // Restart auto rotate slides when focus/hover leaves the carousel\n    /* istanbul ignore next */\n    restart() {\n      if (!this.$el.contains(getActiveElement())) {\n        this.start()\n      }\n    },\n    doSlide(to, from) {\n      const isCycling = Boolean(this.interval)\n      // Determine sliding direction\n      const direction = this.calcDirection(this.direction, from, to)\n      const overlayClass = direction.overlayClass\n      const dirClass = direction.dirClass\n      // Determine current and next slides\n      const currentSlide = this.slides[from]\n      const nextSlide = this.slides[to]\n      // Don't do anything if there aren't any slides to slide to\n      if (!currentSlide || !nextSlide) {\n        /* istanbul ignore next */\n        return\n      }\n      // Start animating\n      this.isSliding = true\n      if (isCycling) {\n        this.pause(false)\n      }\n      this.$emit(EVENT_NAME_SLIDING_START, to)\n      // Update v-model\n      this.$emit(MODEL_EVENT_NAME, this.index)\n      if (this.noAnimation) {\n        addClass(nextSlide, 'active')\n        removeClass(currentSlide, 'active')\n        this.isSliding = false\n        // Notify ourselves that we're done sliding (slid)\n        this.$nextTick(() => this.$emit(EVENT_NAME_SLIDING_END, to))\n      } else {\n        addClass(nextSlide, overlayClass)\n        // Trigger a reflow of next slide\n        reflow(nextSlide)\n        addClass(currentSlide, dirClass)\n        addClass(nextSlide, dirClass)\n        // Transition End handler\n        let called = false\n        /* istanbul ignore next: difficult to test */\n        const onceTransEnd = () => {\n          if (called) {\n            return\n          }\n          called = true\n          /* istanbul ignore if: transition events cant be tested in JSDOM */\n          if (this.transitionEndEvent) {\n            const events = this.transitionEndEvent.split(/\\s+/)\n            events.forEach(event =>\n              eventOff(nextSlide, event, onceTransEnd, EVENT_OPTIONS_NO_CAPTURE)\n            )\n          }\n          this.clearAnimationTimeout()\n          removeClass(nextSlide, dirClass)\n          removeClass(nextSlide, overlayClass)\n          addClass(nextSlide, 'active')\n          removeClass(currentSlide, 'active')\n          removeClass(currentSlide, dirClass)\n          removeClass(currentSlide, overlayClass)\n          setAttr(currentSlide, 'aria-current', 'false')\n          setAttr(nextSlide, 'aria-current', 'true')\n          setAttr(currentSlide, 'aria-hidden', 'true')\n          setAttr(nextSlide, 'aria-hidden', 'false')\n          this.isSliding = false\n          this.direction = null\n          // Notify ourselves that we're done sliding (slid)\n          this.$nextTick(() => this.$emit(EVENT_NAME_SLIDING_END, to))\n        }\n        // Set up transitionend handler\n        /* istanbul ignore if: transition events cant be tested in JSDOM */\n        if (this.transitionEndEvent) {\n          const events = this.transitionEndEvent.split(/\\s+/)\n          events.forEach(event => eventOn(nextSlide, event, onceTransEnd, EVENT_OPTIONS_NO_CAPTURE))\n        }\n        // Fallback to setTimeout()\n        this.$_animationTimeout = setTimeout(onceTransEnd, TRANS_DURATION)\n      }\n      if (isCycling) {\n        this.start(false)\n      }\n    },\n    // Update slide list\n    updateSlides() {\n      this.pause(true)\n      // Get all slides as DOM elements\n      this.slides = selectAll('.carousel-item', this.$refs.inner)\n      const numSlides = this.slides.length\n      // Keep slide number in range\n      const index = mathMax(0, mathMin(mathFloor(this.index), numSlides - 1))\n      this.slides.forEach((slide, idx) => {\n        const n = idx + 1\n        if (idx === index) {\n          addClass(slide, 'active')\n          setAttr(slide, 'aria-current', 'true')\n        } else {\n          removeClass(slide, 'active')\n          setAttr(slide, 'aria-current', 'false')\n        }\n        setAttr(slide, 'aria-posinset', String(n))\n        setAttr(slide, 'aria-setsize', String(numSlides))\n      })\n      // Set slide as active\n      this.setSlide(index)\n      this.start(this.isPaused)\n    },\n    calcDirection(direction = null, curIndex = 0, nextIndex = 0) {\n      if (!direction) {\n        return nextIndex > curIndex ? DIRECTION.next : DIRECTION.prev\n      }\n      return DIRECTION[direction]\n    },\n    handleClick(event, fn) {\n      const keyCode = event.keyCode\n      if (event.type === 'click' || keyCode === CODE_SPACE || keyCode === CODE_ENTER) {\n        stopEvent(event)\n        fn()\n      }\n    },\n    /* istanbul ignore next: JSDOM doesn't support touch events */\n    handleSwipe() {\n      const absDeltaX = mathAbs(this.touchDeltaX)\n      if (absDeltaX <= SWIPE_THRESHOLD) {\n        return\n      }\n      const direction = absDeltaX / this.touchDeltaX\n      // Reset touch delta X\n      // https://github.com/twbs/bootstrap/pull/28558\n      this.touchDeltaX = 0\n      if (direction > 0) {\n        // Swipe left\n        this.prev()\n      } else if (direction < 0) {\n        // Swipe right\n        this.next()\n      }\n    },\n    /* istanbul ignore next: JSDOM doesn't support touch events */\n    touchStart(event) {\n      if (HAS_POINTER_EVENT_SUPPORT && PointerType[event.pointerType.toUpperCase()]) {\n        this.touchStartX = event.clientX\n      } else if (!HAS_POINTER_EVENT_SUPPORT) {\n        this.touchStartX = event.touches[0].clientX\n      }\n    },\n    /* istanbul ignore next: JSDOM doesn't support touch events */\n    touchMove(event) {\n      // Ensure swiping with one touch and not pinching\n      if (event.touches && event.touches.length > 1) {\n        this.touchDeltaX = 0\n      } else {\n        this.touchDeltaX = event.touches[0].clientX - this.touchStartX\n      }\n    },\n    /* istanbul ignore next: JSDOM doesn't support touch events */\n    touchEnd(event) {\n      if (HAS_POINTER_EVENT_SUPPORT && PointerType[event.pointerType.toUpperCase()]) {\n        this.touchDeltaX = event.clientX - this.touchStartX\n      }\n      this.handleSwipe()\n      // If it's a touch-enabled device, mouseenter/leave are fired as\n      // part of the mouse compatibility events on first tap - the carousel\n      // would stop cycling until user tapped out of it;\n      // here, we listen for touchend, explicitly pause the carousel\n      // (as if it's the second time we tap on it, mouseenter compat event\n      // is NOT fired) and after a timeout (to allow for mouse compatibility\n      // events to fire) we explicitly restart cycling\n      this.pause(false)\n      this.clearTouchTimeout()\n      this.$_touchTimeout = setTimeout(\n        this.start,\n        TOUCH_EVENT_COMPAT_WAIT + mathMax(1000, this.interval)\n      )\n    }\n  },\n  render(h) {\n    const {\n      indicators,\n      background,\n      noAnimation,\n      noHoverPause,\n      noTouch,\n      index,\n      isSliding,\n      pause,\n      restart,\n      touchStart,\n      touchEnd\n    } = this\n    const idInner = this.safeId('__BV_inner_')\n\n    // Wrapper for slides\n    const $inner = h(\n      'div',\n      {\n        staticClass: 'carousel-inner',\n        attrs: {\n          id: idInner,\n          role: 'list'\n        },\n        ref: 'inner'\n      },\n      [this.normalizeSlot()]\n    )\n\n    // Prev and next controls\n    let $controls = h()\n    if (this.controls) {\n      const makeControl = (direction, label, handler) => {\n        const handlerWrapper = event => {\n          /* istanbul ignore next */\n          if (!isSliding) {\n            this.handleClick(event, handler)\n          } else {\n            stopEvent(event, { propagation: false })\n          }\n        }\n\n        return h(\n          'a',\n          {\n            staticClass: `carousel-control-${direction}`,\n            attrs: {\n              href: '#',\n              role: 'button',\n              'aria-controls': idInner,\n              'aria-disabled': isSliding ? 'true' : null\n            },\n            on: {\n              click: handlerWrapper,\n              keydown: handlerWrapper\n            }\n          },\n          [\n            h('span', {\n              staticClass: `carousel-control-${direction}-icon`,\n              attrs: { 'aria-hidden': 'true' }\n            }),\n            h('span', { class: 'sr-only' }, [label])\n          ]\n        )\n      }\n\n      $controls = [\n        makeControl('prev', this.labelPrev, this.prev),\n        makeControl('next', this.labelNext, this.next)\n      ]\n    }\n\n    // Indicators\n    const $indicators = h(\n      'ol',\n      {\n        staticClass: 'carousel-indicators',\n        directives: [{ name: 'show', value: indicators }],\n        attrs: {\n          id: this.safeId('__BV_indicators_'),\n          'aria-hidden': indicators ? 'false' : 'true',\n          'aria-label': this.labelIndicators,\n          'aria-owns': idInner\n        }\n      },\n      this.slides.map((slide, i) => {\n        const handler = event => {\n          this.handleClick(event, () => {\n            this.setSlide(i)\n          })\n        }\n\n        return h('li', {\n          class: { active: i === index },\n          attrs: {\n            role: 'button',\n            id: this.safeId(`__BV_indicator_${i + 1}_`),\n            tabindex: indicators ? '0' : '-1',\n            'aria-current': i === index ? 'true' : 'false',\n            'aria-label': `${this.labelGotoSlide} ${i + 1}`,\n            'aria-describedby': slide.id || null,\n            'aria-controls': idInner\n          },\n          on: {\n            click: handler,\n            keydown: handler\n          },\n          key: `slide_${i}`\n        })\n      })\n    )\n\n    const on = {\n      mouseenter: noHoverPause ? noop : pause,\n      mouseleave: noHoverPause ? noop : restart,\n      focusin: pause,\n      focusout: restart,\n      keydown: event => {\n        /* istanbul ignore next */\n        if (/input|textarea/i.test(event.target.tagName)) {\n          return\n        }\n        const { keyCode } = event\n        if (keyCode === CODE_LEFT || keyCode === CODE_RIGHT) {\n          stopEvent(event)\n          this[keyCode === CODE_LEFT ? 'prev' : 'next']()\n        }\n      }\n    }\n    // Touch support event handlers for environment\n    if (HAS_TOUCH_SUPPORT && !noTouch) {\n      // Attach appropriate listeners (prepend event name with '&' for passive mode)\n      /* istanbul ignore next: JSDOM doesn't support touch events */\n      if (HAS_POINTER_EVENT_SUPPORT) {\n        on['&pointerdown'] = touchStart\n        on['&pointerup'] = touchEnd\n      } else {\n        on['&touchstart'] = touchStart\n        on['&touchmove'] = this.touchMove\n        on['&touchend'] = touchEnd\n      }\n    }\n\n    // Return the carousel\n    return h(\n      'div',\n      {\n        staticClass: 'carousel',\n        class: {\n          slide: !noAnimation,\n          'carousel-fade': !noAnimation && this.fade,\n          'pointer-event': HAS_TOUCH_SUPPORT && HAS_POINTER_EVENT_SUPPORT && !noTouch\n        },\n        style: { background },\n        attrs: {\n          role: 'region',\n          id: this.safeId(),\n          'aria-busy': isSliding ? 'true' : 'false'\n        },\n        on\n      },\n      [$inner, $controls, $indicators]\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_CAROUSEL_SLIDE } from '../../constants/components'\nimport { HAS_TOUCH_SUPPORT } from '../../constants/env'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_IMG } from '../../constants/slots'\nimport { stopEvent } from '../../utils/events'\nimport { htmlOrText } from '../../utils/html'\nimport { identity } from '../../utils/identity'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps, unprefixPropName } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BImg } from '../image/img'\n\n// --- Props ---\n\nconst imgProps = {\n  imgAlt: makeProp(PROP_TYPE_STRING),\n  imgBlank: makeProp(PROP_TYPE_BOOLEAN, false),\n  imgBlankColor: makeProp(PROP_TYPE_STRING, 'transparent'),\n  imgHeight: makeProp(PROP_TYPE_NUMBER_STRING),\n  imgSrc: makeProp(PROP_TYPE_STRING),\n  imgWidth: makeProp(PROP_TYPE_NUMBER_STRING)\n}\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...imgProps,\n    background: makeProp(PROP_TYPE_STRING),\n    caption: makeProp(PROP_TYPE_STRING),\n    captionHtml: makeProp(PROP_TYPE_STRING),\n    captionTag: makeProp(PROP_TYPE_STRING, 'h3'),\n    contentTag: makeProp(PROP_TYPE_STRING, 'div'),\n    contentVisibleUp: makeProp(PROP_TYPE_STRING),\n    text: makeProp(PROP_TYPE_STRING),\n    textHtml: makeProp(PROP_TYPE_STRING),\n    textTag: makeProp(PROP_TYPE_STRING, 'p')\n  }),\n  NAME_CAROUSEL_SLIDE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCarouselSlide = /*#__PURE__*/ Vue.extend({\n  name: NAME_CAROUSEL_SLIDE,\n  mixins: [idMixin, normalizeSlotMixin],\n  inject: {\n    bvCarousel: {\n      // Explicitly disable touch if not a child of carousel\n      default: () => ({ noTouch: true })\n    }\n  },\n  props,\n  computed: {\n    contentClasses() {\n      return [\n        this.contentVisibleUp ? 'd-none' : '',\n        this.contentVisibleUp ? `d-${this.contentVisibleUp}-block` : ''\n      ]\n    },\n    computedWidth() {\n      // Use local width, or try parent width\n      return this.imgWidth || this.bvCarousel.imgWidth || null\n    },\n    computedHeight() {\n      // Use local height, or try parent height\n      return this.imgHeight || this.bvCarousel.imgHeight || null\n    }\n  },\n  render(h) {\n    let $img = this.normalizeSlot(SLOT_NAME_IMG)\n    if (!$img && (this.imgSrc || this.imgBlank)) {\n      const on = {}\n      // Touch support event handler\n      /* istanbul ignore if: difficult to test in JSDOM */\n      if (!this.bvCarousel.noTouch && HAS_TOUCH_SUPPORT) {\n        on.dragstart = event => stopEvent(event, { propagation: false })\n      }\n\n      $img = h(BImg, {\n        props: {\n          ...pluckProps(imgProps, this.$props, unprefixPropName.bind(null, 'img')),\n          width: this.computedWidth,\n          height: this.computedHeight,\n          fluidGrow: true,\n          block: true\n        },\n        on\n      })\n    }\n\n    const $contentChildren = [\n      // Caption\n      this.caption || this.captionHtml\n        ? h(this.captionTag, { domProps: htmlOrText(this.captionHtml, this.caption) })\n        : false,\n      // Text\n      this.text || this.textHtml\n        ? h(this.textTag, { domProps: htmlOrText(this.textHtml, this.text) })\n        : false,\n      // Children\n      this.normalizeSlot() || false\n    ]\n\n    let $content = h()\n    if ($contentChildren.some(identity)) {\n      $content = h(\n        this.contentTag,\n        {\n          staticClass: 'carousel-caption',\n          class: this.contentClasses\n        },\n        $contentChildren.map($child => $child || h())\n      )\n    }\n\n    return h(\n      'div',\n      {\n        staticClass: 'carousel-item',\n        style: { background: this.background || this.bvCarousel.background || null },\n        attrs: { id: this.safeId(), role: 'listitem' }\n      },\n      [$img, $content]\n    )\n  }\n})\n","import { BCarousel } from './carousel'\nimport { BCarouselSlide } from './carousel-slide'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst CarouselPlugin = /*#__PURE*/ pluginFactory({\n  components: {\n    BCarousel,\n    BCarouselSlide\n  }\n})\n\nexport { CarouselPlugin, BCarousel, BCarouselSlide }\n","export const CLASS_NAME_SHOW = 'show'\nexport const CLASS_NAME_FADE = 'fade'\n","// Generic collapse transion helper component\n//\n// Note:\n//   Applies the classes `collapse`, `show` and `collapsing`\n//   during the enter/leave transition phases only\n//   Although it appears that Vue may be leaving the classes\n//   in-place after the transition completes\nimport { Vue, mergeData } from '../../../vue'\nimport { NAME_COLLAPSE_HELPER } from '../../../constants/components'\nimport { getBCR, reflow, removeStyle, requestAF, setStyle } from '../../../utils/dom'\n\n// --- Helper methods ---\n\n// Transition event handler helpers\nconst onEnter = el => {\n  setStyle(el, 'height', 0)\n  // In a `requestAF()` for `appear` to work\n  requestAF(() => {\n    reflow(el)\n    setStyle(el, 'height', `${el.scrollHeight}px`)\n  })\n}\n\nconst onAfterEnter = el => {\n  removeStyle(el, 'height')\n}\n\nconst onLeave = el => {\n  setStyle(el, 'height', 'auto')\n  setStyle(el, 'display', 'block')\n  setStyle(el, 'height', `${getBCR(el).height}px`)\n  reflow(el)\n  setStyle(el, 'height', 0)\n}\n\nconst onAfterLeave = el => {\n  removeStyle(el, 'height')\n}\n\n// --- Constants ---\n\n// Default transition props\n// `appear` will use the enter classes\nconst TRANSITION_PROPS = {\n  css: true,\n  enterClass: '',\n  enterActiveClass: 'collapsing',\n  enterToClass: 'collapse show',\n  leaveClass: 'collapse show',\n  leaveActiveClass: 'collapsing',\n  leaveToClass: 'collapse'\n}\n\n// Default transition handlers\n// `appear` will use the enter handlers\nconst TRANSITION_HANDLERS = {\n  enter: onEnter,\n  afterEnter: onAfterEnter,\n  leave: onLeave,\n  afterLeave: onAfterLeave\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BVCollapse = /*#__PURE__*/ Vue.extend({\n  name: NAME_COLLAPSE_HELPER,\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: `<transition>` supports a single root element only\n      children\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_COLLAPSE } from '../../constants/components'\nimport { CLASS_NAME_SHOW } from '../../constants/classes'\nimport { IS_BROWSER } from '../../constants/env'\nimport {\n  EVENT_NAME_HIDDEN,\n  EVENT_NAME_HIDE,\n  EVENT_NAME_SHOW,\n  EVENT_NAME_SHOWN,\n  EVENT_OPTIONS_NO_CAPTURE\n} from '../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { addClass, hasClass, removeClass, closest, matches, getCS } from '../../utils/dom'\nimport { getRootActionEventName, getRootEventName, eventOnOff } from '../../utils/events'\nimport { makeModelMixin } from '../../utils/model'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BVCollapse } from './helpers/bv-collapse'\n\n// --- Constants ---\n\nconst ROOT_ACTION_EVENT_NAME_TOGGLE = getRootActionEventName(NAME_COLLAPSE, 'toggle')\nconst ROOT_ACTION_EVENT_NAME_REQUEST_STATE = getRootActionEventName(NAME_COLLAPSE, 'request-state')\n\nconst ROOT_EVENT_NAME_ACCORDION = getRootEventName(NAME_COLLAPSE, 'accordion')\nconst ROOT_EVENT_NAME_STATE = getRootEventName(NAME_COLLAPSE, 'state')\nconst ROOT_EVENT_NAME_SYNC_STATE = getRootEventName(NAME_COLLAPSE, 'sync-state')\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('visible', { type: PROP_TYPE_BOOLEAN, defaultValue: false })\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    // If `true` (and `visible` is `true` on mount), animate initially visible\n    accordion: makeProp(PROP_TYPE_STRING),\n    appear: makeProp(PROP_TYPE_BOOLEAN, false),\n    isNav: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'div')\n  }),\n  NAME_COLLAPSE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCollapse = /*#__PURE__*/ Vue.extend({\n  name: NAME_COLLAPSE,\n  mixins: [idMixin, modelMixin, normalizeSlotMixin, listenOnRootMixin],\n  props,\n  data() {\n    return {\n      show: this[MODEL_PROP_NAME],\n      transitioning: false\n    }\n  },\n  computed: {\n    classObject() {\n      const { transitioning } = this\n\n      return {\n        'navbar-collapse': this.isNav,\n        collapse: !transitioning,\n        show: this.show && !transitioning\n      }\n    },\n    slotScope() {\n      return {\n        visible: this.show,\n        close: () => {\n          this.show = false\n        }\n      }\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue) {\n      if (newValue !== this.show) {\n        this.show = newValue\n      }\n    },\n    show(newValue, oldValue) {\n      if (newValue !== oldValue) {\n        this.emitState()\n      }\n    }\n  },\n  created() {\n    this.show = this[MODEL_PROP_NAME]\n  },\n  mounted() {\n    this.show = this[MODEL_PROP_NAME]\n    // Listen for toggle events to open/close us\n    this.listenOnRoot(ROOT_ACTION_EVENT_NAME_TOGGLE, this.handleToggleEvt)\n    // Listen to other collapses for accordion events\n    this.listenOnRoot(ROOT_EVENT_NAME_ACCORDION, this.handleAccordionEvt)\n    if (this.isNav) {\n      // Set up handlers\n      this.setWindowEvents(true)\n      this.handleResize()\n    }\n    this.$nextTick(() => {\n      this.emitState()\n    })\n    // Listen for \"Sync state\" requests from `v-b-toggle`\n    this.listenOnRoot(ROOT_ACTION_EVENT_NAME_REQUEST_STATE, id => {\n      if (id === this.safeId()) {\n        this.$nextTick(this.emitSync)\n      }\n    })\n  },\n  updated() {\n    // Emit a private event every time this component updates to ensure\n    // the toggle button is in sync with the collapse's state\n    // It is emitted regardless if the visible state changes\n    this.emitSync()\n  },\n  /* istanbul ignore next */\n  deactivated() {\n    if (this.isNav) {\n      this.setWindowEvents(false)\n    }\n  },\n  /* istanbul ignore next */\n  activated() {\n    if (this.isNav) {\n      this.setWindowEvents(true)\n    }\n    this.emitSync()\n  },\n  beforeDestroy() {\n    // Trigger state emit if needed\n    this.show = false\n    if (this.isNav && IS_BROWSER) {\n      this.setWindowEvents(false)\n    }\n  },\n  methods: {\n    setWindowEvents(on) {\n      eventOnOff(on, window, 'resize', this.handleResize, EVENT_OPTIONS_NO_CAPTURE)\n      eventOnOff(on, window, 'orientationchange', this.handleResize, EVENT_OPTIONS_NO_CAPTURE)\n    },\n    toggle() {\n      this.show = !this.show\n    },\n    onEnter() {\n      this.transitioning = true\n      // This should be moved out so we can add cancellable events\n      this.$emit(EVENT_NAME_SHOW)\n    },\n    onAfterEnter() {\n      this.transitioning = false\n      this.$emit(EVENT_NAME_SHOWN)\n    },\n    onLeave() {\n      this.transitioning = true\n      // This should be moved out so we can add cancellable events\n      this.$emit(EVENT_NAME_HIDE)\n    },\n    onAfterLeave() {\n      this.transitioning = false\n      this.$emit(EVENT_NAME_HIDDEN)\n    },\n    emitState() {\n      const { show, accordion } = this\n      const id = this.safeId()\n\n      this.$emit(MODEL_EVENT_NAME, show)\n\n      // Let `v-b-toggle` know the state of this collapse\n      this.emitOnRoot(ROOT_EVENT_NAME_STATE, id, show)\n      if (accordion && show) {\n        // Tell the other collapses in this accordion to close\n        this.emitOnRoot(ROOT_EVENT_NAME_ACCORDION, id, accordion)\n      }\n    },\n    emitSync() {\n      // Emit a private event every time this component updates to ensure\n      // the toggle button is in sync with the collapse's state\n      // It is emitted regardless if the visible state changes\n      this.emitOnRoot(ROOT_EVENT_NAME_SYNC_STATE, this.safeId(), this.show)\n    },\n    checkDisplayBlock() {\n      // Check to see if the collapse has `display: block !important` set\n      // We can't set `display: none` directly on `this.$el`, as it would\n      // trigger a new transition to start (or cancel a current one)\n      const { $el } = this\n      const restore = hasClass($el, CLASS_NAME_SHOW)\n      removeClass($el, CLASS_NAME_SHOW)\n      const isBlock = getCS($el).display === 'block'\n      if (restore) {\n        addClass($el, CLASS_NAME_SHOW)\n      }\n      return isBlock\n    },\n    clickHandler(event) {\n      const { target: el } = event\n      // If we are in a nav/navbar, close the collapse when non-disabled link clicked\n      /* istanbul ignore next: can't test `getComputedStyle()` in JSDOM */\n      if (!this.isNav || !el || getCS(this.$el).display !== 'block') {\n        return\n      }\n      // Only close the collapse if it is not forced to be `display: block !important`\n      if (\n        (matches(el, '.nav-link,.dropdown-item') || closest('.nav-link,.dropdown-item', el)) &&\n        !this.checkDisplayBlock()\n      ) {\n        this.show = false\n      }\n    },\n    handleToggleEvt(id) {\n      if (id === this.safeId()) {\n        this.toggle()\n      }\n    },\n    handleAccordionEvt(openedId, openAccordion) {\n      const { accordion, show } = this\n      if (!accordion || accordion !== openAccordion) {\n        return\n      }\n      const isThis = openedId === this.safeId()\n      // Open this collapse if not shown or\n      // close this collapse if shown\n      if ((isThis && !show) || (!isThis && show)) {\n        this.toggle()\n      }\n    },\n    handleResize() {\n      // Handler for orientation/resize to set collapsed state in nav/navbar\n      this.show = getCS(this.$el).display === 'block'\n    }\n  },\n  render(h) {\n    const { appear } = this\n\n    const $content = h(\n      this.tag,\n      {\n        class: this.classObject,\n        directives: [{ name: 'show', value: this.show }],\n        attrs: { id: this.safeId() },\n        on: { click: this.clickHandler }\n      },\n      this.normalizeSlot(SLOT_NAME_DEFAULT, this.slotScope)\n    )\n\n    return h(\n      BVCollapse,\n      {\n        props: { appear },\n        on: {\n          enter: this.onEnter,\n          afterEnter: this.onAfterEnter,\n          leave: this.onLeave,\n          afterLeave: this.onAfterLeave\n        }\n      },\n      [$content]\n    )\n  }\n})\n","import { NAME_COLLAPSE } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport { EVENT_OPTIONS_PASSIVE } from '../../constants/events'\nimport { CODE_ENTER, CODE_SPACE } from '../../constants/key-codes'\nimport { RX_HASH, RX_HASH_ID, RX_SPACE_SPLIT } from '../../constants/regex'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport {\n  addClass,\n  getAttr,\n  hasAttr,\n  isDisabled,\n  isTag,\n  removeAttr,\n  removeClass,\n  removeStyle,\n  requestAF,\n  setAttr,\n  setStyle\n} from '../../utils/dom'\nimport { getRootActionEventName, getRootEventName, eventOn, eventOff } from '../../utils/events'\nimport { isString } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { keys } from '../../utils/object'\n\n// --- Constants ---\n\n// Classes to apply to trigger element\nconst CLASS_BV_TOGGLE_COLLAPSED = 'collapsed'\nconst CLASS_BV_TOGGLE_NOT_COLLAPSED = 'not-collapsed'\n\n// Property key for handler storage\nconst BV_BASE = '__BV_toggle'\n// Root event listener property (Function)\nconst BV_TOGGLE_ROOT_HANDLER = `${BV_BASE}_HANDLER__`\n// Trigger element click handler property (Function)\nconst BV_TOGGLE_CLICK_HANDLER = `${BV_BASE}_CLICK__`\n// Target visibility state property (Boolean)\nconst BV_TOGGLE_STATE = `${BV_BASE}_STATE__`\n// Target ID list property (Array)\nconst BV_TOGGLE_TARGETS = `${BV_BASE}_TARGETS__`\n\n// Commonly used strings\nconst STRING_FALSE = 'false'\nconst STRING_TRUE = 'true'\n\n// Commonly used attribute names\nconst ATTR_ARIA_CONTROLS = 'aria-controls'\nconst ATTR_ARIA_EXPANDED = 'aria-expanded'\nconst ATTR_ROLE = 'role'\nconst ATTR_TABINDEX = 'tabindex'\n\n// Commonly used style properties\nconst STYLE_OVERFLOW_ANCHOR = 'overflow-anchor'\n\n// Emitted control event for collapse (emitted to collapse)\nconst ROOT_ACTION_EVENT_NAME_TOGGLE = getRootActionEventName(NAME_COLLAPSE, 'toggle')\n\n// Listen to event for toggle state update (emitted by collapse)\nconst ROOT_EVENT_NAME_STATE = getRootEventName(NAME_COLLAPSE, 'state')\n\n// Private event emitted on `$root` to ensure the toggle state is always synced\n// Gets emitted even if the state of b-collapse has not changed\n// This event is NOT to be documented as people should not be using it\nconst ROOT_EVENT_NAME_SYNC_STATE = getRootEventName(NAME_COLLAPSE, 'sync-state')\n\n// Private event we send to collapse to request state update sync event\nconst ROOT_ACTION_EVENT_NAME_REQUEST_STATE = getRootActionEventName(NAME_COLLAPSE, 'request-state')\n\nconst KEYDOWN_KEY_CODES = [CODE_ENTER, CODE_SPACE]\n\n// --- Helper methods ---\n\nconst isNonStandardTag = el => !arrayIncludes(['button', 'a'], el.tagName.toLowerCase())\n\nconst getTargets = ({ modifiers, arg, value }, el) => {\n  // Any modifiers are considered target IDs\n  const targets = keys(modifiers || {})\n\n  // If value is a string, split out individual targets (if space delimited)\n  value = isString(value) ? value.split(RX_SPACE_SPLIT) : value\n\n  // Support target ID as link href (`href=\"#id\"`)\n  if (isTag(el.tagName, 'a')) {\n    const href = getAttr(el, 'href') || ''\n    if (RX_HASH_ID.test(href)) {\n      targets.push(href.replace(RX_HASH, ''))\n    }\n  }\n\n  // Add ID from `arg` (if provided), and support value\n  // as a single string ID or an array of string IDs\n  // If `value` is not an array or string, then it gets filtered out\n  concat(arg, value).forEach(t => isString(t) && targets.push(t))\n\n  // Return only unique and truthy target IDs\n  return targets.filter((t, index, arr) => t && arr.indexOf(t) === index)\n}\n\nconst removeClickListener = el => {\n  const handler = el[BV_TOGGLE_CLICK_HANDLER]\n  if (handler) {\n    eventOff(el, 'click', handler, EVENT_OPTIONS_PASSIVE)\n    eventOff(el, 'keydown', handler, EVENT_OPTIONS_PASSIVE)\n  }\n  el[BV_TOGGLE_CLICK_HANDLER] = null\n}\n\nconst addClickListener = (el, vnode) => {\n  removeClickListener(el)\n  if (vnode.context) {\n    const handler = event => {\n      if (\n        !(event.type === 'keydown' && !arrayIncludes(KEYDOWN_KEY_CODES, event.keyCode)) &&\n        !isDisabled(el)\n      ) {\n        const targets = el[BV_TOGGLE_TARGETS] || []\n        targets.forEach(target => {\n          vnode.context.$root.$emit(ROOT_ACTION_EVENT_NAME_TOGGLE, target)\n        })\n      }\n    }\n    el[BV_TOGGLE_CLICK_HANDLER] = handler\n    eventOn(el, 'click', handler, EVENT_OPTIONS_PASSIVE)\n    if (isNonStandardTag(el)) {\n      eventOn(el, 'keydown', handler, EVENT_OPTIONS_PASSIVE)\n    }\n  }\n}\n\nconst removeRootListeners = (el, vnode) => {\n  if (el[BV_TOGGLE_ROOT_HANDLER] && vnode.context) {\n    vnode.context.$root.$off(\n      [ROOT_EVENT_NAME_STATE, ROOT_EVENT_NAME_SYNC_STATE],\n      el[BV_TOGGLE_ROOT_HANDLER]\n    )\n  }\n  el[BV_TOGGLE_ROOT_HANDLER] = null\n}\n\nconst addRootListeners = (el, vnode) => {\n  removeRootListeners(el, vnode)\n  if (vnode.context) {\n    const handler = (id, state) => {\n      // `state` will be `true` if target is expanded\n      if (arrayIncludes(el[BV_TOGGLE_TARGETS] || [], id)) {\n        // Set/Clear 'collapsed' visibility class state\n        el[BV_TOGGLE_STATE] = state\n        // Set `aria-expanded` and class state on trigger element\n        setToggleState(el, state)\n      }\n    }\n    el[BV_TOGGLE_ROOT_HANDLER] = handler\n    // Listen for toggle state changes (public) and sync (private)\n    vnode.context.$root.$on([ROOT_EVENT_NAME_STATE, ROOT_EVENT_NAME_SYNC_STATE], handler)\n  }\n}\n\nconst setToggleState = (el, state) => {\n  // State refers to the visibility of the collapse/sidebar\n  if (state) {\n    removeClass(el, CLASS_BV_TOGGLE_COLLAPSED)\n    addClass(el, CLASS_BV_TOGGLE_NOT_COLLAPSED)\n    setAttr(el, ATTR_ARIA_EXPANDED, STRING_TRUE)\n  } else {\n    removeClass(el, CLASS_BV_TOGGLE_NOT_COLLAPSED)\n    addClass(el, CLASS_BV_TOGGLE_COLLAPSED)\n    setAttr(el, ATTR_ARIA_EXPANDED, STRING_FALSE)\n  }\n}\n\n// Reset and remove a property from the provided element\nconst resetProp = (el, prop) => {\n  el[prop] = null\n  delete el[prop]\n}\n\n// Handle directive updates\nconst handleUpdate = (el, binding, vnode) => {\n  /* istanbul ignore next: should never happen */\n  if (!IS_BROWSER || !vnode.context) {\n    return\n  }\n\n  // If element is not a button or link, we add `role=\"button\"`\n  // and `tabindex=\"0\"` for accessibility reasons\n  if (isNonStandardTag(el)) {\n    if (!hasAttr(el, ATTR_ROLE)) {\n      setAttr(el, ATTR_ROLE, 'button')\n    }\n    if (!hasAttr(el, ATTR_TABINDEX)) {\n      setAttr(el, ATTR_TABINDEX, '0')\n    }\n  }\n\n  // Ensure the collapse class and `aria-*` attributes persist\n  // after element is updated (either by parent re-rendering\n  // or changes to this element or its contents)\n  setToggleState(el, el[BV_TOGGLE_STATE])\n\n  // Parse list of target IDs\n  const targets = getTargets(binding, el)\n\n  // Ensure the `aria-controls` hasn't been overwritten\n  // or removed when vnode updates\n  // Also ensure to set `overflow-anchor` to `none` to prevent\n  // the browser's scroll anchoring behavior\n  /* istanbul ignore else */\n  if (targets.length > 0) {\n    setAttr(el, ATTR_ARIA_CONTROLS, targets.join(' '))\n    setStyle(el, STYLE_OVERFLOW_ANCHOR, 'none')\n  } else {\n    removeAttr(el, ATTR_ARIA_CONTROLS)\n    removeStyle(el, STYLE_OVERFLOW_ANCHOR)\n  }\n\n  // Add/Update our click listener(s)\n  // Wrap in a `requestAF()` to allow any previous\n  // click handling to occur first\n  requestAF(() => {\n    addClickListener(el, vnode)\n  })\n\n  // If targets array has changed, update\n  if (!looseEqual(targets, el[BV_TOGGLE_TARGETS])) {\n    // Update targets array to element storage\n    el[BV_TOGGLE_TARGETS] = targets\n    // Ensure `aria-controls` is up to date\n    // Request a state update from targets so that we can\n    // ensure expanded state is correct (in most cases)\n    targets.forEach(target => {\n      vnode.context.$root.$emit(ROOT_ACTION_EVENT_NAME_REQUEST_STATE, target)\n    })\n  }\n}\n\n/*\n * Export our directive\n */\nexport const VBToggle = {\n  bind(el, binding, vnode) {\n    // State is initially collapsed until we receive a state event\n    el[BV_TOGGLE_STATE] = false\n    // Assume no targets initially\n    el[BV_TOGGLE_TARGETS] = []\n    // Add our root listeners\n    addRootListeners(el, vnode)\n    // Initial update of trigger\n    handleUpdate(el, binding, vnode)\n  },\n  componentUpdated: handleUpdate,\n  updated: handleUpdate,\n  unbind(el, binding, vnode) {\n    removeClickListener(el)\n    // Remove our $root listener\n    removeRootListeners(el, vnode)\n    // Reset custom props\n    resetProp(el, BV_TOGGLE_ROOT_HANDLER)\n    resetProp(el, BV_TOGGLE_CLICK_HANDLER)\n    resetProp(el, BV_TOGGLE_STATE)\n    resetProp(el, BV_TOGGLE_TARGETS)\n    // Reset classes/attrs/styles\n    removeClass(el, CLASS_BV_TOGGLE_COLLAPSED)\n    removeClass(el, CLASS_BV_TOGGLE_NOT_COLLAPSED)\n    removeAttr(el, ATTR_ARIA_EXPANDED)\n    removeAttr(el, ATTR_ARIA_CONTROLS)\n    removeAttr(el, ATTR_ROLE)\n    removeStyle(el, STYLE_OVERFLOW_ANCHOR)\n  }\n}\n","import { VBToggle } from './toggle'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBTogglePlugin = /*#__PURE__*/ pluginFactory({\n  directives: { VBToggle }\n})\n\nexport { VBTogglePlugin, VBToggle }\n","import { BCollapse } from './collapse'\nimport { VBTogglePlugin } from '../../directives/toggle'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst CollapsePlugin = /*#__PURE__*/ pluginFactory({\n  components: { BCollapse },\n  plugins: { VBTogglePlugin }\n})\n\nexport { CollapsePlugin, BCollapse }\n","/**!\n * @fileOverview Kickass library to create and place poppers near their reference elements.\n * @version 1.16.1\n * @license\n * Copyright (c) 2016 Federico Zivolo and contributors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';\n\nvar timeoutDuration = function () {\n  var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];\n  for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {\n    if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {\n      return 1;\n    }\n  }\n  return 0;\n}();\n\nfunction microtaskDebounce(fn) {\n  var called = false;\n  return function () {\n    if (called) {\n      return;\n    }\n    called = true;\n    window.Promise.resolve().then(function () {\n      called = false;\n      fn();\n    });\n  };\n}\n\nfunction taskDebounce(fn) {\n  var scheduled = false;\n  return function () {\n    if (!scheduled) {\n      scheduled = true;\n      setTimeout(function () {\n        scheduled = false;\n        fn();\n      }, timeoutDuration);\n    }\n  };\n}\n\nvar supportsMicroTasks = isBrowser && window.Promise;\n\n/**\n* Create a debounced version of a method, that's asynchronously deferred\n* but called in the minimum time possible.\n*\n* @method\n* @memberof Popper.Utils\n* @argument {Function} fn\n* @returns {Function}\n*/\nvar debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce;\n\n/**\n * Check if the given variable is a function\n * @method\n * @memberof Popper.Utils\n * @argument {Any} functionToCheck - variable to check\n * @returns {Boolean} answer to: is a function?\n */\nfunction isFunction(functionToCheck) {\n  var getType = {};\n  return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';\n}\n\n/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nfunction getStyleComputedProperty(element, property) {\n  if (element.nodeType !== 1) {\n    return [];\n  }\n  // NOTE: 1 DOM access here\n  var window = element.ownerDocument.defaultView;\n  var css = window.getComputedStyle(element, null);\n  return property ? css[property] : css;\n}\n\n/**\n * Returns the parentNode or the host of the element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} parent\n */\nfunction getParentNode(element) {\n  if (element.nodeName === 'HTML') {\n    return element;\n  }\n  return element.parentNode || element.host;\n}\n\n/**\n * Returns the scrolling parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} scroll parent\n */\nfunction getScrollParent(element) {\n  // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n  if (!element) {\n    return document.body;\n  }\n\n  switch (element.nodeName) {\n    case 'HTML':\n    case 'BODY':\n      return element.ownerDocument.body;\n    case '#document':\n      return element.body;\n  }\n\n  // Firefox want us to check `-x` and `-y` variations as well\n\n  var _getStyleComputedProp = getStyleComputedProperty(element),\n      overflow = _getStyleComputedProp.overflow,\n      overflowX = _getStyleComputedProp.overflowX,\n      overflowY = _getStyleComputedProp.overflowY;\n\n  if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {\n    return element;\n  }\n\n  return getScrollParent(getParentNode(element));\n}\n\n/**\n * Returns the reference node of the reference object, or the reference object itself.\n * @method\n * @memberof Popper.Utils\n * @param {Element|Object} reference - the reference element (the popper will be relative to this)\n * @returns {Element} parent\n */\nfunction getReferenceNode(reference) {\n  return reference && reference.referenceNode ? reference.referenceNode : reference;\n}\n\nvar isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nvar isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nfunction isIE(version) {\n  if (version === 11) {\n    return isIE11;\n  }\n  if (version === 10) {\n    return isIE10;\n  }\n  return isIE11 || isIE10;\n}\n\n/**\n * Returns the offset parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} offset parent\n */\nfunction getOffsetParent(element) {\n  if (!element) {\n    return document.documentElement;\n  }\n\n  var noOffsetParent = isIE(10) ? document.body : null;\n\n  // NOTE: 1 DOM access here\n  var offsetParent = element.offsetParent || null;\n  // Skip hidden elements which don't have an offsetParent\n  while (offsetParent === noOffsetParent && element.nextElementSibling) {\n    offsetParent = (element = element.nextElementSibling).offsetParent;\n  }\n\n  var nodeName = offsetParent && offsetParent.nodeName;\n\n  if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n    return element ? element.ownerDocument.documentElement : document.documentElement;\n  }\n\n  // .offsetParent will return the closest TH, TD or TABLE in case\n  // no offsetParent is present, I hate this job...\n  if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {\n    return getOffsetParent(offsetParent);\n  }\n\n  return offsetParent;\n}\n\nfunction isOffsetContainer(element) {\n  var nodeName = element.nodeName;\n\n  if (nodeName === 'BODY') {\n    return false;\n  }\n  return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;\n}\n\n/**\n * Finds the root node (document, shadowDOM root) of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} node\n * @returns {Element} root node\n */\nfunction getRoot(node) {\n  if (node.parentNode !== null) {\n    return getRoot(node.parentNode);\n  }\n\n  return node;\n}\n\n/**\n * Finds the offset parent common to the two provided nodes\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element1\n * @argument {Element} element2\n * @returns {Element} common offset parent\n */\nfunction findCommonOffsetParent(element1, element2) {\n  // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n  if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n    return document.documentElement;\n  }\n\n  // Here we make sure to give as \"start\" the element that comes first in the DOM\n  var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;\n  var start = order ? element1 : element2;\n  var end = order ? element2 : element1;\n\n  // Get common ancestor container\n  var range = document.createRange();\n  range.setStart(start, 0);\n  range.setEnd(end, 0);\n  var commonAncestorContainer = range.commonAncestorContainer;\n\n  // Both nodes are inside #document\n\n  if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {\n    if (isOffsetContainer(commonAncestorContainer)) {\n      return commonAncestorContainer;\n    }\n\n    return getOffsetParent(commonAncestorContainer);\n  }\n\n  // one of the nodes is inside shadowDOM, find which one\n  var element1root = getRoot(element1);\n  if (element1root.host) {\n    return findCommonOffsetParent(element1root.host, element2);\n  } else {\n    return findCommonOffsetParent(element1, getRoot(element2).host);\n  }\n}\n\n/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} side `top` or `left`\n * @returns {number} amount of scrolled pixels\n */\nfunction getScroll(element) {\n  var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';\n\n  var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n  var nodeName = element.nodeName;\n\n  if (nodeName === 'BODY' || nodeName === 'HTML') {\n    var html = element.ownerDocument.documentElement;\n    var scrollingElement = element.ownerDocument.scrollingElement || html;\n    return scrollingElement[upperSide];\n  }\n\n  return element[upperSide];\n}\n\n/*\n * Sum or subtract the element scroll values (left and top) from a given rect object\n * @method\n * @memberof Popper.Utils\n * @param {Object} rect - Rect object you want to change\n * @param {HTMLElement} element - The element from the function reads the scroll values\n * @param {Boolean} subtract - set to true if you want to subtract the scroll values\n * @return {Object} rect - The modifier rect object\n */\nfunction includeScroll(rect, element) {\n  var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n  var scrollTop = getScroll(element, 'top');\n  var scrollLeft = getScroll(element, 'left');\n  var modifier = subtract ? -1 : 1;\n  rect.top += scrollTop * modifier;\n  rect.bottom += scrollTop * modifier;\n  rect.left += scrollLeft * modifier;\n  rect.right += scrollLeft * modifier;\n  return rect;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nfunction getBordersSize(styles, axis) {\n  var sideA = axis === 'x' ? 'Left' : 'Top';\n  var sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n\n  return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']);\n}\n\nfunction getSize(axis, body, html, computedStyle) {\n  return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0);\n}\n\nfunction getWindowSizes(document) {\n  var body = document.body;\n  var html = document.documentElement;\n  var computedStyle = isIE(10) && getComputedStyle(html);\n\n  return {\n    height: getSize('Height', body, html, computedStyle),\n    width: getSize('Width', body, html, computedStyle)\n  };\n}\n\nvar classCallCheck = function (instance, Constructor) {\n  if (!(instance instanceof Constructor)) {\n    throw new TypeError(\"Cannot call a class as a function\");\n  }\n};\n\nvar createClass = function () {\n  function defineProperties(target, props) {\n    for (var i = 0; i < props.length; i++) {\n      var descriptor = props[i];\n      descriptor.enumerable = descriptor.enumerable || false;\n      descriptor.configurable = true;\n      if (\"value\" in descriptor) descriptor.writable = true;\n      Object.defineProperty(target, descriptor.key, descriptor);\n    }\n  }\n\n  return function (Constructor, protoProps, staticProps) {\n    if (protoProps) defineProperties(Constructor.prototype, protoProps);\n    if (staticProps) defineProperties(Constructor, staticProps);\n    return Constructor;\n  };\n}();\n\n\n\n\n\nvar defineProperty = function (obj, key, value) {\n  if (key in obj) {\n    Object.defineProperty(obj, key, {\n      value: value,\n      enumerable: true,\n      configurable: true,\n      writable: true\n    });\n  } else {\n    obj[key] = value;\n  }\n\n  return obj;\n};\n\nvar _extends = Object.assign || function (target) {\n  for (var i = 1; i < arguments.length; i++) {\n    var source = arguments[i];\n\n    for (var key in source) {\n      if (Object.prototype.hasOwnProperty.call(source, key)) {\n        target[key] = source[key];\n      }\n    }\n  }\n\n  return target;\n};\n\n/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nfunction getClientRect(offsets) {\n  return _extends({}, offsets, {\n    right: offsets.left + offsets.width,\n    bottom: offsets.top + offsets.height\n  });\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nfunction getBoundingClientRect(element) {\n  var rect = {};\n\n  // IE10 10 FIX: Please, don't ask, the element isn't\n  // considered in DOM in some circumstances...\n  // This isn't reproducible in IE10 compatibility mode of IE11\n  try {\n    if (isIE(10)) {\n      rect = element.getBoundingClientRect();\n      var scrollTop = getScroll(element, 'top');\n      var scrollLeft = getScroll(element, 'left');\n      rect.top += scrollTop;\n      rect.left += scrollLeft;\n      rect.bottom += scrollTop;\n      rect.right += scrollLeft;\n    } else {\n      rect = element.getBoundingClientRect();\n    }\n  } catch (e) {}\n\n  var result = {\n    left: rect.left,\n    top: rect.top,\n    width: rect.right - rect.left,\n    height: rect.bottom - rect.top\n  };\n\n  // subtract scrollbar size from sizes\n  var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};\n  var width = sizes.width || element.clientWidth || result.width;\n  var height = sizes.height || element.clientHeight || result.height;\n\n  var horizScrollbar = element.offsetWidth - width;\n  var vertScrollbar = element.offsetHeight - height;\n\n  // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n  // we make this check conditional for performance reasons\n  if (horizScrollbar || vertScrollbar) {\n    var styles = getStyleComputedProperty(element);\n    horizScrollbar -= getBordersSize(styles, 'x');\n    vertScrollbar -= getBordersSize(styles, 'y');\n\n    result.width -= horizScrollbar;\n    result.height -= vertScrollbar;\n  }\n\n  return getClientRect(result);\n}\n\nfunction getOffsetRectRelativeToArbitraryNode(children, parent) {\n  var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n  var isIE10 = isIE(10);\n  var isHTML = parent.nodeName === 'HTML';\n  var childrenRect = getBoundingClientRect(children);\n  var parentRect = getBoundingClientRect(parent);\n  var scrollParent = getScrollParent(children);\n\n  var styles = getStyleComputedProperty(parent);\n  var borderTopWidth = parseFloat(styles.borderTopWidth);\n  var borderLeftWidth = parseFloat(styles.borderLeftWidth);\n\n  // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n  if (fixedPosition && isHTML) {\n    parentRect.top = Math.max(parentRect.top, 0);\n    parentRect.left = Math.max(parentRect.left, 0);\n  }\n  var offsets = getClientRect({\n    top: childrenRect.top - parentRect.top - borderTopWidth,\n    left: childrenRect.left - parentRect.left - borderLeftWidth,\n    width: childrenRect.width,\n    height: childrenRect.height\n  });\n  offsets.marginTop = 0;\n  offsets.marginLeft = 0;\n\n  // Subtract margins of documentElement in case it's being used as parent\n  // we do this only on HTML because it's the only element that behaves\n  // differently when margins are applied to it. The margins are included in\n  // the box of the documentElement, in the other cases not.\n  if (!isIE10 && isHTML) {\n    var marginTop = parseFloat(styles.marginTop);\n    var marginLeft = parseFloat(styles.marginLeft);\n\n    offsets.top -= borderTopWidth - marginTop;\n    offsets.bottom -= borderTopWidth - marginTop;\n    offsets.left -= borderLeftWidth - marginLeft;\n    offsets.right -= borderLeftWidth - marginLeft;\n\n    // Attach marginTop and marginLeft because in some circumstances we may need them\n    offsets.marginTop = marginTop;\n    offsets.marginLeft = marginLeft;\n  }\n\n  if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {\n    offsets = includeScroll(offsets, parent);\n  }\n\n  return offsets;\n}\n\nfunction getViewportOffsetRectRelativeToArtbitraryNode(element) {\n  var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n  var html = element.ownerDocument.documentElement;\n  var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n  var width = Math.max(html.clientWidth, window.innerWidth || 0);\n  var height = Math.max(html.clientHeight, window.innerHeight || 0);\n\n  var scrollTop = !excludeScroll ? getScroll(html) : 0;\n  var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n\n  var offset = {\n    top: scrollTop - relativeOffset.top + relativeOffset.marginTop,\n    left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,\n    width: width,\n    height: height\n  };\n\n  return getClientRect(offset);\n}\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {Element} customContainer\n * @returns {Boolean} answer to \"isFixed?\"\n */\nfunction isFixed(element) {\n  var nodeName = element.nodeName;\n  if (nodeName === 'BODY' || nodeName === 'HTML') {\n    return false;\n  }\n  if (getStyleComputedProperty(element, 'position') === 'fixed') {\n    return true;\n  }\n  var parentNode = getParentNode(element);\n  if (!parentNode) {\n    return false;\n  }\n  return isFixed(parentNode);\n}\n\n/**\n * Finds the first parent of an element that has a transformed property defined\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} first transformed parent or documentElement\n */\n\nfunction getFixedPositionOffsetParent(element) {\n  // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n  if (!element || !element.parentElement || isIE()) {\n    return document.documentElement;\n  }\n  var el = element.parentElement;\n  while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n    el = el.parentElement;\n  }\n  return el || document.documentElement;\n}\n\n/**\n * Computed the boundaries limits and return them\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} popper\n * @param {HTMLElement} reference\n * @param {number} padding\n * @param {HTMLElement} boundariesElement - Element used to define the boundaries\n * @param {Boolean} fixedPosition - Is in fixed position mode\n * @returns {Object} Coordinates of the boundaries\n */\nfunction getBoundaries(popper, reference, padding, boundariesElement) {\n  var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n  // NOTE: 1 DOM access here\n\n  var boundaries = { top: 0, left: 0 };\n  var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n\n  // Handle viewport case\n  if (boundariesElement === 'viewport') {\n    boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n  } else {\n    // Handle other cases based on DOM element used as boundaries\n    var boundariesNode = void 0;\n    if (boundariesElement === 'scrollParent') {\n      boundariesNode = getScrollParent(getParentNode(reference));\n      if (boundariesNode.nodeName === 'BODY') {\n        boundariesNode = popper.ownerDocument.documentElement;\n      }\n    } else if (boundariesElement === 'window') {\n      boundariesNode = popper.ownerDocument.documentElement;\n    } else {\n      boundariesNode = boundariesElement;\n    }\n\n    var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);\n\n    // In case of HTML, we need a different computation\n    if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n      var _getWindowSizes = getWindowSizes(popper.ownerDocument),\n          height = _getWindowSizes.height,\n          width = _getWindowSizes.width;\n\n      boundaries.top += offsets.top - offsets.marginTop;\n      boundaries.bottom = height + offsets.top;\n      boundaries.left += offsets.left - offsets.marginLeft;\n      boundaries.right = width + offsets.left;\n    } else {\n      // for all the other DOM elements, this one is good\n      boundaries = offsets;\n    }\n  }\n\n  // Add paddings\n  padding = padding || 0;\n  var isPaddingNumber = typeof padding === 'number';\n  boundaries.left += isPaddingNumber ? padding : padding.left || 0;\n  boundaries.top += isPaddingNumber ? padding : padding.top || 0;\n  boundaries.right -= isPaddingNumber ? padding : padding.right || 0;\n  boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0;\n\n  return boundaries;\n}\n\nfunction getArea(_ref) {\n  var width = _ref.width,\n      height = _ref.height;\n\n  return width * height;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n * @method\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {\n  var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n\n  if (placement.indexOf('auto') === -1) {\n    return placement;\n  }\n\n  var boundaries = getBoundaries(popper, reference, padding, boundariesElement);\n\n  var rects = {\n    top: {\n      width: boundaries.width,\n      height: refRect.top - boundaries.top\n    },\n    right: {\n      width: boundaries.right - refRect.right,\n      height: boundaries.height\n    },\n    bottom: {\n      width: boundaries.width,\n      height: boundaries.bottom - refRect.bottom\n    },\n    left: {\n      width: refRect.left - boundaries.left,\n      height: boundaries.height\n    }\n  };\n\n  var sortedAreas = Object.keys(rects).map(function (key) {\n    return _extends({\n      key: key\n    }, rects[key], {\n      area: getArea(rects[key])\n    });\n  }).sort(function (a, b) {\n    return b.area - a.area;\n  });\n\n  var filteredAreas = sortedAreas.filter(function (_ref2) {\n    var width = _ref2.width,\n        height = _ref2.height;\n    return width >= popper.clientWidth && height >= popper.clientHeight;\n  });\n\n  var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;\n\n  var variation = placement.split('-')[1];\n\n  return computedPlacement + (variation ? '-' + variation : '');\n}\n\n/**\n * Get offsets to the reference element\n * @method\n * @memberof Popper.Utils\n * @param {Object} state\n * @param {Element} popper - the popper element\n * @param {Element} reference - the reference element (the popper will be relative to this)\n * @param {Element} fixedPosition - is in fixed position mode\n * @returns {Object} An object containing the offsets which will be applied to the popper\n */\nfunction getReferenceOffsets(state, popper, reference) {\n  var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n  var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n  return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);\n}\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nfunction getOuterSizes(element) {\n  var window = element.ownerDocument.defaultView;\n  var styles = window.getComputedStyle(element);\n  var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n  var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n  var result = {\n    width: element.offsetWidth + y,\n    height: element.offsetHeight + x\n  };\n  return result;\n}\n\n/**\n * Get the opposite placement of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement\n * @returns {String} flipped placement\n */\nfunction getOppositePlacement(placement) {\n  var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n  return placement.replace(/left|right|bottom|top/g, function (matched) {\n    return hash[matched];\n  });\n}\n\n/**\n * Get offsets to the popper\n * @method\n * @memberof Popper.Utils\n * @param {Object} position - CSS position the Popper will get applied\n * @param {HTMLElement} popper - the popper element\n * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)\n * @param {String} placement - one of the valid placement options\n * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper\n */\nfunction getPopperOffsets(popper, referenceOffsets, placement) {\n  placement = placement.split('-')[0];\n\n  // Get popper node sizes\n  var popperRect = getOuterSizes(popper);\n\n  // Add position, width and height to our offsets object\n  var popperOffsets = {\n    width: popperRect.width,\n    height: popperRect.height\n  };\n\n  // depending by the popper placement we have to compute its offsets slightly differently\n  var isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n  var mainSide = isHoriz ? 'top' : 'left';\n  var secondarySide = isHoriz ? 'left' : 'top';\n  var measurement = isHoriz ? 'height' : 'width';\n  var secondaryMeasurement = !isHoriz ? 'height' : 'width';\n\n  popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;\n  if (placement === secondarySide) {\n    popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];\n  } else {\n    popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];\n  }\n\n  return popperOffsets;\n}\n\n/**\n * Mimics the `find` method of Array\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction find(arr, check) {\n  // use native find if supported\n  if (Array.prototype.find) {\n    return arr.find(check);\n  }\n\n  // use `filter` to obtain the same behavior of `find`\n  return arr.filter(check)[0];\n}\n\n/**\n * Return the index of the matching object\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction findIndex(arr, prop, value) {\n  // use native findIndex if supported\n  if (Array.prototype.findIndex) {\n    return arr.findIndex(function (cur) {\n      return cur[prop] === value;\n    });\n  }\n\n  // use `find` + `indexOf` if `findIndex` isn't supported\n  var match = find(arr, function (obj) {\n    return obj[prop] === value;\n  });\n  return arr.indexOf(match);\n}\n\n/**\n * Loop trough the list of modifiers and run them in order,\n * each of them will then edit the data object.\n * @method\n * @memberof Popper.Utils\n * @param {dataObject} data\n * @param {Array} modifiers\n * @param {String} ends - Optional modifier name used as stopper\n * @returns {dataObject}\n */\nfunction runModifiers(modifiers, data, ends) {\n  var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));\n\n  modifiersToRun.forEach(function (modifier) {\n    if (modifier['function']) {\n      // eslint-disable-line dot-notation\n      console.warn('`modifier.function` is deprecated, use `modifier.fn`!');\n    }\n    var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation\n    if (modifier.enabled && isFunction(fn)) {\n      // Add properties to offsets to make them a complete clientRect object\n      // we do this before each modifier to make sure the previous one doesn't\n      // mess with these values\n      data.offsets.popper = getClientRect(data.offsets.popper);\n      data.offsets.reference = getClientRect(data.offsets.reference);\n\n      data = fn(data, modifier);\n    }\n  });\n\n  return data;\n}\n\n/**\n * Updates the position of the popper, computing the new offsets and applying\n * the new style.<br />\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 <html> 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.<br />\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.<br />\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.<br />\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.<br />\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.<br />\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.<br />\n   * It will read the variation of the `placement` property.<br />\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.<br />\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.<br />\n   * The latter is a deprecated method because it leads to confusion and will be\n   * removed in v2.<br />\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.<br />\n   * We can say it has \"escaped the boundaries\" — or just \"escaped\".<br />\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.<br />\n * These can be overridden using the `options` argument of Popper.js.<br />\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.<br />\n   * By default, it is set to no-op.<br />\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.<br />\n   * By default, it is set to no-op.<br />\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.<br />\n * You can use this method to position a popper relatively to a set of coordinates\n * in case you don't have a DOM node to use as reference.\n *\n * ```\n * new Popper(referenceObject, popperNode);\n * ```\n *\n * NB: This feature isn't supported in Internet Explorer 10.\n * @name referenceObject\n * @property {Function} data.getBoundingClientRect\n * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method.\n * @property {number} data.clientWidth\n * An ES6 getter that will return the width of the virtual reference element.\n * @property {number} data.clientHeight\n * An ES6 getter that will return the height of the virtual reference element.\n */\n\n\nPopper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;\nPopper.placements = placements;\nPopper.Defaults = Defaults;\n\nexport default Popper;\n//# sourceMappingURL=popper.js.map\n","export const PLACEMENT_TOP_START = 'top-start'\nexport const PLACEMENT_TOP_END = 'top-end'\nexport const PLACEMENT_BOTTOM_START = 'bottom-start'\nexport const PLACEMENT_BOTTOM_END = 'bottom-end'\nexport const PLACEMENT_RIGHT_START = 'right-start'\nexport const PLACEMENT_RIGHT_END = 'right-end'\nexport const PLACEMENT_LEFT_START = 'left-start'\nexport const PLACEMENT_LEFT_END = 'left-end'\n","import { assign, defineProperty, defineProperties, readonlyDescriptor } from './object'\n\nexport class BvEvent {\n  constructor(type, eventInit = {}) {\n    // Start by emulating native Event constructor\n    if (!type) {\n      /* istanbul ignore next */\n      throw new TypeError(\n        `Failed to construct '${this.constructor.name}'. 1 argument required, ${\n          arguments.length\n        } given.`\n      )\n    }\n\n    // Merge defaults first, the eventInit, and the type last\n    // so it can't be overwritten\n    assign(this, BvEvent.Defaults, this.constructor.Defaults, eventInit, { type })\n\n    // Freeze some props as readonly, but leave them enumerable\n    defineProperties(this, {\n      type: readonlyDescriptor(),\n      cancelable: readonlyDescriptor(),\n      nativeEvent: readonlyDescriptor(),\n      target: readonlyDescriptor(),\n      relatedTarget: readonlyDescriptor(),\n      vueTarget: readonlyDescriptor(),\n      componentId: readonlyDescriptor()\n    })\n\n    // Create a private variable using closure scoping\n    let defaultPrevented = false\n    // Recreate preventDefault method. One way setter\n    this.preventDefault = function preventDefault() {\n      if (this.cancelable) {\n        defaultPrevented = true\n      }\n    }\n\n    // Create `defaultPrevented` publicly accessible prop that\n    // can only be altered by the preventDefault method\n    defineProperty(this, 'defaultPrevented', {\n      enumerable: true,\n      get() {\n        return defaultPrevented\n      }\n    })\n  }\n\n  static get Defaults() {\n    return {\n      type: '',\n      cancelable: true,\n      nativeEvent: null,\n      target: null,\n      relatedTarget: null,\n      vueTarget: null,\n      componentId: null\n    }\n  }\n}\n","import { Vue } from '../vue'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events'\nimport { contains } from '../utils/dom'\nimport { eventOn, eventOff } from '../utils/events'\n\n// @vue/component\nexport const clickOutMixin = Vue.extend({\n  data() {\n    return {\n      listenForClickOut: false\n    }\n  },\n  watch: {\n    listenForClickOut(newValue, oldValue) {\n      if (newValue !== oldValue) {\n        eventOff(\n          this.clickOutElement,\n          this.clickOutEventName,\n          this._clickOutHandler,\n          EVENT_OPTIONS_NO_CAPTURE\n        )\n        if (newValue) {\n          eventOn(\n            this.clickOutElement,\n            this.clickOutEventName,\n            this._clickOutHandler,\n            EVENT_OPTIONS_NO_CAPTURE\n          )\n        }\n      }\n    }\n  },\n  beforeCreate() {\n    // Declare non-reactive properties\n    this.clickOutElement = null\n    this.clickOutEventName = null\n  },\n  mounted() {\n    if (!this.clickOutElement) {\n      this.clickOutElement = document\n    }\n    if (!this.clickOutEventName) {\n      this.clickOutEventName = 'click'\n    }\n    if (this.listenForClickOut) {\n      eventOn(\n        this.clickOutElement,\n        this.clickOutEventName,\n        this._clickOutHandler,\n        EVENT_OPTIONS_NO_CAPTURE\n      )\n    }\n  },\n  beforeDestroy() {\n    eventOff(\n      this.clickOutElement,\n      this.clickOutEventName,\n      this._clickOutHandler,\n      EVENT_OPTIONS_NO_CAPTURE\n    )\n  },\n  methods: {\n    isClickOut(event) {\n      return !contains(this.$el, event.target)\n    },\n    _clickOutHandler(event) {\n      if (this.clickOutHandler && this.isClickOut(event)) {\n        this.clickOutHandler(event)\n      }\n    }\n  }\n})\n","import { Vue } from '../vue'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events'\nimport { eventOn, eventOff } from '../utils/events'\n\n// @vue/component\nexport const focusInMixin = Vue.extend({\n  data() {\n    return {\n      listenForFocusIn: false\n    }\n  },\n  watch: {\n    listenForFocusIn(newValue, oldValue) {\n      if (newValue !== oldValue) {\n        eventOff(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n        if (newValue) {\n          eventOn(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n        }\n      }\n    }\n  },\n  beforeCreate() {\n    // Declare non-reactive properties\n    this.focusInElement = null\n  },\n  mounted() {\n    if (!this.focusInElement) {\n      this.focusInElement = document\n    }\n    if (this.listenForFocusIn) {\n      eventOn(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n    }\n  },\n  beforeDestroy() {\n    eventOff(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n  },\n  methods: {\n    _focusInHandler(event) {\n      if (this.focusInHandler) {\n        this.focusInHandler(event)\n      }\n    }\n  }\n})\n","import Popper from 'popper.js'\nimport { Vue } from '../vue'\nimport { NAME_DROPDOWN } from '../constants/components'\nimport {\n  EVENT_NAME_CLICK,\n  EVENT_NAME_HIDDEN,\n  EVENT_NAME_HIDE,\n  EVENT_NAME_SHOW,\n  EVENT_NAME_SHOWN,\n  EVENT_NAME_TOGGLE\n} from '../constants/events'\nimport { CODE_DOWN, CODE_ENTER, CODE_ESC, CODE_SPACE, CODE_UP } from '../constants/key-codes'\nimport {\n  PLACEMENT_TOP_START,\n  PLACEMENT_TOP_END,\n  PLACEMENT_BOTTOM_START,\n  PLACEMENT_BOTTOM_END,\n  PLACEMENT_RIGHT_START,\n  PLACEMENT_LEFT_START\n} from '../constants/popper'\nimport {\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_OBJECT,\n  PROP_TYPE_STRING\n} from '../constants/props'\nimport { HTMLElement } from '../constants/safe-types'\nimport { BvEvent } from '../utils/bv-event.class'\nimport { attemptFocus, closest, contains, isVisible, requestAF, selectAll } from '../utils/dom'\nimport { getRootEventName, stopEvent } from '../utils/events'\nimport { isNull } from '../utils/inspect'\nimport { mergeDeep, sortKeys } from '../utils/object'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\nimport { warn } from '../utils/warn'\nimport { clickOutMixin } from './click-out'\nimport { focusInMixin } from './focus-in'\nimport { idMixin, props as idProps } from './id'\nimport { listenOnRootMixin } from './listen-on-root'\n\n// --- Constants ---\n\nconst ROOT_EVENT_NAME_SHOWN = getRootEventName(NAME_DROPDOWN, EVENT_NAME_SHOWN)\nconst ROOT_EVENT_NAME_HIDDEN = getRootEventName(NAME_DROPDOWN, EVENT_NAME_HIDDEN)\n\n// CSS selectors\nconst SELECTOR_FORM_CHILD = '.dropdown form'\nconst SELECTOR_ITEM = ['.dropdown-item', '.b-dropdown-form']\n  .map(selector => `${selector}:not(.disabled):not([disabled])`)\n  .join(', ')\n\n// --- Helper methods ---\n\n// Return an array of visible items\nconst filterVisibles = els => (els || []).filter(isVisible)\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    // String: `scrollParent`, `window` or `viewport`\n    // HTMLElement: HTML Element reference\n    boundary: makeProp([HTMLElement, PROP_TYPE_STRING], 'scrollParent'),\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Place left if possible\n    dropleft: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Place right if possible\n    dropright: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Place on top if possible\n    dropup: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Disable auto-flipping of menu from bottom <=> top\n    noFlip: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Number of pixels or a CSS unit value to offset menu\n    // (i.e. `1px`, `1rem`, etc.)\n    offset: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n    popperOpts: makeProp(PROP_TYPE_OBJECT, {}),\n    // Right align menu (default is left align)\n    right: makeProp(PROP_TYPE_BOOLEAN, false)\n  }),\n  NAME_DROPDOWN\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const dropdownMixin = Vue.extend({\n  mixins: [idMixin, listenOnRootMixin, clickOutMixin, focusInMixin],\n  provide() {\n    return { bvDropdown: this }\n  },\n  inject: {\n    bvNavbar: { default: null }\n  },\n  props,\n  data() {\n    return {\n      visible: false,\n      visibleChangePrevented: false\n    }\n  },\n  computed: {\n    inNavbar() {\n      return !isNull(this.bvNavbar)\n    },\n    toggler() {\n      const { toggle } = this.$refs\n      return toggle ? toggle.$el || toggle : null\n    },\n    directionClass() {\n      if (this.dropup) {\n        return 'dropup'\n      } else if (this.dropright) {\n        return 'dropright'\n      } else if (this.dropleft) {\n        return 'dropleft'\n      }\n      return ''\n    },\n    boundaryClass() {\n      // Position `static` is needed to allow menu to \"breakout\" of the `scrollParent`\n      // boundaries when boundary is anything other than `scrollParent`\n      // See: https://github.com/twbs/bootstrap/issues/24251#issuecomment-341413786\n      return this.boundary !== 'scrollParent' && !this.inNavbar ? 'position-static' : ''\n    }\n  },\n  watch: {\n    visible(newValue, oldValue) {\n      if (this.visibleChangePrevented) {\n        this.visibleChangePrevented = false\n        return\n      }\n\n      if (newValue !== oldValue) {\n        const eventName = newValue ? EVENT_NAME_SHOW : EVENT_NAME_HIDE\n        const bvEvent = new BvEvent(eventName, {\n          cancelable: true,\n          vueTarget: this,\n          target: this.$refs.menu,\n          relatedTarget: null,\n          componentId: this.safeId ? this.safeId() : this.id || null\n        })\n        this.emitEvent(bvEvent)\n        if (bvEvent.defaultPrevented) {\n          // Reset value and exit if canceled\n          this.visibleChangePrevented = true\n          this.visible = oldValue\n          // Just in case a child element triggered `this.hide(true)`\n          this.$off(EVENT_NAME_HIDDEN, this.focusToggler)\n          return\n        }\n        if (newValue) {\n          this.showMenu()\n        } else {\n          this.hideMenu()\n        }\n      }\n    },\n    disabled(newValue, oldValue) {\n      if (newValue !== oldValue && newValue && this.visible) {\n        // Hide dropdown if disabled changes to true\n        this.visible = false\n      }\n    }\n  },\n  created() {\n    // Create private non-reactive props\n    this.$_popper = null\n    this.$_hideTimeout = null\n  },\n  /* istanbul ignore next */\n  deactivated() {\n    // In case we are inside a `<keep-alive>`\n    this.visible = false\n    this.whileOpenListen(false)\n    this.destroyPopper()\n  },\n  beforeDestroy() {\n    this.visible = false\n    this.whileOpenListen(false)\n    this.destroyPopper()\n    this.clearHideTimeout()\n  },\n  methods: {\n    // Event emitter\n    emitEvent(bvEvent) {\n      const { type } = bvEvent\n      this.$emit(type, bvEvent)\n      this.emitOnRoot(getRootEventName(NAME_DROPDOWN, type))\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 `<b-navbar>`\n      if (!this.inNavbar) {\n        if (typeof Popper === 'undefined') {\n          /* istanbul ignore next */\n          warn('Popper.js not found. Falling back to CSS positioning', NAME_DROPDOWN)\n        } else {\n          // For dropup with alignment we use the parent element as popper container\n          let el = (this.dropup && this.right) || this.split ? this.$el : this.$refs.toggle\n          // Make sure we have a reference to an element, not a component!\n          el = el.$el || el\n          // Instantiate Popper.js\n          this.createPopper(el)\n        }\n      }\n\n      // Ensure other menus are closed\n      this.emitOnRoot(ROOT_EVENT_NAME_SHOWN, this)\n\n      // Enable listeners\n      this.whileOpenListen(true)\n\n      // Wrap in `$nextTick()` to ensure menu is fully rendered/shown\n      this.$nextTick(() => {\n        // Focus on the menu container on show\n        this.focusMenu()\n        // Emit the shown event\n        this.$emit(EVENT_NAME_SHOWN)\n      })\n    },\n    hideMenu() {\n      this.whileOpenListen(false)\n      this.emitOnRoot(ROOT_EVENT_NAME_HIDDEN, this)\n      this.$emit(EVENT_NAME_HIDDEN)\n      this.destroyPopper()\n    },\n    createPopper(element) {\n      this.destroyPopper()\n      this.$_popper = new Popper(element, this.$refs.menu, this.getPopperConfig())\n    },\n    // Ensure popper event listeners are removed cleanly\n    destroyPopper() {\n      this.$_popper && this.$_popper.destroy()\n      this.$_popper = null\n    },\n    // Instructs popper to re-computes the dropdown position\n    // useful if the content changes size\n    updatePopper() {\n      try {\n        this.$_popper.scheduleUpdate()\n      } catch {}\n    },\n    clearHideTimeout() {\n      clearTimeout(this.$_hideTimeout)\n      this.$_hideTimeout = null\n    },\n    getPopperConfig() {\n      let placement = PLACEMENT_BOTTOM_START\n      if (this.dropup) {\n        placement = this.right ? PLACEMENT_TOP_END : PLACEMENT_TOP_START\n      } else if (this.dropright) {\n        placement = PLACEMENT_RIGHT_START\n      } else if (this.dropleft) {\n        placement = PLACEMENT_LEFT_START\n      } else if (this.right) {\n        placement = PLACEMENT_BOTTOM_END\n      }\n      const popperConfig = {\n        placement,\n        modifiers: {\n          offset: { offset: this.offset || 0 },\n          flip: { enabled: !this.noFlip }\n        }\n      }\n      const boundariesElement = this.boundary\n      if (boundariesElement) {\n        popperConfig.modifiers.preventOverflow = { boundariesElement }\n      }\n      return mergeDeep(popperConfig, this.popperOpts || {})\n    },\n    // Turn listeners on/off while open\n    whileOpenListen(isOpen) {\n      // Hide the dropdown when clicked outside\n      this.listenForClickOut = isOpen\n      // Hide the dropdown when it loses focus\n      this.listenForFocusIn = isOpen\n      // Hide the dropdown when another dropdown is opened\n      const method = isOpen ? '$on' : '$off'\n      this.$root[method](ROOT_EVENT_NAME_SHOWN, this.rootCloseListener)\n    },\n    rootCloseListener(vm) {\n      if (vm !== this) {\n        this.visible = false\n      }\n    },\n    // Public method to show dropdown\n    show() {\n      if (this.disabled) {\n        return\n      }\n      // Wrap in a `requestAF()` to allow any previous\n      // click handling to occur first\n      requestAF(() => {\n        this.visible = true\n      })\n    },\n    // Public method to hide dropdown\n    hide(refocus = false) {\n      /* istanbul ignore next */\n      if (this.disabled) {\n        return\n      }\n      this.visible = false\n      if (refocus) {\n        // Child element is closing the dropdown on click\n        this.$once(EVENT_NAME_HIDDEN, this.focusToggler)\n      }\n    },\n    // Called only by a button that toggles the menu\n    toggle(event) {\n      event = event || {}\n      // Early exit when not a click event or ENTER, SPACE or DOWN were pressed\n      const { type, keyCode } = event\n      if (\n        type !== 'click' &&\n        !(type === 'keydown' && [CODE_ENTER, CODE_SPACE, CODE_DOWN].indexOf(keyCode) !== -1)\n      ) {\n        /* istanbul ignore next */\n        return\n      }\n      /* istanbul ignore next */\n      if (this.disabled) {\n        this.visible = false\n        return\n      }\n      this.$emit(EVENT_NAME_TOGGLE, event)\n      stopEvent(event)\n      // Toggle visibility\n      if (this.visible) {\n        this.hide(true)\n      } else {\n        this.show()\n      }\n    },\n    // Mousedown handler for the toggle\n    /* istanbul ignore next */\n    onMousedown(event) {\n      // We prevent the 'mousedown' event for the toggle to stop the\n      // 'focusin' event from being fired\n      // The event would otherwise be picked up by the global 'focusin'\n      // listener and there is no cross-browser solution to detect it\n      // relates to the toggle click\n      // The 'click' event will still be fired and we handle closing\n      // other dropdowns there too\n      // See https://github.com/bootstrap-vue/bootstrap-vue/issues/4328\n      stopEvent(event, { propagation: false })\n    },\n    // Called from dropdown menu context\n    onKeydown(event) {\n      const { keyCode } = event\n      if (keyCode === CODE_ESC) {\n        // Close on ESC\n        this.onEsc(event)\n      } else if (keyCode === CODE_DOWN) {\n        // Down Arrow\n        this.focusNext(event, false)\n      } else if (keyCode === CODE_UP) {\n        // Up Arrow\n        this.focusNext(event, true)\n      }\n    },\n    // If user presses ESC, close the menu\n    onEsc(event) {\n      if (this.visible) {\n        this.visible = false\n        stopEvent(event)\n        // Return focus to original trigger button\n        this.$once(EVENT_NAME_HIDDEN, this.focusToggler)\n      }\n    },\n    // Called only in split button mode, for the split button\n    onSplitClick(event) {\n      /* istanbul ignore next */\n      if (this.disabled) {\n        this.visible = false\n        return\n      }\n      this.$emit(EVENT_NAME_CLICK, event)\n    },\n    // Shared hide handler between click-out and focus-in events\n    hideHandler(event) {\n      const { target } = event\n      if (this.visible && !contains(this.$refs.menu, target) && !contains(this.toggler, target)) {\n        this.clearHideTimeout()\n        this.$_hideTimeout = setTimeout(() => this.hide(), this.inNavbar ? 300 : 0)\n      }\n    },\n    // Document click-out listener\n    clickOutHandler(event) {\n      this.hideHandler(event)\n    },\n    // Document focus-in listener\n    focusInHandler(event) {\n      this.hideHandler(event)\n    },\n    // Keyboard nav\n    focusNext(event, up) {\n      // Ignore key up/down on form elements\n      const { target } = event\n      if (!this.visible || (event && closest(SELECTOR_FORM_CHILD, target))) {\n        /* istanbul ignore next: should never happen */\n        return\n      }\n      stopEvent(event)\n      this.$nextTick(() => {\n        const items = this.getItems()\n        if (items.length < 1) {\n          /* istanbul ignore next: should never happen */\n          return\n        }\n        let index = items.indexOf(target)\n        if (up && index > 0) {\n          index--\n        } else if (!up && index < items.length - 1) {\n          index++\n        }\n        if (index < 0) {\n          /* istanbul ignore next: should never happen */\n          index = 0\n        }\n        this.focusItem(index, items)\n      })\n    },\n    focusItem(index, items) {\n      const el = items.find((el, i) => i === index)\n      attemptFocus(el)\n    },\n    getItems() {\n      // Get all items\n      return filterVisibles(selectAll(SELECTOR_ITEM, this.$refs.menu))\n    },\n    focusMenu() {\n      attemptFocus(this.$refs.menu)\n    },\n    focusToggler() {\n      this.$nextTick(() => {\n        attemptFocus(this.toggler)\n      })\n    }\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_DROPDOWN } from '../../constants/components'\nimport {\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_OBJECT_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_BUTTON_CONTENT, SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { arrayIncludes } from '../../utils/array'\nimport { htmlOrText } from '../../utils/html'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { dropdownMixin, props as dropdownProps } from '../../mixins/dropdown'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BButton } from '../button/button'\nimport { sortKeys } from '../../utils/object'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...dropdownProps,\n    block: makeProp(PROP_TYPE_BOOLEAN, false),\n    html: makeProp(PROP_TYPE_STRING),\n    // If `true`, only render menu contents when open\n    lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n    menuClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    noCaret: makeProp(PROP_TYPE_BOOLEAN, false),\n    role: makeProp(PROP_TYPE_STRING, 'menu'),\n    size: makeProp(PROP_TYPE_STRING),\n    split: makeProp(PROP_TYPE_BOOLEAN, false),\n    splitButtonType: makeProp(PROP_TYPE_STRING, 'button', value => {\n      return arrayIncludes(['button', 'submit', 'reset'], value)\n    }),\n    splitClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    splitHref: makeProp(PROP_TYPE_STRING),\n    splitTo: makeProp(PROP_TYPE_OBJECT_STRING),\n    splitVariant: makeProp(PROP_TYPE_STRING),\n    text: makeProp(PROP_TYPE_STRING),\n    toggleClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    toggleTag: makeProp(PROP_TYPE_STRING, 'button'),\n    // TODO: This really should be `toggleLabel`\n    toggleText: makeProp(PROP_TYPE_STRING, 'Toggle dropdown'),\n    variant: makeProp(PROP_TYPE_STRING, 'secondary')\n  }),\n  NAME_DROPDOWN\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdown = /*#__PURE__*/ Vue.extend({\n  name: NAME_DROPDOWN,\n  mixins: [idMixin, dropdownMixin, normalizeSlotMixin],\n  props,\n  computed: {\n    dropdownClasses() {\n      const { block, split } = this\n      return [\n        this.directionClass,\n        this.boundaryClass,\n        {\n          show: this.visible,\n          // The 'btn-group' class is required in `split` mode for button alignment\n          // It needs also to be applied when `block` is disabled to allow multiple\n          // dropdowns to be aligned one line\n          'btn-group': split || !block,\n          // When `block` is enabled and we are in `split` mode the 'd-flex' class\n          // needs to be applied to allow the buttons to stretch to full width\n          'd-flex': block && split\n        }\n      ]\n    },\n    menuClasses() {\n      return [\n        this.menuClass,\n        {\n          'dropdown-menu-right': this.right,\n          show: this.visible\n        }\n      ]\n    },\n    toggleClasses() {\n      const { split } = this\n      return [\n        this.toggleClass,\n        {\n          'dropdown-toggle-split': split,\n          'dropdown-toggle-no-caret': this.noCaret && !split\n        }\n      ]\n    }\n  },\n  render(h) {\n    const { visible, variant, size, block, disabled, split, role, hide, toggle } = this\n    const commonProps = { variant, size, block, disabled }\n\n    let $buttonChildren = this.normalizeSlot(SLOT_NAME_BUTTON_CONTENT)\n    let buttonContentDomProps = this.hasNormalizedSlot(SLOT_NAME_BUTTON_CONTENT)\n      ? {}\n      : htmlOrText(this.html, this.text)\n\n    let $split = h()\n    if (split) {\n      const { splitTo, splitHref, splitButtonType } = this\n      const btnProps = {\n        ...commonProps,\n        variant: this.splitVariant || variant\n      }\n\n      // We add these as needed due to <router-link> issues with\n      // defined property with `undefined`/`null` values\n      if (splitTo) {\n        btnProps.to = splitTo\n      } else if (splitHref) {\n        btnProps.href = splitHref\n      } else if (splitButtonType) {\n        btnProps.type = splitButtonType\n      }\n\n      $split = h(\n        BButton,\n        {\n          class: this.splitClass,\n          attrs: { id: this.safeId('_BV_button_') },\n          props: btnProps,\n          domProps: buttonContentDomProps,\n          on: { click: this.onSplitClick },\n          ref: 'button'\n        },\n        $buttonChildren\n      )\n\n      // Overwrite button content for the toggle when in `split` mode\n      $buttonChildren = [h('span', { class: ['sr-only'] }, [this.toggleText])]\n      buttonContentDomProps = {}\n    }\n\n    const $toggle = h(\n      BButton,\n      {\n        staticClass: 'dropdown-toggle',\n        class: this.toggleClasses,\n        attrs: {\n          id: this.safeId('_BV_toggle_'),\n          'aria-haspopup': 'true',\n          'aria-expanded': toString(visible)\n        },\n        props: {\n          ...commonProps,\n          tag: this.toggleTag,\n          block: block && !split\n        },\n        domProps: buttonContentDomProps,\n        on: {\n          mousedown: this.onMousedown,\n          click: toggle,\n          keydown: toggle // Handle ENTER, SPACE and DOWN\n        },\n        ref: 'toggle'\n      },\n      $buttonChildren\n    )\n\n    const $menu = h(\n      'ul',\n      {\n        staticClass: 'dropdown-menu',\n        class: this.menuClasses,\n        attrs: {\n          role,\n          tabindex: '-1',\n          'aria-labelledby': this.safeId(split ? '_BV_button_' : '_BV_toggle_')\n        },\n        on: {\n          keydown: this.onKeydown // Handle UP, DOWN and ESC\n        },\n        ref: 'menu'\n      },\n      [!this.lazy || visible ? this.normalizeSlot(SLOT_NAME_DEFAULT, { hide }) : h()]\n    )\n\n    return h(\n      'div',\n      {\n        staticClass: 'dropdown b-dropdown',\n        class: this.dropdownClasses,\n        attrs: { id: this.safeId() }\n      },\n      [$split, $toggle, $menu]\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_DROPDOWN_ITEM } from '../../constants/components'\nimport { EVENT_NAME_CLICK } from '../../constants/events'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { requestAF } from '../../utils/dom'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...omit(BLinkProps, ['event', 'routerTag']),\n    linkClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    variant: makeProp(PROP_TYPE_STRING)\n  }),\n  NAME_DROPDOWN_ITEM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownItem = /*#__PURE__*/ Vue.extend({\n  name: NAME_DROPDOWN_ITEM,\n  mixins: [attrsMixin, normalizeSlotMixin],\n  inject: {\n    bvDropdown: { default: null }\n  },\n  inheritAttrs: false,\n  props,\n  computed: {\n    computedAttrs() {\n      return {\n        ...this.bvAttrs,\n        role: 'menuitem'\n      }\n    }\n  },\n  methods: {\n    closeDropdown() {\n      // Close on next animation frame to allow <b-link> time to process\n      requestAF(() => {\n        if (this.bvDropdown) {\n          this.bvDropdown.hide(true)\n        }\n      })\n    },\n    onClick(event) {\n      this.$emit(EVENT_NAME_CLICK, event)\n      this.closeDropdown()\n    }\n  },\n  render(h) {\n    const { linkClass, variant, active, disabled, onClick, bvAttrs } = this\n\n    return h(\n      'li',\n      {\n        class: bvAttrs.class,\n        style: bvAttrs.style,\n        attrs: { role: 'presentation' }\n      },\n      [\n        h(\n          BLink,\n          {\n            staticClass: 'dropdown-item',\n            class: [linkClass, { [`text-${variant}`]: variant && !(active || disabled) }],\n            props: this.$props,\n            attrs: this.computedAttrs,\n            on: { click: onClick },\n            ref: 'item'\n          },\n          this.normalizeSlot()\n        )\n      ]\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_DROPDOWN_ITEM_BUTTON } from '../../constants/components'\nimport { EVENT_NAME_CLICK } from '../../constants/events'\nimport {\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    active: makeProp(PROP_TYPE_BOOLEAN, false),\n    activeClass: makeProp(PROP_TYPE_STRING, 'active'),\n    buttonClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    variant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_DROPDOWN_ITEM_BUTTON\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownItemButton = /*#__PURE__*/ Vue.extend({\n  name: NAME_DROPDOWN_ITEM_BUTTON,\n  mixins: [attrsMixin, normalizeSlotMixin],\n  inject: {\n    bvDropdown: { default: null }\n  },\n  inheritAttrs: false,\n  props,\n  computed: {\n    computedAttrs() {\n      return {\n        ...this.bvAttrs,\n        role: 'menuitem',\n        type: 'button',\n        disabled: this.disabled\n      }\n    }\n  },\n  methods: {\n    closeDropdown() {\n      if (this.bvDropdown) {\n        this.bvDropdown.hide(true)\n      }\n    },\n    onClick(event) {\n      this.$emit(EVENT_NAME_CLICK, event)\n      this.closeDropdown()\n    }\n  },\n  render(h) {\n    const { active, variant, bvAttrs } = this\n\n    return h(\n      'li',\n      {\n        class: bvAttrs.class,\n        style: bvAttrs.style,\n        attrs: { role: 'presentation' }\n      },\n      [\n        h(\n          'button',\n          {\n            staticClass: 'dropdown-item',\n            class: [\n              this.buttonClass,\n              {\n                [this.activeClass]: active,\n                [`text-${variant}`]: variant && !(active || this.disabled)\n              }\n            ],\n            attrs: this.computedAttrs,\n            on: { click: this.onClick },\n            ref: 'button'\n          },\n          this.normalizeSlot()\n        )\n      ]\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_HEADER } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    id: makeProp(PROP_TYPE_STRING),\n    tag: makeProp(PROP_TYPE_STRING, 'header'),\n    variant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_DROPDOWN_HEADER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownHeader = /*#__PURE__*/ Vue.extend({\n  name: NAME_DROPDOWN_HEADER,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { variant } = props\n\n    return h('li', mergeData(omit(data, ['attrs']), { attrs: { role: 'presentation' } }), [\n      h(\n        props.tag,\n        {\n          staticClass: 'dropdown-header',\n          class: { [`text-${variant}`]: variant },\n          attrs: {\n            ...(data.attrs || {}),\n            id: props.id || null,\n            role: 'heading'\n          },\n          ref: 'header'\n        },\n        children\n      )\n    ])\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_DIVIDER } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { omit } from '../../utils/object'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    tag: makeProp(PROP_TYPE_STRING, 'hr')\n  },\n  NAME_DROPDOWN_DIVIDER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownDivider = /*#__PURE__*/ Vue.extend({\n  name: NAME_DROPDOWN_DIVIDER,\n  functional: true,\n  props,\n  render(h, { props, data }) {\n    return h('li', mergeData(omit(data, ['attrs']), { attrs: { role: 'presentation' } }), [\n      h(props.tag, {\n        staticClass: 'dropdown-divider',\n        attrs: {\n          ...(data.attrs || {}),\n          role: 'separator',\n          'aria-orientation': 'horizontal'\n        },\n        ref: 'divider'\n      })\n    ])\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_FORM } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    id: makeProp(PROP_TYPE_STRING),\n    inline: makeProp(PROP_TYPE_BOOLEAN, false),\n    novalidate: makeProp(PROP_TYPE_BOOLEAN, false),\n    validated: makeProp(PROP_TYPE_BOOLEAN, false)\n  },\n  NAME_FORM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BForm = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    return h(\n      'form',\n      mergeData(data, {\n        class: {\n          'form-inline': props.inline,\n          'was-validated': props.validated\n        },\n        attrs: {\n          id: props.id,\n          novalidate: props.novalidate\n        }\n      }),\n      children\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_FORM } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BForm, props as formControlProps } from '../form/form'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...formControlProps,\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    formClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n  }),\n  NAME_DROPDOWN_FORM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownForm = /*#__PURE__*/ Vue.extend({\n  name: NAME_DROPDOWN_FORM,\n  functional: true,\n  props,\n  render(h, { props, data, listeners, children }) {\n    return h('li', mergeData(omit(data, ['attrs', 'on']), { attrs: { role: 'presentation' } }), [\n      h(\n        BForm,\n        {\n          staticClass: 'b-dropdown-form',\n          class: [props.formClass, { disabled: props.disabled }],\n          props,\n          attrs: {\n            ...(data.attrs || {}),\n            disabled: props.disabled,\n            // Tab index of -1 for keyboard navigation\n            tabindex: props.disabled ? null : '-1'\n          },\n          on: listeners,\n          ref: 'form'\n        },\n        children\n      )\n    ])\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_TEXT } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    tag: makeProp(PROP_TYPE_STRING, 'p'),\n    textClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    variant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_DROPDOWN_TEXT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownText = /*#__PURE__*/ Vue.extend({\n  name: NAME_DROPDOWN_TEXT,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { tag, textClass, variant } = props\n\n    return h('li', mergeData(omit(data, ['attrs']), { attrs: { role: 'presentation' } }), [\n      h(\n        tag,\n        {\n          staticClass: 'b-dropdown-text',\n          class: [textClass, { [`text-${variant}`]: variant }],\n          props,\n          attrs: data.attrs || {},\n          ref: 'text'\n        },\n        children\n      )\n    ])\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_GROUP } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_HEADER } from '../../constants/slots'\nimport { identity } from '../../utils/identity'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    ariaDescribedby: makeProp(PROP_TYPE_STRING),\n    header: makeProp(PROP_TYPE_STRING),\n    headerClasses: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    headerTag: makeProp(PROP_TYPE_STRING, 'header'),\n    headerVariant: makeProp(PROP_TYPE_STRING),\n    id: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_DROPDOWN_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownGroup = /*#__PURE__*/ Vue.extend({\n  name: NAME_DROPDOWN_GROUP,\n  functional: true,\n  props,\n  render(h, { props, data, slots, scopedSlots }) {\n    const $slots = slots()\n    const $scopedSlots = scopedSlots || {}\n    const slotScope = {}\n    const headerId = props.id ? `_bv_${props.id}_group_dd_header` : null\n\n    let $header = h()\n    if (hasNormalizedSlot(SLOT_NAME_HEADER, $scopedSlots, $slots) || props.header) {\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(SLOT_NAME_HEADER, slotScope, $scopedSlots, $slots) || props.header\n      )\n    }\n\n    return h('li', mergeData(omit(data, ['attrs']), { attrs: { role: 'presentation' } }), [\n      $header,\n      h(\n        'ul',\n        {\n          staticClass: 'list-unstyled',\n          attrs: {\n            ...(data.attrs || {}),\n            id: props.id || null,\n            role: 'group',\n            'aria-describedby':\n              [headerId, props.ariaDescribedBy]\n                .filter(identity)\n                .join(' ')\n                .trim() || null\n          }\n        },\n        normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots)\n      )\n    ])\n  }\n})\n","import { BDropdown } from './dropdown'\nimport { BDropdownItem } from './dropdown-item'\nimport { BDropdownItemButton } from './dropdown-item-button'\nimport { BDropdownHeader } from './dropdown-header'\nimport { BDropdownDivider } from './dropdown-divider'\nimport { BDropdownForm } from './dropdown-form'\nimport { BDropdownText } from './dropdown-text'\nimport { BDropdownGroup } from './dropdown-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst DropdownPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BDropdown,\n    BDd: BDropdown,\n    BDropdownItem,\n    BDdItem: BDropdownItem,\n    BDropdownItemButton,\n    BDropdownItemBtn: BDropdownItemButton,\n    BDdItemButton: BDropdownItemButton,\n    BDdItemBtn: BDropdownItemButton,\n    BDropdownHeader,\n    BDdHeader: BDropdownHeader,\n    BDropdownDivider,\n    BDdDivider: BDropdownDivider,\n    BDropdownForm,\n    BDdForm: BDropdownForm,\n    BDropdownText,\n    BDdText: BDropdownText,\n    BDropdownGroup,\n    BDdGroup: BDropdownGroup\n  }\n})\n\nexport {\n  DropdownPlugin,\n  BDropdown,\n  BDropdownItem,\n  BDropdownItemButton,\n  BDropdownHeader,\n  BDropdownDivider,\n  BDropdownForm,\n  BDropdownText,\n  BDropdownGroup\n}\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_EMBED } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { arrayIncludes } from '../../utils/array'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Constants ---\n\nconst TYPES = ['iframe', 'embed', 'video', 'object', 'img', 'b-img', 'b-img-lazy']\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    aspect: makeProp(PROP_TYPE_STRING, '16by9'),\n    tag: makeProp(PROP_TYPE_STRING, 'div'),\n    type: makeProp(PROP_TYPE_STRING, 'iframe', value => {\n      return arrayIncludes(TYPES, value)\n    })\n  },\n  NAME_EMBED\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BEmbed = /*#__PURE__*/ Vue.extend({\n  name: NAME_EMBED,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { aspect } = props\n\n    return h(\n      props.tag,\n      {\n        staticClass: 'embed-responsive',\n        class: { [`embed-responsive-${aspect}`]: aspect },\n        ref: data.ref\n      },\n      [\n        h(\n          props.type,\n          mergeData(omit(data, ['ref']), { staticClass: 'embed-responsive-item' }),\n          children\n        )\n      ]\n    )\n  }\n})\n","import { BEmbed } from './embed'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst EmbedPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BEmbed }\n})\n\nexport { EmbedPlugin, BEmbed }\n","import { Vue } from '../vue'\nimport { PROP_TYPE_ARRAY_OBJECT, PROP_TYPE_STRING } from '../constants/props'\nimport { get } from '../utils/get'\nimport { stripTags } from '../utils/html'\nimport { isArray, isPlainObject, isUndefined } from '../utils/inspect'\nimport { keys } from '../utils/object'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\nimport { warn } from '../utils/warn'\n\n// --- Constants ---\n\nconst OPTIONS_OBJECT_DEPRECATED_MSG =\n  'Setting prop \"options\" to an object is deprecated. Use the array format instead.'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    disabledField: makeProp(PROP_TYPE_STRING, 'disabled'),\n    htmlField: makeProp(PROP_TYPE_STRING, 'html'),\n    options: makeProp(PROP_TYPE_ARRAY_OBJECT, []),\n    textField: makeProp(PROP_TYPE_STRING, 'text'),\n    valueField: makeProp(PROP_TYPE_STRING, 'value')\n  },\n  'formOptionControls'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formOptionsMixin = Vue.extend({\n  props,\n  computed: {\n    formOptions() {\n      return this.normalizeOptions(this.options)\n    }\n  },\n  methods: {\n    normalizeOption(option, key = null) {\n      // When the option is an object, normalize it\n      if (isPlainObject(option)) {\n        const value = get(option, this.valueField)\n        const text = get(option, this.textField)\n        return {\n          value: isUndefined(value) ? key || text : value,\n          text: stripTags(String(isUndefined(text) ? key : text)),\n          html: get(option, this.htmlField),\n          disabled: Boolean(get(option, this.disabledField))\n        }\n      }\n      // Otherwise create an `<option>` object from the given value\n      return {\n        value: key || option,\n        text: stripTags(String(option)),\n        disabled: false\n      }\n    },\n    normalizeOptions(options) {\n      // Normalize the given options array\n      if (isArray(options)) {\n        return options.map(option => this.normalizeOption(option))\n      } else if (isPlainObject(options)) {\n        // Deprecate the object options format\n        warn(OPTIONS_OBJECT_DEPRECATED_MSG, this.$options.name)\n        // Normalize a `options` object to an array of options\n        return keys(options).map(key => this.normalizeOption(options[key] || {}, key))\n      }\n      // If not an array or object, return an empty array\n      /* istanbul ignore next */\n      return []\n    }\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_DATALIST } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { htmlOrText } from '../../utils/html'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { formOptionsMixin, props as formOptionsProps } from '../../mixins/form-options'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...formOptionsProps,\n    id: makeProp(PROP_TYPE_STRING, undefined, true) // Required\n  }),\n  NAME_FORM_DATALIST\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormDatalist = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_DATALIST,\n  mixins: [formOptionsMixin, normalizeSlotMixin],\n  props,\n  render(h) {\n    const { id } = this\n\n    const $options = this.formOptions.map((option, index) => {\n      const { value, text, html, disabled } = option\n\n      return h('option', {\n        attrs: { value, disabled },\n        domProps: htmlOrText(html, text),\n        key: `option_${index}`\n      })\n    })\n\n    return h('datalist', { attrs: { id } }, [$options, this.normalizeSlot()])\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_FORM_TEXT } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    id: makeProp(PROP_TYPE_STRING),\n    inline: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'small'),\n    textVariant: makeProp(PROP_TYPE_STRING, 'muted')\n  },\n  NAME_FORM_TEXT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormText = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_TEXT,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    return h(\n      props.tag,\n      mergeData(data, {\n        class: {\n          'form-text': !props.inline,\n          [`text-${props.textVariant}`]: props.textVariant\n        },\n        attrs: {\n          id: props.id\n        }\n      }),\n      children\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_FORM_INVALID_FEEDBACK } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    ariaLive: makeProp(PROP_TYPE_STRING),\n    forceShow: makeProp(PROP_TYPE_BOOLEAN, false),\n    id: makeProp(PROP_TYPE_STRING),\n    role: makeProp(PROP_TYPE_STRING),\n    // Tri-state prop: `true`, `false`, or `null`\n    state: makeProp(PROP_TYPE_BOOLEAN, null),\n    tag: makeProp(PROP_TYPE_STRING, 'div'),\n    tooltip: makeProp(PROP_TYPE_BOOLEAN, false)\n  },\n  NAME_FORM_INVALID_FEEDBACK\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormInvalidFeedback = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_INVALID_FEEDBACK,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { tooltip, ariaLive } = props\n    const show = props.forceShow === true || props.state === false\n\n    return h(\n      props.tag,\n      mergeData(data, {\n        class: {\n          'd-block': show,\n          'invalid-feedback': !tooltip,\n          'invalid-tooltip': tooltip\n        },\n        attrs: {\n          id: props.id || null,\n          role: props.role || null,\n          'aria-live': ariaLive || null,\n          'aria-atomic': ariaLive ? 'true' : null\n        }\n      }),\n      children\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_FORM_VALID_FEEDBACK } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    ariaLive: makeProp(PROP_TYPE_STRING),\n    forceShow: makeProp(PROP_TYPE_BOOLEAN, false),\n    id: makeProp(PROP_TYPE_STRING),\n    role: makeProp(PROP_TYPE_STRING),\n    // Tri-state prop: `true`, `false`, or `null`\n    state: makeProp(PROP_TYPE_BOOLEAN, null),\n    tag: makeProp(PROP_TYPE_STRING, 'div'),\n    tooltip: makeProp(PROP_TYPE_BOOLEAN, false)\n  },\n  NAME_FORM_VALID_FEEDBACK\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormValidFeedback = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_VALID_FEEDBACK,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { tooltip, ariaLive } = props\n    const show = props.forceShow === true || props.state === true\n\n    return h(\n      props.tag,\n      mergeData(data, {\n        class: {\n          'd-block': show,\n          'valid-feedback': !tooltip,\n          'valid-tooltip': tooltip\n        },\n        attrs: {\n          id: props.id || null,\n          role: props.role || null,\n          'aria-live': ariaLive || null,\n          'aria-atomic': ariaLive ? 'true' : null\n        }\n      }),\n      children\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_FORM_ROW } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    tag: makeProp(PROP_TYPE_STRING, 'div')\n  },\n  NAME_FORM_ROW\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormRow = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_ROW,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    return h(\n      props.tag,\n      mergeData(data, {\n        staticClass: 'form-row'\n      }),\n      children\n    )\n  }\n})\n","import { BForm } from './form'\nimport { BFormDatalist } from './form-datalist'\nimport { BFormText } from './form-text'\nimport { BFormInvalidFeedback } from './form-invalid-feedback'\nimport { BFormValidFeedback } from './form-valid-feedback'\nimport { BFormRow } from '../layout/form-row'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BForm,\n    BFormDatalist,\n    BDatalist: BFormDatalist,\n    BFormText,\n    BFormInvalidFeedback,\n    BFormFeedback: BFormInvalidFeedback,\n    BFormValidFeedback,\n    // Added here for convenience\n    BFormRow\n  }\n})\n\n// BFormRow is not exported here as a named export, as it is exported by Layout\nexport { FormPlugin, BForm, BFormDatalist, BFormText, BFormInvalidFeedback, BFormValidFeedback }\n","import { looseEqual } from './loose-equal'\n\n// Assumes that the first argument is an array\nexport const looseIndexOf = (array, value) => {\n  for (let i = 0; i < array.length; i++) {\n    if (looseEqual(array[i], value)) {\n      return i\n    }\n  }\n  return -1\n}\n","import { Vue } from '../vue'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props'\nimport { attemptFocus, isVisible, matches, requestAF, select } from '../utils/dom'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\n\n// --- Constants ---\n\nconst SELECTOR = 'input, textarea, select'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    autofocus: makeProp(PROP_TYPE_BOOLEAN, false),\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    form: makeProp(PROP_TYPE_STRING),\n    id: makeProp(PROP_TYPE_STRING),\n    name: makeProp(PROP_TYPE_STRING),\n    required: makeProp(PROP_TYPE_BOOLEAN, false)\n  },\n  'formControls'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formControlMixin = Vue.extend({\n  props,\n  mounted() {\n    this.handleAutofocus()\n  },\n  /* istanbul ignore next */\n  activated() {\n    this.handleAutofocus()\n  },\n  methods: {\n    handleAutofocus() {\n      this.$nextTick(() => {\n        requestAF(() => {\n          let el = this.$el\n          if (this.autofocus && isVisible(el)) {\n            if (!matches(el, SELECTOR)) {\n              el = select(SELECTOR, el)\n            }\n            attemptFocus(el)\n          }\n        })\n      })\n    }\n  }\n})\n","import { Vue } from '../vue'\nimport { PROP_TYPE_BOOLEAN } from '../constants/props'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    plain: makeProp(PROP_TYPE_BOOLEAN, false)\n  },\n  'formControls'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formCustomMixin = Vue.extend({\n  props,\n  computed: {\n    custom() {\n      return !this.plain\n    }\n  }\n})\n","import { Vue } from '../vue'\nimport { PROP_TYPE_STRING } from '../constants/props'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    size: makeProp(PROP_TYPE_STRING)\n  },\n  'formControls'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formSizeMixin = Vue.extend({\n  props,\n  computed: {\n    sizeFormClass() {\n      return [this.size ? `form-control-${this.size}` : null]\n    }\n  }\n})\n","/* Form control contextual state class computation\n *\n * Returned class is either 'is-valid' or 'is-invalid' based on the 'state' prop\n * state can be one of five values:\n *  - true for is-valid\n *  - false for is-invalid\n *  - null for no contextual state\n */\nimport { Vue } from '../vue'\nimport { PROP_TYPE_BOOLEAN } from '../constants/props'\nimport { isBoolean } from '../utils/inspect'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    // Tri-state prop: true, false, null (or undefined)\n    state: makeProp(PROP_TYPE_BOOLEAN, null)\n  },\n  'formState'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formStateMixin = Vue.extend({\n  props,\n  computed: {\n    computedState() {\n      // If not a boolean, ensure that value is null\n      return isBoolean(this.state) ? this.state : null\n    },\n    stateClass() {\n      const state = this.computedState\n      return state === true ? 'is-valid' : state === false ? 'is-invalid' : null\n    },\n    computedAriaInvalid() {\n      const { ariaInvalid } = this\n      if (ariaInvalid === true || ariaInvalid === 'true' || ariaInvalid === '') {\n        return 'true'\n      }\n      return this.computedState === false ? 'true' : ariaInvalid\n    }\n  }\n})\n","import { Vue } from '../vue'\nimport { PROP_TYPE_ANY, PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props'\nimport { EVENT_NAME_CHANGE } from '../constants/events'\nimport { attemptBlur, attemptFocus } from '../utils/dom'\nimport { isBoolean } from '../utils/inspect'\nimport { looseEqual } from '../utils/loose-equal'\nimport { makeModelMixin } from '../utils/model'\nimport { sortKeys } from '../utils/object'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\nimport { attrsMixin } from './attrs'\nimport { formControlMixin, props as formControlProps } from './form-control'\nimport { formCustomMixin, props as formCustomProps } from './form-custom'\nimport { formSizeMixin, props as formSizeProps } from './form-size'\nimport { formStateMixin, props as formStateProps } from './form-state'\nimport { idMixin, props as idProps } from './id'\nimport { normalizeSlotMixin } from './normalize-slot'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('checked', { defaultValue: null })\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ...formControlProps,\n    ...formSizeProps,\n    ...formStateProps,\n    ...formCustomProps,\n    ariaLabel: makeProp(PROP_TYPE_STRING),\n    ariaLabelledby: makeProp(PROP_TYPE_STRING),\n    // Only applicable in standalone mode (non group)\n    button: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Only applicable when rendered with button style\n    buttonVariant: makeProp(PROP_TYPE_STRING),\n    inline: makeProp(PROP_TYPE_BOOLEAN, false),\n    value: makeProp(PROP_TYPE_ANY)\n  }),\n  'formRadioCheckControls'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formRadioCheckMixin = Vue.extend({\n  mixins: [\n    attrsMixin,\n    idMixin,\n    modelMixin,\n    normalizeSlotMixin,\n    formControlMixin,\n    formSizeMixin,\n    formStateMixin,\n    formCustomMixin\n  ],\n  inheritAttrs: false,\n  props,\n  data() {\n    return {\n      localChecked: this.isGroup ? this.bvGroup[MODEL_PROP_NAME] : this[MODEL_PROP_NAME],\n      hasFocus: false\n    }\n  },\n  computed: {\n    computedLocalChecked: {\n      get() {\n        return this.isGroup ? this.bvGroup.localChecked : this.localChecked\n      },\n      set(value) {\n        if (this.isGroup) {\n          this.bvGroup.localChecked = value\n        } else {\n          this.localChecked = value\n        }\n      }\n    },\n    isChecked() {\n      return looseEqual(this.value, this.computedLocalChecked)\n    },\n    isRadio() {\n      return true\n    },\n    isGroup() {\n      // Is this check/radio a child of check-group or radio-group?\n      return !!this.bvGroup\n    },\n    isBtnMode() {\n      // Support button style in single input mode\n      return this.isGroup ? this.bvGroup.buttons : this.button\n    },\n    isPlain() {\n      return this.isBtnMode ? false : this.isGroup ? this.bvGroup.plain : this.plain\n    },\n    isCustom() {\n      return this.isBtnMode ? false : !this.isPlain\n    },\n    isSwitch() {\n      // Custom switch styling (checkboxes only)\n      return this.isBtnMode || this.isRadio || this.isPlain\n        ? false\n        : this.isGroup\n          ? this.bvGroup.switches\n          : this.switch\n    },\n    isInline() {\n      return this.isGroup ? this.bvGroup.inline : this.inline\n    },\n    isDisabled() {\n      // Child can be disabled while parent isn't, but is always disabled if group is\n      return this.isGroup ? this.bvGroup.disabled || this.disabled : this.disabled\n    },\n    isRequired() {\n      // Required only works when a name is provided for the input(s)\n      // Child can only be required when parent is\n      // Groups will always have a name (either user supplied or auto generated)\n      return this.computedName && (this.isGroup ? this.bvGroup.required : this.required)\n    },\n    computedName() {\n      // Group name preferred over local name\n      return (this.isGroup ? this.bvGroup.groupName : this.name) || null\n    },\n    computedForm() {\n      return (this.isGroup ? this.bvGroup.form : this.form) || null\n    },\n    computedSize() {\n      return (this.isGroup ? this.bvGroup.size : this.size) || ''\n    },\n    computedState() {\n      return this.isGroup ? this.bvGroup.computedState : isBoolean(this.state) ? this.state : null\n    },\n    computedButtonVariant() {\n      // Local variant preferred over group variant\n      const { buttonVariant } = this\n      if (buttonVariant) {\n        return buttonVariant\n      }\n      if (this.isGroup && this.bvGroup.buttonVariant) {\n        return this.bvGroup.buttonVariant\n      }\n      return 'secondary'\n    },\n    buttonClasses() {\n      const { computedSize } = this\n      return [\n        'btn',\n        `btn-${this.computedButtonVariant}`,\n        {\n          [`btn-${computedSize}`]: computedSize,\n          // 'disabled' class makes \"button\" look disabled\n          disabled: this.isDisabled,\n          // 'active' class makes \"button\" look pressed\n          active: this.isChecked,\n          // Focus class makes button look focused\n          focus: this.hasFocus\n        }\n      ]\n    },\n    computedAttrs() {\n      const { isDisabled: disabled, isRequired: required } = this\n\n      return {\n        ...this.bvAttrs,\n        id: this.safeId(),\n        type: this.isRadio ? 'radio' : 'checkbox',\n        name: this.computedName,\n        form: this.computedForm,\n        disabled,\n        required,\n        'aria-required': required || null,\n        'aria-label': this.ariaLabel || null,\n        'aria-labelledby': this.ariaLabelledby || null\n      }\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](...args) {\n      this[`${MODEL_PROP_NAME}Watcher`](...args)\n    },\n    computedLocalChecked(...args) {\n      this.computedLocalCheckedWatcher(...args)\n    }\n  },\n  methods: {\n    [`${MODEL_PROP_NAME}Watcher`](newValue) {\n      if (!looseEqual(newValue, this.computedLocalChecked)) {\n        this.computedLocalChecked = newValue\n      }\n    },\n    computedLocalCheckedWatcher(newValue, oldValue) {\n      if (!looseEqual(newValue, oldValue)) {\n        this.$emit(MODEL_EVENT_NAME, newValue)\n      }\n    },\n\n    handleChange({ target: { checked } }) {\n      const { value } = this\n      const localChecked = checked ? value : null\n\n      this.computedLocalChecked = value\n\n      // Fire events in a `$nextTick()` to ensure the `v-model` is updated\n      this.$nextTick(() => {\n        // Change is only emitted on user interaction\n        this.$emit(EVENT_NAME_CHANGE, localChecked)\n\n        // If this is a child of a group, we emit a change event on it as well\n        if (this.isGroup) {\n          this.bvGroup.$emit(EVENT_NAME_CHANGE, localChecked)\n        }\n      })\n    },\n    handleFocus(event) {\n      // When in buttons mode, we need to add 'focus' class to label when input focused\n      // As it is the hidden input which has actual focus\n      if (event.target) {\n        if (event.type === 'focus') {\n          this.hasFocus = true\n        } else if (event.type === 'blur') {\n          this.hasFocus = false\n        }\n      }\n    },\n\n    // Convenience methods for focusing the input\n    focus() {\n      if (!this.isDisabled) {\n        attemptFocus(this.$refs.input)\n      }\n    },\n    blur() {\n      if (!this.isDisabled) {\n        attemptBlur(this.$refs.input)\n      }\n    }\n  },\n  render(h) {\n    const {\n      isRadio,\n      isBtnMode,\n      isPlain,\n      isCustom,\n      isInline,\n      isSwitch,\n      computedSize,\n      bvAttrs\n    } = this\n    const $content = this.normalizeSlot()\n\n    const $input = h('input', {\n      class: [\n        {\n          'form-check-input': isPlain,\n          'custom-control-input': isCustom,\n          // https://github.com/bootstrap-vue/bootstrap-vue/issues/2911\n          'position-static': isPlain && !$content\n        },\n        isBtnMode ? '' : this.stateClass\n      ],\n      directives: [{ name: 'model', value: this.computedLocalChecked }],\n      attrs: this.computedAttrs,\n      domProps: {\n        value: this.value,\n        checked: this.isChecked\n      },\n      on: {\n        change: this.handleChange,\n        ...(isBtnMode ? { focus: this.handleFocus, blur: this.handleFocus } : {})\n      },\n      key: 'input',\n      ref: 'input'\n    })\n\n    if (isBtnMode) {\n      let $button = h('label', { class: this.buttonClasses }, [$input, $content])\n      if (!this.isGroup) {\n        // Standalone button mode, so wrap in 'btn-group-toggle'\n        // and flag it as inline-block to mimic regular buttons\n        $button = h('div', { class: ['btn-group-toggle', 'd-inline-block'] }, [$button])\n      }\n\n      return $button\n    }\n\n    // If no label content in plain mode we dont render the label\n    // See: https://github.com/bootstrap-vue/bootstrap-vue/issues/2911\n    let $label = h()\n    if (!(isPlain && !$content)) {\n      $label = h(\n        'label',\n        {\n          class: {\n            'form-check-label': isPlain,\n            'custom-control-label': isCustom\n          },\n          attrs: { for: this.safeId() }\n        },\n        $content\n      )\n    }\n\n    return h(\n      'div',\n      {\n        class: [\n          {\n            'form-check': isPlain,\n            'form-check-inline': isPlain && isInline,\n            'custom-control': isCustom,\n            'custom-control-inline': isCustom && isInline,\n            'custom-checkbox': isCustom && !isRadio && !isSwitch,\n            'custom-switch': isSwitch,\n            'custom-radio': isCustom && isRadio,\n            // Temporary until Bootstrap v4 supports sizing (most likely in V5)\n            [`b-custom-control-${computedSize}`]: computedSize && !isBtnMode\n          },\n          bvAttrs.class\n        ],\n        style: bvAttrs.style\n      },\n      [$input, $label]\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_CHECKBOX } from '../../constants/components'\nimport { EVENT_NAME_CHANGE, MODEL_EVENT_NAME_PREFIX } from '../../constants/events'\nimport { PROP_TYPE_ANY, PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { isArray } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { looseIndexOf } from '../../utils/loose-index-of'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport {\n  MODEL_EVENT_NAME,\n  formRadioCheckMixin,\n  props as formRadioCheckProps\n} from '../../mixins/form-radio-check'\n\n// --- Constants ---\n\nconst MODEL_PROP_NAME_INDETERMINATE = 'indeterminate'\nconst MODEL_EVENT_NAME_INDETERMINATE = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_INDETERMINATE\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...formRadioCheckProps,\n    // Not applicable in multi-check mode\n    [MODEL_PROP_NAME_INDETERMINATE]: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Custom switch styling\n    switch: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Not applicable in multi-check mode\n    uncheckedValue: makeProp(PROP_TYPE_ANY, false),\n    value: makeProp(PROP_TYPE_ANY, true)\n  }),\n  NAME_FORM_CHECKBOX\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormCheckbox = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_CHECKBOX,\n  mixins: [formRadioCheckMixin],\n  inject: {\n    bvGroup: {\n      from: 'bvCheckGroup',\n      default: null\n    }\n  },\n  props,\n  computed: {\n    isChecked() {\n      const { value, computedLocalChecked: checked } = this\n      return isArray(checked) ? looseIndexOf(checked, value) > -1 : looseEqual(checked, value)\n    },\n    isRadio() {\n      return false\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME_INDETERMINATE](newValue, oldValue) {\n      if (!looseEqual(newValue, oldValue)) {\n        this.setIndeterminate(newValue)\n      }\n    }\n  },\n  mounted() {\n    // Set initial indeterminate state\n    this.setIndeterminate(this[MODEL_PROP_NAME_INDETERMINATE])\n  },\n  methods: {\n    computedLocalCheckedWatcher(newValue, oldValue) {\n      if (!looseEqual(newValue, oldValue)) {\n        this.$emit(MODEL_EVENT_NAME, newValue)\n\n        const $input = this.$refs.input\n        if ($input) {\n          this.$emit(MODEL_EVENT_NAME_INDETERMINATE, $input.indeterminate)\n        }\n      }\n    },\n\n    handleChange({ target: { checked, indeterminate } }) {\n      const { value, uncheckedValue } = this\n\n      // Update `computedLocalChecked`\n      let localChecked = this.computedLocalChecked\n      if (isArray(localChecked)) {\n        const index = looseIndexOf(localChecked, value)\n        if (checked && index < 0) {\n          // Add value to array\n          localChecked = localChecked.concat(value)\n        } else if (!checked && index > -1) {\n          // Remove value from array\n          localChecked = localChecked.slice(0, index).concat(localChecked.slice(index + 1))\n        }\n      } else {\n        localChecked = checked ? value : uncheckedValue\n      }\n      this.computedLocalChecked = localChecked\n\n      // Fire events in a `$nextTick()` to ensure the `v-model` is updated\n      this.$nextTick(() => {\n        // Change is only emitted on user interaction\n        this.$emit(EVENT_NAME_CHANGE, localChecked)\n\n        // If this is a child of a group, we emit a change event on it as well\n        if (this.isGroup) {\n          this.bvGroup.$emit(EVENT_NAME_CHANGE, localChecked)\n        }\n\n        this.$emit(MODEL_EVENT_NAME_INDETERMINATE, indeterminate)\n      })\n    },\n\n    setIndeterminate(state) {\n      // Indeterminate only supported in single checkbox mode\n      if (isArray(this.computedLocalChecked)) {\n        state = false\n      }\n\n      const $input = this.$refs.input\n      if ($input) {\n        $input.indeterminate = state\n        // Emit update event to prop\n        this.$emit(MODEL_EVENT_NAME_INDETERMINATE, state)\n      }\n    }\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_RADIO } from '../../constants/components'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { sortKeys } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control'\nimport {\n  MODEL_EVENT_NAME,\n  formRadioCheckMixin,\n  props as formRadioCheckProps\n} from '../../mixins/form-radio-check'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { idMixin, props as idProps } from '../../mixins/id'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...formControlProps,\n    ...formRadioCheckProps,\n    ...formSizeProps,\n    ...formStateProps\n  }),\n  NAME_FORM_RADIO\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormRadio = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_RADIO,\n  mixins: [\n    idMixin,\n    formRadioCheckMixin, // Includes shared render function\n    formControlMixin,\n    formSizeMixin,\n    formStateMixin\n  ],\n  inject: {\n    bvGroup: {\n      from: 'bvRadioGroup',\n      default: false\n    }\n  },\n  props,\n  watch: {\n    computedLocalChecked(newValue, oldValue) {\n      if (!looseEqual(newValue, oldValue)) {\n        this.$emit(MODEL_EVENT_NAME, newValue)\n      }\n    }\n  }\n})\n","import { Vue } from '../vue'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_STRING } from '../constants/props'\nimport { SLOT_NAME_FIRST } from '../constants/slots'\nimport { htmlOrText } from '../utils/html'\nimport { looseEqual } from '../utils/loose-equal'\nimport { makeModelMixin } from '../utils/model'\nimport { omit, pick, sortKeys } from '../utils/object'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\nimport { BFormCheckbox } from '../components/form-checkbox/form-checkbox'\nimport { BFormRadio } from '../components/form-radio/form-radio'\nimport { formControlMixin, props as formControlProps } from './form-control'\nimport { formCustomMixin, props as formCustomProps } from './form-custom'\nimport { formOptionsMixin, props as formOptionsProps } from './form-options'\nimport { formSizeMixin, props as formSizeProps } from './form-size'\nimport { formStateMixin, props as formStateProps } from './form-state'\nimport { idMixin, props as idProps } from './id'\nimport { normalizeSlotMixin } from './normalize-slot'\n\n// --- Constants ---\n\n// Attributes to pass down to checks/radios instead of applying them to the group\nconst PASS_DOWN_ATTRS = ['aria-describedby', 'aria-labelledby']\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('checked')\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ...formControlProps,\n    ...formOptionsProps,\n    ...formSizeProps,\n    ...formStateProps,\n    ...formCustomProps,\n    ariaInvalid: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n    // Only applicable when rendered with button style\n    buttonVariant: makeProp(PROP_TYPE_STRING),\n    // Render as button style\n    buttons: makeProp(PROP_TYPE_BOOLEAN, false),\n    stacked: makeProp(PROP_TYPE_BOOLEAN, false),\n    validated: makeProp(PROP_TYPE_BOOLEAN, false)\n  }),\n  'formRadioCheckGroups'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formRadioCheckGroupMixin = Vue.extend({\n  mixins: [\n    idMixin,\n    modelMixin,\n    normalizeSlotMixin,\n    formControlMixin,\n    formOptionsMixin,\n    formSizeMixin,\n    formStateMixin,\n    formCustomMixin\n  ],\n  inheritAttrs: false,\n  props,\n  data() {\n    return {\n      localChecked: this[MODEL_PROP_NAME]\n    }\n  },\n  computed: {\n    inline() {\n      return !this.stacked\n    },\n    groupName() {\n      // Checks/Radios tied to the same model must have the same name,\n      // especially for ARIA accessibility\n      return this.name || this.safeId()\n    },\n    groupClasses() {\n      const { inline, size, validated } = this\n\n      let classes = { 'was-validated': validated }\n      if (this.buttons) {\n        classes = [\n          classes,\n          'btn-group-toggle',\n          {\n            'btn-group': inline,\n            'btn-group-vertical': !inline,\n            [`btn-group-${size}`]: size\n          }\n        ]\n      }\n\n      return classes\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue) {\n      if (!looseEqual(newValue, this.localChecked)) {\n        this.localChecked = newValue\n      }\n    },\n    localChecked(newValue, oldValue) {\n      if (!looseEqual(newValue, oldValue)) {\n        this.$emit(MODEL_EVENT_NAME, newValue)\n      }\n    }\n  },\n  render(h) {\n    const { isRadioGroup } = this\n    const attrs = pick(this.$attrs, PASS_DOWN_ATTRS)\n    const optionComponent = isRadioGroup ? BFormRadio : BFormCheckbox\n\n    const $inputs = this.formOptions.map((option, index) => {\n      const key = `BV_option_${index}`\n\n      return h(\n        optionComponent,\n        {\n          props: {\n            // Individual radios or checks can be disabled in a group\n            disabled: option.disabled || false,\n            id: this.safeId(key),\n            value: option.value\n            // We don't need to include these, since the input's will know they are inside here\n            // form: this.form || null,\n            // name: this.groupName,\n            // required: Boolean(this.name && this.required)\n          },\n          attrs,\n          key\n        },\n        [h('span', { domProps: htmlOrText(option.html, option.text) })]\n      )\n    })\n\n    return h(\n      'div',\n      {\n        class: [this.groupClasses, 'bv-no-focus-ring'],\n        attrs: {\n          ...omit(this.$attrs, PASS_DOWN_ATTRS),\n          'aria-invalid': this.computedAriaInvalid,\n          'aria-required': this.required ? 'true' : null,\n          id: this.safeId(),\n          role: isRadioGroup ? 'radiogroup' : 'group',\n          // Add `tabindex=\"-1\"` to allow group to be focused if needed by screen readers\n          tabindex: '-1'\n        }\n      },\n      [this.normalizeSlot(SLOT_NAME_FIRST), $inputs, this.normalizeSlot()]\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_CHECKBOX_GROUP } from '../../constants/components'\nimport { PROP_TYPE_ARRAY, PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport {\n  MODEL_PROP_NAME,\n  formRadioCheckGroupMixin,\n  props as formRadioCheckGroupProps\n} from '../../mixins/form-radio-check-group'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...formRadioCheckGroupProps,\n    [MODEL_PROP_NAME]: makeProp(PROP_TYPE_ARRAY, []),\n    // Custom switch styling\n    switches: makeProp(PROP_TYPE_BOOLEAN, false)\n  }),\n  NAME_FORM_CHECKBOX_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormCheckboxGroup = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_CHECKBOX_GROUP,\n  // Includes render function\n  mixins: [formRadioCheckGroupMixin],\n  provide() {\n    return {\n      bvCheckGroup: this\n    }\n  },\n  props,\n  computed: {\n    isRadioGroup() {\n      return false\n    }\n  }\n})\n","import { BFormCheckbox } from './form-checkbox'\nimport { BFormCheckboxGroup } from './form-checkbox-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormCheckboxPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BFormCheckbox,\n    BCheckbox: BFormCheckbox,\n    BCheck: BFormCheckbox,\n    BFormCheckboxGroup,\n    BCheckboxGroup: BFormCheckboxGroup,\n    BCheckGroup: BFormCheckboxGroup\n  }\n})\n\nexport { FormCheckboxPlugin, BFormCheckbox, BFormCheckboxGroup }\n","// v-b-hover directive\nimport { IS_BROWSER } from '../../constants/env'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../../constants/events'\nimport { eventOnOff } from '../../utils/events'\nimport { isFunction } from '../../utils/inspect'\n\n// --- Constants ---\n\nconst PROP = '__BV_hover_handler__'\nconst MOUSEENTER = 'mouseenter'\nconst MOUSELEAVE = 'mouseleave'\n\n// --- Helper methods ---\n\nconst createListener = handler => {\n  const listener = event => {\n    handler(event.type === MOUSEENTER, event)\n  }\n  listener.fn = handler\n  return listener\n}\n\nconst updateListeners = (on, el, listener) => {\n  eventOnOff(on, el, MOUSEENTER, listener, EVENT_OPTIONS_NO_CAPTURE)\n  eventOnOff(on, el, MOUSELEAVE, listener, EVENT_OPTIONS_NO_CAPTURE)\n}\n\n// --- Directive bind/unbind/update handler ---\n\nconst directive = (el, { value: handler = null }) => {\n  if (IS_BROWSER) {\n    const listener = el[PROP]\n    const hasListener = isFunction(listener)\n    const handlerChanged = !(hasListener && listener.fn === handler)\n    if (hasListener && handlerChanged) {\n      updateListeners(false, el, listener)\n      delete el[PROP]\n    }\n    if (isFunction(handler) && handlerChanged) {\n      el[PROP] = createListener(handler)\n      updateListeners(true, el, el[PROP])\n    }\n  }\n}\n\n// VBHover directive\n\nexport const VBHover = {\n  bind: directive,\n  componentUpdated: directive,\n  unbind(el) {\n    directive(el, { value: null })\n  }\n}\n","//\n// Private component used by `b-form-datepicker` and `b-form-timepicker`\n//\nimport { Vue } from '../../vue'\nimport { NAME_FORM_BUTTON_LABEL_CONTROL } from '../../constants/components'\nimport {\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_BUTTON_CONTENT, SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { dropdownMixin, props as dropdownProps } from '../../mixins/dropdown'\nimport { props as formControlProps } from '../../mixins/form-control'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { VBHover } from '../../directives/hover/hover'\nimport { BIconChevronDown } from '../../icons/icons'\n\n// --- Props ---\n\nexport const props = sortKeys({\n  ...idProps,\n  ...formSizeProps,\n  ...formStateProps,\n  ...omit(dropdownProps, ['disabled']),\n  ...omit(formControlProps, ['autofocus']),\n  // When `true`, renders a `btn-group` wrapper and visually hides the label\n  buttonOnly: makeProp(PROP_TYPE_BOOLEAN, false),\n  // Applicable in button mode only\n  buttonVariant: makeProp(PROP_TYPE_STRING, 'secondary'),\n  // This is the value shown in the label\n  // Defaults back to `value`\n  formattedValue: makeProp(PROP_TYPE_STRING),\n  // Value placed in `.sr-only` span inside label when value is present\n  labelSelected: makeProp(PROP_TYPE_STRING),\n  lang: makeProp(PROP_TYPE_STRING),\n  // Extra classes to apply to the `dropdown-menu` div\n  menuClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n  // This is the value placed on the hidden input when no value selected\n  placeholder: makeProp(PROP_TYPE_STRING),\n  readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n  // Tri-state prop: `true`, `false` or `null`\n  rtl: makeProp(PROP_TYPE_BOOLEAN, null),\n  value: makeProp(PROP_TYPE_STRING, '')\n})\n\n// --- Main component ---\n\n// @vue/component\nexport const BVFormBtnLabelControl = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_BUTTON_LABEL_CONTROL,\n  directives: {\n    'b-hover': VBHover\n  },\n  mixins: [idMixin, formSizeMixin, formStateMixin, dropdownMixin, normalizeSlotMixin],\n  props,\n  data() {\n    return {\n      isHovered: false,\n      hasFocus: false\n    }\n  },\n  computed: {\n    idButton() {\n      return this.safeId()\n    },\n    idLabel() {\n      return this.safeId('_value_')\n    },\n    idMenu() {\n      return this.safeId('_dialog_')\n    },\n    idWrapper() {\n      return this.safeId('_outer_')\n    },\n    computedDir() {\n      return this.rtl === true ? 'rtl' : this.rtl === false ? 'ltr' : null\n    }\n  },\n  methods: {\n    focus() {\n      if (!this.disabled) {\n        attemptFocus(this.$refs.toggle)\n      }\n    },\n    blur() {\n      if (!this.disabled) {\n        attemptBlur(this.$refs.toggle)\n      }\n    },\n    setFocus(event) {\n      this.hasFocus = event.type === 'focus'\n    },\n    handleHover(hovered) {\n      this.isHovered = hovered\n    }\n  },\n  render(h) {\n    const {\n      idButton,\n      idLabel,\n      idMenu,\n      idWrapper,\n      disabled,\n      readonly,\n      required,\n      name,\n      state,\n      visible,\n      size,\n      isHovered,\n      hasFocus,\n      labelSelected,\n      buttonVariant,\n      buttonOnly\n    } = this\n    const value = toString(this.value) || ''\n    const invalid = state === false || (required && !value)\n\n    const btnScope = { isHovered, hasFocus, state, opened: visible }\n    const $button = h(\n      'button',\n      {\n        staticClass: 'btn',\n        class: {\n          [`btn-${buttonVariant}`]: buttonOnly,\n          [`btn-${size}`]: size,\n          'h-auto': !buttonOnly,\n          // `dropdown-toggle` is needed for proper\n          // corner rounding in button only mode\n          'dropdown-toggle': buttonOnly,\n          'dropdown-toggle-no-caret': buttonOnly\n        },\n        attrs: {\n          id: idButton,\n          type: 'button',\n          disabled,\n          'aria-haspopup': 'dialog',\n          'aria-expanded': visible ? 'true' : 'false',\n          'aria-invalid': invalid ? 'true' : null,\n          'aria-required': required ? 'true' : null\n        },\n        directives: [{ name: 'b-hover', value: this.handleHover }],\n        on: {\n          mousedown: this.onMousedown,\n          click: this.toggle,\n          keydown: this.toggle, // Handle ENTER, SPACE and DOWN\n          '!focus': this.setFocus,\n          '!blur': this.setFocus\n        },\n        ref: 'toggle'\n      },\n      [\n        this.hasNormalizedSlot(SLOT_NAME_BUTTON_CONTENT)\n          ? this.normalizeSlot(SLOT_NAME_BUTTON_CONTENT, btnScope)\n          : /* istanbul ignore next */ h(BIconChevronDown, { props: { scale: 1.25 } })\n      ]\n    )\n\n    // Hidden input\n    let $hidden = h()\n    if (name && !disabled) {\n      $hidden = h('input', {\n        attrs: {\n          type: 'hidden',\n          name: name || null,\n          form: this.form || null,\n          value\n        }\n      })\n    }\n\n    // Dropdown content\n    const $menu = h(\n      'div',\n      {\n        staticClass: 'dropdown-menu',\n        class: [\n          this.menuClass,\n          {\n            show: visible,\n            'dropdown-menu-right': this.right\n          }\n        ],\n        attrs: {\n          id: idMenu,\n          role: 'dialog',\n          tabindex: '-1',\n          'aria-modal': 'false',\n          'aria-labelledby': idLabel\n        },\n        on: {\n          keydown: this.onKeydown // Handle ESC\n        },\n        ref: 'menu'\n      },\n      [this.normalizeSlot(SLOT_NAME_DEFAULT, { opened: visible })]\n    )\n\n    // Value label\n    const $label = h(\n      'label',\n      {\n        class: buttonOnly\n          ? 'sr-only' // Hidden in button only mode\n          : [\n              'form-control',\n              'text-break',\n              'text-wrap',\n              'bg-transparent',\n              // Mute the text if showing the placeholder\n              { 'text-muted': !value },\n              this.stateClass,\n              this.sizeFormClass\n            ],\n        attrs: {\n          id: idLabel,\n          for: idButton,\n          'aria-invalid': invalid ? 'true' : null,\n          'aria-required': required ? 'true' : null\n        },\n        directives: [{ name: 'b-hover', value: this.handleHover }],\n        on: {\n          // Disable bubbling of the click event to\n          // prevent menu from closing and re-opening\n\n          '!click': /* istanbul ignore next */ event => {\n            stopEvent(event, { preventDefault: false })\n          }\n        }\n      },\n      [\n        value ? this.formattedValue || value : this.placeholder || '',\n        // Add the selected label for screen readers when a value is provided\n        value && labelSelected ? h('bdi', { staticClass: 'sr-only' }, labelSelected) : ''\n      ]\n    )\n\n    // Return the custom form control wrapper\n    return h(\n      'div',\n      {\n        staticClass: 'b-form-btn-label-control dropdown',\n        class: [\n          this.directionClass,\n          this.boundaryClass,\n          [\n            {\n              'btn-group': buttonOnly,\n              'form-control': !buttonOnly,\n              'd-flex': !buttonOnly,\n              'h-auto': !buttonOnly,\n              'align-items-stretch': !buttonOnly,\n              focus: hasFocus && !buttonOnly,\n              show: visible,\n              'is-valid': state === true,\n              'is-invalid': state === false\n            },\n            buttonOnly ? null : this.sizeFormClass\n          ]\n        ],\n        attrs: {\n          id: idWrapper,\n          role: buttonOnly ? null : 'group',\n          lang: this.lang || null,\n          dir: this.computedDir,\n          'aria-disabled': disabled,\n          'aria-readonly': readonly && !disabled,\n          'aria-labelledby': idLabel,\n          'aria-invalid': state === false || (required && !value) ? 'true' : null,\n          'aria-required': required ? 'true' : null\n        }\n      },\n      [$button, $hidden, $menu, $label]\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_DATEPICKER } from '../../constants/components'\nimport { EVENT_NAME_CONTEXT, EVENT_NAME_HIDDEN, EVENT_NAME_SHOWN } from '../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_DATE_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_BUTTON_CONTENT } from '../../constants/slots'\nimport { createDate, constrainDate, formatYMD, parseYMD } from '../../utils/date'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { makeModelMixin } from '../../utils/model'\nimport { omit, pick, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { BIconCalendar, BIconCalendarFill } from '../../icons/icons'\nimport { BButton } from '../button/button'\nimport { BCalendar, props as BCalendarProps } from '../calendar/calendar'\nimport {\n  BVFormBtnLabelControl,\n  props as BVFormBtnLabelControlProps\n} from '../form-btn-label-control/bv-form-btn-label-control'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('value', { type: PROP_TYPE_DATE_STRING })\n\n// --- Props ---\n\nconst calendarProps = omit(BCalendarProps, [\n  'block',\n  'hidden',\n  'id',\n  'noKeyNav',\n  'roleDescription',\n  'value',\n  'width'\n])\n\nconst formBtnLabelControlProps = omit(BVFormBtnLabelControlProps, [\n  'formattedValue',\n  'id',\n  'lang',\n  'rtl',\n  'value'\n])\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ...calendarProps,\n    ...formBtnLabelControlProps,\n    // Width of the calendar dropdown\n    calendarWidth: makeProp(PROP_TYPE_STRING, '270px'),\n    closeButton: makeProp(PROP_TYPE_BOOLEAN, false),\n    closeButtonVariant: makeProp(PROP_TYPE_STRING, 'outline-secondary'),\n    // Dark mode\n    dark: makeProp(PROP_TYPE_BOOLEAN, false),\n    labelCloseButton: makeProp(PROP_TYPE_STRING, 'Close'),\n    labelResetButton: makeProp(PROP_TYPE_STRING, 'Reset'),\n    labelTodayButton: makeProp(PROP_TYPE_STRING, 'Select today'),\n    noCloseOnSelect: makeProp(PROP_TYPE_BOOLEAN, false),\n    resetButton: makeProp(PROP_TYPE_BOOLEAN, false),\n    resetButtonVariant: makeProp(PROP_TYPE_STRING, 'outline-danger'),\n    resetValue: makeProp(PROP_TYPE_DATE_STRING),\n    todayButton: makeProp(PROP_TYPE_BOOLEAN, false),\n    todayButtonVariant: makeProp(PROP_TYPE_STRING, 'outline-primary')\n  }),\n  NAME_FORM_DATEPICKER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormDatepicker = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_DATEPICKER,\n  mixins: [idMixin, modelMixin],\n  props,\n  data() {\n    return {\n      // We always use `YYYY-MM-DD` value internally\n      localYMD: formatYMD(this[MODEL_PROP_NAME]) || '',\n      // If the popup is open\n      isVisible: false,\n      // Context data from BCalendar\n      localLocale: null,\n      isRTL: false,\n      formattedValue: '',\n      activeYMD: ''\n    }\n  },\n  computed: {\n    calendarYM() {\n      // Returns the calendar year/month\n      // Returns the `YYYY-MM` portion of the active calendar date\n      return this.activeYMD.slice(0, -3)\n    },\n    computedLang() {\n      return (this.localLocale || '').replace(/-u-.*$/i, '') || null\n    },\n    computedResetValue() {\n      return formatYMD(constrainDate(this.resetValue)) || ''\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue) {\n      this.localYMD = formatYMD(newValue) || ''\n    },\n    localYMD(newValue) {\n      // We only update the v-model when the datepicker is open\n      if (this.isVisible) {\n        this.$emit(MODEL_EVENT_NAME, this.valueAsDate ? parseYMD(newValue) || null : newValue || '')\n      }\n    },\n    calendarYM(newValue, oldValue) {\n      // Displayed calendar month has changed\n      // So possibly the calendar height has changed...\n      // We need to update popper computed position\n      if (newValue !== oldValue && oldValue) {\n        try {\n          this.$refs.control.updatePopper()\n        } catch {}\n      }\n    }\n  },\n  methods: {\n    // Public methods\n    focus() {\n      if (!this.disabled) {\n        attemptFocus(this.$refs.control)\n      }\n    },\n    blur() {\n      if (!this.disabled) {\n        attemptBlur(this.$refs.control)\n      }\n    },\n    // Private methods\n    setAndClose(ymd) {\n      this.localYMD = ymd\n      // Close calendar popup, unless `noCloseOnSelect`\n      if (!this.noCloseOnSelect) {\n        this.$nextTick(() => {\n          this.$refs.control.hide(true)\n        })\n      }\n    },\n    onSelected(ymd) {\n      this.$nextTick(() => {\n        this.setAndClose(ymd)\n      })\n    },\n    onInput(ymd) {\n      if (this.localYMD !== ymd) {\n        this.localYMD = ymd\n      }\n    },\n    onContext(ctx) {\n      const { activeYMD, isRTL, locale, selectedYMD, selectedFormatted } = ctx\n      this.isRTL = isRTL\n      this.localLocale = locale\n      this.formattedValue = selectedFormatted\n      this.localYMD = selectedYMD\n      this.activeYMD = activeYMD\n      // Re-emit the context event\n      this.$emit(EVENT_NAME_CONTEXT, ctx)\n    },\n    onTodayButton() {\n      // Set to today (or min/max if today is out of range)\n      this.setAndClose(formatYMD(constrainDate(createDate(), this.min, this.max)))\n    },\n    onResetButton() {\n      this.setAndClose(this.computedResetValue)\n    },\n    onCloseButton() {\n      this.$refs.control.hide(true)\n    },\n    // Menu handlers\n    onShow() {\n      this.isVisible = true\n    },\n    onShown() {\n      this.$nextTick(() => {\n        attemptFocus(this.$refs.calendar)\n        this.$emit(EVENT_NAME_SHOWN)\n      })\n    },\n    onHidden() {\n      this.isVisible = false\n      this.$emit(EVENT_NAME_HIDDEN)\n    },\n    // Render helpers\n    defaultButtonFn({ isHovered, hasFocus }) {\n      return this.$createElement(isHovered || hasFocus ? BIconCalendarFill : BIconCalendar, {\n        attrs: { 'aria-hidden': 'true' }\n      })\n    }\n  },\n  render(h) {\n    const { localYMD, disabled, readonly, dark, $props, $scopedSlots } = this\n    const placeholder = isUndefinedOrNull(this.placeholder)\n      ? this.labelNoDateSelected\n      : this.placeholder\n\n    // Optional footer buttons\n    let $footer = []\n\n    if (this.todayButton) {\n      const label = this.labelTodayButton\n      $footer.push(\n        h(\n          BButton,\n          {\n            props: {\n              disabled: disabled || readonly,\n              size: 'sm',\n              variant: this.todayButtonVariant\n            },\n            attrs: { 'aria-label': label || null },\n            on: { click: this.onTodayButton }\n          },\n          label\n        )\n      )\n    }\n\n    if (this.resetButton) {\n      const label = this.labelResetButton\n      $footer.push(\n        h(\n          BButton,\n          {\n            props: {\n              disabled: disabled || readonly,\n              size: 'sm',\n              variant: this.resetButtonVariant\n            },\n            attrs: { 'aria-label': label || null },\n            on: { click: this.onResetButton }\n          },\n          label\n        )\n      )\n    }\n\n    if (this.closeButton) {\n      const label = this.labelCloseButton\n      $footer.push(\n        h(\n          BButton,\n          {\n            props: {\n              disabled,\n              size: 'sm',\n              variant: this.closeButtonVariant\n            },\n            attrs: { 'aria-label': label || null },\n            on: { click: this.onCloseButton }\n          },\n          label\n        )\n      )\n    }\n\n    if ($footer.length > 0) {\n      $footer = [\n        h(\n          'div',\n          {\n            staticClass: 'b-form-date-controls d-flex flex-wrap',\n            class: {\n              'justify-content-between': $footer.length > 1,\n              'justify-content-end': $footer.length < 2\n            }\n          },\n          $footer\n        )\n      ]\n    }\n\n    const $calendar = h(\n      BCalendar,\n      {\n        staticClass: 'b-form-date-calendar w-100',\n        props: {\n          ...pluckProps(calendarProps, $props),\n          hidden: !this.isVisible,\n          value: localYMD,\n          valueAsDate: false,\n          width: this.calendarWidth\n        },\n        on: {\n          selected: this.onSelected,\n          input: this.onInput,\n          context: this.onContext\n        },\n        scopedSlots: pick($scopedSlots, [\n          'nav-prev-decade',\n          'nav-prev-year',\n          'nav-prev-month',\n          'nav-this-month',\n          'nav-next-month',\n          'nav-next-year',\n          'nav-next-decade'\n        ]),\n        key: 'calendar',\n        ref: 'calendar'\n      },\n      $footer\n    )\n\n    return h(\n      BVFormBtnLabelControl,\n      {\n        staticClass: 'b-form-datepicker',\n        props: {\n          ...pluckProps(formBtnLabelControlProps, $props),\n          formattedValue: localYMD ? this.formattedValue : '',\n          id: this.safeId(),\n          lang: this.computedLang,\n          menuClass: [{ 'bg-dark': dark, 'text-light': dark }, this.menuClass],\n          placeholder,\n          rtl: this.isRTL,\n          value: localYMD\n        },\n        on: {\n          show: this.onShow,\n          shown: this.onShown,\n          hidden: this.onHidden\n        },\n        scopedSlots: {\n          [SLOT_NAME_BUTTON_CONTENT]: $scopedSlots[SLOT_NAME_BUTTON_CONTENT] || this.defaultButtonFn\n        },\n        ref: 'control'\n      },\n      [$calendar]\n    )\n  }\n})\n","import { BFormDatepicker } from './form-datepicker'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormDatepickerPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BFormDatepicker,\n    BDatepicker: BFormDatepicker\n  }\n})\n\nexport { FormDatepickerPlugin, BFormDatepicker }\n","import { Vue } from '../../vue'\nimport { NAME_FORM_FILE } from '../../constants/components'\nimport { HAS_PROMISE_SUPPORT } from '../../constants/env'\nimport { EVENT_NAME_CHANGE, EVENT_OPTIONS_PASSIVE } from '../../constants/events'\nimport {\n  PROP_TYPE_ARRAY,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_FUNCTION,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport {\n  SLOT_NAME_DROP_PLACEHOLDER,\n  SLOT_NAME_FILE_NAME,\n  SLOT_NAME_PLACEHOLDER\n} from '../../constants/slots'\nimport { RX_EXTENSION, RX_STAR } from '../../constants/regex'\nimport { File } from '../../constants/safe-types'\nimport { from as arrayFrom, flatten, flattenDeep } from '../../utils/array'\nimport { cloneDeep } from '../../utils/clone-deep'\nimport { closest } from '../../utils/dom'\nimport { eventOn, eventOff, stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isArray, isFile, isFunction, isNull, isUndefinedOrNull } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { makeModelMixin } from '../../utils/model'\nimport { sortKeys } from '../../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../../utils/props'\nimport { escapeRegExp } from '../../utils/string'\nimport { warn } from '../../utils/warn'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control'\nimport { formCustomMixin, props as formCustomProps } from '../../mixins/form-custom'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { props as formSizeProps } from '../../mixins/form-size'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n  type: [PROP_TYPE_ARRAY, File],\n  defaultValue: null,\n  validator: value => {\n    /* istanbul ignore next */\n    if (value === '') {\n      warn(VALUE_EMPTY_DEPRECATED_MSG, NAME_FORM_FILE)\n      return true\n    }\n    return isUndefinedOrNull(value) || isValidValue(value)\n  }\n})\n\nconst VALUE_EMPTY_DEPRECATED_MSG =\n  'Setting \"value\"/\"v-model\" to an empty string for reset is deprecated. Set to \"null\" instead.'\n\n// --- Helper methods ---\n\nconst isValidValue = value => isFile(value) || (isArray(value) && value.every(v => isValidValue(v)))\n\n// Helper method to \"safely\" get the entry from a data-transfer item\n/* istanbul ignore next: not supported in JSDOM */\nconst getDataTransferItemEntry = item =>\n  isFunction(item.getAsEntry)\n    ? item.getAsEntry()\n    : isFunction(item.webkitGetAsEntry)\n      ? item.webkitGetAsEntry()\n      : null\n\n// Drop handler function to get all files\n/* istanbul ignore next: not supported in JSDOM */\nconst getAllFileEntries = (dataTransferItemList, traverseDirectories = true) =>\n  Promise.all(\n    arrayFrom(dataTransferItemList)\n      .filter(item => item.kind === 'file')\n      .map(item => {\n        const entry = getDataTransferItemEntry(item)\n        if (entry) {\n          if (entry.isDirectory && traverseDirectories) {\n            return getAllFileEntriesInDirectory(entry.createReader(), `${entry.name}/`)\n          } else if (entry.isFile) {\n            return new Promise(resolve => {\n              entry.file(file => {\n                file.$path = ''\n                resolve(file)\n              })\n            })\n          }\n        }\n        return null\n      })\n      .filter(identity)\n  )\n\n// Get all the file entries (recursive) in a directory\n/* istanbul ignore next: not supported in JSDOM */\nconst getAllFileEntriesInDirectory = (directoryReader, path = '') =>\n  new Promise(resolve => {\n    const entryPromises = []\n    const readDirectoryEntries = () => {\n      directoryReader.readEntries(entries => {\n        if (entries.length === 0) {\n          resolve(Promise.all(entryPromises).then(entries => flatten(entries)))\n        } else {\n          entryPromises.push(\n            Promise.all(\n              entries\n                .map(entry => {\n                  if (entry) {\n                    if (entry.isDirectory) {\n                      return getAllFileEntriesInDirectory(\n                        entry.createReader(),\n                        `${path}${entry.name}/`\n                      )\n                    } else if (entry.isFile) {\n                      return new Promise(resolve => {\n                        entry.file(file => {\n                          file.$path = `${path}${file.name}`\n                          resolve(file)\n                        })\n                      })\n                    }\n                  }\n                  return null\n                })\n                .filter(identity)\n            )\n          )\n\n          readDirectoryEntries()\n        }\n      })\n    }\n\n    readDirectoryEntries()\n  })\n\n// --- Props ---\n\nconst props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ...formControlProps,\n    ...formCustomProps,\n    ...formStateProps,\n    ...formSizeProps,\n    accept: makeProp(PROP_TYPE_STRING, ''),\n    browseText: makeProp(PROP_TYPE_STRING, 'Browse'),\n    // Instruct input to capture from camera\n    capture: makeProp(PROP_TYPE_BOOLEAN, false),\n    directory: makeProp(PROP_TYPE_BOOLEAN, false),\n    dropPlaceholder: makeProp(PROP_TYPE_STRING, 'Drop files here'),\n    fileNameFormatter: makeProp(PROP_TYPE_FUNCTION),\n    multiple: makeProp(PROP_TYPE_BOOLEAN, false),\n    noDrop: makeProp(PROP_TYPE_BOOLEAN, false),\n    noDropPlaceholder: makeProp(PROP_TYPE_STRING, 'Not allowed'),\n    // TODO:\n    //   Should we deprecate this and only support flat file structures?\n    //   Nested file structures are only supported when files are dropped\n    //   A Chromium \"bug\" prevents `webkitEntries` from being populated\n    //   on the file input's `change` event and is marked as \"WontFix\"\n    //   Mozilla implemented the behavior the same way as Chromium\n    //   See: https://bugs.chromium.org/p/chromium/issues/detail?id=138987\n    //   See: https://bugzilla.mozilla.org/show_bug.cgi?id=1326031\n    noTraverse: makeProp(PROP_TYPE_BOOLEAN, false),\n    placeholder: makeProp(PROP_TYPE_STRING, 'No file chosen')\n  }),\n  NAME_FORM_FILE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormFile = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_FILE,\n  mixins: [\n    attrsMixin,\n    idMixin,\n    modelMixin,\n    normalizeSlotMixin,\n    formControlMixin,\n    formStateMixin,\n    formCustomMixin,\n    normalizeSlotMixin\n  ],\n  inheritAttrs: false,\n  props,\n  data() {\n    return {\n      files: [],\n      dragging: false,\n      // IE 11 doesn't respect setting `event.dataTransfer.dropEffect`,\n      // so we handle it ourselves as well\n      // https://stackoverflow.com/a/46915971/2744776\n      dropAllowed: !this.noDrop,\n      hasFocus: false\n    }\n  },\n  computed: {\n    // Convert `accept` to an array of `[{ RegExpr, isMime }, ...]`\n    computedAccept() {\n      let { accept } = this\n      accept = (accept || '')\n        .trim()\n        .split(/[,\\s]+/)\n        .filter(identity)\n\n      // Allow any file type/extension\n      if (accept.length === 0) {\n        return null\n      }\n\n      return accept.map(extOrType => {\n        let prop = 'name'\n        let startMatch = '^'\n        let endMatch = '$'\n        if (RX_EXTENSION.test(extOrType)) {\n          // File extension /\\.ext$/\n          startMatch = ''\n        } else {\n          // MIME type /^mime\\/.+$/ or /^mime\\/type$/\n          prop = 'type'\n          if (RX_STAR.test(extOrType)) {\n            endMatch = '.+$'\n            // Remove trailing `*`\n            extOrType = extOrType.slice(0, -1)\n          }\n        }\n        // Escape all RegExp special chars\n        extOrType = escapeRegExp(extOrType)\n        const rx = new RegExp(`${startMatch}${extOrType}${endMatch}`)\n        return { rx, prop }\n      })\n    },\n    computedCapture() {\n      const { capture } = this\n      return capture === true || capture === '' ? true : capture || null\n    },\n    computedAttrs() {\n      const { name, disabled, required, form, computedCapture, accept, multiple, directory } = this\n      return {\n        ...this.bvAttrs,\n        type: 'file',\n        id: this.safeId(),\n        name,\n        disabled,\n        required,\n        form: form || null,\n        capture: computedCapture,\n        accept: accept || null,\n        multiple,\n        directory,\n        webkitdirectory: directory,\n        'aria-required': required ? 'true' : null\n      }\n    },\n    computedFileNameFormatter() {\n      const { fileNameFormatter } = this\n      return hasPropFunction(fileNameFormatter) ? fileNameFormatter : this.defaultFileNameFormatter\n    },\n    clonedFiles() {\n      return cloneDeep(this.files)\n    },\n    flattenedFiles() {\n      return flattenDeep(this.files)\n    },\n    fileNames() {\n      return this.flattenedFiles.map(file => file.name)\n    },\n    labelContent() {\n      // Draging active\n      /* istanbul ignore next: used by drag/drop which can't be tested easily */\n      if (this.dragging && !this.noDrop) {\n        return (\n          // TODO: Add additional scope with file count, and other not-allowed reasons\n          this.normalizeSlot(SLOT_NAME_DROP_PLACEHOLDER, { allowed: this.dropAllowed }) ||\n          (this.dropAllowed\n            ? this.dropPlaceholder\n            : this.$createElement('span', { staticClass: 'text-danger' }, this.noDropPlaceholder))\n        )\n      }\n\n      // No file chosen\n      if (this.files.length === 0) {\n        return this.normalizeSlot(SLOT_NAME_PLACEHOLDER) || this.placeholder\n      }\n\n      const { flattenedFiles, clonedFiles, fileNames, computedFileNameFormatter } = this\n\n      // There is a slot for formatting the files/names\n      if (this.hasNormalizedSlot(SLOT_NAME_FILE_NAME)) {\n        return this.normalizeSlot(SLOT_NAME_FILE_NAME, {\n          files: flattenedFiles,\n          filesTraversed: clonedFiles,\n          names: fileNames\n        })\n      }\n\n      return computedFileNameFormatter(flattenedFiles, clonedFiles, fileNames)\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue) {\n      if (!newValue || (isArray(newValue) && newValue.length === 0)) {\n        this.reset()\n      }\n    },\n    files(newValue, oldValue) {\n      if (!looseEqual(newValue, oldValue)) {\n        const { multiple, noTraverse } = this\n        const files = !multiple || noTraverse ? flattenDeep(newValue) : newValue\n        this.$emit(MODEL_EVENT_NAME, multiple ? files : files[0] || null)\n      }\n    }\n  },\n  created() {\n    // Create private non-reactive props\n    this.$_form = null\n  },\n  mounted() {\n    // Listen for form reset events, to reset the file input\n    const $form = closest('form', this.$el)\n    if ($form) {\n      eventOn($form, 'reset', this.reset, EVENT_OPTIONS_PASSIVE)\n      this.$_form = $form\n    }\n  },\n  beforeDestroy() {\n    const $form = this.$_form\n    if ($form) {\n      eventOff($form, 'reset', this.reset, EVENT_OPTIONS_PASSIVE)\n    }\n  },\n  methods: {\n    isFileValid(file) {\n      if (!file) {\n        return false\n      }\n      const accept = this.computedAccept\n      return accept ? accept.some(a => a.rx.test(file[a.prop])) : true\n    },\n    isFilesArrayValid(files) {\n      return isArray(files) ? files.every(file => this.isFileValid(file)) : this.isFileValid(files)\n    },\n    defaultFileNameFormatter(flattenedFiles, clonedFiles, fileNames) {\n      return fileNames.join(', ')\n    },\n    setFiles(files) {\n      // Reset the dragging flags\n      this.dropAllowed = !this.noDrop\n      this.dragging = false\n      // Set the selected files\n      this.files = this.multiple\n        ? this.directory\n          ? files\n          : flattenDeep(files)\n        : flattenDeep(files).slice(0, 1)\n    },\n    /* istanbul ignore next: used by Drag/Drop */\n    setInputFiles(files) {\n      // Try an set the file input files array so that `required`\n      // constraint works for dropped files (will fail in IE11 though)\n      // To be used only when dropping files\n      try {\n        // Firefox < 62 workaround exploiting https://bugzilla.mozilla.org/show_bug.cgi?id=1422655\n        const dataTransfer = new ClipboardEvent('').clipboardData || new DataTransfer()\n        // Add flattened files to temp `dataTransfer` object to get a true `FileList` array\n        flattenDeep(cloneDeep(files)).forEach(file => {\n          // Make sure to remove the custom `$path` attribute\n          delete file.$path\n          dataTransfer.items.add(file)\n        })\n        this.$refs.input.files = dataTransfer.files\n      } catch {}\n    },\n    reset() {\n      // IE 11 doesn't support setting `$input.value` to `''` or `null`\n      // So we use this little extra hack to reset the value, just in case\n      // This also appears to work on modern browsers as well\n      // Wrapped in try in case IE 11 or mobile Safari crap out\n      try {\n        const $input = this.$refs.input\n        $input.value = ''\n        $input.type = ''\n        $input.type = 'file'\n      } catch {}\n      this.files = []\n    },\n    handleFiles(files, isDrop = false) {\n      if (isDrop) {\n        // When dropped, make sure to filter files with the internal `accept` logic\n        const filteredFiles = files.filter(this.isFilesArrayValid)\n        // Only update files when we have any after filtering\n        if (filteredFiles.length > 0) {\n          this.setFiles(filteredFiles)\n          // Try an set the file input's files array so that `required`\n          // constraint works for dropped files (will fail in IE 11 though)\n          this.setInputFiles(filteredFiles)\n        }\n      } else {\n        // We always update the files from the `change` event\n        this.setFiles(files)\n      }\n    },\n    focusHandler(event) {\n      // Bootstrap v4 doesn't have focus styling for custom file input\n      // Firefox has a `[type=file]:focus ~ sibling` selector issue,\n      // so we add a `focus` class to get around these bugs\n      if (this.plain || event.type === 'focusout') {\n        this.hasFocus = false\n      } else {\n        // Add focus styling for custom file input\n        this.hasFocus = true\n      }\n    },\n    onChange(event) {\n      const { type, target, dataTransfer = {} } = event\n      const isDrop = type === 'drop'\n\n      // Always emit original event\n      this.$emit(EVENT_NAME_CHANGE, event)\n\n      const items = arrayFrom(dataTransfer.items || [])\n      if (HAS_PROMISE_SUPPORT && items.length > 0 && !isNull(getDataTransferItemEntry(items[0]))) {\n        // Drop handling for modern browsers\n        // Supports nested directory structures in `directory` mode\n        /* istanbul ignore next: not supported in JSDOM */\n        getAllFileEntries(items, this.directory).then(files => this.handleFiles(files, isDrop))\n      } else {\n        // Standard file input handling (native file input change event),\n        // or fallback drop mode (IE 11 / Opera) which don't support `directory` mode\n        const files = arrayFrom(target.files || dataTransfer.files || []).map(file => {\n          // Add custom `$path` property to each file (to be consistent with drop mode)\n          file.$path = file.webkitRelativePath || ''\n          return file\n        })\n        this.handleFiles(files, isDrop)\n      }\n    },\n    onDragenter(event) {\n      stopEvent(event)\n      this.dragging = true\n      const { dataTransfer = {} } = event\n      // Early exit when the input or dropping is disabled\n      if (this.noDrop || this.disabled || !this.dropAllowed) {\n        // Show deny feedback\n        /* istanbul ignore next: not supported in JSDOM */\n        dataTransfer.dropEffect = 'none'\n        this.dropAllowed = false\n        return\n      }\n      /* istanbul ignore next: not supported in JSDOM */\n      dataTransfer.dropEffect = 'copy'\n    },\n    // Note this event fires repeatedly while the mouse is over the dropzone at\n    // intervals in the milliseconds, so avoid doing much processing in here\n    onDragover(event) {\n      stopEvent(event)\n      this.dragging = true\n      const { dataTransfer = {} } = event\n      // Early exit when the input or dropping is disabled\n      if (this.noDrop || this.disabled || !this.dropAllowed) {\n        // Show deny feedback\n        /* istanbul ignore next: not supported in JSDOM */\n        dataTransfer.dropEffect = 'none'\n        this.dropAllowed = false\n        return\n      }\n      /* istanbul ignore next: not supported in JSDOM */\n      dataTransfer.dropEffect = 'copy'\n    },\n    onDragleave(event) {\n      stopEvent(event)\n      this.$nextTick(() => {\n        this.dragging = false\n        // Reset `dropAllowed` to default\n        this.dropAllowed = !this.noDrop\n      })\n    },\n    // Triggered by a file drop onto drop target\n    onDrop(event) {\n      stopEvent(event)\n      this.dragging = false\n      // Early exit when the input or dropping is disabled\n      if (this.noDrop || this.disabled || !this.dropAllowed) {\n        this.$nextTick(() => {\n          // Reset `dropAllowed` to default\n          this.dropAllowed = !this.noDrop\n        })\n        return\n      }\n      this.onChange(event)\n    }\n  },\n  render(h) {\n    const { custom, plain, size, dragging, stateClass, bvAttrs } = this\n\n    // Form Input\n    const $input = h('input', {\n      class: [\n        {\n          'form-control-file': plain,\n          'custom-file-input': custom,\n          focus: custom && this.hasFocus\n        },\n        stateClass\n      ],\n      // With IE 11, the input gets in the \"way\" of the drop events,\n      // so we move it out of the way by putting it behind the label\n      // Bootstrap v4 has it in front\n      style: custom ? { zIndex: -5 } : {},\n      attrs: this.computedAttrs,\n      on: {\n        change: this.onChange,\n        focusin: this.focusHandler,\n        focusout: this.focusHandler,\n        reset: this.reset\n      },\n      ref: 'input'\n    })\n\n    if (plain) {\n      return $input\n    }\n\n    // Overlay label\n    const $label = h(\n      'label',\n      {\n        staticClass: 'custom-file-label',\n        class: { dragging },\n        attrs: {\n          for: this.safeId(),\n          // This goes away in Bootstrap v5\n          'data-browse': this.browseText || null\n        }\n      },\n      [\n        h(\n          'span',\n          {\n            staticClass: 'd-block form-file-text',\n            // `pointer-events: none` is used to make sure\n            // the drag events fire only on the label\n            style: { pointerEvents: 'none' }\n          },\n          [this.labelContent]\n        )\n      ]\n    )\n\n    // Return rendered custom file input\n    return h(\n      'div',\n      {\n        staticClass: 'custom-file b-form-file',\n        class: [{ [`b-custom-control-${size}`]: size }, stateClass, bvAttrs.class],\n        style: bvAttrs.style,\n        attrs: { id: this.safeId('_BV_file_outer_') },\n        on: {\n          dragenter: this.onDragenter,\n          dragover: this.onDragover,\n          dragleave: this.onDragleave,\n          drop: this.onDrop\n        }\n      },\n      [$input, $label]\n    )\n  }\n})\n","import { BFormFile } from './form-file'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormFilePlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BFormFile,\n    BFile: BFormFile\n  }\n})\n\nexport { FormFilePlugin, BFormFile }\n","import { toString } from './string'\n\nconst escapeChar = value => '\\\\' + value\n\n// The `cssEscape()` util is based on this `CSS.escape()` polyfill:\n// https://github.com/mathiasbynens/CSS.escape\nexport const cssEscape = value => {\n  value = toString(value)\n\n  const length = value.length\n  const firstCharCode = value.charCodeAt(0)\n\n  return value.split('').reduce((result, char, index) => {\n    const charCode = value.charCodeAt(index)\n\n    // If the character is NULL (U+0000), use (U+FFFD) as replacement\n    if (charCode === 0x0000) {\n      return result + '\\uFFFD'\n    }\n\n    // If the character ...\n    if (\n      // ... is U+007F OR\n      charCode === 0x007f ||\n      // ... is in the range [\\1-\\1F] (U+0001 to U+001F) OR ...\n      (charCode >= 0x0001 && charCode <= 0x001f) ||\n      // ... is the first character and is in the range [0-9] (U+0030 to U+0039) OR ...\n      (index === 0 && charCode >= 0x0030 && charCode <= 0x0039) ||\n      // ... is the second character and is in the range [0-9] (U+0030 to U+0039)\n      // and the first character is a `-` (U+002D) ...\n      (index === 1 && charCode >= 0x0030 && charCode <= 0x0039 && firstCharCode === 0x002d)\n    ) {\n      // ... https://drafts.csswg.org/cssom/#escape-a-character-as-code-point\n      return result + escapeChar(`${charCode.toString(16)} `)\n    }\n\n    // If the character ...\n    if (\n      // ... is the first character AND ...\n      index === 0 &&\n      // ... is a `-` (U+002D) AND ...\n      charCode === 0x002d &&\n      // ... there is no second character ...\n      length === 1\n    ) {\n      // ... use the escaped character\n      return result + escapeChar(char)\n    }\n\n    // If the character ...\n    if (\n      // ... is greater than or equal to U+0080 OR ...\n      charCode >= 0x0080 ||\n      // ... is `-` (U+002D) OR ...\n      charCode === 0x002d ||\n      // ... is `_` (U+005F) OR ...\n      charCode === 0x005f ||\n      // ... is in the range [0-9] (U+0030 to U+0039) OR ...\n      (charCode >= 0x0030 && charCode <= 0x0039) ||\n      // ... is in the range [A-Z] (U+0041 to U+005A) OR ...\n      (charCode >= 0x0041 && charCode <= 0x005a) ||\n      // ... is in the range [a-z] (U+0061 to U+007A) ...\n      (charCode >= 0x0061 && charCode <= 0x007a)\n    ) {\n      // ... use the character itself\n      return result + char\n    }\n\n    // Otherwise use the escaped character\n    // See: https://drafts.csswg.org/cssom/#escape-a-character\n    return result + escapeChar(char)\n  }, '')\n}\n","import { mergeData } from '../../vue'\nimport { NAME_COL } from '../../constants/components'\nimport {\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_NUMBER_STRING,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { RX_COL_CLASS } from '../../constants/regex'\nimport { arrayIncludes } from '../../utils/array'\nimport { getBreakpointsUpCached } from '../../utils/config'\nimport { identity } from '../../utils/identity'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { memoize } from '../../utils/memoize'\nimport { assign, create, keys, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, suffixPropName } from '../../utils/props'\nimport { lowerCase } from '../../utils/string'\n\n// --- Constants ---\n\nconst ALIGN_SELF_VALUES = ['auto', 'start', 'end', 'center', 'baseline', 'stretch']\n\n// --- Helper methods ---\n\n// Compute a breakpoint class name\nconst computeBreakpoint = (type, breakpoint, value) => {\n  let className = type\n  if (isUndefinedOrNull(value) || value === false) {\n    return undefined\n  }\n  if (breakpoint) {\n    className += `-${breakpoint}`\n  }\n  // Handling the boolean style prop when accepting `[Boolean, String, Number]`\n  // means Vue will not convert `<b-col sm></b-col>` to `sm: true` for us\n  // Since the default is `false`, '' indicates the prop's presence\n  if (type === 'col' && (value === '' || value === true)) {\n    // .col-md\n    return lowerCase(className)\n  }\n  // .order-md-6\n  className += `-${value}`\n  return lowerCase(className)\n}\n\n// Memoized function for better performance on generating class names\nconst computeBreakpointClass = memoize(computeBreakpoint)\n\n// Cached copy of the breakpoint prop names\nlet breakpointPropMap = create(null)\n\n// --- Props ---\n\n// Prop generator for lazy generation of props\nexport const generateProps = () => {\n  // Grab the breakpoints from the cached config (exclude the '' (xs) breakpoint)\n  const breakpoints = getBreakpointsUpCached().filter(identity)\n\n  // i.e. 'col-sm', 'col-md-6', 'col-lg-auto', ...\n  const breakpointCol = breakpoints.reduce((props, breakpoint) => {\n    props[breakpoint] = makeProp(PROP_TYPE_BOOLEAN_NUMBER_STRING)\n    return props\n  }, create(null))\n\n  // i.e. 'offset-md-1', 'offset-lg-12', ...\n  const breakpointOffset = breakpoints.reduce((props, breakpoint) => {\n    props[suffixPropName(breakpoint, 'offset')] = makeProp(PROP_TYPE_NUMBER_STRING)\n    return props\n  }, create(null))\n\n  // i.e. 'order-md-1', 'order-lg-12', ...\n  const breakpointOrder = breakpoints.reduce((props, breakpoint) => {\n    props[suffixPropName(breakpoint, 'order')] = makeProp(PROP_TYPE_NUMBER_STRING)\n    return props\n  }, create(null))\n\n  // For loop doesn't need to check `.hasOwnProperty()`\n  // when using an object created from `null`\n  breakpointPropMap = assign(create(null), {\n    col: keys(breakpointCol),\n    offset: keys(breakpointOffset),\n    order: keys(breakpointOrder)\n  })\n\n  // Return the generated props\n  return makePropsConfigurable(\n    sortKeys({\n      ...breakpointCol,\n      ...breakpointOffset,\n      ...breakpointOrder,\n      // Flex alignment\n      alignSelf: makeProp(PROP_TYPE_STRING, null, value => {\n        return arrayIncludes(ALIGN_SELF_VALUES, value)\n      }),\n      // Generic flexbox 'col' (xs)\n      col: makeProp(PROP_TYPE_BOOLEAN, false),\n      // i.e. 'col-1', 'col-2', 'col-auto', ...\n      cols: makeProp(PROP_TYPE_NUMBER_STRING),\n      offset: makeProp(PROP_TYPE_NUMBER_STRING),\n      order: makeProp(PROP_TYPE_NUMBER_STRING),\n      tag: makeProp(PROP_TYPE_STRING, 'div')\n    }),\n    NAME_COL\n  )\n}\n\n// --- Main component ---\n\n// We do not use Vue.extend here as that would evaluate the props\n// immediately, which we do not want to happen\n// @vue/component\nexport const BCol = {\n  name: NAME_COL,\n  functional: true,\n  get props() {\n    // Allow props to be lazy evaled on first access and\n    // then they become a non-getter afterwards.\n    // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get#Smart_self-overwriting_lazy_getters\n    delete this.props\n    // eslint-disable-next-line no-return-assign\n    return (this.props = generateProps())\n  },\n  render(h, { props, data, children }) {\n    const { cols, offset, order, alignSelf } = props\n\n    const classList = []\n    // Loop through `col`, `offset`, `order` breakpoint props\n    for (const type in breakpointPropMap) {\n      // Returns colSm, offset, offsetSm, orderMd, etc.\n      const keys = breakpointPropMap[type]\n      for (let i = 0; i < keys.length; i++) {\n        // computeBreakpoint(col, colSm => Sm, value=[String, Number, Boolean])\n        const c = computeBreakpointClass(type, keys[i].replace(type, ''), props[keys[i]])\n        // If a class is returned, push it onto the array.\n        if (c) {\n          classList.push(c)\n        }\n      }\n    }\n\n    const hasColClasses = classList.some(className => RX_COL_CLASS.test(className))\n\n    classList.push({\n      // Default to .col if no other col-{bp}-* classes generated nor `cols` specified.\n      col: props.col || (!hasColClasses && !cols),\n      [`col-${cols}`]: cols,\n      [`offset-${offset}`]: offset,\n      [`order-${order}`]: order,\n      [`align-self-${alignSelf}`]: alignSelf\n    })\n\n    return h(props.tag, mergeData(data, { class: classList }), children)\n  }\n}\n","import { NAME_FORM_GROUP } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport {\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { RX_SPACE_SPLIT } from '../../constants/regex'\nimport {\n  SLOT_NAME_DEFAULT,\n  SLOT_NAME_DESCRIPTION,\n  SLOT_NAME_INVALID_FEEDBACK,\n  SLOT_NAME_LABEL,\n  SLOT_NAME_VALID_FEEDBACK\n} from '../../constants/slots'\nimport { arrayIncludes } from '../../utils/array'\nimport { getBreakpointsUpCached } from '../../utils/config'\nimport { cssEscape } from '../../utils/css-escape'\nimport {\n  select,\n  selectAll,\n  isVisible,\n  setAttr,\n  removeAttr,\n  getAttr,\n  attemptFocus\n} from '../../utils/dom'\nimport { identity } from '../../utils/identity'\nimport { isBoolean } from '../../utils/inspect'\nimport { toInteger } from '../../utils/number'\nimport { create, keys, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, suffixPropName } from '../../utils/props'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BCol } from '../layout/col'\nimport { BFormRow } from '../layout/form-row'\nimport { BFormText } from '../form/form-text'\nimport { BFormInvalidFeedback } from '../form/form-invalid-feedback'\nimport { BFormValidFeedback } from '../form/form-valid-feedback'\n\n// --- Constants ---\n\nconst INPUTS = ['input', 'select', 'textarea']\n\n// Selector for finding first input in the form group\nconst INPUT_SELECTOR = INPUTS.map(v => `${v}:not([disabled])`).join()\n\n// A list of interactive elements (tag names) inside `<b-form-group>`'s legend\nconst LEGEND_INTERACTIVE_ELEMENTS = [...INPUTS, 'a', 'button', 'label']\n\n// --- Props ---\n\n// Prop generator for lazy generation of props\nexport const generateProps = () =>\n  makePropsConfigurable(\n    sortKeys({\n      ...idProps,\n      ...formStateProps,\n      ...getBreakpointsUpCached().reduce((props, breakpoint) => {\n        // i.e. 'content-cols', 'content-cols-sm', 'content-cols-md', ...\n        props[suffixPropName(breakpoint, 'contentCols')] = makeProp(PROP_TYPE_BOOLEAN_NUMBER_STRING)\n        // i.e. 'label-align', 'label-align-sm', 'label-align-md', ...\n        props[suffixPropName(breakpoint, 'labelAlign')] = makeProp(PROP_TYPE_STRING)\n        // i.e. 'label-cols', 'label-cols-sm', 'label-cols-md', ...\n        props[suffixPropName(breakpoint, 'labelCols')] = makeProp(PROP_TYPE_BOOLEAN_NUMBER_STRING)\n        return props\n      }, create(null)),\n      description: makeProp(PROP_TYPE_STRING),\n      disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n      feedbackAriaLive: makeProp(PROP_TYPE_STRING, 'assertive'),\n      invalidFeedback: makeProp(PROP_TYPE_STRING),\n      label: makeProp(PROP_TYPE_STRING),\n      labelClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n      labelFor: makeProp(PROP_TYPE_STRING),\n      labelSize: makeProp(PROP_TYPE_STRING),\n      labelSrOnly: makeProp(PROP_TYPE_BOOLEAN, false),\n      tooltip: makeProp(PROP_TYPE_BOOLEAN, false),\n      validFeedback: makeProp(PROP_TYPE_STRING),\n      validated: makeProp(PROP_TYPE_BOOLEAN, false)\n    }),\n    NAME_FORM_GROUP\n  )\n\n// --- Main component ---\n\n// We do not use `Vue.extend()` here as that would evaluate the props\n// immediately, which we do not want to happen\n// @vue/component\nexport const BFormGroup = {\n  name: NAME_FORM_GROUP,\n  mixins: [idMixin, formStateMixin, normalizeSlotMixin],\n  get props() {\n    // Allow props to be lazy evaled on first access and\n    // then they become a non-getter afterwards\n    // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get#Smart_self-overwriting_lazy_getters\n    delete this.props\n    // eslint-disable-next-line no-return-assign\n    return (this.props = generateProps())\n  },\n  data() {\n    return {\n      ariaDescribedby: null\n    }\n  },\n  computed: {\n    contentColProps() {\n      return this.getColProps(this.$props, 'content')\n    },\n    labelAlignClasses() {\n      return this.getAlignClasses(this.$props, 'label')\n    },\n    labelColProps() {\n      return this.getColProps(this.$props, 'label')\n    },\n    isHorizontal() {\n      // Determine if the form group will be rendered horizontal\n      // based on the existence of 'content-col' or 'label-col' props\n      return keys(this.contentColProps).length > 0 || keys(this.labelColProps).length > 0\n    }\n  },\n  watch: {\n    ariaDescribedby(newValue, oldValue) {\n      if (newValue !== oldValue) {\n        this.updateAriaDescribedby(newValue, oldValue)\n      }\n    }\n  },\n  mounted() {\n    this.$nextTick(() => {\n      // Set `aria-describedby` on the input specified by `labelFor`\n      // We do this in a `$nextTick()` to ensure the children have finished rendering\n      this.updateAriaDescribedby(this.ariaDescribedby)\n    })\n  },\n  methods: {\n    getAlignClasses(props, prefix) {\n      return getBreakpointsUpCached().reduce((result, breakpoint) => {\n        const propValue = props[suffixPropName(breakpoint, `${prefix}Align`)] || null\n        if (propValue) {\n          result.push(['text', breakpoint, propValue].filter(identity).join('-'))\n        }\n\n        return result\n      }, [])\n    },\n    getColProps(props, prefix) {\n      return getBreakpointsUpCached().reduce((result, breakpoint) => {\n        let propValue = props[suffixPropName(breakpoint, `${prefix}Cols`)]\n\n        // Handle case where the prop's value is an empty string,\n        // which represents `true`\n        propValue = propValue === '' ? true : propValue || false\n\n        if (!isBoolean(propValue) && propValue !== 'auto') {\n          // Convert to column size to number\n          propValue = toInteger(propValue, 0)\n          // Ensure column size is greater than `0`\n          propValue = propValue > 0 ? propValue : false\n        }\n\n        // Add the prop to the list of props to give to `<b-col>`\n        // If breakpoint is '' (`${prefix}Cols` is `true`), then we use\n        // the 'col' prop to make equal width at 'xs'\n        if (propValue) {\n          result[breakpoint || (isBoolean(propValue) ? 'col' : 'cols')] = propValue\n        }\n\n        return result\n      }, {})\n    },\n    // Sets the `aria-describedby` attribute on the input if `labelFor` is set\n    // Optionally accepts a string of IDs to remove as the second parameter\n    // Preserves any `aria-describedby` value(s) user may have on input\n    updateAriaDescribedby(newValue, oldValue) {\n      const { labelFor } = this\n      if (IS_BROWSER && labelFor) {\n        // We need to escape `labelFor` since it can be user-provided\n        const $input = select(`#${cssEscape(labelFor)}`, this.$refs.content)\n        if ($input) {\n          const attr = 'aria-describedby'\n          const newIds = (newValue || '').split(RX_SPACE_SPLIT)\n          const oldIds = (oldValue || '').split(RX_SPACE_SPLIT)\n\n          // Update ID list, preserving any original IDs\n          // and ensuring the ID's are unique\n          const ids = (getAttr($input, attr) || '')\n            .split(RX_SPACE_SPLIT)\n            .filter(id => !arrayIncludes(oldIds, id))\n            .concat(newIds)\n            .filter((id, index, ids) => ids.indexOf(id) === index)\n            .filter(identity)\n            .join(' ')\n            .trim()\n\n          if (ids) {\n            setAttr($input, attr, ids)\n          } else {\n            removeAttr($input, attr)\n          }\n        }\n      }\n    },\n    onLegendClick(event) {\n      // Don't do anything if `labelFor` is set\n      /* istanbul ignore next: clicking a label will focus the input, so no need to test */\n      if (this.labelFor) {\n        return\n      }\n\n      const { target } = event\n      const tagName = target ? target.tagName : ''\n\n      // If clicked an interactive element inside legend,\n      // we just let the default happen\n      /* istanbul ignore next */\n      if (LEGEND_INTERACTIVE_ELEMENTS.indexOf(tagName) !== -1) {\n        return\n      }\n\n      // If only a single input, focus it, emulating label behaviour\n      const inputs = selectAll(INPUT_SELECTOR, this.$refs.content).filter(isVisible)\n      if (inputs.length === 1) {\n        attemptFocus(inputs[0])\n      }\n    }\n  },\n  render(h) {\n    const {\n      computedState: state,\n      feedbackAriaLive,\n      isHorizontal,\n      labelFor,\n      normalizeSlot,\n      safeId,\n      tooltip\n    } = this\n    const id = safeId()\n    const isFieldset = !labelFor\n\n    let $label = h()\n    const labelContent = normalizeSlot(SLOT_NAME_LABEL) || this.label\n    const labelId = labelContent ? safeId('_BV_label_') : null\n    if (labelContent || isHorizontal) {\n      const { labelSize, labelColProps } = this\n      const labelTag = isFieldset ? 'legend' : 'label'\n      if (this.labelSrOnly) {\n        if (labelContent) {\n          $label = h(\n            labelTag,\n            {\n              class: 'sr-only',\n              attrs: { id: labelId, for: labelFor || null }\n            },\n            [labelContent]\n          )\n        }\n        $label = h(isHorizontal ? BCol : 'div', { props: isHorizontal ? labelColProps : {} }, [\n          $label\n        ])\n      } else {\n        $label = h(\n          isHorizontal ? BCol : labelTag,\n          {\n            on: isFieldset ? { click: this.onLegendClick } : {},\n            props: isHorizontal ? { ...labelColProps, tag: labelTag } : {},\n            attrs: {\n              id: labelId,\n              for: labelFor || null,\n              // We add a `tabindex` to legend so that screen readers\n              // will properly read the `aria-labelledby` in IE\n              tabindex: isFieldset ? '-1' : null\n            },\n            class: [\n              // Hide the focus ring on the legend\n              isFieldset ? 'bv-no-focus-ring' : '',\n              // When horizontal or if a legend is rendered, add 'col-form-label' class\n              // for correct sizing as Bootstrap has inconsistent font styling for\n              // legend in non-horizontal form groups\n              // See: https://github.com/twbs/bootstrap/issues/27805\n              isHorizontal || isFieldset ? 'col-form-label' : '',\n              // Emulate label padding top of `0` on legend when not horizontal\n              !isHorizontal && isFieldset ? 'pt-0' : '',\n              // If not horizontal and not a legend, we add 'd-block' class to label\n              // so that label-align works\n              !isHorizontal && !isFieldset ? 'd-block' : '',\n              labelSize ? `col-form-label-${labelSize}` : '',\n              this.labelAlignClasses,\n              this.labelClass\n            ]\n          },\n          [labelContent]\n        )\n      }\n    }\n\n    let $invalidFeedback = h()\n    const invalidFeedbackContent = normalizeSlot(SLOT_NAME_INVALID_FEEDBACK) || this.invalidFeedback\n    const invalidFeedbackId = invalidFeedbackContent ? safeId('_BV_feedback_invalid_') : null\n    if (invalidFeedbackContent) {\n      $invalidFeedback = h(\n        BFormInvalidFeedback,\n        {\n          props: {\n            ariaLive: feedbackAriaLive,\n            id: invalidFeedbackId,\n            role: feedbackAriaLive ? 'alert' : null,\n            // If state is explicitly `false`, always show the feedback\n            state,\n            tooltip\n          },\n          attrs: { tabindex: invalidFeedbackContent ? '-1' : null }\n        },\n        [invalidFeedbackContent]\n      )\n    }\n\n    let $validFeedback = h()\n    const validFeedbackContent = normalizeSlot(SLOT_NAME_VALID_FEEDBACK) || this.validFeedback\n    const validFeedbackId = validFeedbackContent ? safeId('_BV_feedback_valid_') : null\n    if (validFeedbackContent) {\n      $validFeedback = h(\n        BFormValidFeedback,\n        {\n          props: {\n            ariaLive: feedbackAriaLive,\n            id: validFeedbackId,\n            role: feedbackAriaLive ? 'alert' : null,\n            // If state is explicitly `true`, always show the feedback\n            state,\n            tooltip\n          },\n          attrs: { tabindex: validFeedbackContent ? '-1' : null }\n        },\n        [validFeedbackContent]\n      )\n    }\n\n    let $description = h()\n    const descriptionContent = normalizeSlot(SLOT_NAME_DESCRIPTION) || this.description\n    const descriptionId = descriptionContent ? safeId('_BV_description_') : null\n    if (descriptionContent) {\n      $description = h(\n        BFormText,\n        {\n          attrs: {\n            id: descriptionId,\n            tabindex: '-1'\n          }\n        },\n        [descriptionContent]\n      )\n    }\n\n    // Update `ariaDescribedby`\n    // Screen readers will read out any content linked to by `aria-describedby`\n    // even if the content is hidden with `display: none;`, hence we only include\n    // feedback IDs if the form group's state is explicitly valid or invalid\n    const ariaDescribedby = (this.ariaDescribedby =\n      [\n        descriptionId,\n        state === false ? invalidFeedbackId : null,\n        state === true ? validFeedbackId : null\n      ]\n        .filter(identity)\n        .join(' ') || null)\n\n    const $content = h(\n      isHorizontal ? BCol : 'div',\n      {\n        props: isHorizontal ? this.contentColProps : {},\n        ref: 'content'\n      },\n      [\n        normalizeSlot(SLOT_NAME_DEFAULT, { ariaDescribedby, descriptionId, id, labelId }) || h(),\n        $invalidFeedback,\n        $validFeedback,\n        $description\n      ]\n    )\n\n    // Return it wrapped in a form group\n    // Note: Fieldsets do not support adding `row` or `form-row` directly\n    // to them due to browser specific render issues, so we move the `form-row`\n    // to an inner wrapper div when horizontal and using a fieldset\n    return h(\n      isFieldset ? 'fieldset' : isHorizontal ? BFormRow : 'div',\n      {\n        staticClass: 'form-group',\n        class: [{ 'was-validated': this.validated }, this.stateClass],\n        attrs: {\n          id,\n          disabled: isFieldset ? this.disabled : null,\n          role: isFieldset ? null : 'group',\n          'aria-invalid': this.computedAriaInvalid,\n          // Only apply `aria-labelledby` if we are a horizontal fieldset\n          // as the legend is no longer a direct child of fieldset\n          'aria-labelledby': isFieldset && isHorizontal ? labelId : null\n        }\n      },\n      isHorizontal && isFieldset ? [h(BFormRow, [$label, $content])] : [$label, $content]\n    )\n  }\n}\n","import { BFormGroup } from './form-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormGroupPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BFormGroup,\n    BFormFieldset: BFormGroup\n  }\n})\n\nexport { FormGroupPlugin, BFormGroup }\n","import { Vue } from '../vue'\n\n// @vue/component\nexport const formSelectionMixin = Vue.extend({\n  computed: {\n    selectionStart: {\n      // Expose selectionStart for formatters, etc\n      cache: false,\n      /* istanbul ignore next */\n      get() {\n        return this.$refs.input.selectionStart\n      },\n      /* istanbul ignore next */\n      set(val) {\n        this.$refs.input.selectionStart = val\n      }\n    },\n    selectionEnd: {\n      // Expose selectionEnd for formatters, etc\n      cache: false,\n      /* istanbul ignore next */\n      get() {\n        return this.$refs.input.selectionEnd\n      },\n      /* istanbul ignore next */\n      set(val) {\n        this.$refs.input.selectionEnd = val\n      }\n    },\n    selectionDirection: {\n      // Expose selectionDirection for formatters, etc\n      cache: false,\n      /* istanbul ignore next */\n      get() {\n        return this.$refs.input.selectionDirection\n      },\n      /* istanbul ignore next */\n      set(val) {\n        this.$refs.input.selectionDirection = val\n      }\n    }\n  },\n  methods: {\n    /* istanbul ignore next */\n    select() {\n      // For external handler that may want a select() method\n      this.$refs.input.select(...arguments)\n    },\n    /* istanbul ignore next */\n    setSelectionRange() {\n      // For external handler that may want a setSelectionRange(a,b,c) method\n      this.$refs.input.setSelectionRange(...arguments)\n    },\n    /* istanbul ignore next */\n    setRangeText() {\n      // For external handler that may want a setRangeText(a,b,c) method\n      this.$refs.input.setRangeText(...arguments)\n    }\n  }\n})\n","import { Vue } from '../vue'\nimport {\n  EVENT_NAME_BLUR,\n  EVENT_NAME_CHANGE,\n  EVENT_NAME_INPUT,\n  EVENT_NAME_UPDATE,\n  HOOK_EVENT_NAME_BEFORE_DESTROY\n} from '../constants/events'\nimport {\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_STRING,\n  PROP_TYPE_FUNCTION,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../constants/props'\nimport { attemptBlur, attemptFocus } from '../utils/dom'\nimport { stopEvent } from '../utils/events'\nimport { mathMax } from '../utils/math'\nimport { makeModelMixin } from '../utils/model'\nimport { toInteger, toFloat } from '../utils/number'\nimport { sortKeys } from '../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../utils/props'\nimport { toString } from '../utils/string'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n  type: PROP_TYPE_NUMBER_STRING,\n  defaultValue: '',\n  event: EVENT_NAME_UPDATE\n})\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...modelProps,\n    ariaInvalid: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n    autocomplete: makeProp(PROP_TYPE_STRING),\n    // Debounce timeout (in ms). Not applicable with `lazy` prop\n    debounce: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n    formatter: makeProp(PROP_TYPE_FUNCTION),\n    // Only update the `v-model` on blur/change events\n    lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n    lazyFormatter: makeProp(PROP_TYPE_BOOLEAN, false),\n    number: makeProp(PROP_TYPE_BOOLEAN, false),\n    placeholder: makeProp(PROP_TYPE_STRING),\n    plaintext: makeProp(PROP_TYPE_BOOLEAN, false),\n    readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n    trim: makeProp(PROP_TYPE_BOOLEAN, false)\n  }),\n  'formTextControls'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formTextMixin = Vue.extend({\n  mixins: [modelMixin],\n  props,\n  data() {\n    const value = this[MODEL_PROP_NAME]\n    return {\n      localValue: toString(value),\n      vModelValue: this.modifyValue(value)\n    }\n  },\n  computed: {\n    computedClass() {\n      const { plaintext, type } = this\n      const isRange = type === 'range'\n      const isColor = type === 'color'\n\n      return [\n        {\n          // Range input needs class `custom-range`\n          'custom-range': isRange,\n          // `plaintext` not supported by `type=\"range\"` or `type=\"color\"`\n          'form-control-plaintext': plaintext && !isRange && !isColor,\n          // `form-control` not used by `type=\"range\"` or `plaintext`\n          // Always used by `type=\"color\"`\n          'form-control': isColor || (!plaintext && !isRange)\n        },\n        this.sizeFormClass,\n        this.stateClass\n      ]\n    },\n    computedDebounce() {\n      // Ensure we have a positive number equal to or greater than 0\n      return mathMax(toInteger(this.debounce, 0), 0)\n    },\n    hasFormatter() {\n      return hasPropFunction(this.formatter)\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue) {\n      const stringifyValue = toString(newValue)\n      const modifiedValue = this.modifyValue(newValue)\n      if (stringifyValue !== this.localValue || modifiedValue !== this.vModelValue) {\n        // Clear any pending debounce timeout, as we are overwriting the user input\n        this.clearDebounce()\n        // Update the local values\n        this.localValue = stringifyValue\n        this.vModelValue = modifiedValue\n      }\n    }\n  },\n  created() {\n    // Create private non-reactive props\n    this.$_inputDebounceTimer = null\n  },\n  mounted() {\n    // Set up destroy handler\n    this.$on(HOOK_EVENT_NAME_BEFORE_DESTROY, this.clearDebounce)\n  },\n  beforeDestroy() {\n    this.clearDebounce()\n  },\n  methods: {\n    clearDebounce() {\n      clearTimeout(this.$_inputDebounceTimer)\n      this.$_inputDebounceTimer = null\n    },\n    formatValue(value, event, force = false) {\n      value = toString(value)\n      if (this.hasFormatter && (!this.lazyFormatter || force)) {\n        value = this.formatter(value, event)\n      }\n      return value\n    },\n    modifyValue(value) {\n      value = toString(value)\n      // Emulate `.trim` modifier behaviour\n      if (this.trim) {\n        value = value.trim()\n      }\n      // Emulate `.number` modifier behaviour\n      if (this.number) {\n        value = toFloat(value, value)\n      }\n      return value\n    },\n    updateValue(value, force = false) {\n      const { lazy } = this\n      if (lazy && !force) {\n        return\n      }\n      // Make sure to always clear the debounce when `updateValue()`\n      // is called, even when the v-model hasn't changed\n      this.clearDebounce()\n      // Define the shared update logic in a method to be able to use\n      // it for immediate and debounced value changes\n      const doUpdate = () => {\n        value = this.modifyValue(value)\n        if (value !== this.vModelValue) {\n          this.vModelValue = value\n          this.$emit(MODEL_EVENT_NAME, value)\n        } else if (this.hasFormatter) {\n          // When the `vModelValue` hasn't changed but the actual input value\n          // is out of sync, make sure to change it to the given one\n          // Usually caused by browser autocomplete and how it triggers the\n          // change or input event, or depending on the formatter function\n          // https://github.com/bootstrap-vue/bootstrap-vue/issues/2657\n          // https://github.com/bootstrap-vue/bootstrap-vue/issues/3498\n          /* istanbul ignore next: hard to test */\n          const $input = this.$refs.input\n          /* istanbul ignore if: hard to test out of sync value */\n          if ($input && value !== $input.value) {\n            $input.value = value\n          }\n        }\n      }\n      // Only debounce the value update when a value greater than `0`\n      // is set and we are not in lazy mode or this is a forced update\n      const debounce = this.computedDebounce\n      if (debounce > 0 && !lazy && !force) {\n        this.$_inputDebounceTimer = setTimeout(doUpdate, debounce)\n      } else {\n        // Immediately update the v-model\n        doUpdate()\n      }\n    },\n    onInput(event) {\n      // `event.target.composing` is set by Vue\n      // https://github.com/vuejs/vue/blob/dev/src/platforms/web/runtime/directives/model.js\n      // TODO: Is this needed now with the latest Vue?\n      /* istanbul ignore if: hard to test composition events */\n      if (event.target.composing) {\n        return\n      }\n      const { value } = event.target\n      const formattedValue = this.formatValue(value, event)\n      // Exit when the `formatter` function strictly returned `false`\n      // or prevented the input event\n      /* istanbul ignore next */\n      if (formattedValue === false || event.defaultPrevented) {\n        stopEvent(event, { propagation: false })\n        return\n      }\n      this.localValue = formattedValue\n      this.updateValue(formattedValue)\n      this.$emit(EVENT_NAME_INPUT, formattedValue)\n    },\n    onChange(event) {\n      const { value } = event.target\n      const formattedValue = this.formatValue(value, event)\n      // Exit when the `formatter` function strictly returned `false`\n      // or prevented the input event\n      /* istanbul ignore next */\n      if (formattedValue === false || event.defaultPrevented) {\n        stopEvent(event, { propagation: false })\n        return\n      }\n      this.localValue = formattedValue\n      this.updateValue(formattedValue, true)\n      this.$emit(EVENT_NAME_CHANGE, formattedValue)\n    },\n    onBlur(event) {\n      // Apply the `localValue` on blur to prevent cursor jumps\n      // on mobile browsers (e.g. caused by autocomplete)\n      const { value } = event.target\n      const formattedValue = this.formatValue(value, event, true)\n      if (formattedValue !== false) {\n        // We need to use the modified value here to apply the\n        // `.trim` and `.number` modifiers properly\n        this.localValue = toString(this.modifyValue(formattedValue))\n        // We pass the formatted value here since the `updateValue` method\n        // handles the modifiers itself\n        this.updateValue(formattedValue, true)\n      }\n      // Emit native blur event\n      this.$emit(EVENT_NAME_BLUR, event)\n    },\n    focus() {\n      // For external handler that may want a focus method\n      if (!this.disabled) {\n        attemptFocus(this.$el)\n      }\n    },\n    blur() {\n      // For external handler that may want a blur method\n      if (!this.disabled) {\n        attemptBlur(this.$el)\n      }\n    }\n  }\n})\n","import { Vue } from '../vue'\n\n// @vue/component\nexport const formValidityMixin = Vue.extend({\n  computed: {\n    validity: {\n      // Expose validity property\n      cache: false,\n      /* istanbul ignore next */\n      get() {\n        return this.$refs.input.validity\n      }\n    },\n    validationMessage: {\n      // Expose validationMessage property\n      cache: false,\n      /* istanbul ignore next */\n      get() {\n        return this.$refs.input.validationMessage\n      }\n    },\n    willValidate: {\n      // Expose willValidate property\n      cache: false,\n      /* istanbul ignore next */\n      get() {\n        return this.$refs.input.willValidate\n      }\n    }\n  },\n  methods: {\n    /* istanbul ignore next */\n    setCustomValidity() {\n      // For external handler that may want a setCustomValidity(...) method\n      return this.$refs.input.setCustomValidity(...arguments)\n    },\n    /* istanbul ignore next */\n    checkValidity() {\n      // For external handler that may want a checkValidity(...) method\n      return this.$refs.input.checkValidity(...arguments)\n    },\n    /* istanbul ignore next */\n    reportValidity() {\n      // For external handler that may want a reportValidity(...) method\n      return this.$refs.input.reportValidity(...arguments)\n    }\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_INPUT } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { arrayIncludes } from '../../utils/array'\nimport { attemptBlur } from '../../utils/dom'\nimport { eventOn, eventOff, eventOnOff, stopEvent } from '../../utils/events'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control'\nimport { formSelectionMixin } from '../../mixins/form-selection'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { formTextMixin, props as formTextProps } from '../../mixins/form-text'\nimport { formValidityMixin } from '../../mixins/form-validity'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { listenersMixin } from '../../mixins/listeners'\n\n// --- Constants ---\n\n// Valid supported input types\nconst TYPES = [\n  'text',\n  'password',\n  'email',\n  'number',\n  'url',\n  'tel',\n  'search',\n  'range',\n  'color',\n  'date',\n  'time',\n  'datetime',\n  'datetime-local',\n  'month',\n  'week'\n]\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...formControlProps,\n    ...formSizeProps,\n    ...formStateProps,\n    ...formTextProps,\n    list: makeProp(PROP_TYPE_STRING),\n    max: makeProp(PROP_TYPE_NUMBER_STRING),\n    min: makeProp(PROP_TYPE_NUMBER_STRING),\n    // Disable mousewheel to prevent wheel from changing values (i.e. number/date)\n    noWheel: makeProp(PROP_TYPE_BOOLEAN, false),\n    step: makeProp(PROP_TYPE_NUMBER_STRING),\n    type: makeProp(PROP_TYPE_STRING, 'text', type => {\n      return arrayIncludes(TYPES, type)\n    })\n  }),\n  NAME_FORM_INPUT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormInput = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_INPUT,\n  // Mixin order is important!\n  mixins: [\n    listenersMixin,\n    idMixin,\n    formControlMixin,\n    formSizeMixin,\n    formStateMixin,\n    formTextMixin,\n    formSelectionMixin,\n    formValidityMixin\n  ],\n  props,\n  computed: {\n    localType() {\n      // We only allow certain types\n      const { type } = this\n      return arrayIncludes(TYPES, type) ? type : 'text'\n    },\n    computedAttrs() {\n      const { localType: type, name, form, disabled, placeholder, required, min, max, step } = this\n\n      return {\n        id: this.safeId(),\n        name,\n        form,\n        type,\n        disabled,\n        placeholder,\n        required,\n        autocomplete: this.autocomplete || null,\n        readonly: this.readonly || this.plaintext,\n        min,\n        max,\n        step,\n        list: type !== 'password' ? this.list : null,\n        'aria-required': required ? 'true' : null,\n        'aria-invalid': this.computedAriaInvalid\n      }\n    },\n    computedListeners() {\n      return {\n        ...this.bvListeners,\n        input: this.onInput,\n        change: this.onChange,\n        blur: this.onBlur\n      }\n    }\n  },\n  watch: {\n    noWheel(newValue) {\n      this.setWheelStopper(newValue)\n    }\n  },\n  mounted() {\n    this.setWheelStopper(this.noWheel)\n  },\n  /* istanbul ignore next */\n  deactivated() {\n    // Turn off listeners when keep-alive component deactivated\n    /* istanbul ignore next */\n    this.setWheelStopper(false)\n  },\n  /* istanbul ignore next */\n  activated() {\n    // Turn on listeners (if no-wheel) when keep-alive component activated\n    /* istanbul ignore next */\n    this.setWheelStopper(this.noWheel)\n  },\n  beforeDestroy() {\n    /* istanbul ignore next */\n    this.setWheelStopper(false)\n  },\n  methods: {\n    setWheelStopper(on) {\n      const input = this.$el\n      // We use native events, so that we don't interfere with propagation\n      eventOnOff(on, input, 'focus', this.onWheelFocus)\n      eventOnOff(on, input, 'blur', this.onWheelBlur)\n      if (!on) {\n        eventOff(document, 'wheel', this.stopWheel)\n      }\n    },\n    onWheelFocus() {\n      eventOn(document, 'wheel', this.stopWheel)\n    },\n    onWheelBlur() {\n      eventOff(document, 'wheel', this.stopWheel)\n    },\n    stopWheel(event) {\n      stopEvent(event, { propagation: false })\n      attemptBlur(this.$el)\n    }\n  },\n  render(h) {\n    return h('input', {\n      class: this.computedClass,\n      attrs: this.computedAttrs,\n      domProps: { value: this.localValue },\n      on: this.computedListeners,\n      ref: 'input'\n    })\n  }\n})\n","import { BFormInput } from './form-input'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormInputPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BFormInput,\n    BInput: BFormInput\n  }\n})\n\nexport { FormInputPlugin, BFormInput }\n","import { Vue } from '../../vue'\nimport { NAME_FORM_RADIO_GROUP } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/props'\nimport {\n  formRadioCheckGroupMixin,\n  props as formRadioCheckGroupProps\n} from '../../mixins/form-radio-check-group'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(formRadioCheckGroupProps, NAME_FORM_RADIO_GROUP)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormRadioGroup = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_RADIO_GROUP,\n  mixins: [formRadioCheckGroupMixin],\n  provide() {\n    return {\n      bvRadioGroup: this\n    }\n  },\n  props,\n  computed: {\n    isRadioGroup() {\n      return true\n    }\n  }\n})\n","import { BFormRadio } from './form-radio'\nimport { BFormRadioGroup } from './form-radio-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormRadioPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BFormRadio,\n    BRadio: BFormRadio,\n    BFormRadioGroup,\n    BRadioGroup: BFormRadioGroup\n  }\n})\n\nexport { FormRadioPlugin, BFormRadio, BFormRadioGroup }\n","import { Vue } from '../../vue'\nimport { NAME_FORM_RATING, NAME_FORM_RATING_STAR } from '../../constants/components'\nimport { EVENT_NAME_CHANGE, EVENT_NAME_SELECTED } from '../../constants/events'\nimport {\n  PROP_TYPE_ARRAY_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_NUMBER,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { CODE_LEFT, CODE_RIGHT, CODE_UP, CODE_DOWN } from '../../constants/key-codes'\nimport {\n  SLOT_NAME_ICON_CLEAR,\n  SLOT_NAME_ICON_EMPTY,\n  SLOT_NAME_ICON_FULL,\n  SLOT_NAME_ICON_HALF\n} from '../../constants/slots'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isNull } from '../../utils/inspect'\nimport { isLocaleRTL } from '../../utils/locale'\nimport { mathMax, mathMin } from '../../utils/math'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger, toFloat } from '../../utils/number'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { props as formControlProps } from '../../mixins/form-control'\nimport { BIcon } from '../../icons/icon'\nimport { BIconStar, BIconStarHalf, BIconStarFill, BIconX } from '../../icons/icons'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n  type: PROP_TYPE_NUMBER_STRING,\n  event: EVENT_NAME_CHANGE\n})\n\nconst MIN_STARS = 3\nconst DEFAULT_STARS = 5\n\n// --- Helper methods ---\n\nconst computeStars = stars => mathMax(MIN_STARS, toInteger(stars, DEFAULT_STARS))\n\nconst clampValue = (value, min, max) => mathMax(mathMin(value, max), min)\n\n// --- Helper components ---\n\n// @vue/component\nconst BVFormRatingStar = Vue.extend({\n  name: NAME_FORM_RATING_STAR,\n  mixins: [normalizeSlotMixin],\n  props: {\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    // If parent is focused\n    focused: makeProp(PROP_TYPE_BOOLEAN, false),\n    hasClear: makeProp(PROP_TYPE_BOOLEAN, false),\n    rating: makeProp(PROP_TYPE_NUMBER, 0),\n    readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n    star: makeProp(PROP_TYPE_NUMBER, 0),\n    variant: makeProp(PROP_TYPE_STRING)\n  },\n  methods: {\n    onClick(event) {\n      if (!this.disabled && !this.readonly) {\n        stopEvent(event, { propagation: false })\n        this.$emit(EVENT_NAME_SELECTED, this.star)\n      }\n    }\n  },\n  render(h) {\n    const { rating, star, focused, hasClear, variant, disabled, readonly } = this\n    const minStar = hasClear ? 0 : 1\n    const type = rating >= star ? 'full' : rating >= star - 0.5 ? 'half' : 'empty'\n    const slotScope = { variant, disabled, readonly }\n\n    return h(\n      'span',\n      {\n        staticClass: 'b-rating-star',\n        class: {\n          // When not hovered, we use this class to focus the current (or first) star\n          focused: (focused && rating === star) || (!toInteger(rating) && star === minStar),\n          // We add type classes to we can handle RTL styling\n          'b-rating-star-empty': type === 'empty',\n          'b-rating-star-half': type === 'half',\n          'b-rating-star-full': type === 'full'\n        },\n        attrs: { tabindex: !disabled && !readonly ? '-1' : null },\n        on: { click: this.onClick }\n      },\n      [h('span', { staticClass: 'b-rating-icon' }, [this.normalizeSlot(type, slotScope)])]\n    )\n  }\n})\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ...omit(formControlProps, ['required', 'autofocus']),\n    ...formSizeProps,\n    // CSS color string (overrides variant)\n    color: makeProp(PROP_TYPE_STRING),\n    iconClear: makeProp(PROP_TYPE_STRING, 'x'),\n    iconEmpty: makeProp(PROP_TYPE_STRING, 'star'),\n    iconFull: makeProp(PROP_TYPE_STRING, 'star-fill'),\n    iconHalf: makeProp(PROP_TYPE_STRING, 'star-half'),\n    inline: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Locale for the formatted value (if shown)\n    // Defaults to the browser locale. Falls back to `en`\n    locale: makeProp(PROP_TYPE_ARRAY_STRING),\n    noBorder: makeProp(PROP_TYPE_BOOLEAN, false),\n    precision: makeProp(PROP_TYPE_NUMBER_STRING),\n    readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n    showClear: makeProp(PROP_TYPE_BOOLEAN, false),\n    showValue: makeProp(PROP_TYPE_BOOLEAN, false),\n    showValueMax: makeProp(PROP_TYPE_BOOLEAN, false),\n    stars: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_STARS, value => {\n      return toInteger(value) >= MIN_STARS\n    }),\n    variant: makeProp(PROP_TYPE_STRING)\n  }),\n  NAME_FORM_RATING\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormRating = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_RATING,\n  components: { BIconStar, BIconStarHalf, BIconStarFill, BIconX },\n  mixins: [idMixin, modelMixin, formSizeMixin],\n  props,\n  data() {\n    const value = toFloat(this[MODEL_PROP_NAME], null)\n    const stars = computeStars(this.stars)\n    return {\n      localValue: isNull(value) ? null : clampValue(value, 0, stars),\n      hasFocus: false\n    }\n  },\n  computed: {\n    computedStars() {\n      return computeStars(this.stars)\n    },\n    computedRating() {\n      const value = toFloat(this.localValue, 0)\n      const precision = toInteger(this.precision, 3)\n      // We clamp the value between `0` and stars\n      return clampValue(toFloat(value.toFixed(precision)), 0, this.computedStars)\n    },\n    computedLocale() {\n      const locales = concat(this.locale).filter(identity)\n      const nf = new Intl.NumberFormat(locales)\n      return nf.resolvedOptions().locale\n    },\n    isInteractive() {\n      return !this.disabled && !this.readonly\n    },\n    isRTL() {\n      return isLocaleRTL(this.computedLocale)\n    },\n    formattedRating() {\n      const precision = toInteger(this.precision)\n      const showValueMax = this.showValueMax\n      const locale = this.computedLocale\n      const formatOptions = {\n        notation: 'standard',\n        minimumFractionDigits: isNaN(precision) ? 0 : precision,\n        maximumFractionDigits: isNaN(precision) ? 3 : precision\n      }\n      const stars = this.computedStars.toLocaleString(locale)\n      let value = this.localValue\n      value = isNull(value)\n        ? showValueMax\n          ? '-'\n          : ''\n        : value.toLocaleString(locale, formatOptions)\n      return showValueMax ? `${value}/${stars}` : value\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue, oldValue) {\n      if (newValue !== oldValue) {\n        const value = toFloat(newValue, null)\n        this.localValue = isNull(value) ? null : clampValue(value, 0, this.computedStars)\n      }\n    },\n    localValue(newValue, oldValue) {\n      if (newValue !== oldValue && newValue !== (this.value || 0)) {\n        this.$emit(MODEL_EVENT_NAME, newValue || null)\n      }\n    },\n    disabled(newValue) {\n      if (newValue) {\n        this.hasFocus = false\n        this.blur()\n      }\n    }\n  },\n  methods: {\n    // --- Public methods ---\n    focus() {\n      if (!this.disabled) {\n        attemptFocus(this.$el)\n      }\n    },\n    blur() {\n      if (!this.disabled) {\n        attemptBlur(this.$el)\n      }\n    },\n    // --- Private methods ---\n    onKeydown(event) {\n      const { keyCode } = event\n      if (\n        this.isInteractive &&\n        arrayIncludes([CODE_LEFT, CODE_DOWN, CODE_RIGHT, CODE_UP], keyCode)\n      ) {\n        stopEvent(event, { propagation: false })\n        const value = toInteger(this.localValue, 0)\n        const min = this.showClear ? 0 : 1\n        const stars = this.computedStars\n        // In RTL mode, LEFT/RIGHT are swapped\n        const amountRtl = this.isRTL ? -1 : 1\n        if (keyCode === CODE_LEFT) {\n          this.localValue = clampValue(value - amountRtl, min, stars) || null\n        } else if (keyCode === CODE_RIGHT) {\n          this.localValue = clampValue(value + amountRtl, min, stars)\n        } else if (keyCode === CODE_DOWN) {\n          this.localValue = clampValue(value - 1, min, stars) || null\n        } else if (keyCode === CODE_UP) {\n          this.localValue = clampValue(value + 1, min, stars)\n        }\n      }\n    },\n    onSelected(value) {\n      if (this.isInteractive) {\n        this.localValue = value\n      }\n    },\n    onFocus(event) {\n      this.hasFocus = !this.isInteractive ? false : event.type === 'focus'\n    },\n    // --- Render methods ---\n    renderIcon(icon) {\n      return this.$createElement(BIcon, {\n        props: {\n          icon,\n          variant: this.disabled || this.color ? null : this.variant || null\n        }\n      })\n    },\n    iconEmptyFn() {\n      return this.renderIcon(this.iconEmpty)\n    },\n    iconHalfFn() {\n      return this.renderIcon(this.iconHalf)\n    },\n    iconFullFn() {\n      return this.renderIcon(this.iconFull)\n    },\n    iconClearFn() {\n      return this.$createElement(BIcon, { props: { icon: this.iconClear } })\n    }\n  },\n  render(h) {\n    const {\n      disabled,\n      readonly,\n      name,\n      form,\n      inline,\n      variant,\n      color,\n      noBorder,\n      hasFocus,\n      computedRating,\n      computedStars,\n      formattedRating,\n      showClear,\n      isRTL,\n      isInteractive,\n      $scopedSlots\n    } = this\n    const $content = []\n\n    if (showClear && !disabled && !readonly) {\n      const $icon = h('span', { staticClass: 'b-rating-icon' }, [\n        ($scopedSlots[SLOT_NAME_ICON_CLEAR] || this.iconClearFn)()\n      ])\n      $content.push(\n        h(\n          'span',\n          {\n            staticClass: 'b-rating-star b-rating-star-clear flex-grow-1',\n            class: { focused: hasFocus && computedRating === 0 },\n            attrs: { tabindex: isInteractive ? '-1' : null },\n            on: { click: () => this.onSelected(null) },\n            key: 'clear'\n          },\n          [$icon]\n        )\n      )\n    }\n\n    for (let index = 0; index < computedStars; index++) {\n      const value = index + 1\n      $content.push(\n        h(BVFormRatingStar, {\n          staticClass: 'flex-grow-1',\n          style: color && !disabled ? { color } : {},\n          props: {\n            rating: computedRating,\n            star: value,\n            variant: disabled ? null : variant || null,\n            disabled,\n            readonly,\n            focused: hasFocus,\n            hasClear: showClear\n          },\n          on: { selected: this.onSelected },\n          scopedSlots: {\n            empty: $scopedSlots[SLOT_NAME_ICON_EMPTY] || this.iconEmptyFn,\n            half: $scopedSlots[SLOT_NAME_ICON_HALF] || this.iconHalfFn,\n            full: $scopedSlots[SLOT_NAME_ICON_FULL] || this.iconFullFn\n          },\n          key: index\n        })\n      )\n    }\n\n    if (name) {\n      $content.push(\n        h('input', {\n          attrs: {\n            type: 'hidden',\n            value: isNull(this.localValue) ? '' : computedRating,\n            name,\n            form: form || null\n          },\n          key: 'hidden'\n        })\n      )\n    }\n\n    if (this.showValue) {\n      $content.push(\n        h(\n          'b',\n          {\n            staticClass: 'b-rating-value flex-grow-1',\n            attrs: { 'aria-hidden': 'true' },\n            key: 'value'\n          },\n          toString(formattedRating)\n        )\n      )\n    }\n\n    return h(\n      'output',\n      {\n        staticClass: 'b-rating form-control align-items-center',\n        class: [\n          {\n            'd-inline-flex': inline,\n            'd-flex': !inline,\n            'border-0': noBorder,\n            disabled,\n            readonly: !disabled && readonly\n          },\n          this.sizeFormClass\n        ],\n        attrs: {\n          id: this.safeId(),\n          dir: isRTL ? 'rtl' : 'ltr',\n          tabindex: disabled ? null : '0',\n          disabled,\n          role: 'slider',\n          'aria-disabled': disabled ? 'true' : null,\n          'aria-readonly': !disabled && readonly ? 'true' : null,\n          'aria-live': 'off',\n          'aria-valuemin': showClear ? '0' : '1',\n          'aria-valuemax': toString(computedStars),\n          'aria-valuenow': computedRating ? toString(computedRating) : null\n        },\n        on: {\n          keydown: this.onKeydown,\n          focus: this.onFocus,\n          blur: this.onFocus\n        }\n      },\n      $content\n    )\n  }\n})\n","import { BFormRating } from './form-rating'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormRatingPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BFormRating, BRating: BFormRating }\n})\n\nexport { FormRatingPlugin, BFormRating }\n","import { makeModelMixin } from '../utils/model'\n\nconst { mixin, props, prop, event } = makeModelMixin('value')\n\nexport { mixin as modelMixin, props, prop as MODEL_PROP_NAME, event as MODEL_EVENT_NAME }\n","import { Vue } from '../../../vue'\nimport { PROP_TYPE_STRING } from '../../../constants/props'\nimport { get } from '../../../utils/get'\nimport { isNull, isPlainObject, isUndefined } from '../../../utils/inspect'\nimport { sortKeys } from '../../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../../utils/props'\nimport { formOptionsMixin, props as formOptionsProps } from '../../../mixins/form-options'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...formOptionsProps,\n    labelField: makeProp(PROP_TYPE_STRING, 'label'),\n    optionsField: makeProp(PROP_TYPE_STRING, 'options')\n  }),\n  'formOptions'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const optionsMixin = Vue.extend({\n  mixins: [formOptionsMixin],\n  props,\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        const options = get(option, this.optionsField, null)\n        // When it has options, create an `<optgroup>` object\n        if (!isNull(options)) {\n          return {\n            label: String(get(option, this.labelField) || text),\n            options: this.normalizeOptions(options)\n          }\n        }\n        // Otherwise create an `<option>` object\n        return {\n          value: isUndefined(value) ? key || text : value,\n          text: String(isUndefined(text) ? key : text),\n          html: get(option, this.htmlField),\n          disabled: Boolean(get(option, this.disabledField))\n        }\n      }\n      // Otherwise create an `<option>` object from the given value\n      return {\n        value: key || option,\n        text: String(option),\n        disabled: false\n      }\n    }\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_FORM_SELECT_OPTION } from '../../constants/components'\nimport { PROP_TYPE_ANY, PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    value: makeProp(PROP_TYPE_ANY, undefined, true) // Required\n  },\n  NAME_FORM_SELECT_OPTION\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormSelectOption = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_SELECT_OPTION,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { value, disabled } = props\n\n    return h(\n      'option',\n      mergeData(data, {\n        attrs: { disabled },\n        domProps: { value }\n      }),\n      children\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_SELECT_OPTION_GROUP } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_FIRST } from '../../constants/slots'\nimport { htmlOrText } from '../../utils/html'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { formOptionsMixin, props as formOptionsProps } from '../../mixins/form-options'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BFormSelectOption } from './form-select-option'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...formOptionsProps,\n    label: makeProp(PROP_TYPE_STRING, undefined, true) // Required\n  }),\n  NAME_FORM_SELECT_OPTION_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormSelectOptionGroup = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_SELECT_OPTION_GROUP,\n  mixins: [normalizeSlotMixin, formOptionsMixin],\n  props,\n  render(h) {\n    const { label } = this\n\n    const $options = this.formOptions.map((option, index) => {\n      const { value, text, html, disabled } = option\n\n      return h(BFormSelectOption, {\n        attrs: { value, disabled },\n        domProps: htmlOrText(html, text),\n        key: `option_${index}`\n      })\n    })\n\n    return h('optgroup', { attrs: { label } }, [\n      this.normalizeSlot(SLOT_NAME_FIRST),\n      $options,\n      this.normalizeSlot()\n    ])\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_SELECT } from '../../constants/components'\nimport { EVENT_NAME_CHANGE } from '../../constants/events'\nimport {\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_STRING,\n  PROP_TYPE_NUMBER\n} from '../../constants/props'\nimport { SLOT_NAME_FIRST } from '../../constants/slots'\nimport { from as arrayFrom } from '../../utils/array'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { htmlOrText } from '../../utils/html'\nimport { isArray } from '../../utils/inspect'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control'\nimport { formCustomMixin, props as formCustomProps } from '../../mixins/form-custom'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport {\n  MODEL_EVENT_NAME,\n  MODEL_PROP_NAME,\n  modelMixin,\n  props as modelProps\n} from '../../mixins/model'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { optionsMixin } from './helpers/mixin-options'\nimport { BFormSelectOption } from './form-select-option'\nimport { BFormSelectOptionGroup } from './form-select-option-group'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ...formControlProps,\n    ...formCustomProps,\n    ...formSizeProps,\n    ...formStateProps,\n    ariaInvalid: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n    multiple: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Browsers default size to `0`, which shows 4 rows in most browsers in multiple mode\n    // Size of `1` can bork out Firefox\n    selectSize: makeProp(PROP_TYPE_NUMBER, 0)\n  }),\n  NAME_FORM_SELECT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormSelect = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_SELECT,\n  mixins: [\n    idMixin,\n    modelMixin,\n    formControlMixin,\n    formSizeMixin,\n    formStateMixin,\n    formCustomMixin,\n    optionsMixin,\n    normalizeSlotMixin\n  ],\n  props,\n  data() {\n    return {\n      localValue: this[MODEL_PROP_NAME]\n    }\n  },\n  computed: {\n    computedSelectSize() {\n      // Custom selects with a size of zero causes the arrows to be hidden,\n      // so dont render the size attribute in this case\n      return !this.plain && this.selectSize === 0 ? null : this.selectSize\n    },\n    inputClass() {\n      return [\n        this.plain ? 'form-control' : 'custom-select',\n        this.size && this.plain ? `form-control-${this.size}` : null,\n        this.size && !this.plain ? `custom-select-${this.size}` : null,\n        this.stateClass\n      ]\n    }\n  },\n  watch: {\n    value(newValue) {\n      this.localValue = newValue\n    },\n    localValue() {\n      this.$emit(MODEL_EVENT_NAME, this.localValue)\n    }\n  },\n  methods: {\n    focus() {\n      attemptFocus(this.$refs.input)\n    },\n    blur() {\n      attemptBlur(this.$refs.input)\n    },\n    onChange(event) {\n      const { target } = event\n      const selectedValue = arrayFrom(target.options)\n        .filter(o => o.selected)\n        .map(o => ('_value' in o ? o._value : o.value))\n\n      this.localValue = target.multiple ? selectedValue : selectedValue[0]\n\n      this.$nextTick(() => {\n        this.$emit(EVENT_NAME_CHANGE, this.localValue)\n      })\n    }\n  },\n  render(h) {\n    const { name, disabled, required, computedSelectSize: size, localValue: value } = this\n\n    const $options = this.formOptions.map((option, index) => {\n      const { value, label, options, disabled } = option\n      const key = `option_${index}`\n\n      return isArray(options)\n        ? h(BFormSelectOptionGroup, { props: { label, options }, key })\n        : h(BFormSelectOption, {\n            props: { value, disabled },\n            domProps: htmlOrText(option.html, option.text),\n            key\n          })\n    })\n\n    return h(\n      'select',\n      {\n        class: this.inputClass,\n        attrs: {\n          id: this.safeId(),\n          name,\n          form: this.form || null,\n          multiple: this.multiple || null,\n          size,\n          disabled,\n          required,\n          'aria-required': required ? 'true' : null,\n          'aria-invalid': this.computedAriaInvalid\n        },\n        on: { change: this.onChange },\n        directives: [{ name: 'model', value }],\n        ref: 'input'\n      },\n      [this.normalizeSlot(SLOT_NAME_FIRST), $options, this.normalizeSlot()]\n    )\n  }\n})\n","import { BFormSelect } from './form-select'\nimport { BFormSelectOption } from './form-select-option'\nimport { BFormSelectOptionGroup } from './form-select-option-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormSelectPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BFormSelect,\n    BFormSelectOption,\n    BFormSelectOptionGroup,\n    BSelect: BFormSelect,\n    BSelectOption: BFormSelectOption,\n    BSelectOptionGroup: BFormSelectOptionGroup\n  }\n})\n\nexport { FormSelectPlugin, BFormSelect, BFormSelectOption, BFormSelectOptionGroup }\n","import { Vue } from '../../vue'\nimport { NAME_FORM_SPINBUTTON } from '../../constants/components'\nimport { EVENT_NAME_CHANGE } from '../../constants/events'\nimport {\n  PROP_TYPE_ARRAY_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_NUMBER,\n  PROP_TYPE_FUNCTION,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport {\n  CODE_DOWN,\n  CODE_END,\n  CODE_HOME,\n  CODE_PAGEUP,\n  CODE_UP,\n  CODE_PAGEDOWN\n} from '../../constants/key-codes'\nimport { SLOT_NAME_DECREMENT, SLOT_NAME_INCREMENT } from '../../constants/slots'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { eventOnOff, stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isNull } from '../../utils/inspect'\nimport { isLocaleRTL } from '../../utils/locale'\nimport { mathFloor, mathMax, mathPow, mathRound } from '../../utils/math'\nimport { makeModelMixin } from '../../utils/model'\nimport { toFloat, toInteger } from '../../utils/number'\nimport { omit, sortKeys } from '../../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { props as formControlProps } from '../../mixins/form-control'\nimport { BIconPlus, BIconDash } from '../../icons/icons'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n  // Should this really be String, to match native number inputs?\n  type: PROP_TYPE_BOOLEAN_NUMBER\n})\n\n// Default for spin button range and step\nconst DEFAULT_MIN = 1\nconst DEFAULT_MAX = 100\nconst DEFAULT_STEP = 1\n\n// Delay before auto-repeat in ms\nconst DEFAULT_REPEAT_DELAY = 500\n// Repeat interval in ms\nconst DEFAULT_REPEAT_INTERVAL = 100\n// Repeat rate increased after number of repeats\nconst DEFAULT_REPEAT_THRESHOLD = 10\n// Repeat speed multiplier (step multiplier, must be an integer)\nconst DEFAULT_REPEAT_MULTIPLIER = 4\n\nconst KEY_CODES = [CODE_UP, CODE_DOWN, CODE_HOME, CODE_END, CODE_PAGEUP, CODE_PAGEDOWN]\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ...omit(formControlProps, ['required', 'autofocus']),\n    ...formSizeProps,\n    ...formStateProps,\n    ariaControls: makeProp(PROP_TYPE_STRING),\n    ariaLabel: makeProp(PROP_TYPE_STRING),\n    formatterFn: makeProp(PROP_TYPE_FUNCTION),\n    inline: makeProp(PROP_TYPE_BOOLEAN, false),\n    labelDecrement: makeProp(PROP_TYPE_STRING, 'Decrement'),\n    labelIncrement: makeProp(PROP_TYPE_STRING, 'Increment'),\n    locale: makeProp(PROP_TYPE_ARRAY_STRING),\n    max: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_MAX),\n    min: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_MIN),\n    placeholder: makeProp(PROP_TYPE_STRING),\n    readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n    repeatDelay: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_REPEAT_DELAY),\n    repeatInterval: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_REPEAT_INTERVAL),\n    repeatStepMultiplier: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_REPEAT_MULTIPLIER),\n    repeatThreshold: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_REPEAT_THRESHOLD),\n    step: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_STEP),\n    vertical: makeProp(PROP_TYPE_BOOLEAN, false),\n    wrap: makeProp(PROP_TYPE_BOOLEAN, false)\n  }),\n  NAME_FORM_SPINBUTTON\n)\n\n// --- Main Component ---\n\n// @vue/component\nexport const BFormSpinbutton = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_SPINBUTTON,\n  // Mixin order is important!\n  mixins: [attrsMixin, idMixin, modelMixin, formSizeMixin, formStateMixin, normalizeSlotMixin],\n  inheritAttrs: false,\n  props,\n  data() {\n    return {\n      localValue: toFloat(this[MODEL_PROP_NAME], null),\n      hasFocus: false\n    }\n  },\n  computed: {\n    spinId() {\n      return this.safeId()\n    },\n    computedInline() {\n      return this.inline && !this.vertical\n    },\n    computedReadonly() {\n      return this.readonly && !this.disabled\n    },\n    computedRequired() {\n      return this.required && !this.computedReadonly && !this.disabled\n    },\n    computedStep() {\n      return toFloat(this.step, DEFAULT_STEP)\n    },\n    computedMin() {\n      return toFloat(this.min, DEFAULT_MIN)\n    },\n    computedMax() {\n      // We round down to the nearest maximum step value\n      const max = toFloat(this.max, DEFAULT_MAX)\n      const step = this.computedStep\n      const min = this.computedMin\n      return mathFloor((max - min) / step) * step + min\n    },\n    computedDelay() {\n      const delay = toInteger(this.repeatDelay, 0)\n      return delay > 0 ? delay : DEFAULT_REPEAT_DELAY\n    },\n    computedInterval() {\n      const interval = toInteger(this.repeatInterval, 0)\n      return interval > 0 ? interval : DEFAULT_REPEAT_INTERVAL\n    },\n    computedThreshold() {\n      return mathMax(toInteger(this.repeatThreshold, DEFAULT_REPEAT_THRESHOLD), 1)\n    },\n    computedStepMultiplier() {\n      return mathMax(toInteger(this.repeatStepMultiplier, DEFAULT_REPEAT_MULTIPLIER), 1)\n    },\n    computedPrecision() {\n      // Quick and dirty way to get the number of decimals\n      const step = this.computedStep\n      return mathFloor(step) === step ? 0 : (step.toString().split('.')[1] || '').length\n    },\n    computedMultiplier() {\n      return mathPow(10, this.computedPrecision || 0)\n    },\n    valueAsFixed() {\n      const value = this.localValue\n      return isNull(value) ? '' : value.toFixed(this.computedPrecision)\n    },\n    computedLocale() {\n      const locales = concat(this.locale).filter(identity)\n      const nf = new Intl.NumberFormat(locales)\n      return nf.resolvedOptions().locale\n    },\n    computedRTL() {\n      return isLocaleRTL(this.computedLocale)\n    },\n    defaultFormatter() {\n      // Returns and `Intl.NumberFormat` formatter method reference\n      const precision = this.computedPrecision\n      const nf = new Intl.NumberFormat(this.computedLocale, {\n        style: 'decimal',\n        useGrouping: false,\n        minimumIntegerDigits: 1,\n        minimumFractionDigits: precision,\n        maximumFractionDigits: precision,\n        notation: 'standard'\n      })\n      // Return the format method reference\n      return nf.format\n    },\n    computedFormatter() {\n      const { formatterFn } = this\n      return hasPropFunction(formatterFn) ? formatterFn : this.defaultFormatter\n    },\n    computedAttrs() {\n      return {\n        ...this.bvAttrs,\n        role: 'group',\n        lang: this.computedLocale,\n        tabindex: this.disabled ? null : '-1',\n        title: this.ariaLabel\n      }\n    },\n    computedSpinAttrs() {\n      const {\n        spinId,\n        localValue: value,\n        computedRequired: required,\n        disabled,\n        state,\n        computedFormatter\n      } = this\n      const hasValue = !isNull(value)\n\n      return {\n        dir: this.computedRTL ? 'rtl' : 'ltr',\n        ...this.bvAttrs,\n        id: spinId,\n        role: 'spinbutton',\n        tabindex: disabled ? null : '0',\n        'aria-live': 'off',\n        'aria-label': this.ariaLabel || null,\n        'aria-controls': this.ariaControls || null,\n        // TODO: May want to check if the value is in range\n        'aria-invalid': state === false || (!hasValue && required) ? 'true' : null,\n        'aria-required': required ? 'true' : null,\n        // These attrs are required for role spinbutton\n        'aria-valuemin': toString(this.computedMin),\n        'aria-valuemax': toString(this.computedMax),\n        // These should be `null` if the value is out of range\n        // They must also be non-existent attrs if the value is out of range or `null`\n        'aria-valuenow': hasValue ? value : null,\n        'aria-valuetext': hasValue ? computedFormatter(value) : null\n      }\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](value) {\n      this.localValue = toFloat(value, null)\n    },\n    localValue(value) {\n      this.$emit(MODEL_EVENT_NAME, value)\n    },\n    disabled(disabled) {\n      if (disabled) {\n        this.clearRepeat()\n      }\n    },\n    readonly(readonly) {\n      if (readonly) {\n        this.clearRepeat()\n      }\n    }\n  },\n  created() {\n    // Create non reactive properties\n    this.$_autoDelayTimer = null\n    this.$_autoRepeatTimer = null\n    this.$_keyIsDown = false\n  },\n  beforeDestroy() {\n    this.clearRepeat()\n  },\n  /* istanbul ignore next */\n  deactivated() {\n    this.clearRepeat()\n  },\n  methods: {\n    // --- Public methods ---\n    focus() {\n      if (!this.disabled) {\n        attemptFocus(this.$refs.spinner)\n      }\n    },\n    blur() {\n      if (!this.disabled) {\n        attemptBlur(this.$refs.spinner)\n      }\n    },\n    // --- Private methods ---\n    emitChange() {\n      this.$emit(EVENT_NAME_CHANGE, this.localValue)\n    },\n    stepValue(direction) {\n      // Sets a new incremented or decremented value, supporting optional wrapping\n      // Direction is either +1 or -1 (or a multiple thereof)\n      let value = this.localValue\n      if (!this.disabled && !isNull(value)) {\n        const step = this.computedStep * direction\n        const min = this.computedMin\n        const max = this.computedMax\n        const multiplier = this.computedMultiplier\n        const wrap = this.wrap\n        // We ensure that the value steps like a native input\n        value = mathRound((value - min) / step) * step + min + step\n        // We ensure that precision is maintained (decimals)\n        value = mathRound(value * multiplier) / multiplier\n        // Handle if wrapping is enabled\n        this.localValue =\n          value > max ? (wrap ? min : max) : value < min ? (wrap ? max : min) : value\n      }\n    },\n    onFocusBlur(event) {\n      if (!this.disabled) {\n        this.hasFocus = event.type === 'focus'\n      } else {\n        this.hasFocus = false\n      }\n    },\n    stepUp(multiplier = 1) {\n      const value = this.localValue\n      if (isNull(value)) {\n        this.localValue = this.computedMin\n      } else {\n        this.stepValue(+1 * multiplier)\n      }\n    },\n    stepDown(multiplier = 1) {\n      const value = this.localValue\n      if (isNull(value)) {\n        this.localValue = this.wrap ? this.computedMax : this.computedMin\n      } else {\n        this.stepValue(-1 * multiplier)\n      }\n    },\n    onKeydown(event) {\n      const { keyCode, altKey, ctrlKey, metaKey } = event\n      /* istanbul ignore if */\n      if (this.disabled || this.readonly || altKey || ctrlKey || metaKey) {\n        return\n      }\n      if (arrayIncludes(KEY_CODES, keyCode)) {\n        // https://w3c.github.io/aria-practices/#spinbutton\n        stopEvent(event, { propagation: false })\n        /* istanbul ignore if */\n        if (this.$_keyIsDown) {\n          // Keypress is already in progress\n          return\n        }\n        this.resetTimers()\n        if (arrayIncludes([CODE_UP, CODE_DOWN], keyCode)) {\n          // The following use the custom auto-repeat handling\n          this.$_keyIsDown = true\n          if (keyCode === CODE_UP) {\n            this.handleStepRepeat(event, this.stepUp)\n          } else if (keyCode === CODE_DOWN) {\n            this.handleStepRepeat(event, this.stepDown)\n          }\n        } else {\n          // These use native OS key repeating\n          if (keyCode === CODE_PAGEUP) {\n            this.stepUp(this.computedStepMultiplier)\n          } else if (keyCode === CODE_PAGEDOWN) {\n            this.stepDown(this.computedStepMultiplier)\n          } else if (keyCode === CODE_HOME) {\n            this.localValue = this.computedMin\n          } else if (keyCode === CODE_END) {\n            this.localValue = this.computedMax\n          }\n        }\n      }\n    },\n    onKeyup(event) {\n      // Emit a change event when the keyup happens\n      const { keyCode, altKey, ctrlKey, metaKey } = event\n      /* istanbul ignore if */\n      if (this.disabled || this.readonly || altKey || ctrlKey || metaKey) {\n        return\n      }\n      if (arrayIncludes(KEY_CODES, keyCode)) {\n        stopEvent(event, { propagation: false })\n        this.resetTimers()\n        this.$_keyIsDown = false\n        this.emitChange()\n      }\n    },\n    handleStepRepeat(event, stepper) {\n      const { type, button } = event || {}\n      if (!this.disabled && !this.readonly) {\n        /* istanbul ignore if */\n        if (type === 'mousedown' && button) {\n          // We only respond to left (main === 0) button clicks\n          return\n        }\n        this.resetTimers()\n        // Step the counter initially\n        stepper(1)\n        const threshold = this.computedThreshold\n        const multiplier = this.computedStepMultiplier\n        const delay = this.computedDelay\n        const interval = this.computedInterval\n        // Initiate the delay/repeat interval\n        this.$_autoDelayTimer = setTimeout(() => {\n          let count = 0\n          this.$_autoRepeatTimer = setInterval(() => {\n            // After N initial repeats, we increase the incrementing step amount\n            // We do this to minimize screen reader announcements of the value\n            // (values are announced every change, which can be chatty for SR users)\n            // And to make it easer to select a value when the range is large\n            stepper(count < threshold ? 1 : multiplier)\n            count++\n          }, interval)\n        }, delay)\n      }\n    },\n    onMouseup(event) {\n      // `<body>` listener, only enabled when mousedown starts\n      const { type, button } = event || {}\n      /* istanbul ignore if */\n      if (type === 'mouseup' && button) {\n        // Ignore non left button (main === 0) mouse button click\n        return\n      }\n      stopEvent(event, { propagation: false })\n      this.resetTimers()\n      this.setMouseup(false)\n      // Trigger the change event\n      this.emitChange()\n    },\n    setMouseup(on) {\n      // Enable or disabled the body mouseup/touchend handlers\n      // Use try/catch to handle case when called server side\n      try {\n        eventOnOff(on, document.body, 'mouseup', this.onMouseup, false)\n        eventOnOff(on, document.body, 'touchend', this.onMouseup, false)\n      } catch {}\n    },\n    resetTimers() {\n      clearTimeout(this.$_autoDelayTimer)\n      clearInterval(this.$_autoRepeatTimer)\n      this.$_autoDelayTimer = null\n      this.$_autoRepeatTimer = null\n    },\n    clearRepeat() {\n      this.resetTimers()\n      this.setMouseup(false)\n      this.$_keyIsDown = false\n    }\n  },\n  render(h) {\n    const {\n      spinId,\n      localValue: value,\n      computedInline: inline,\n      computedReadonly: readonly,\n      vertical,\n      disabled,\n      computedFormatter\n    } = this\n    const hasValue = !isNull(value)\n\n    const makeButton = (stepper, label, IconCmp, keyRef, shortcut, btnDisabled, slotName) => {\n      const $icon = h(IconCmp, {\n        props: { scale: this.hasFocus ? 1.5 : 1.25 },\n        attrs: { 'aria-hidden': 'true' }\n      })\n      const scope = { hasFocus: this.hasFocus }\n      const handler = event => {\n        if (!disabled && !readonly) {\n          stopEvent(event, { propagation: false })\n          this.setMouseup(true)\n          // Since we `preventDefault()`, we must manually focus the button\n          attemptFocus(event.currentTarget)\n          this.handleStepRepeat(event, stepper)\n        }\n      }\n      return h(\n        'button',\n        {\n          staticClass: 'btn btn-sm border-0 rounded-0',\n          class: { 'py-0': !vertical },\n          attrs: {\n            tabindex: '-1',\n            type: 'button',\n            disabled: disabled || readonly || btnDisabled,\n            'aria-disabled': disabled || readonly || btnDisabled ? 'true' : null,\n            'aria-controls': spinId,\n            'aria-label': label || null,\n            'aria-keyshortcuts': shortcut || null\n          },\n          on: {\n            mousedown: handler,\n            touchstart: handler\n          },\n          key: keyRef || null,\n          ref: keyRef\n        },\n        [this.normalizeSlot(slotName, scope) || $icon]\n      )\n    }\n    // TODO: Add button disabled state when `wrap` is `false` and at value max/min\n    const $increment = makeButton(\n      this.stepUp,\n      this.labelIncrement,\n      BIconPlus,\n      'inc',\n      'ArrowUp',\n      false,\n      SLOT_NAME_INCREMENT\n    )\n    const $decrement = makeButton(\n      this.stepDown,\n      this.labelDecrement,\n      BIconDash,\n      'dec',\n      'ArrowDown',\n      false,\n      SLOT_NAME_DECREMENT\n    )\n\n    let $hidden = h()\n    if (this.name && !disabled) {\n      $hidden = h('input', {\n        attrs: {\n          type: 'hidden',\n          name: this.name,\n          form: this.form || null,\n          // TODO: Should this be set to '' if value is out of range?\n          value: this.valueAsFixed\n        },\n        key: 'hidden'\n      })\n    }\n\n    const $spin = h(\n      // We use 'output' element to make this accept a `<label for=\"id\">` (Except IE)\n      'output',\n      {\n        staticClass: 'flex-grow-1',\n        class: {\n          'd-flex': vertical,\n          'align-self-center': !vertical,\n          'align-items-center': vertical,\n          'border-top': vertical,\n          'border-bottom': vertical,\n          'border-left': !vertical,\n          'border-right': !vertical\n        },\n        attrs: this.computedSpinAttrs,\n        key: 'output',\n        ref: 'spinner'\n      },\n      [h('bdi', hasValue ? computedFormatter(value) : this.placeholder || '')]\n    )\n\n    return h(\n      'div',\n      {\n        staticClass: 'b-form-spinbutton form-control',\n        class: [\n          {\n            disabled,\n            readonly,\n            focus: this.hasFocus,\n            'd-inline-flex': inline || vertical,\n            'd-flex': !inline && !vertical,\n            'align-items-stretch': !vertical,\n            'flex-column': vertical\n          },\n          this.sizeFormClass,\n          this.stateClass\n        ],\n        attrs: this.computedAttrs,\n        on: {\n          keydown: this.onKeydown,\n          keyup: this.onKeyup,\n          // We use capture phase (`!` prefix) since focus and blur do not bubble\n          '!focus': this.onFocusBlur,\n          '!blur': this.onFocusBlur\n        }\n      },\n      vertical ? [$increment, $hidden, $spin, $decrement] : [$decrement, $hidden, $spin, $increment]\n    )\n  }\n})\n","import { BFormSpinbutton } from './form-spinbutton'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormSpinbuttonPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BFormSpinbutton,\n    BSpinbutton: BFormSpinbutton\n  }\n})\n\nexport { FormSpinbuttonPlugin, BFormSpinbutton }\n","import { Vue } from '../../vue'\nimport { NAME_FORM_TAG } from '../../constants/components'\nimport { EVENT_NAME_REMOVE } from '../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { CODE_DELETE } from '../../constants/key-codes'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BBadge } from '../badge/badge'\nimport { BButtonClose } from '../button/button-close'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    noRemove: makeProp(PROP_TYPE_BOOLEAN, false),\n    pill: makeProp(PROP_TYPE_BOOLEAN, false),\n    removeLabel: makeProp(PROP_TYPE_STRING, 'Remove tag'),\n    tag: makeProp(PROP_TYPE_STRING, 'span'),\n    title: makeProp(PROP_TYPE_STRING),\n    variant: makeProp(PROP_TYPE_STRING, 'secondary')\n  }),\n  NAME_FORM_TAG\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormTag = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_TAG,\n  mixins: [idMixin, normalizeSlotMixin],\n  props,\n  methods: {\n    onRemove(event) {\n      const { type, keyCode } = event\n      if (!this.disabled && (type === 'click' || (type === 'keydown' && keyCode === CODE_DELETE))) {\n        this.$emit(EVENT_NAME_REMOVE)\n      }\n    }\n  },\n  render(h) {\n    const { title, tag, variant, pill, disabled } = this\n    const tagId = this.safeId()\n    const tagLabelId = this.safeId('_taglabel_')\n\n    let $remove = h()\n    if (!this.noRemove && !disabled) {\n      $remove = h(BButtonClose, {\n        staticClass: 'b-form-tag-remove',\n        props: { ariaLabel: this.removeLabel },\n        attrs: {\n          'aria-controls': tagId,\n          'aria-describedby': tagLabelId,\n          'aria-keyshortcuts': 'Delete'\n        },\n        on: {\n          click: this.onRemove,\n          keydown: this.onRemove\n        }\n      })\n    }\n\n    const $tag = h(\n      'span',\n      {\n        staticClass: 'b-form-tag-content flex-grow-1 text-truncate',\n        attrs: { id: tagLabelId }\n      },\n      this.normalizeSlot() || title\n    )\n\n    return h(\n      BBadge,\n      {\n        staticClass: 'b-form-tag d-inline-flex align-items-baseline mw-100',\n        class: { disabled },\n        props: {\n          tag,\n          variant,\n          pill\n        },\n        attrs: {\n          id: tagId,\n          title: title || null,\n          'aria-labelledby': tagLabelId\n        }\n      },\n      [$tag, $remove]\n    )\n  }\n})\n","// Tagged input form control\n// Based loosely on https://adamwathan.me/renderless-components-in-vuejs/\nimport { Vue } from '../../vue'\nimport { NAME_FORM_TAGS } from '../../constants/components'\nimport {\n  EVENT_NAME_TAG_STATE,\n  EVENT_OPTIONS_PASSIVE,\n  HOOK_EVENT_NAME_BEFORE_DESTROY\n} from '../../constants/events'\nimport { CODE_BACKSPACE, CODE_DELETE, CODE_ENTER } from '../../constants/key-codes'\nimport {\n  PROP_TYPE_ARRAY,\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_ARRAY_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_FUNCTION,\n  PROP_TYPE_NUMBER,\n  PROP_TYPE_OBJECT,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { RX_SPACES } from '../../constants/regex'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_ADD_BUTTON_TEXT } from '../../constants/slots'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { cssEscape } from '../../utils/css-escape'\nimport {\n  attemptBlur,\n  attemptFocus,\n  closest,\n  isActiveElement,\n  matches,\n  requestAF,\n  select\n} from '../../utils/dom'\nimport { eventOn, eventOff, stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isEvent, isNumber, isString } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { makeModelMixin } from '../../utils/model'\nimport { pick, sortKeys } from '../../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../../utils/props'\nimport { escapeRegExp, toString, trim, trimLeft } from '../../utils/string'\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BButton } from '../button/button'\nimport { BFormInvalidFeedback } from '../form/form-invalid-feedback'\nimport { BFormText } from '../form/form-text'\nimport { BFormTag } from './form-tag'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n  type: PROP_TYPE_ARRAY,\n  defaultValue: []\n})\n\n// Supported input types (for built in input)\nconst TYPES = ['text', 'email', 'tel', 'url', 'number']\n\n// Default ignore input focus selector\nconst DEFAULT_INPUT_FOCUS_SELECTOR = ['.b-form-tag', 'button', 'input', 'select'].join(' ')\n\n// --- Helper methods ---\n\n// Escape special chars in string and replace\n// contiguous spaces with a whitespace match\nconst escapeRegExpChars = str => escapeRegExp(str).replace(RX_SPACES, '\\\\s')\n\n// Remove leading/trailing spaces from array of tags and remove duplicates\nconst cleanTags = tags => {\n  return concat(tags)\n    .map(tag => trim(toString(tag)))\n    .filter((tag, index, arr) => tag.length > 0 && arr.indexOf(tag) === index)\n}\n\n// Processes an input/change event, normalizing string or event argument\nconst processEventValue = event =>\n  isString(event) ? event : isEvent(event) ? event.target.value || '' : ''\n\n// Returns a fresh empty `tagsState` object\nconst cleanTagsState = () => ({\n  all: [],\n  valid: [],\n  invalid: [],\n  duplicate: []\n})\n\n// --- Props ---\n\nconst props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ...formControlProps,\n    ...formSizeProps,\n    ...formStateProps,\n    addButtonText: makeProp(PROP_TYPE_STRING, 'Add'),\n    addButtonVariant: makeProp(PROP_TYPE_STRING, 'outline-secondary'),\n    // Enable change event triggering tag addition\n    // Handy if using <select> as the input\n    addOnChange: makeProp(PROP_TYPE_BOOLEAN, false),\n    duplicateTagText: makeProp(PROP_TYPE_STRING, 'Duplicate tag(s)'),\n    // Disable the input focus behavior when clicking\n    // on element matching the selector (or selectors)\n    ignoreInputFocusSelector: makeProp(PROP_TYPE_ARRAY_STRING, DEFAULT_INPUT_FOCUS_SELECTOR),\n    // Additional attributes to add to the input element\n    inputAttrs: makeProp(PROP_TYPE_OBJECT, {}),\n    inputClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    inputId: makeProp(PROP_TYPE_STRING),\n    inputType: makeProp(PROP_TYPE_STRING, 'text', value => {\n      return arrayIncludes(TYPES, value)\n    }),\n    invalidTagText: makeProp(PROP_TYPE_STRING, 'Invalid tag(s)'),\n    limit: makeProp(PROP_TYPE_NUMBER),\n    limitTagsText: makeProp(PROP_TYPE_STRING, 'Tag limit reached'),\n    // Disable ENTER key from triggering tag addition\n    noAddOnEnter: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Disable the focus ring on the root element\n    noOuterFocus: makeProp(PROP_TYPE_BOOLEAN, false),\n    noTagRemove: makeProp(PROP_TYPE_BOOLEAN, false),\n    placeholder: makeProp(PROP_TYPE_STRING, 'Add tag...'),\n    // Enable deleting last tag in list when CODE_BACKSPACE is\n    // pressed and input is empty\n    removeOnDelete: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Character (or characters) that trigger adding tags\n    separator: makeProp(PROP_TYPE_ARRAY_STRING),\n    tagClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    tagPills: makeProp(PROP_TYPE_BOOLEAN, false),\n    tagRemoveLabel: makeProp(PROP_TYPE_STRING, 'Remove tag'),\n    tagRemovedLabel: makeProp(PROP_TYPE_STRING, 'Tag removed'),\n    tagValidator: makeProp(PROP_TYPE_FUNCTION),\n    tagVariant: makeProp(PROP_TYPE_STRING, 'secondary')\n  }),\n  NAME_FORM_TAGS\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormTags = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_TAGS,\n  mixins: [\n    idMixin,\n    modelMixin,\n    formControlMixin,\n    formSizeMixin,\n    formStateMixin,\n    normalizeSlotMixin\n  ],\n  props,\n  data() {\n    return {\n      hasFocus: false,\n      newTag: '',\n      tags: [],\n      // Tags that were removed\n      removedTags: [],\n      // Populated when tags are parsed\n      tagsState: cleanTagsState()\n    }\n  },\n  computed: {\n    computedInputId() {\n      return this.inputId || this.safeId('__input__')\n    },\n    computedInputType() {\n      // We only allow certain types\n      return arrayIncludes(TYPES, this.inputType) ? this.inputType : 'text'\n    },\n    computedInputAttrs() {\n      const { disabled, form } = this\n\n      return {\n        // Merge in user supplied attributes\n        ...this.inputAttrs,\n        // Must have attributes\n        id: this.computedInputId,\n        value: this.newTag,\n        disabled,\n        form\n      }\n    },\n    computedInputHandlers() {\n      return {\n        input: this.onInputInput,\n        change: this.onInputChange,\n        keydown: this.onInputKeydown,\n        reset: this.reset\n      }\n    },\n    computedSeparator() {\n      // Merge the array into a string\n      return concat(this.separator)\n        .filter(isString)\n        .filter(identity)\n        .join('')\n    },\n    computedSeparatorRegExp() {\n      // We use a computed prop here to precompile the RegExp\n      // The RegExp is a character class RE in the form of `/[abc]+/`\n      // where a, b, and c are the valid separator characters\n      // -> `tags = str.split(/[abc]+/).filter(t => t)`\n      const separator = this.computedSeparator\n      return separator ? new RegExp(`[${escapeRegExpChars(separator)}]+`) : null\n    },\n    computedJoiner() {\n      // When tag(s) are invalid or duplicate, we leave them\n      // in the input so that the user can see them\n      // If there are more than one tag in the input, we use the\n      // first separator character as the separator in the input\n      // We append a space if the first separator is not a space\n      const joiner = this.computedSeparator.charAt(0)\n      return joiner !== ' ' ? `${joiner} ` : joiner\n    },\n    computeIgnoreInputFocusSelector() {\n      // Normalize to an single selector with selectors separated by `,`\n      return concat(this.ignoreInputFocusSelector)\n        .filter(identity)\n        .join(',')\n        .trim()\n    },\n    disableAddButton() {\n      // If 'Add' button should be disabled\n      // If the input contains at least one tag that can\n      // be added, then the 'Add' button should be enabled\n      const newTag = trim(this.newTag)\n      return (\n        newTag === '' ||\n        !this.splitTags(newTag).some(t => !arrayIncludes(this.tags, t) && this.validateTag(t))\n      )\n    },\n    duplicateTags() {\n      return this.tagsState.duplicate\n    },\n    hasDuplicateTags() {\n      return this.duplicateTags.length > 0\n    },\n    invalidTags() {\n      return this.tagsState.invalid\n    },\n    hasInvalidTags() {\n      return this.invalidTags.length > 0\n    },\n    isLimitReached() {\n      const { limit } = this\n      return isNumber(limit) && limit >= 0 && this.tags.length >= limit\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue) {\n      this.tags = cleanTags(newValue)\n    },\n    tags(newValue, oldValue) {\n      // Update the `v-model` (if it differs from the value prop)\n      if (!looseEqual(newValue, this[MODEL_PROP_NAME])) {\n        this.$emit(MODEL_EVENT_NAME, newValue)\n      }\n      if (!looseEqual(newValue, oldValue)) {\n        newValue = concat(newValue).filter(identity)\n        oldValue = concat(oldValue).filter(identity)\n        this.removedTags = oldValue.filter(old => !arrayIncludes(newValue, old))\n      }\n    },\n    tagsState(newValue, oldValue) {\n      // Emit a tag-state event when the `tagsState` object changes\n      if (!looseEqual(newValue, oldValue)) {\n        this.$emit(EVENT_NAME_TAG_STATE, newValue.valid, newValue.invalid, newValue.duplicate)\n      }\n    }\n  },\n  created() {\n    // We do this in created to make sure an input event emits\n    // if the cleaned tags are not equal to the value prop\n    this.tags = cleanTags(this[MODEL_PROP_NAME])\n  },\n  mounted() {\n    // Listen for form reset events, to reset the tags input\n    const $form = closest('form', this.$el)\n    if ($form) {\n      eventOn($form, 'reset', this.reset, EVENT_OPTIONS_PASSIVE)\n      this.$on(HOOK_EVENT_NAME_BEFORE_DESTROY, () => {\n        eventOff($form, 'reset', this.reset, EVENT_OPTIONS_PASSIVE)\n      })\n    }\n  },\n  methods: {\n    addTag(newTag) {\n      newTag = isString(newTag) ? newTag : this.newTag\n      /* istanbul ignore next */\n      if (this.disabled || trim(newTag) === '' || this.isLimitReached) {\n        // Early exit\n        return\n      }\n      const parsed = this.parseTags(newTag)\n      // Add any new tags to the `tags` array, or if the\n      // array of `allTags` is empty, we clear the input\n      if (parsed.valid.length > 0 || parsed.all.length === 0) {\n        // Clear the user input element (and leave in any invalid/duplicate tag(s)\n        /* istanbul ignore if: full testing to be added later */\n        if (matches(this.getInput(), 'select')) {\n          // The following is needed to properly\n          // work with `<select>` elements\n          this.newTag = ''\n        } else {\n          const invalidAndDuplicates = [...parsed.invalid, ...parsed.duplicate]\n          this.newTag = parsed.all\n            .filter(tag => arrayIncludes(invalidAndDuplicates, tag))\n            .join(this.computedJoiner)\n            .concat(invalidAndDuplicates.length > 0 ? this.computedJoiner.charAt(0) : '')\n        }\n      }\n      if (parsed.valid.length > 0) {\n        // We add the new tags in one atomic operation\n        // to trigger reactivity once (instead of once per tag)\n        // We do this after we update the new tag input value\n        // `concat()` can be faster than array spread, when both args are arrays\n        this.tags = concat(this.tags, parsed.valid)\n      }\n      this.tagsState = parsed\n      // Attempt to re-focus the input (specifically for when using the Add\n      // button, as the button disappears after successfully adding a tag\n      this.focus()\n    },\n    removeTag(tag) {\n      /* istanbul ignore next */\n      if (this.disabled) {\n        return\n      }\n      // TODO:\n      //   Add `onRemoveTag(tag)` user method, which if returns `false`\n      //   will prevent the tag from being removed (i.e. confirmation)\n      //   Or emit cancelable `BvEvent`\n      this.tags = this.tags.filter(t => t !== tag)\n      // Return focus to the input (if possible)\n      this.$nextTick(() => {\n        this.focus()\n      })\n    },\n    reset() {\n      this.newTag = ''\n      this.tags = []\n\n      this.$nextTick(() => {\n        this.removedTags = []\n        this.tagsState = cleanTagsState()\n      })\n    },\n    // --- Input element event handlers ---\n    onInputInput(event) {\n      /* istanbul ignore next: hard to test composition events */\n      if (this.disabled || (isEvent(event) && event.target.composing)) {\n        // `event.target.composing` is set by Vue (`v-model` directive)\n        // https://github.com/vuejs/vue/blob/dev/src/platforms/web/runtime/directives/model.js\n        return\n      }\n      let newTag = processEventValue(event)\n      const separatorRe = this.computedSeparatorRegExp\n      if (this.newTag !== newTag) {\n        this.newTag = newTag\n      }\n      // We ignore leading whitespace for the following\n      newTag = trimLeft(newTag)\n      if (separatorRe && separatorRe.test(newTag.slice(-1))) {\n        // A trailing separator character was entered, so add the tag(s)\n        // Note: More than one tag on input event is possible via copy/paste\n        this.addTag()\n      } else {\n        // Validate (parse tags) on input event\n        this.tagsState = newTag === '' ? cleanTagsState() : this.parseTags(newTag)\n      }\n    },\n    onInputChange(event) {\n      // Change is triggered on `<input>` blur, or `<select>` selected\n      // This event is opt-in\n      if (!this.disabled && this.addOnChange) {\n        const newTag = processEventValue(event)\n        /* istanbul ignore next */\n        if (this.newTag !== newTag) {\n          this.newTag = newTag\n        }\n        this.addTag()\n      }\n    },\n    onInputKeydown(event) {\n      // Early exit\n      /* istanbul ignore next */\n      if (this.disabled || !isEvent(event)) {\n        return\n      }\n      const { keyCode } = event\n      const value = event.target.value || ''\n      /* istanbul ignore else: testing to be added later */\n      if (!this.noAddOnEnter && keyCode === CODE_ENTER) {\n        // Attempt to add the tag when user presses enter\n        stopEvent(event, { propagation: false })\n        this.addTag()\n      } else if (\n        this.removeOnDelete &&\n        (keyCode === CODE_BACKSPACE || keyCode === CODE_DELETE) &&\n        value === ''\n      ) {\n        // Remove the last tag if the user pressed backspace/delete and the input is empty\n        stopEvent(event, { propagation: false })\n        this.tags = this.tags.slice(0, -1)\n      }\n    },\n    // --- Wrapper event handlers ---\n    onClick(event) {\n      const ignoreFocusSelector = this.computeIgnoreInputFocusSelector\n      const { target } = event\n      if (\n        !this.disabled &&\n        !isActiveElement(target) &&\n        (!ignoreFocusSelector || !closest(ignoreFocusSelector, target, true))\n      ) {\n        this.$nextTick(() => {\n          this.focus()\n        })\n      }\n    },\n    onFocusin() {\n      this.hasFocus = true\n    },\n    onFocusout() {\n      this.hasFocus = false\n    },\n    handleAutofocus() {\n      this.$nextTick(() => {\n        requestAF(() => {\n          if (this.autofocus && !this.disabled) {\n            this.focus()\n          }\n        })\n      })\n    },\n    // --- Public methods ---\n    focus() {\n      if (!this.disabled) {\n        attemptFocus(this.getInput())\n      }\n    },\n    blur() {\n      if (!this.disabled) {\n        attemptBlur(this.getInput())\n      }\n    },\n    // --- Private methods ---\n    splitTags(newTag) {\n      // Split the input into an array of raw tags\n      newTag = toString(newTag)\n      const separatorRe = this.computedSeparatorRegExp\n      // Split the tag(s) via the optional separator\n      // Normally only a single tag is provided, but copy/paste\n      // can enter multiple tags in a single operation\n      return (separatorRe ? newTag.split(separatorRe) : [newTag]).map(trim).filter(identity)\n    },\n    parseTags(newTag) {\n      // Takes `newTag` value and parses it into `validTags`,\n      // `invalidTags`, and duplicate tags as an object\n      // Split the input into raw tags\n      const tags = this.splitTags(newTag)\n      // Base results\n      const parsed = {\n        all: tags,\n        valid: [],\n        invalid: [],\n        duplicate: []\n      }\n      // Parse the unique tags\n      tags.forEach(tag => {\n        if (arrayIncludes(this.tags, tag) || arrayIncludes(parsed.valid, tag)) {\n          // Unique duplicate tags\n          if (!arrayIncludes(parsed.duplicate, tag)) {\n            parsed.duplicate.push(tag)\n          }\n        } else if (this.validateTag(tag)) {\n          // We only add unique/valid tags\n          parsed.valid.push(tag)\n        } else {\n          // Unique invalid tags\n          if (!arrayIncludes(parsed.invalid, tag)) {\n            parsed.invalid.push(tag)\n          }\n        }\n      })\n      return parsed\n    },\n    validateTag(tag) {\n      const { tagValidator } = this\n      return hasPropFunction(tagValidator) ? tagValidator(tag) : true\n    },\n    getInput() {\n      // Returns the input element reference (or null if not found)\n      // We need to escape `computedInputId` since it can be user-provided\n      return select(`#${cssEscape(this.computedInputId)}`, this.$el)\n    },\n    // Default User Interface render\n    defaultRender({\n      addButtonText,\n      addButtonVariant,\n      addTag,\n      disableAddButton,\n      disabled,\n      duplicateTagText,\n      inputAttrs,\n      inputClass,\n      inputHandlers,\n      inputType,\n      invalidTagText,\n      isDuplicate,\n      isInvalid,\n      isLimitReached,\n      limitTagsText,\n      noTagRemove,\n      placeholder,\n      removeTag,\n      tagClass,\n      tagPills,\n      tagRemoveLabel,\n      tagVariant,\n      tags\n    }) {\n      const h = this.$createElement\n\n      // Make the list of tags\n      const $tags = tags.map(tag => {\n        tag = toString(tag)\n\n        return h(\n          BFormTag,\n          {\n            class: tagClass,\n            // `BFormTag` will auto generate an ID\n            // so we do not need to set the ID prop\n            props: {\n              disabled,\n              noRemove: noTagRemove,\n              pill: tagPills,\n              removeLabel: tagRemoveLabel,\n              tag: 'li',\n              title: tag,\n              variant: tagVariant\n            },\n            on: { remove: () => removeTag(tag) },\n            key: `tags_${tag}`\n          },\n          tag\n        )\n      })\n\n      // Feedback IDs if needed\n      const invalidFeedbackId =\n        invalidTagText && isInvalid ? this.safeId('__invalid_feedback__') : null\n      const duplicateFeedbackId =\n        duplicateTagText && isDuplicate ? this.safeId('__duplicate_feedback__') : null\n      const limitFeedbackId =\n        limitTagsText && isLimitReached ? this.safeId('__limit_feedback__') : null\n\n      // Compute the `aria-describedby` attribute value\n      const ariaDescribedby = [\n        inputAttrs['aria-describedby'],\n        invalidFeedbackId,\n        duplicateFeedbackId,\n        limitFeedbackId\n      ]\n        .filter(identity)\n        .join(' ')\n\n      // Input\n      const $input = h('input', {\n        staticClass: 'b-form-tags-input w-100 flex-grow-1 p-0 m-0 bg-transparent border-0',\n        class: inputClass,\n        style: { outline: 0, minWidth: '5rem' },\n        attrs: {\n          ...inputAttrs,\n          'aria-describedby': ariaDescribedby || null,\n          type: inputType,\n          placeholder: placeholder || null\n        },\n        domProps: { value: inputAttrs.value },\n        on: inputHandlers,\n        // Directive needed to get `event.target.composing` set (if needed)\n        directives: [{ name: 'model', value: inputAttrs.value }],\n        ref: 'input'\n      })\n\n      // Add button\n      const $button = h(\n        BButton,\n        {\n          staticClass: 'b-form-tags-button py-0',\n          class: {\n            // Only show the button if the tag can be added\n            // We use the `invisible` class instead of not rendering\n            // the button, so that we maintain layout to prevent\n            // the user input from jumping around\n            invisible: disableAddButton\n          },\n          style: { fontSize: '90%' },\n          props: {\n            disabled: disableAddButton || isLimitReached,\n            variant: addButtonVariant\n          },\n          on: { click: () => addTag() },\n          ref: 'button'\n        },\n        [this.normalizeSlot(SLOT_NAME_ADD_BUTTON_TEXT) || addButtonText]\n      )\n\n      // ID of the tags + input `<ul>` list\n      // Note we could concatenate `inputAttrs.id` with '__tag_list__'\n      // but `inputId` may be `null` until after mount\n      // `safeId()` returns `null`, if no user provided ID,\n      // until after mount when a unique ID is generated\n      const tagListId = this.safeId('__tag_list__')\n\n      const $field = h(\n        'li',\n        {\n          staticClass: 'b-from-tags-field flex-grow-1',\n          attrs: {\n            role: 'none',\n            'aria-live': 'off',\n            'aria-controls': tagListId\n          },\n          key: 'tags_field'\n        },\n        [\n          h(\n            'div',\n            {\n              staticClass: 'd-flex',\n              attrs: { role: 'group' }\n            },\n            [$input, $button]\n          )\n        ]\n      )\n\n      // Wrap in an unordered list element (we use a list for accessibility)\n      const $ul = h(\n        'ul',\n        {\n          staticClass: 'b-form-tags-list list-unstyled mb-0 d-flex flex-wrap align-items-center',\n          attrs: { id: tagListId },\n          key: 'tags_list'\n        },\n        [$tags, $field]\n      )\n\n      // Assemble the feedback\n      let $feedback = h()\n      if (invalidTagText || duplicateTagText || limitTagsText) {\n        // Add an aria live region for the invalid/duplicate tag\n        // messages if the user has not disabled the messages\n        const joiner = this.computedJoiner\n\n        // Invalid tag feedback if needed (error)\n        let $invalid = h()\n        if (invalidFeedbackId) {\n          $invalid = h(\n            BFormInvalidFeedback,\n            {\n              props: {\n                id: invalidFeedbackId,\n                forceShow: true\n              },\n              key: 'tags_invalid_feedback'\n            },\n            [this.invalidTagText, ': ', this.invalidTags.join(joiner)]\n          )\n        }\n\n        // Duplicate tag feedback if needed (warning, not error)\n        let $duplicate = h()\n        if (duplicateFeedbackId) {\n          $duplicate = h(\n            BFormText,\n            {\n              props: { id: duplicateFeedbackId },\n              key: 'tags_duplicate_feedback'\n            },\n            [this.duplicateTagText, ': ', this.duplicateTags.join(joiner)]\n          )\n        }\n\n        // Limit tags feedback if needed (warning, not error)\n        let $limit = h()\n        if (limitFeedbackId) {\n          $limit = h(\n            BFormText,\n            {\n              props: { id: limitFeedbackId },\n              key: 'tags_limit_feedback'\n            },\n            [limitTagsText]\n          )\n        }\n\n        $feedback = h(\n          'div',\n          {\n            attrs: {\n              'aria-live': 'polite',\n              'aria-atomic': 'true'\n            },\n            key: 'tags_feedback'\n          },\n          [$invalid, $duplicate, $limit]\n        )\n      }\n\n      // Return the content\n      return [$ul, $feedback]\n    }\n  },\n  render(h) {\n    const { name, disabled, required, form, tags, computedInputId, hasFocus, noOuterFocus } = this\n\n    // Scoped slot properties\n    const scope = {\n      // Array of tags (shallow copy to prevent mutations)\n      tags: tags.slice(),\n      // <input> v-bind:inputAttrs\n      inputAttrs: this.computedInputAttrs,\n      // We don't include this in the attrs, as users may want to override this\n      inputType: this.computedInputType,\n      // <input> v-on:inputHandlers\n      inputHandlers: this.computedInputHandlers,\n      // Methods\n      removeTag: this.removeTag,\n      addTag: this.addTag,\n      reset: this.reset,\n      // <input> :id=\"inputId\"\n      inputId: computedInputId,\n      // Invalid/Duplicate state information\n      isInvalid: this.hasInvalidTags,\n      invalidTags: this.invalidTags.slice(),\n      isDuplicate: this.hasDuplicateTags,\n      duplicateTags: this.duplicateTags.slice(),\n      isLimitReached: this.isLimitReached,\n      // If the 'Add' button should be disabled\n      disableAddButton: this.disableAddButton,\n      // Pass-through props\n      ...pick(this.$props, [\n        'addButtonText',\n        'addButtonVariant',\n        'disabled',\n        'duplicateTagText',\n        'form',\n        'inputClass',\n        'invalidTagText',\n        'limit',\n        'limitTagsText',\n        'noTagRemove',\n        'placeholder',\n        'required',\n        'separator',\n        'size',\n        'state',\n        'tagClass',\n        'tagPills',\n        'tagRemoveLabel',\n        'tagVariant'\n      ])\n    }\n\n    // Generate the user interface\n    const $content = this.normalizeSlot(SLOT_NAME_DEFAULT, scope) || this.defaultRender(scope)\n\n    // Generate the `aria-live` region for the current value(s)\n    const $output = h(\n      'output',\n      {\n        staticClass: 'sr-only',\n        attrs: {\n          id: this.safeId('__selected_tags__'),\n          role: 'status',\n          for: computedInputId,\n          'aria-live': hasFocus ? 'polite' : 'off',\n          'aria-atomic': 'true',\n          'aria-relevant': 'additions text'\n        }\n      },\n      this.tags.join(', ')\n    )\n\n    // Removed tag live region\n    const $removed = h(\n      'div',\n      {\n        staticClass: 'sr-only',\n        attrs: {\n          id: this.safeId('__removed_tags__'),\n          role: 'status',\n          'aria-live': hasFocus ? 'assertive' : 'off',\n          'aria-atomic': 'true'\n        }\n      },\n      this.removedTags.length > 0 ? `(${this.tagRemovedLabel}) ${this.removedTags.join(', ')}` : ''\n    )\n\n    // Add hidden inputs for form submission\n    let $hidden = h()\n    if (name && !disabled) {\n      // We add hidden inputs for each tag if a name is provided\n      // When there are currently no tags, a visually hidden input\n      // with empty value is rendered for proper required handling\n      const hasTags = tags.length > 0\n      $hidden = (hasTags ? tags : ['']).map(tag => {\n        return h('input', {\n          class: { 'sr-only': !hasTags },\n          attrs: {\n            type: hasTags ? 'hidden' : 'text',\n            value: tag,\n            required,\n            name,\n            form\n          },\n          key: `tag_input_${tag}`\n        })\n      })\n    }\n\n    // Return the rendered output\n    return h(\n      'div',\n      {\n        staticClass: 'b-form-tags form-control h-auto',\n        class: [\n          {\n            focus: hasFocus && !noOuterFocus && !disabled,\n            disabled\n          },\n          this.sizeFormClass,\n          this.stateClass\n        ],\n        attrs: {\n          id: this.safeId(),\n          role: 'group',\n          tabindex: disabled || noOuterFocus ? null : '-1',\n          'aria-describedby': this.safeId('__selected_tags__')\n        },\n        on: {\n          click: this.onClick,\n          focusin: this.onFocusin,\n          focusout: this.onFocusout\n        }\n      },\n      [$output, $removed, $content, $hidden]\n    )\n  }\n})\n","import { BFormTags } from './form-tags'\nimport { BFormTag } from './form-tag'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormTagsPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BFormTags,\n    BTags: BFormTags,\n    BFormTag,\n    BTag: BFormTag\n  }\n})\n\nexport { FormTagsPlugin, BFormTags, BFormTag }\n","import { Vue } from '../../vue'\nimport { NAME_FORM_TEXTAREA } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { getCS, getStyle, isVisible, requestAF, setStyle } from '../../utils/dom'\nimport { isNull } from '../../utils/inspect'\nimport { mathCeil, mathMax, mathMin } from '../../utils/math'\nimport { toInteger, toFloat } from '../../utils/number'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control'\nimport { formSelectionMixin } from '../../mixins/form-selection'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { formTextMixin, props as formTextProps } from '../../mixins/form-text'\nimport { formValidityMixin } from '../../mixins/form-validity'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { VBVisible } from '../../directives/visible/visible'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...formControlProps,\n    ...formSizeProps,\n    ...formStateProps,\n    ...formTextProps,\n    maxRows: makeProp(PROP_TYPE_NUMBER_STRING),\n    // When in auto resize mode, disable shrinking to content height\n    noAutoShrink: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Disable the resize handle of textarea\n    noResize: makeProp(PROP_TYPE_BOOLEAN, false),\n    rows: makeProp(PROP_TYPE_NUMBER_STRING, 2),\n    // 'soft', 'hard' or 'off'\n    // Browser default is 'soft'\n    wrap: makeProp(PROP_TYPE_STRING, 'soft')\n  }),\n  NAME_FORM_TEXTAREA\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormTextarea = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_TEXTAREA,\n  directives: {\n    'b-visible': VBVisible\n  },\n  // Mixin order is important!\n  mixins: [\n    listenersMixin,\n    idMixin,\n    listenOnRootMixin,\n    formControlMixin,\n    formSizeMixin,\n    formStateMixin,\n    formTextMixin,\n    formSelectionMixin,\n    formValidityMixin\n  ],\n  props,\n  data() {\n    return {\n      heightInPx: null\n    }\n  },\n  computed: {\n    computedStyle() {\n      const styles = {\n        // Setting `noResize` to true will disable the ability for the user to\n        // manually resize the textarea. We also disable when in auto height mode\n        resize: !this.computedRows || this.noResize ? 'none' : null\n      }\n      if (!this.computedRows) {\n        // Conditionally set the computed CSS height when auto rows/height is enabled\n        // We avoid setting the style to `null`, which can override user manual resize handle\n        styles.height = this.heightInPx\n        // We always add a vertical scrollbar to the textarea when auto-height is\n        // enabled so that the computed height calculation returns a stable value\n        styles.overflowY = 'scroll'\n      }\n      return styles\n    },\n    computedMinRows() {\n      // Ensure rows is at least 2 and positive (2 is the native textarea value)\n      // A value of 1 can cause issues in some browsers, and most browsers\n      // only support 2 as the smallest value\n      return mathMax(toInteger(this.rows, 2), 2)\n    },\n    computedMaxRows() {\n      return mathMax(this.computedMinRows, toInteger(this.maxRows, 0))\n    },\n    computedRows() {\n      // This is used to set the attribute 'rows' on the textarea\n      // If auto-height is enabled, then we return `null` as we use CSS to control height\n      return this.computedMinRows === this.computedMaxRows ? this.computedMinRows : null\n    },\n    computedAttrs() {\n      const { disabled, required } = this\n\n      return {\n        id: this.safeId(),\n        name: this.name || null,\n        form: this.form || null,\n        disabled,\n        placeholder: this.placeholder || null,\n        required,\n        autocomplete: this.autocomplete || null,\n        readonly: this.readonly || this.plaintext,\n        rows: this.computedRows,\n        wrap: this.wrap || null,\n        'aria-required': this.required ? 'true' : null,\n        'aria-invalid': this.computedAriaInvalid\n      }\n    },\n    computedListeners() {\n      return {\n        ...this.bvListeners,\n        input: this.onInput,\n        change: this.onChange,\n        blur: this.onBlur\n      }\n    }\n  },\n  watch: {\n    localValue() {\n      this.setHeight()\n    }\n  },\n  mounted() {\n    this.setHeight()\n  },\n  methods: {\n    // Called by intersection observer directive\n    /* istanbul ignore next */\n    visibleCallback(visible) {\n      if (visible) {\n        // We use a `$nextTick()` here just to make sure any\n        // transitions or portalling have completed\n        this.$nextTick(this.setHeight)\n      }\n    },\n    setHeight() {\n      this.$nextTick(() => {\n        requestAF(() => {\n          this.heightInPx = this.computeHeight()\n        })\n      })\n    },\n    /* istanbul ignore next: can't test getComputedStyle in JSDOM */\n    computeHeight() {\n      if (this.$isServer || !isNull(this.computedRows)) {\n        return null\n      }\n\n      const el = this.$el\n\n      // Element must be visible (not hidden) and in document\n      // Must be checked after above checks\n      if (!isVisible(el)) {\n        return null\n      }\n\n      // Get current computed styles\n      const computedStyle = getCS(el)\n      // Height of one line of text in px\n      const lineHeight = toFloat(computedStyle.lineHeight, 1)\n      // Calculate height of border and padding\n      const border =\n        toFloat(computedStyle.borderTopWidth, 0) + toFloat(computedStyle.borderBottomWidth, 0)\n      const padding = toFloat(computedStyle.paddingTop, 0) + toFloat(computedStyle.paddingBottom, 0)\n      // Calculate offset\n      const offset = border + padding\n      // Minimum height for min rows (which must be 2 rows or greater for cross-browser support)\n      const minHeight = lineHeight * this.computedMinRows + offset\n\n      // Get the current style height (with `px` units)\n      const oldHeight = getStyle(el, 'height') || computedStyle.height\n      // Probe scrollHeight by temporarily changing the height to `auto`\n      setStyle(el, 'height', 'auto')\n      const scrollHeight = el.scrollHeight\n      // Place the original old height back on the element, just in case `computedProp`\n      // returns the same value as before\n      setStyle(el, 'height', oldHeight)\n\n      // Calculate content height in 'rows' (scrollHeight includes padding but not border)\n      const contentRows = mathMax((scrollHeight - padding) / lineHeight, 2)\n      // Calculate number of rows to display (limited within min/max rows)\n      const rows = mathMin(mathMax(contentRows, this.computedMinRows), this.computedMaxRows)\n      // Calculate the required height of the textarea including border and padding (in pixels)\n      const height = mathMax(mathCeil(rows * lineHeight + offset), minHeight)\n\n      // Computed height remains the larger of `oldHeight` and new `height`,\n      // when height is in `sticky` mode (prop `no-auto-shrink` is true)\n      if (this.noAutoShrink && toFloat(oldHeight, 0) > height) {\n        return oldHeight\n      }\n\n      // Return the new computed CSS height in px units\n      return `${height}px`\n    }\n  },\n  render(h) {\n    return h('textarea', {\n      class: this.computedClass,\n      style: this.computedStyle,\n      directives: [\n        {\n          name: 'b-visible',\n          value: this.visibleCallback,\n          // If textarea is within 640px of viewport, consider it visible\n          modifiers: { '640': true }\n        }\n      ],\n      attrs: this.computedAttrs,\n      domProps: { value: this.localValue },\n      on: this.computedListeners,\n      ref: 'input'\n    })\n  }\n})\n","import { BFormTextarea } from './form-textarea'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormTextareaPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BFormTextarea,\n    BTextarea: BFormTextarea\n  }\n})\n\nexport { FormTextareaPlugin, BFormTextarea }\n","// BTime control (not form input control)\nimport { Vue } from '../../vue'\nimport { NAME_TIME } from '../../constants/components'\nimport { EVENT_NAME_CONTEXT } from '../../constants/events'\nimport { CODE_LEFT, CODE_RIGHT } from '../../constants/key-codes'\nimport {\n  PROP_TYPE_ARRAY_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { RX_TIME } from '../../constants/regex'\nimport { concat } from '../../utils/array'\nimport { createDate, createDateFormatter } from '../../utils/date'\nimport { attemptBlur, attemptFocus, contains, getActiveElement, requestAF } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isNull, isUndefinedOrNull } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { isLocaleRTL } from '../../utils/locale'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { pick, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BFormSpinbutton, props as BFormSpinbuttonProps } from '../form-spinbutton/form-spinbutton'\nimport { BIconCircleFill, BIconChevronUp } from '../../icons/icons'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n  type: PROP_TYPE_STRING,\n  defaultValue: ''\n})\n\nconst NUMERIC = 'numeric'\n\n// --- Helper methods ---\n\nconst padLeftZeros = value => `00${value || ''}`.slice(-2)\n\nconst parseHMS = value => {\n  value = toString(value)\n  let [hh, mm, ss] = [null, null, null]\n  if (RX_TIME.test(value)) {\n    ;[hh, mm, ss] = value.split(':').map(v => toInteger(v, null))\n  }\n  return {\n    hours: isUndefinedOrNull(hh) ? null : hh,\n    minutes: isUndefinedOrNull(mm) ? null : mm,\n    seconds: isUndefinedOrNull(ss) ? null : ss,\n    ampm: isUndefinedOrNull(hh) || hh < 12 ? 0 : 1\n  }\n}\n\nconst formatHMS = ({ hours, minutes, seconds }, requireSeconds = false) => {\n  if (isNull(hours) || isNull(minutes) || (requireSeconds && isNull(seconds))) {\n    return ''\n  }\n  const hms = [hours, minutes, requireSeconds ? seconds : 0]\n  return hms.map(padLeftZeros).join(':')\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ...pick(BFormSpinbuttonProps, ['labelIncrement', 'labelDecrement']),\n    // ID of label element\n    ariaLabelledby: makeProp(PROP_TYPE_STRING),\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    hidden: makeProp(PROP_TYPE_BOOLEAN, false),\n    hideHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Explicitly force 12 or 24 hour time\n    // Default is to use resolved locale for 12/24 hour display\n    // Tri-state: `true` = 12, `false` = 24, `null` = auto\n    hour12: makeProp(PROP_TYPE_BOOLEAN, null),\n    labelAm: makeProp(PROP_TYPE_STRING, 'AM'),\n    labelAmpm: makeProp(PROP_TYPE_STRING, 'AM/PM'),\n    labelHours: makeProp(PROP_TYPE_STRING, 'Hours'),\n    labelMinutes: makeProp(PROP_TYPE_STRING, 'Minutes'),\n    labelNoTimeSelected: makeProp(PROP_TYPE_STRING, 'No time selected'),\n    labelPm: makeProp(PROP_TYPE_STRING, 'PM'),\n    labelSeconds: makeProp(PROP_TYPE_STRING, 'Seconds'),\n    labelSelected: makeProp(PROP_TYPE_STRING, 'Selected time'),\n    locale: makeProp(PROP_TYPE_ARRAY_STRING),\n    minutesStep: makeProp(PROP_TYPE_NUMBER_STRING, 1),\n    readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n    secondsStep: makeProp(PROP_TYPE_NUMBER_STRING, 1),\n    // If `true`, show the second spinbutton\n    showSeconds: makeProp(PROP_TYPE_BOOLEAN, false)\n  }),\n  NAME_TIME\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BTime = /*#__PURE__*/ Vue.extend({\n  name: NAME_TIME,\n  mixins: [idMixin, modelMixin, normalizeSlotMixin],\n  props,\n  data() {\n    const parsed = parseHMS(this[MODEL_PROP_NAME] || '')\n    return {\n      // Spin button models\n      modelHours: parsed.hours,\n      modelMinutes: parsed.minutes,\n      modelSeconds: parsed.seconds,\n      modelAmpm: parsed.ampm,\n      // Internal flag to enable aria-live regions\n      isLive: false\n    }\n  },\n  computed: {\n    computedHMS() {\n      const hours = this.modelHours\n      const minutes = this.modelMinutes\n      const seconds = this.modelSeconds\n      return formatHMS({ hours, minutes, seconds }, this.showSeconds)\n    },\n    resolvedOptions() {\n      // Resolved locale options\n      const locale = concat(this.locale).filter(identity)\n      const options = {\n        hour: NUMERIC,\n        minute: NUMERIC,\n        second: NUMERIC\n      }\n      if (!isUndefinedOrNull(this.hour12)) {\n        // Force 12 or 24 hour clock\n        options.hour12 = !!this.hour12\n      }\n      const dtf = new Intl.DateTimeFormat(locale, options)\n      const resolved = dtf.resolvedOptions()\n      const hour12 = resolved.hour12 || false\n      // IE 11 doesn't resolve the hourCycle, so we make\n      // an assumption and fall back to common values\n      const hourCycle = resolved.hourCycle || (hour12 ? 'h12' : 'h23')\n      return {\n        locale: resolved.locale,\n        hour12,\n        hourCycle\n      }\n    },\n    computedLocale() {\n      return this.resolvedOptions.locale\n    },\n    computedLang() {\n      return (this.computedLocale || '').replace(/-u-.*$/, '')\n    },\n    computedRTL() {\n      return isLocaleRTL(this.computedLang)\n    },\n    computedHourCycle() {\n      // h11, h12, h23, or h24\n      // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Locale/hourCycle\n      // h12 - Hour system using 1–12. Corresponds to 'h' in patterns. The 12 hour clock, with midnight starting at 12:00 am\n      // h23 - Hour system using 0–23. Corresponds to 'H' in patterns. The 24 hour clock, with midnight starting at 0:00\n      // h11 - Hour system using 0–11. Corresponds to 'K' in patterns. The 12 hour clock, with midnight starting at 0:00 am\n      // h24 - Hour system using 1–24. Corresponds to 'k' in pattern. The 24 hour clock, with midnight starting at 24:00\n      // For h12 or h24, we visually format 00 hours as 12\n      return this.resolvedOptions.hourCycle\n    },\n    is12Hour() {\n      return !!this.resolvedOptions.hour12\n    },\n    context() {\n      return {\n        locale: this.computedLocale,\n        isRTL: this.computedRTL,\n        hourCycle: this.computedHourCycle,\n        hour12: this.is12Hour,\n        hours: this.modelHours,\n        minutes: this.modelMinutes,\n        seconds: this.showSeconds ? this.modelSeconds : 0,\n        value: this.computedHMS,\n        formatted: this.formattedTimeString\n      }\n    },\n    valueId() {\n      return this.safeId() || null\n    },\n    computedAriaLabelledby() {\n      return [this.ariaLabelledby, this.valueId].filter(identity).join(' ') || null\n    },\n    timeFormatter() {\n      // Returns a formatter function reference\n      // The formatter converts the time to a localized string\n      const options = {\n        hour12: this.is12Hour,\n        hourCycle: this.computedHourCycle,\n        hour: NUMERIC,\n        minute: NUMERIC,\n        timeZone: 'UTC'\n      }\n      if (this.showSeconds) {\n        options.second = NUMERIC\n      }\n      // Formats the time as a localized string\n      return createDateFormatter(this.computedLocale, options)\n    },\n    numberFormatter() {\n      // Returns a formatter function reference\n      // The formatter always formats as 2 digits and is localized\n      const nf = new Intl.NumberFormat(this.computedLocale, {\n        style: 'decimal',\n        minimumIntegerDigits: 2,\n        minimumFractionDigits: 0,\n        maximumFractionDigits: 0,\n        notation: 'standard'\n      })\n      return nf.format\n    },\n    formattedTimeString() {\n      const hours = this.modelHours\n      const minutes = this.modelMinutes\n      const seconds = this.showSeconds ? this.modelSeconds || 0 : 0\n      if (this.computedHMS) {\n        return this.timeFormatter(createDate(Date.UTC(0, 0, 1, hours, minutes, seconds)))\n      }\n      return this.labelNoTimeSelected || ' '\n    },\n    spinScopedSlots() {\n      const h = this.$createElement\n      return {\n        increment: ({ hasFocus }) =>\n          h(BIconChevronUp, {\n            props: { scale: hasFocus ? 1.5 : 1.25 },\n            attrs: { 'aria-hidden': 'true' }\n          }),\n        decrement: ({ hasFocus }) =>\n          h(BIconChevronUp, {\n            props: { flipV: true, scale: hasFocus ? 1.5 : 1.25 },\n            attrs: { 'aria-hidden': 'true' }\n          })\n      }\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue, oldValue) {\n      if (newValue !== oldValue && !looseEqual(parseHMS(newValue), parseHMS(this.computedHMS))) {\n        const { hours, minutes, seconds, ampm } = parseHMS(newValue)\n        this.modelHours = hours\n        this.modelMinutes = minutes\n        this.modelSeconds = seconds\n        this.modelAmpm = ampm\n      }\n    },\n    computedHMS(newValue, oldValue) {\n      if (newValue !== oldValue) {\n        this.$emit(MODEL_EVENT_NAME, newValue)\n      }\n    },\n    context(newValue, oldValue) {\n      if (!looseEqual(newValue, oldValue)) {\n        this.$emit(EVENT_NAME_CONTEXT, newValue)\n      }\n    },\n    modelAmpm(newValue, oldValue) {\n      if (newValue !== oldValue) {\n        const hours = isNull(this.modelHours) ? 0 : this.modelHours\n        this.$nextTick(() => {\n          if (newValue === 0 && hours > 11) {\n            // Switched to AM\n            this.modelHours = hours - 12\n          } else if (newValue === 1 && hours < 12) {\n            // Switched to PM\n            this.modelHours = hours + 12\n          }\n        })\n      }\n    },\n    modelHours(newHours, oldHours) {\n      if (newHours !== oldHours) {\n        this.modelAmpm = newHours > 11 ? 1 : 0\n      }\n    }\n  },\n  created() {\n    this.$nextTick(() => {\n      this.$emit(EVENT_NAME_CONTEXT, this.context)\n    })\n  },\n  mounted() {\n    this.setLive(true)\n  },\n  /* istanbul ignore next */\n  activated() {\n    this.setLive(true)\n  },\n  /* istanbul ignore next */\n  deactivated() {\n    this.setLive(false)\n  },\n  beforeDestroy() {\n    this.setLive(false)\n  },\n  methods: {\n    // Public methods\n    focus() {\n      if (!this.disabled) {\n        // We focus the first spin button\n        attemptFocus(this.$refs.spinners[0])\n      }\n    },\n    blur() {\n      if (!this.disabled) {\n        const activeElement = getActiveElement()\n        if (contains(this.$el, activeElement)) {\n          attemptBlur(activeElement)\n        }\n      }\n    },\n    // Formatters for the spin buttons\n    formatHours(hh) {\n      const hourCycle = this.computedHourCycle\n      // We always store 0-23, but format based on h11/h12/h23/h24 formats\n      hh = this.is12Hour && hh > 12 ? hh - 12 : hh\n      // Determine how 00:00 and 12:00 are shown\n      hh =\n        hh === 0 && hourCycle === 'h12'\n          ? 12\n          : hh === 0 && hourCycle === 'h24'\n            ? /* istanbul ignore next */ 24\n            : hh === 12 && hourCycle === 'h11'\n              ? /* istanbul ignore next */ 0\n              : hh\n      return this.numberFormatter(hh)\n    },\n    formatMinutes(mm) {\n      return this.numberFormatter(mm)\n    },\n    formatSeconds(ss) {\n      return this.numberFormatter(ss)\n    },\n    formatAmpm(ampm) {\n      // These should come from label props???\n      // `ampm` should always be a value of `0` or `1`\n      return ampm === 0 ? this.labelAm : ampm === 1 ? this.labelPm : ''\n    },\n    // Spinbutton on change handlers\n    setHours(value) {\n      this.modelHours = value\n    },\n    setMinutes(value) {\n      this.modelMinutes = value\n    },\n    setSeconds(value) {\n      this.modelSeconds = value\n    },\n    setAmpm(value) {\n      this.modelAmpm = value\n    },\n    onSpinLeftRight(event = {}) {\n      const { type, keyCode } = event\n      if (\n        !this.disabled &&\n        type === 'keydown' &&\n        (keyCode === CODE_LEFT || keyCode === CODE_RIGHT)\n      ) {\n        stopEvent(event)\n        const spinners = this.$refs.spinners || []\n        let index = spinners.map(cmp => !!cmp.hasFocus).indexOf(true)\n        index = index + (keyCode === CODE_LEFT ? -1 : 1)\n        index = index >= spinners.length ? 0 : index < 0 ? spinners.length - 1 : index\n        attemptFocus(spinners[index])\n      }\n    },\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  },\n  render(h) {\n    /* istanbul ignore if */\n    if (this.hidden) {\n      // If hidden, we just render a placeholder comment\n      return h()\n    }\n\n    const valueId = this.valueId\n    const computedAriaLabelledby = this.computedAriaLabelledby\n    const spinIds = []\n\n    // Helper method to render a spinbutton\n    const makeSpinbutton = (handler, key, classes, spinbuttonProps = {}) => {\n      const id = this.safeId(`_spinbutton_${key}_`) || null\n      spinIds.push(id)\n\n      return h(BFormSpinbutton, {\n        class: classes,\n        props: {\n          id,\n          placeholder: '--',\n          vertical: true,\n          required: true,\n          disabled: this.disabled,\n          readonly: this.readonly,\n          locale: this.computedLocale,\n          labelIncrement: this.labelIncrement,\n          labelDecrement: this.labelDecrement,\n          wrap: true,\n          ariaControls: valueId,\n          min: 0,\n          ...spinbuttonProps\n        },\n        scopedSlots: this.spinScopedSlots,\n        on: {\n          // We use `change` event to minimize SR verbosity\n          // As the spinbutton will announce each value change\n          // and we don't want the formatted time to be announced\n          // on each value input if repeat is happening\n          change: handler\n        },\n        key,\n        ref: 'spinners',\n        refInFor: true\n      })\n    }\n\n    // Helper method to return a \"colon\" separator\n    const makeColon = () => {\n      return h(\n        'div',\n        {\n          staticClass: 'd-flex flex-column',\n          class: {\n            'text-muted': this.disabled || this.readonly\n          },\n          attrs: { 'aria-hidden': 'true' }\n        },\n        [\n          h(BIconCircleFill, { props: { shiftV: 4, scale: 0.5 } }),\n          h(BIconCircleFill, { props: { shiftV: -4, scale: 0.5 } })\n        ]\n      )\n    }\n\n    let $spinners = []\n\n    // Hours\n    $spinners.push(\n      makeSpinbutton(this.setHours, 'hours', 'b-time-hours', {\n        value: this.modelHours,\n        max: 23,\n        step: 1,\n        formatterFn: this.formatHours,\n        ariaLabel: this.labelHours\n      })\n    )\n\n    // Spacer\n    $spinners.push(makeColon())\n\n    // Minutes\n    $spinners.push(\n      makeSpinbutton(this.setMinutes, 'minutes', 'b-time-minutes', {\n        value: this.modelMinutes,\n        max: 59,\n        step: this.minutesStep || 1,\n        formatterFn: this.formatMinutes,\n        ariaLabel: this.labelMinutes\n      })\n    )\n\n    if (this.showSeconds) {\n      // Spacer\n      $spinners.push(makeColon())\n      // Seconds\n      $spinners.push(\n        makeSpinbutton(this.setSeconds, 'seconds', 'b-time-seconds', {\n          value: this.modelSeconds,\n          max: 59,\n          step: this.secondsStep || 1,\n          formatterFn: this.formatSeconds,\n          ariaLabel: this.labelSeconds\n        })\n      )\n    }\n\n    // AM/PM ?\n    if (this.is12Hour) {\n      // TODO:\n      //   If locale is RTL, unshift this instead of push?\n      //   And switch class `ml-2` to `mr-2`\n      //   Note some LTR locales (i.e. zh) also place AM/PM to the left\n      $spinners.push(\n        makeSpinbutton(this.setAmpm, 'ampm', 'b-time-ampm', {\n          value: this.modelAmpm,\n          max: 1,\n          formatterFn: this.formatAmpm,\n          ariaLabel: this.labelAmpm,\n          // We set `required` as `false`, since this always has a value\n          required: false\n        })\n      )\n    }\n\n    // Assemble spinners\n    $spinners = h(\n      'div',\n      {\n        staticClass: 'd-flex align-items-center justify-content-center mx-auto',\n        attrs: {\n          role: 'group',\n          tabindex: this.disabled || this.readonly ? null : '-1',\n          'aria-labelledby': computedAriaLabelledby\n        },\n        on: {\n          keydown: this.onSpinLeftRight,\n          click: /* istanbul ignore next */ event => {\n            if (event.target === event.currentTarget) {\n              this.focus()\n            }\n          }\n        }\n      },\n      $spinners\n    )\n\n    // Selected type display\n    const $value = h(\n      'output',\n      {\n        staticClass: 'form-control form-control-sm text-center',\n        class: {\n          disabled: this.disabled || this.readonly\n        },\n        attrs: {\n          id: valueId,\n          role: 'status',\n          for: spinIds.filter(identity).join(' ') || null,\n          tabindex: this.disabled ? null : '-1',\n          'aria-live': this.isLive ? 'polite' : 'off',\n          'aria-atomic': 'true'\n        },\n        on: {\n          // Transfer focus/click to focus hours spinner\n          click: this.focus,\n          focus: this.focus\n        }\n      },\n      [\n        h('bdi', this.formattedTimeString),\n        this.computedHMS ? h('span', { staticClass: 'sr-only' }, ` (${this.labelSelected}) `) : ''\n      ]\n    )\n    const $header = h(\n      'header',\n      { staticClass: 'b-time-header', class: { 'sr-only': this.hideHeader } },\n      [$value]\n    )\n\n    // Optional bottom slot\n    let $slot = this.normalizeSlot()\n    $slot = $slot ? h('footer', { staticClass: 'b-time-footer' }, $slot) : h()\n\n    return h(\n      'div',\n      {\n        staticClass: 'b-time d-inline-flex flex-column text-center',\n        attrs: {\n          role: 'group',\n          lang: this.computedLang || null,\n          'aria-labelledby': computedAriaLabelledby || null,\n          'aria-disabled': this.disabled ? 'true' : null,\n          'aria-readonly': this.readonly && !this.disabled ? 'true' : null\n        }\n      },\n      [$header, $spinners, $slot]\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_TIMEPICKER } from '../../constants/components'\nimport { EVENT_NAME_CONTEXT, EVENT_NAME_SHOWN, EVENT_NAME_HIDDEN } from '../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_DATE_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_BUTTON_CONTENT } from '../../constants/slots'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { makeModelMixin } from '../../utils/model'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { BIconClock, BIconClockFill } from '../../icons/icons'\nimport { BButton } from '../button/button'\nimport {\n  BVFormBtnLabelControl,\n  props as BVFormBtnLabelControlProps\n} from '../form-btn-label-control/bv-form-btn-label-control'\nimport { BTime, props as BTimeProps } from '../time/time'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n  type: PROP_TYPE_STRING,\n  defaultValue: ''\n})\n\n// --- Props ---\n\nconst timeProps = omit(BTimeProps, ['hidden', 'id', 'value'])\n\nconst formBtnLabelControlProps = omit(BVFormBtnLabelControlProps, [\n  'formattedValue',\n  'id',\n  'lang',\n  'rtl',\n  'value'\n])\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ...timeProps,\n    ...formBtnLabelControlProps,\n    closeButtonVariant: makeProp(PROP_TYPE_STRING, 'outline-secondary'),\n    labelCloseButton: makeProp(PROP_TYPE_STRING, 'Close'),\n    labelNowButton: makeProp(PROP_TYPE_STRING, 'Select now'),\n    labelResetButton: makeProp(PROP_TYPE_STRING, 'Reset'),\n    noCloseButton: makeProp(PROP_TYPE_BOOLEAN, false),\n    nowButton: makeProp(PROP_TYPE_BOOLEAN, false),\n    nowButtonVariant: makeProp(PROP_TYPE_STRING, 'outline-primary'),\n    resetButton: makeProp(PROP_TYPE_BOOLEAN, false),\n    resetButtonVariant: makeProp(PROP_TYPE_STRING, 'outline-danger'),\n    resetValue: makeProp(PROP_TYPE_DATE_STRING)\n  }),\n  NAME_FORM_TIMEPICKER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormTimepicker = /*#__PURE__*/ Vue.extend({\n  name: NAME_FORM_TIMEPICKER,\n  mixins: [idMixin, modelMixin],\n  props,\n  data() {\n    return {\n      // We always use `HH:mm:ss` value internally\n      localHMS: this[MODEL_PROP_NAME] || '',\n      // Context data from BTime\n      localLocale: null,\n      isRTL: false,\n      formattedValue: '',\n      // If the menu is opened\n      isVisible: false\n    }\n  },\n  computed: {\n    computedLang() {\n      return (this.localLocale || '').replace(/-u-.*$/i, '') || null\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue) {\n      this.localHMS = newValue || ''\n    },\n    localHMS(newValue) {\n      // We only update the v-model value when the timepicker\n      // is open, to prevent cursor jumps when bound to a\n      // text input in button only mode\n      if (this.isVisible) {\n        this.$emit(MODEL_EVENT_NAME, newValue || '')\n      }\n    }\n  },\n  methods: {\n    // Public methods\n    focus() {\n      if (!this.disabled) {\n        attemptFocus(this.$refs.control)\n      }\n    },\n    blur() {\n      if (!this.disabled) {\n        attemptBlur(this.$refs.control)\n      }\n    },\n    // Private methods\n    setAndClose(value) {\n      this.localHMS = value\n      this.$nextTick(() => {\n        this.$refs.control.hide(true)\n      })\n    },\n    onInput(hms) {\n      if (this.localHMS !== hms) {\n        this.localHMS = hms\n      }\n    },\n    onContext(ctx) {\n      const { isRTL, locale, value, formatted } = ctx\n      this.isRTL = isRTL\n      this.localLocale = locale\n      this.formattedValue = formatted\n      this.localHMS = value || ''\n      // Re-emit the context event\n      this.$emit(EVENT_NAME_CONTEXT, ctx)\n    },\n    onNowButton() {\n      const now = new Date()\n      const hours = now.getHours()\n      const minutes = now.getMinutes()\n      const seconds = this.showSeconds ? now.getSeconds() : 0\n      const value = [hours, minutes, seconds].map(v => `00${v || ''}`.slice(-2)).join(':')\n      this.setAndClose(value)\n    },\n    onResetButton() {\n      this.setAndClose(this.resetValue)\n    },\n    onCloseButton() {\n      this.$refs.control.hide(true)\n    },\n    onShow() {\n      this.isVisible = true\n    },\n    onShown() {\n      this.$nextTick(() => {\n        attemptFocus(this.$refs.time)\n        this.$emit(EVENT_NAME_SHOWN)\n      })\n    },\n    onHidden() {\n      this.isVisible = false\n      this.$emit(EVENT_NAME_HIDDEN)\n    },\n    // Render function helpers\n    defaultButtonFn({ isHovered, hasFocus }) {\n      return this.$createElement(isHovered || hasFocus ? BIconClockFill : BIconClock, {\n        attrs: { 'aria-hidden': 'true' }\n      })\n    }\n  },\n  render(h) {\n    const { localHMS, disabled, readonly, $props } = this\n    const placeholder = isUndefinedOrNull(this.placeholder)\n      ? this.labelNoTimeSelected\n      : this.placeholder\n\n    // Footer buttons\n    let $footer = []\n\n    if (this.nowButton) {\n      const label = this.labelNowButton\n      $footer.push(\n        h(\n          BButton,\n          {\n            props: {\n              size: 'sm',\n              disabled: disabled || readonly,\n              variant: this.nowButtonVariant\n            },\n            attrs: { 'aria-label': label || null },\n            on: { click: this.onNowButton },\n            key: 'now-btn'\n          },\n          label\n        )\n      )\n    }\n\n    if (this.resetButton) {\n      if ($footer.length > 0) {\n        // Add a \"spacer\" between buttons ('&nbsp;')\n        $footer.push(h('span', '\\u00a0'))\n      }\n      const label = this.labelResetButton\n      $footer.push(\n        h(\n          BButton,\n          {\n            props: {\n              size: 'sm',\n              disabled: disabled || readonly,\n              variant: this.resetButtonVariant\n            },\n            attrs: { 'aria-label': label || null },\n            on: { click: this.onResetButton },\n            key: 'reset-btn'\n          },\n          label\n        )\n      )\n    }\n\n    if (!this.noCloseButton) {\n      // Add a \"spacer\" between buttons ('&nbsp;')\n      if ($footer.length > 0) {\n        $footer.push(h('span', '\\u00a0'))\n      }\n\n      const label = this.labelCloseButton\n\n      $footer.push(\n        h(\n          BButton,\n          {\n            props: {\n              size: 'sm',\n              disabled,\n              variant: this.closeButtonVariant\n            },\n            attrs: { 'aria-label': label || null },\n            on: { click: this.onCloseButton },\n            key: 'close-btn'\n          },\n          label\n        )\n      )\n    }\n\n    if ($footer.length > 0) {\n      $footer = [\n        h(\n          'div',\n          {\n            staticClass: 'b-form-date-controls d-flex flex-wrap',\n            class: {\n              'justify-content-between': $footer.length > 1,\n              'justify-content-end': $footer.length < 2\n            }\n          },\n          $footer\n        )\n      ]\n    }\n\n    const $time = h(\n      BTime,\n      {\n        staticClass: 'b-form-time-control',\n        props: {\n          ...pluckProps(timeProps, $props),\n          value: localHMS,\n          hidden: !this.isVisible\n        },\n        on: {\n          input: this.onInput,\n          context: this.onContext\n        },\n        ref: 'time'\n      },\n      $footer\n    )\n\n    return h(\n      BVFormBtnLabelControl,\n      {\n        staticClass: 'b-form-timepicker',\n        props: {\n          ...pluckProps(formBtnLabelControlProps, $props),\n          id: this.safeId(),\n          value: localHMS,\n          formattedValue: localHMS ? this.formattedValue : '',\n          placeholder,\n          rtl: this.isRTL,\n          lang: this.computedLang\n        },\n        on: {\n          show: this.onShow,\n          shown: this.onShown,\n          hidden: this.onHidden\n        },\n        scopedSlots: {\n          [SLOT_NAME_BUTTON_CONTENT]:\n            this.$scopedSlots[SLOT_NAME_BUTTON_CONTENT] || this.defaultButtonFn\n        },\n        ref: 'control'\n      },\n      [$time]\n    )\n  }\n})\n","import { BFormTimepicker } from './form-timepicker'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormTimepickerPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BFormTimepicker,\n    BTimepicker: BFormTimepicker\n  }\n})\n\nexport { FormTimepickerPlugin, BFormTimepicker }\n","import { BImg } from './img'\nimport { BImgLazy } from './img-lazy'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ImagePlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BImg,\n    BImgLazy\n  }\n})\n\nexport { ImagePlugin, BImg, BImgLazy }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_INPUT_GROUP_TEXT } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    tag: makeProp(PROP_TYPE_STRING, 'div')\n  },\n  NAME_INPUT_GROUP_TEXT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BInputGroupText = /*#__PURE__*/ Vue.extend({\n  name: NAME_INPUT_GROUP_TEXT,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    return h(\n      props.tag,\n      mergeData(data, {\n        staticClass: 'input-group-text'\n      }),\n      children\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_INPUT_GROUP_ADDON } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BInputGroupText } from './input-group-text'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    append: makeProp(PROP_TYPE_BOOLEAN, false),\n    id: makeProp(PROP_TYPE_STRING),\n    isText: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'div')\n  },\n  NAME_INPUT_GROUP_ADDON\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BInputGroupAddon = /*#__PURE__*/ Vue.extend({\n  name: NAME_INPUT_GROUP_ADDON,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { append } = props\n\n    return h(\n      props.tag,\n      mergeData(data, {\n        class: {\n          'input-group-append': append,\n          'input-group-prepend': !append\n        },\n        attrs: {\n          id: props.id\n        }\n      }),\n      props.isText ? [h(BInputGroupText, children)] : children\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_INPUT_GROUP_APPEND } from '../../constants/components'\nimport { omit } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { BInputGroupAddon, props as BInputGroupAddonProps } from './input-group-addon'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  omit(BInputGroupAddonProps, ['append']),\n  NAME_INPUT_GROUP_APPEND\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BInputGroupAppend = /*#__PURE__*/ Vue.extend({\n  name: NAME_INPUT_GROUP_APPEND,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    // Pass all our data down to child, and set `append` to `true`\n    return h(\n      BInputGroupAddon,\n      mergeData(data, {\n        props: { ...props, append: true }\n      }),\n      children\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_INPUT_GROUP_PREPEND } from '../../constants/components'\nimport { omit } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { BInputGroupAddon, props as BInputGroupAddonProps } from './input-group-addon'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  omit(BInputGroupAddonProps, ['append']),\n  NAME_INPUT_GROUP_PREPEND\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BInputGroupPrepend = /*#__PURE__*/ Vue.extend({\n  name: NAME_INPUT_GROUP_PREPEND,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    // Pass all our data down to child, and set `append` to `true`\n    return h(\n      BInputGroupAddon,\n      mergeData(data, {\n        props: { ...props, append: false }\n      }),\n      children\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_INPUT_GROUP } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_APPEND, SLOT_NAME_DEFAULT, SLOT_NAME_PREPEND } from '../../constants/slots'\nimport { htmlOrText } from '../../utils/html'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BInputGroupAppend } from './input-group-append'\nimport { BInputGroupPrepend } from './input-group-prepend'\nimport { BInputGroupText } from './input-group-text'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    append: makeProp(PROP_TYPE_STRING),\n    appendHtml: makeProp(PROP_TYPE_STRING),\n    id: makeProp(PROP_TYPE_STRING),\n    prepend: makeProp(PROP_TYPE_STRING),\n    prependHtml: makeProp(PROP_TYPE_STRING),\n    size: makeProp(PROP_TYPE_STRING),\n    tag: makeProp(PROP_TYPE_STRING, 'div')\n  },\n  NAME_INPUT_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BInputGroup = /*#__PURE__*/ Vue.extend({\n  name: NAME_INPUT_GROUP,\n  functional: true,\n  props,\n  render(h, { props, data, slots, scopedSlots }) {\n    const { prepend, prependHtml, append, appendHtml, size } = props\n    const $scopedSlots = scopedSlots || {}\n    const $slots = slots()\n    const slotScope = {}\n\n    let $prepend = h()\n    const hasPrependSlot = hasNormalizedSlot(SLOT_NAME_PREPEND, $scopedSlots, $slots)\n    if (hasPrependSlot || prepend || prependHtml) {\n      $prepend = h(BInputGroupPrepend, [\n        hasPrependSlot\n          ? normalizeSlot(SLOT_NAME_PREPEND, slotScope, $scopedSlots, $slots)\n          : h(BInputGroupText, { domProps: htmlOrText(prependHtml, prepend) })\n      ])\n    }\n\n    let $append = h()\n    const hasAppendSlot = hasNormalizedSlot(SLOT_NAME_APPEND, $scopedSlots, $slots)\n    if (hasAppendSlot || append || appendHtml) {\n      $append = h(BInputGroupAppend, [\n        hasAppendSlot\n          ? normalizeSlot(SLOT_NAME_APPEND, slotScope, $scopedSlots, $slots)\n          : h(BInputGroupText, { domProps: htmlOrText(appendHtml, append) })\n      ])\n    }\n\n    return h(\n      props.tag,\n      mergeData(data, {\n        staticClass: 'input-group',\n        class: { [`input-group-${size}`]: size },\n        attrs: {\n          id: props.id || null,\n          role: 'group'\n        }\n      }),\n      [$prepend, normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots), $append]\n    )\n  }\n})\n","import { BInputGroup } from './input-group'\nimport { BInputGroupAddon } from './input-group-addon'\nimport { BInputGroupPrepend } from './input-group-prepend'\nimport { BInputGroupAppend } from './input-group-append'\nimport { BInputGroupText } from './input-group-text'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst InputGroupPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BInputGroup,\n    BInputGroupAddon,\n    BInputGroupPrepend,\n    BInputGroupAppend,\n    BInputGroupText\n  }\n})\n\nexport {\n  InputGroupPlugin,\n  BInputGroup,\n  BInputGroupAddon,\n  BInputGroupPrepend,\n  BInputGroupAppend,\n  BInputGroupText\n}\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CONTAINER } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    // String breakpoint name new in Bootstrap v4.4.x\n    fluid: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n    tag: makeProp(PROP_TYPE_STRING, 'div')\n  },\n  NAME_CONTAINER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BContainer = /*#__PURE__*/ Vue.extend({\n  name: NAME_CONTAINER,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { fluid } = props\n\n    return h(\n      props.tag,\n      mergeData(data, {\n        class: {\n          container: !(fluid || fluid === ''),\n          'container-fluid': fluid === true || fluid === '',\n          // Bootstrap v4.4+ responsive containers\n          [`container-${fluid}`]: fluid && fluid !== true\n        }\n      }),\n      children\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_JUMBOTRON } from '../../constants/components'\nimport {\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_STRING,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_HEADER, SLOT_NAME_LEAD } from '../../constants/slots'\nimport { htmlOrText } from '../../utils/html'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BContainer } from '../layout/container'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    bgVariant: makeProp(PROP_TYPE_STRING),\n    borderVariant: makeProp(PROP_TYPE_STRING),\n    containerFluid: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n    fluid: makeProp(PROP_TYPE_BOOLEAN, false),\n    header: makeProp(PROP_TYPE_STRING),\n    headerHtml: makeProp(PROP_TYPE_STRING),\n    headerLevel: makeProp(PROP_TYPE_NUMBER_STRING, 3),\n    headerTag: makeProp(PROP_TYPE_STRING, 'h1'),\n    lead: makeProp(PROP_TYPE_STRING),\n    leadHtml: makeProp(PROP_TYPE_STRING),\n    leadTag: makeProp(PROP_TYPE_STRING, 'p'),\n    tag: makeProp(PROP_TYPE_STRING, 'div'),\n    textVariant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_JUMBOTRON\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BJumbotron = /*#__PURE__*/ Vue.extend({\n  name: NAME_JUMBOTRON,\n  functional: true,\n  props,\n  render(h, { props, data, slots, scopedSlots }) {\n    const { header, headerHtml, lead, leadHtml, textVariant, bgVariant, borderVariant } = props\n    const $scopedSlots = scopedSlots || {}\n    const $slots = slots()\n    const slotScope = {}\n\n    let $header = h()\n    const hasHeaderSlot = hasNormalizedSlot(SLOT_NAME_HEADER, $scopedSlots, $slots)\n    if (hasHeaderSlot || header || headerHtml) {\n      const { headerLevel } = props\n\n      $header = h(\n        props.headerTag,\n        {\n          class: { [`display-${headerLevel}`]: headerLevel },\n          domProps: hasHeaderSlot ? {} : htmlOrText(headerHtml, header)\n        },\n        normalizeSlot(SLOT_NAME_HEADER, slotScope, $scopedSlots, $slots)\n      )\n    }\n\n    let $lead = h()\n    const hasLeadSlot = hasNormalizedSlot(SLOT_NAME_LEAD, $scopedSlots, $slots)\n    if (hasLeadSlot || lead || leadHtml) {\n      $lead = h(\n        props.leadTag,\n        {\n          staticClass: 'lead',\n          domProps: hasLeadSlot ? {} : htmlOrText(leadHtml, lead)\n        },\n        normalizeSlot(SLOT_NAME_LEAD, slotScope, $scopedSlots, $slots)\n      )\n    }\n\n    let $children = [\n      $header,\n      $lead,\n      normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots)\n    ]\n\n    // If fluid, wrap content in a container\n    if (props.fluid) {\n      $children = [h(BContainer, { props: { fluid: props.containerFluid } }, $children)]\n    }\n\n    return h(\n      props.tag,\n      mergeData(data, {\n        staticClass: 'jumbotron',\n        class: {\n          'jumbotron-fluid': props.fluid,\n          [`text-${textVariant}`]: textVariant,\n          [`bg-${bgVariant}`]: bgVariant,\n          [`border-${borderVariant}`]: borderVariant,\n          border: borderVariant\n        }\n      }),\n      $children\n    )\n  }\n})\n","import { BJumbotron } from './jumbotron'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst JumbotronPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BJumbotron }\n})\n\nexport { JumbotronPlugin, BJumbotron }\n","import { mergeData } from '../../vue'\nimport { NAME_ROW } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { getBreakpointsUpCached } from '../../utils/config'\nimport { identity } from '../../utils/identity'\nimport { memoize } from '../../utils/memoize'\nimport { create, keys, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, suffixPropName } from '../../utils/props'\nimport { lowerCase, toString, trim } from '../../utils/string'\n\n// --- Constants ---\n\nconst COMMON_ALIGNMENT = ['start', 'end', 'center']\n\n// --- Helper methods ---\n\n// Compute a `row-cols-{breakpoint}-{cols}` class name\n// Memoized function for better performance on generating class names\nconst computeRowColsClass = memoize((breakpoint, cols) => {\n  cols = trim(toString(cols))\n  return cols ? lowerCase(['row-cols', breakpoint, cols].filter(identity).join('-')) : null\n})\n\n// Get the breakpoint name from the `rowCols` prop name\n// Memoized function for better performance on extracting breakpoint names\nconst computeRowColsBreakpoint = memoize(prop => lowerCase(prop.replace('cols', '')))\n\n// Cached copy of the `row-cols` breakpoint prop names\n// Will be populated when the props are generated\nlet rowColsPropList = []\n\n// --- Props ---\n\n// Prop generator for lazy generation of props\nexport const generateProps = () => {\n  // i.e. 'row-cols-2', 'row-cols-md-4', 'row-cols-xl-6', ...\n  const rowColsProps = getBreakpointsUpCached().reduce((props, breakpoint) => {\n    props[suffixPropName(breakpoint, 'cols')] = makeProp(PROP_TYPE_NUMBER_STRING)\n    return props\n  }, create(null))\n\n  // Cache the row-cols prop names\n  rowColsPropList = keys(rowColsProps)\n\n  // Return the generated props\n  return makePropsConfigurable(\n    sortKeys({\n      ...rowColsProps,\n      alignContent: makeProp(PROP_TYPE_STRING, null, value => {\n        return arrayIncludes(concat(COMMON_ALIGNMENT, 'between', 'around', 'stretch'), value)\n      }),\n      alignH: makeProp(PROP_TYPE_STRING, null, value => {\n        return arrayIncludes(concat(COMMON_ALIGNMENT, 'between', 'around'), value)\n      }),\n      alignV: makeProp(PROP_TYPE_STRING, null, value => {\n        return arrayIncludes(concat(COMMON_ALIGNMENT, 'baseline', 'stretch'), value)\n      }),\n      noGutters: makeProp(PROP_TYPE_BOOLEAN, false),\n      tag: makeProp(PROP_TYPE_STRING, 'div')\n    }),\n    NAME_ROW\n  )\n}\n\n// --- Main component ---\n\n// We do not use `Vue.extend()` here as that would evaluate the props\n// immediately, which we do not want to happen\n// @vue/component\nexport const BRow = {\n  name: NAME_ROW,\n  functional: true,\n  get props() {\n    // Allow props to be lazy evaled on first access and\n    // then they become a non-getter afterwards\n    // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get#Smart_self-overwriting_lazy_getters\n    delete this.props\n    this.props = generateProps()\n    return this.props\n  },\n  render(h, { props, data, children }) {\n    const { alignV, alignH, alignContent } = props\n\n    // Loop through row-cols breakpoint props and generate the classes\n    const classList = []\n    rowColsPropList.forEach(prop => {\n      const c = computeRowColsClass(computeRowColsBreakpoint(prop), props[prop])\n      // If a class is returned, push it onto the array\n      if (c) {\n        classList.push(c)\n      }\n    })\n\n    classList.push({\n      'no-gutters': props.noGutters,\n      [`align-items-${alignV}`]: alignV,\n      [`justify-content-${alignH}`]: alignH,\n      [`align-content-${alignContent}`]: alignContent\n    })\n\n    return h(\n      props.tag,\n      mergeData(data, {\n        staticClass: 'row',\n        class: classList\n      }),\n      children\n    )\n  }\n}\n","import { BContainer } from './container'\nimport { BRow } from './row'\nimport { BCol } from './col'\nimport { BFormRow } from './form-row'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst LayoutPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BContainer,\n    BRow,\n    BCol,\n    BFormRow\n  }\n})\n\nexport { LayoutPlugin, BContainer, BRow, BCol, BFormRow }\n","import { BLink } from './link'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst LinkPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BLink }\n})\n\nexport { LinkPlugin, BLink }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_LIST_GROUP } from '../../constants/components'\nimport {\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { isString } from '../../utils/inspect'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    flush: makeProp(PROP_TYPE_BOOLEAN, false),\n    horizontal: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n    tag: makeProp(PROP_TYPE_STRING, 'div')\n  },\n  NAME_LIST_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BListGroup = /*#__PURE__*/ Vue.extend({\n  name: NAME_LIST_GROUP,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    let horizontal = props.horizontal === '' ? true : props.horizontal\n    horizontal = props.flush ? false : horizontal\n    const componentData = {\n      staticClass: 'list-group',\n      class: {\n        'list-group-flush': props.flush,\n        'list-group-horizontal': horizontal === true,\n        [`list-group-horizontal-${horizontal}`]: isString(horizontal)\n      }\n    }\n    return h(props.tag, mergeData(data, componentData), children)\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_LIST_GROUP_ITEM } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { arrayIncludes } from '../../utils/array'\nimport { isTag } from '../../utils/dom'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Constants ---\n\nconst actionTags = ['a', 'router-link', 'button', 'b-link']\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\ndelete linkProps.href.default\ndelete linkProps.to.default\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...linkProps,\n    action: makeProp(PROP_TYPE_BOOLEAN, false),\n    button: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'div'),\n    variant: makeProp(PROP_TYPE_STRING)\n  }),\n  NAME_LIST_GROUP_ITEM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BListGroupItem = /*#__PURE__*/ Vue.extend({\n  name: NAME_LIST_GROUP_ITEM,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { button, variant, active, disabled } = props\n    const link = isLink(props)\n    const tag = button ? 'button' : !link ? props.tag : BLink\n    const action = !!(props.action || link || button || arrayIncludes(actionTags, props.tag))\n\n    const attrs = {}\n    let itemProps = {}\n    if (isTag(tag, 'button')) {\n      if (!data.attrs || !data.attrs.type) {\n        // Add a type for button is one not provided in passed attributes\n        attrs.type = 'button'\n      }\n      if (props.disabled) {\n        // Set disabled attribute if button and disabled\n        attrs.disabled = true\n      }\n    } else {\n      itemProps = pluckProps(linkProps, props)\n    }\n\n    return h(\n      tag,\n      mergeData(data, {\n        attrs,\n        props: itemProps,\n        staticClass: 'list-group-item',\n        class: {\n          [`list-group-item-${variant}`]: variant,\n          'list-group-item-action': action,\n          active,\n          disabled\n        }\n      }),\n      children\n    )\n  }\n})\n","import { BListGroup } from './list-group'\nimport { BListGroupItem } from './list-group-item'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ListGroupPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BListGroup,\n    BListGroupItem\n  }\n})\n\nexport { ListGroupPlugin, BListGroup, BListGroupItem }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_MEDIA_ASIDE } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    right: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'div'),\n    verticalAlign: makeProp(PROP_TYPE_STRING, 'top')\n  },\n  NAME_MEDIA_ASIDE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BMediaAside = /*#__PURE__*/ Vue.extend({\n  name: NAME_MEDIA_ASIDE,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { verticalAlign } = props\n    const align =\n      verticalAlign === 'top'\n        ? 'start'\n        : verticalAlign === 'bottom'\n          ? 'end'\n          : /* istanbul ignore next */ verticalAlign\n\n    return h(\n      props.tag,\n      mergeData(data, {\n        staticClass: 'media-aside',\n        class: {\n          'media-aside-right': props.right,\n          [`align-self-${align}`]: align\n        }\n      }),\n      children\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_MEDIA_BODY } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    tag: makeProp(PROP_TYPE_STRING, 'div')\n  },\n  NAME_MEDIA_BODY\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BMediaBody = /*#__PURE__*/ Vue.extend({\n  name: NAME_MEDIA_BODY,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    return h(props.tag, mergeData(data, { staticClass: 'media-body' }), children)\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_MEDIA } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_ASIDE, SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { normalizeSlot } from '../../utils/normalize-slot'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BMediaAside } from './media-aside'\nimport { BMediaBody } from './media-body'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    noBody: makeProp(PROP_TYPE_BOOLEAN, false),\n    rightAlign: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'div'),\n    verticalAlign: makeProp(PROP_TYPE_STRING, 'top')\n  },\n  NAME_MEDIA\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BMedia = /*#__PURE__*/ Vue.extend({\n  name: NAME_MEDIA,\n  functional: true,\n  props,\n  render(h, { props, data, slots, scopedSlots, children }) {\n    const { noBody, rightAlign, verticalAlign } = props\n    const $children = noBody ? children : []\n\n    if (!noBody) {\n      const slotScope = {}\n      const $slots = slots()\n      const $scopedSlots = scopedSlots || {}\n\n      $children.push(\n        h(BMediaBody, normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots))\n      )\n\n      const $aside = normalizeSlot(SLOT_NAME_ASIDE, slotScope, $scopedSlots, $slots)\n      if ($aside) {\n        $children[rightAlign ? 'push' : 'unshift'](\n          h(BMediaAside, { props: { right: rightAlign, verticalAlign } }, $aside)\n        )\n      }\n    }\n\n    return h(props.tag, mergeData(data, { staticClass: 'media' }), $children)\n  }\n})\n","import { BMedia } from './media'\nimport { BMediaAside } from './media-aside'\nimport { BMediaBody } from './media-body'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst MediaPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BMedia,\n    BMediaAside,\n    BMediaBody\n  }\n})\n\nexport { MediaPlugin, BMedia, BMediaAside, BMediaBody }\n","import { Vue } from '../vue'\nimport { IS_BROWSER } from '../constants/env'\nimport { EVENT_OPTIONS_NO_CAPTURE, HOOK_EVENT_NAME_BEFORE_DESTROY } from '../constants/events'\nimport { arrayIncludes } from '../utils/array'\nimport { eventOn, eventOff } from '../utils/events'\nimport { isString, isFunction } from '../utils/inspect'\nimport { keys } from '../utils/object'\n\n// --- Constants ---\n\nconst PROP = '$_bv_documentHandlers_'\n\n// --- Mixin ---\n\n// @vue/component\nexport const listenOnDocumentMixin = Vue.extend({\n  created() {\n    /* istanbul ignore next */\n    if (!IS_BROWSER) {\n      return\n    }\n    // Declare non-reactive property\n    // Object of arrays, keyed by event name,\n    // where value is an array of handlers\n    // Prop will be defined on client only\n    this[PROP] = {}\n    // Set up our beforeDestroy handler (client only)\n    this.$once(HOOK_EVENT_NAME_BEFORE_DESTROY, () => {\n      const items = this[PROP] || {}\n      // Immediately delete this[PROP] to prevent the\n      // listenOn/Off methods from running (which may occur\n      // due to requestAnimationFrame/transition delays)\n      delete this[PROP]\n      // Remove all registered event handlers\n      keys(items).forEach(eventName => {\n        const handlers = items[eventName] || []\n        handlers.forEach(handler =>\n          eventOff(document, eventName, handler, EVENT_OPTIONS_NO_CAPTURE)\n        )\n      })\n    })\n  },\n  methods: {\n    listenDocument(on, eventName, handler) {\n      on ? this.listenOnDocument(eventName, handler) : this.listenOffDocument(eventName, handler)\n    },\n    listenOnDocument(eventName, handler) {\n      if (this[PROP] && isString(eventName) && isFunction(handler)) {\n        this[PROP][eventName] = this[PROP][eventName] || []\n        if (!arrayIncludes(this[PROP][eventName], handler)) {\n          this[PROP][eventName].push(handler)\n          eventOn(document, eventName, handler, EVENT_OPTIONS_NO_CAPTURE)\n        }\n      }\n    },\n    listenOffDocument(eventName, handler) {\n      if (this[PROP] && isString(eventName) && isFunction(handler)) {\n        eventOff(document, eventName, handler, EVENT_OPTIONS_NO_CAPTURE)\n        this[PROP][eventName] = (this[PROP][eventName] || []).filter(h => h !== handler)\n      }\n    }\n  }\n})\n","import { Vue } from '../vue'\nimport { IS_BROWSER } from '../constants/env'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events'\nimport { arrayIncludes } from '../utils/array'\nimport { eventOn, eventOff } from '../utils/events'\nimport { isString, isFunction } from '../utils/inspect'\nimport { keys } from '../utils/object'\n\n// --- Constants ---\n\nconst PROP = '$_bv_windowHandlers_'\n\n// --- Mixin ---\n\n// @vue/component\nexport const listenOnWindowMixin = Vue.extend({\n  beforeCreate() {\n    // Declare non-reactive property\n    // Object of arrays, keyed by event name,\n    // where value is an array of handlers\n    this[PROP] = {}\n  },\n  beforeDestroy() {\n    if (IS_BROWSER) {\n      const items = this[PROP]\n      // Immediately delete this[PROP] to prevent the\n      // listenOn/Off methods from running (which may occur\n      // due to requestAnimationFrame delays)\n      delete this[PROP]\n      // Remove all registered event handlers\n      keys(items).forEach(eventName => {\n        const handlers = items[eventName] || []\n        handlers.forEach(handler => eventOff(window, eventName, handler, EVENT_OPTIONS_NO_CAPTURE))\n      })\n    }\n  },\n  methods: {\n    listenWindow(on, eventName, handler) {\n      on ? this.listenOnWindow(eventName, handler) : this.listenOffWindow(eventName, handler)\n    },\n    listenOnWindow(eventName, handler) {\n      if (IS_BROWSER && this[PROP] && isString(eventName) && isFunction(handler)) {\n        this[PROP][eventName] = this[PROP][eventName] || []\n        if (!arrayIncludes(this[PROP][eventName], handler)) {\n          this[PROP][eventName].push(handler)\n          eventOn(window, eventName, handler, EVENT_OPTIONS_NO_CAPTURE)\n        }\n      }\n    },\n    listenOffWindow(eventName, handler) {\n      if (IS_BROWSER && this[PROP] && isString(eventName) && isFunction(handler)) {\n        eventOff(window, eventName, handler, EVENT_OPTIONS_NO_CAPTURE)\n        this[PROP][eventName] = (this[PROP][eventName] || []).filter(h => h !== handler)\n      }\n    }\n  }\n})\n","// This method returns a component's scoped style attribute name: `data-v-xxxxxxx`\n// The `_scopeId` options property is added by vue-loader when using scoped styles\n// and will be `undefined` if no scoped styles are in use\nexport const getScopeId = (vm, defaultValue = null) => {\n  return vm ? vm.$options._scopeId || defaultValue : defaultValue\n}\n","import { Vue } from '../vue'\nimport { getScopeId } from '../utils/get-scope-id'\n\n// @vue/component\nexport const scopedStyleMixin = Vue.extend({\n  computed: {\n    scopedStyleAttrs() {\n      const scopeId = getScopeId(this.$parent)\n      return scopeId ? { [scopeId]: '' } : {}\n    }\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TRANSPORTER, NAME_TRANSPORTER_TARGET } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport {\n  PROP_TYPE_ARRAY_FUNCTION,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { HTMLElement } from '../../constants/safe-types'\nimport { concat } from '../../utils/array'\nimport { removeNode, select } from '../../utils/dom'\nimport { identity } from '../../utils/identity'\nimport { isFunction, isString } from '../../utils/inspect'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { makeProp } from '../../utils/props'\n\n// --- Helper components ---\n\n// BVTransporter/BVTransporterTarget:\n//\n// Single root node portaling of content, which retains parent/child hierarchy\n// Unlike Portal-Vue where portaled content is no longer a descendent of its\n// intended parent components\n//\n// Private components for use by Tooltips, Popovers and Modals\n//\n// Based on vue-simple-portal\n// https://github.com/LinusBorg/vue-simple-portal\n\n// Transporter target used by BVTransporter\n// Supports only a single root element\n// @vue/component\nconst BVTransporterTarget = /*#__PURE__*/ Vue.extend({\n  // As an abstract component, it doesn't appear in the $parent chain of\n  // components, which means the next parent of any component rendered inside\n  // of this one will be the parent from which is was portal'd\n  abstract: true,\n  name: NAME_TRANSPORTER_TARGET,\n  props: {\n    // Even though we only support a single root element,\n    // VNodes are always passed as an array\n    nodes: makeProp(PROP_TYPE_ARRAY_FUNCTION)\n  },\n  data: vm => {\n    return {\n      updatedNodes: vm.nodes\n    }\n  },\n  destroyed() {\n    removeNode(this.$el)\n  },\n  render(h) {\n    const { updatedNodes } = this\n\n    let $nodes = isFunction(updatedNodes) ? updatedNodes({}) : updatedNodes\n    $nodes = concat($nodes).filter(identity)\n    if ($nodes && $nodes.length > 0 && !$nodes[0].text) {\n      return $nodes[0]\n    }\n\n    /* istanbul ignore next */\n    return h()\n  }\n})\n\n// --- Props ---\n\nexport const props = {\n  // String: CSS selector,\n  // HTMLElement: Element reference\n  // Mainly needed for tooltips/popovers inside modals\n  container: makeProp([HTMLElement, PROP_TYPE_STRING], 'body'),\n  disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n  // This should be set to match the root element type\n  tag: makeProp(PROP_TYPE_STRING, 'div')\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BVTransporter = /*#__PURE__*/ Vue.extend({\n  name: NAME_TRANSPORTER,\n  mixins: [normalizeSlotMixin],\n  props,\n  watch: {\n    disabled: {\n      immediate: true,\n      handler(disabled) {\n        disabled ? this.unmountTarget() : this.$nextTick(this.mountTarget)\n      }\n    }\n  },\n  created() {\n    // Create private non-reactive props\n    this.$_defaultFn = null\n    this.$_target = null\n  },\n  beforeMount() {\n    this.mountTarget()\n  },\n  updated() {\n    // We need to make sure that all children have completed updating\n    // before rendering in the target\n    // `vue-simple-portal` has the this in a `$nextTick()`,\n    // while `portal-vue` doesn't\n    // Just trying to see if the `$nextTick()` delay is required or not\n    // Since all slots in Vue 2.6.x are always functions\n    this.updateTarget()\n  },\n  beforeDestroy() {\n    this.unmountTarget()\n    this.$_defaultFn = null\n  },\n  methods: {\n    // Get the element which the target should be appended to\n    getContainer() {\n      /* istanbul ignore else */\n      if (IS_BROWSER) {\n        const { container } = this\n        return isString(container) ? select(container) : container\n      } else {\n        return null\n      }\n    },\n    // Mount the target\n    mountTarget() {\n      if (!this.$_target) {\n        const $container = this.getContainer()\n        if ($container) {\n          const $el = document.createElement('div')\n          $container.appendChild($el)\n          this.$_target = new BVTransporterTarget({\n            el: $el,\n            parent: this,\n            propsData: {\n              // Initial nodes to be rendered\n              nodes: concat(this.normalizeSlot())\n            }\n          })\n        }\n      }\n    },\n    // Update the content of the target\n    updateTarget() {\n      if (IS_BROWSER && this.$_target) {\n        const defaultFn = this.$scopedSlots.default\n        if (!this.disabled) {\n          /* istanbul ignore else: only applicable in Vue 2.5.x */\n          if (defaultFn && this.$_defaultFn !== defaultFn) {\n            // We only update the target component if the scoped slot\n            // function is a fresh one. The new slot syntax (since Vue 2.6)\n            // can cache unchanged slot functions and we want to respect that here\n            this.$_target.updatedNodes = defaultFn\n          } else if (!defaultFn) {\n            // We also need to be back compatible with non-scoped default slot (i.e. 2.5.x)\n            this.$_target.updatedNodes = this.$slots.default\n          }\n        }\n        // Update the scoped slot function cache\n        this.$_defaultFn = defaultFn\n      }\n    },\n    // Unmount the target\n    unmountTarget() {\n      this.$_target && this.$_target.$destroy()\n      this.$_target = null\n    }\n  },\n  render(h) {\n    // This component has no root element, so only a single VNode is allowed\n    if (this.disabled) {\n      const $nodes = concat(this.normalizeSlot()).filter(identity)\n      if ($nodes.length > 0 && !$nodes[0].text) {\n        return $nodes[0]\n      }\n    }\n    return h()\n  }\n})\n","import { BvEvent } from '../../../utils/bv-event.class'\nimport { defineProperties, readonlyDescriptor } from '../../../utils/object'\n\nclass BvModalEvent extends BvEvent {\n  constructor(type, eventInit = {}) {\n    super(type, eventInit)\n    // Freeze our new props as readonly, but leave them enumerable\n    defineProperties(this, {\n      trigger: readonlyDescriptor()\n    })\n  }\n\n  static get Defaults() {\n    return {\n      ...super.Defaults,\n      trigger: null\n    }\n  }\n}\n\n// Named exports\nexport { BvModalEvent }\n","/**\n * Private ModalManager helper\n * Handles controlling modal stacking zIndexes and body adjustments/classes\n */\n\nimport { Vue } from '../../../vue'\nimport { IS_BROWSER } from '../../../constants/env'\nimport { HOOK_EVENT_NAME_BEFORE_DESTROY } from '../../../constants/events'\nimport {\n  addClass,\n  getAttr,\n  getBCR,\n  getCS,\n  getStyle,\n  hasAttr,\n  removeAttr,\n  removeClass,\n  requestAF,\n  selectAll,\n  setAttr,\n  setStyle\n} from '../../../utils/dom'\nimport { isNull } from '../../../utils/inspect'\nimport { toFloat, toInteger } from '../../../utils/number'\n\n// --- Constants ---\n\n// Default modal backdrop z-index\nconst DEFAULT_ZINDEX = 1040\n\n// Selectors for padding/margin adjustments\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\nconst SELECTOR_NAVBAR_TOGGLER = '.navbar-toggler'\n\n// --- Main component ---\n\n// @vue/component\nconst ModalManager = /*#__PURE__*/ Vue.extend({\n  data() {\n    return {\n      modals: [],\n      baseZIndex: null,\n      scrollbarWidth: null,\n      isBodyOverflowing: false\n    }\n  },\n  computed: {\n    modalCount() {\n      return this.modals.length\n    },\n    modalsAreOpen() {\n      return this.modalCount > 0\n    }\n  },\n  watch: {\n    modalCount(newCount, oldCount) {\n      if (IS_BROWSER) {\n        this.getScrollbarWidth()\n        if (newCount > 0 && oldCount === 0) {\n          // Transitioning to modal(s) open\n          this.checkScrollbar()\n          this.setScrollbar()\n          addClass(document.body, 'modal-open')\n        } else if (newCount === 0 && oldCount > 0) {\n          // Transitioning to modal(s) closed\n          this.resetScrollbar()\n          removeClass(document.body, 'modal-open')\n        }\n        setAttr(document.body, 'data-modal-open-count', String(newCount))\n      }\n    },\n    modals(newValue) {\n      this.checkScrollbar()\n      requestAF(() => {\n        this.updateModals(newValue || [])\n      })\n    }\n  },\n  methods: {\n    // Public methods\n    registerModal(modal) {\n      // Register the modal if not already registered\n      if (modal && this.modals.indexOf(modal) === -1) {\n        // Add modal to modals array\n        this.modals.push(modal)\n        modal.$once(HOOK_EVENT_NAME_BEFORE_DESTROY, () => {\n          this.unregisterModal(modal)\n        })\n      }\n    },\n    unregisterModal(modal) {\n      const index = this.modals.indexOf(modal)\n      if (index > -1) {\n        // Remove modal from modals array\n        this.modals.splice(index, 1)\n        // Reset the modal's data\n        if (!(modal._isBeingDestroyed || modal._isDestroyed)) {\n          this.resetModal(modal)\n        }\n      }\n    },\n    getBaseZIndex() {\n      if (isNull(this.baseZIndex) && IS_BROWSER) {\n        // Create a temporary `div.modal-backdrop` to get computed z-index\n        const div = document.createElement('div')\n        addClass(div, 'modal-backdrop')\n        addClass(div, 'd-none')\n        setStyle(div, 'display', 'none')\n        document.body.appendChild(div)\n        this.baseZIndex = toInteger(getCS(div).zIndex, DEFAULT_ZINDEX)\n        document.body.removeChild(div)\n      }\n      return this.baseZIndex || DEFAULT_ZINDEX\n    },\n    getScrollbarWidth() {\n      if (isNull(this.scrollbarWidth) && IS_BROWSER) {\n        // Create a temporary `div.measure-scrollbar` to get computed z-index\n        const div = document.createElement('div')\n        addClass(div, 'modal-scrollbar-measure')\n        document.body.appendChild(div)\n        this.scrollbarWidth = getBCR(div).width - div.clientWidth\n        document.body.removeChild(div)\n      }\n      return this.scrollbarWidth || 0\n    },\n    // Private methods\n    updateModals(modals) {\n      const baseZIndex = this.getBaseZIndex()\n      const scrollbarWidth = this.getScrollbarWidth()\n      modals.forEach((modal, index) => {\n        // We update data values on each modal\n        modal.zIndex = baseZIndex + index\n        modal.scrollbarWidth = scrollbarWidth\n        modal.isTop = index === this.modals.length - 1\n        modal.isBodyOverflowing = this.isBodyOverflowing\n      })\n    },\n    resetModal(modal) {\n      if (modal) {\n        modal.zIndex = this.getBaseZIndex()\n        modal.isTop = true\n        modal.isBodyOverflowing = false\n      }\n    },\n    checkScrollbar() {\n      // Determine if the body element is overflowing\n      const { left, right } = getBCR(document.body)\n      this.isBodyOverflowing = left + right < window.innerWidth\n    },\n    setScrollbar() {\n      const body = document.body\n      // Storage place to cache changes to margins and padding\n      // Note: This assumes the following element types are not added to the\n      // document after the modal has opened.\n      body._paddingChangedForModal = body._paddingChangedForModal || []\n      body._marginChangedForModal = body._marginChangedForModal || []\n      if (this.isBodyOverflowing) {\n        const scrollbarWidth = this.scrollbarWidth\n        // Adjust fixed content padding\n        /* istanbul ignore next: difficult to test in JSDOM */\n        selectAll(SELECTOR_FIXED_CONTENT).forEach(el => {\n          const actualPadding = getStyle(el, 'paddingRight') || ''\n          setAttr(el, 'data-padding-right', actualPadding)\n          setStyle(el, 'paddingRight', `${toFloat(getCS(el).paddingRight, 0) + scrollbarWidth}px`)\n          body._paddingChangedForModal.push(el)\n        })\n        // Adjust sticky content margin\n        /* istanbul ignore next: difficult to test in JSDOM */\n        selectAll(SELECTOR_STICKY_CONTENT).forEach(el => /* istanbul ignore next */ {\n          const actualMargin = getStyle(el, 'marginRight') || ''\n          setAttr(el, 'data-margin-right', actualMargin)\n          setStyle(el, 'marginRight', `${toFloat(getCS(el).marginRight, 0) - scrollbarWidth}px`)\n          body._marginChangedForModal.push(el)\n        })\n        // Adjust <b-navbar-toggler> margin\n        /* istanbul ignore next: difficult to test in JSDOM */\n        selectAll(SELECTOR_NAVBAR_TOGGLER).forEach(el => /* istanbul ignore next */ {\n          const actualMargin = getStyle(el, 'marginRight') || ''\n          setAttr(el, 'data-margin-right', actualMargin)\n          setStyle(el, 'marginRight', `${toFloat(getCS(el).marginRight, 0) + scrollbarWidth}px`)\n          body._marginChangedForModal.push(el)\n        })\n        // Adjust body padding\n        const actualPadding = getStyle(body, 'paddingRight') || ''\n        setAttr(body, 'data-padding-right', actualPadding)\n        setStyle(body, 'paddingRight', `${toFloat(getCS(body).paddingRight, 0) + scrollbarWidth}px`)\n      }\n    },\n    resetScrollbar() {\n      const body = document.body\n      if (body._paddingChangedForModal) {\n        // Restore fixed content padding\n        body._paddingChangedForModal.forEach(el => {\n          /* istanbul ignore next: difficult to test in JSDOM */\n          if (hasAttr(el, 'data-padding-right')) {\n            setStyle(el, 'paddingRight', getAttr(el, 'data-padding-right') || '')\n            removeAttr(el, 'data-padding-right')\n          }\n        })\n      }\n      if (body._marginChangedForModal) {\n        // Restore sticky content and navbar-toggler margin\n        body._marginChangedForModal.forEach(el => {\n          /* istanbul ignore next: difficult to test in JSDOM */\n          if (hasAttr(el, 'data-margin-right')) {\n            setStyle(el, 'marginRight', getAttr(el, 'data-margin-right') || '')\n            removeAttr(el, 'data-margin-right')\n          }\n        })\n      }\n      body._paddingChangedForModal = null\n      body._marginChangedForModal = null\n      // Restore body padding\n      if (hasAttr(body, 'data-padding-right')) {\n        setStyle(body, 'paddingRight', getAttr(body, 'data-padding-right') || '')\n        removeAttr(body, 'data-padding-right')\n      }\n    }\n  }\n})\n\n// Create and export our modal manager instance\nexport const modalManager = new ModalManager()\n","import { COMPONENT_UID_KEY, Vue } from '../../vue'\nimport { NAME_MODAL } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport {\n  EVENT_NAME_CANCEL,\n  EVENT_NAME_CHANGE,\n  EVENT_NAME_CLOSE,\n  EVENT_NAME_HIDDEN,\n  EVENT_NAME_HIDE,\n  EVENT_NAME_OK,\n  EVENT_NAME_SHOW,\n  EVENT_NAME_SHOWN,\n  EVENT_NAME_TOGGLE,\n  EVENT_OPTIONS_NO_CAPTURE\n} from '../../constants/events'\nimport { CODE_ESC } from '../../constants/key-codes'\nimport {\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_ARRAY_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_OBJECT,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { HTMLElement } from '../../constants/safe-types'\nimport {\n  SLOT_NAME_DEFAULT,\n  SLOT_NAME_MODAL_BACKDROP,\n  SLOT_NAME_MODAL_CANCEL,\n  SLOT_NAME_MODAL_FOOTER,\n  SLOT_NAME_MODAL_HEADER,\n  SLOT_NAME_MODAL_HEADER_CLOSE,\n  SLOT_NAME_MODAL_OK,\n  SLOT_NAME_MODAL_TITLE\n} from '../../constants/slots'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport {\n  attemptFocus,\n  closest,\n  contains,\n  getActiveElement,\n  getTabables,\n  requestAF,\n  select\n} from '../../utils/dom'\nimport { getRootActionEventName, getRootEventName, eventOn, eventOff } from '../../utils/events'\nimport { htmlOrText } from '../../utils/html'\nimport { identity } from '../../utils/identity'\nimport { isString, isUndefinedOrNull } from '../../utils/inspect'\nimport { makeModelMixin } from '../../utils/model'\nimport { sortKeys } from '../../utils/object'\nimport { observeDom } from '../../utils/observe-dom'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { listenOnDocumentMixin } from '../../mixins/listen-on-document'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { listenOnWindowMixin } from '../../mixins/listen-on-window'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { scopedStyleMixin } from '../../mixins/scoped-style'\nimport { BButton } from '../button/button'\nimport { BButtonClose } from '../button/button-close'\nimport { BVTransition } from '../transition/bv-transition'\nimport { BVTransporter } from '../transporter/transporter'\nimport { BvModalEvent } from './helpers/bv-modal-event.class'\nimport { modalManager } from './helpers/modal-manager'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('visible', {\n  type: PROP_TYPE_BOOLEAN,\n  defaultValue: false,\n  event: EVENT_NAME_CHANGE\n})\n\nconst TRIGGER_BACKDROP = 'backdrop'\nconst TRIGGER_ESC = 'esc'\nconst TRIGGER_FORCE = 'FORCE'\nconst TRIGGER_TOGGLE = 'toggle'\n\nconst BUTTON_CANCEL = 'cancel'\n// TODO: This should be renamed to 'close'\nconst BUTTON_CLOSE = 'headerclose'\nconst BUTTON_OK = 'ok'\n\nconst BUTTONS = [BUTTON_CANCEL, BUTTON_CLOSE, BUTTON_OK]\n\n// `ObserveDom` config to detect changes in modal content\n// so that we can adjust the modal padding if needed\nconst OBSERVER_CONFIG = {\n  subtree: true,\n  childList: true,\n  characterData: true,\n  attributes: true,\n  attributeFilter: ['style', 'class']\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ariaLabel: makeProp(PROP_TYPE_STRING),\n    autoFocusButton: makeProp(\n      PROP_TYPE_STRING,\n      null,\n      /* istanbul ignore next */ value => {\n        return isUndefinedOrNull(value) || arrayIncludes(BUTTONS, value)\n      }\n    ),\n    bodyBgVariant: makeProp(PROP_TYPE_STRING),\n    bodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    bodyTextVariant: makeProp(PROP_TYPE_STRING),\n    busy: makeProp(PROP_TYPE_BOOLEAN, false),\n    buttonSize: makeProp(PROP_TYPE_STRING),\n    cancelDisabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    cancelTitle: makeProp(PROP_TYPE_STRING, 'Cancel'),\n    cancelTitleHtml: makeProp(PROP_TYPE_STRING),\n    cancelVariant: makeProp(PROP_TYPE_STRING, 'secondary'),\n    centered: makeProp(PROP_TYPE_BOOLEAN, false),\n    contentClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    dialogClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    footerBgVariant: makeProp(PROP_TYPE_STRING),\n    footerBorderVariant: makeProp(PROP_TYPE_STRING),\n    footerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    footerTextVariant: makeProp(PROP_TYPE_STRING),\n    headerBgVariant: makeProp(PROP_TYPE_STRING),\n    headerBorderVariant: makeProp(PROP_TYPE_STRING),\n    headerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    headerCloseContent: makeProp(PROP_TYPE_STRING, '&times;'),\n    headerCloseLabel: makeProp(PROP_TYPE_STRING, 'Close'),\n    headerCloseVariant: makeProp(PROP_TYPE_STRING),\n    headerTextVariant: makeProp(PROP_TYPE_STRING),\n    // TODO: Rename to `noBackdrop` and deprecate `hideBackdrop`\n    hideBackdrop: makeProp(PROP_TYPE_BOOLEAN, false),\n    // TODO: Rename to `noFooter` and deprecate `hideFooter`\n    hideFooter: makeProp(PROP_TYPE_BOOLEAN, false),\n    // TODO: Rename to `noHeader` and deprecate `hideHeader`\n    hideHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n    // TODO: Rename to `noHeaderClose` and deprecate `hideHeaderClose`\n    hideHeaderClose: makeProp(PROP_TYPE_BOOLEAN, false),\n    ignoreEnforceFocusSelector: makeProp(PROP_TYPE_ARRAY_STRING),\n    lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n    modalClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    noCloseOnBackdrop: makeProp(PROP_TYPE_BOOLEAN, false),\n    noCloseOnEsc: makeProp(PROP_TYPE_BOOLEAN, false),\n    noEnforceFocus: makeProp(PROP_TYPE_BOOLEAN, false),\n    noFade: makeProp(PROP_TYPE_BOOLEAN, false),\n    noStacking: makeProp(PROP_TYPE_BOOLEAN, false),\n    okDisabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    okOnly: makeProp(PROP_TYPE_BOOLEAN, false),\n    okTitle: makeProp(PROP_TYPE_STRING, 'OK'),\n    okTitleHtml: makeProp(PROP_TYPE_STRING),\n    okVariant: makeProp(PROP_TYPE_STRING, 'primary'),\n    // HTML Element, CSS selector string or Vue component instance\n    returnFocus: makeProp([HTMLElement, PROP_TYPE_OBJECT, PROP_TYPE_STRING]),\n    scrollable: makeProp(PROP_TYPE_BOOLEAN, false),\n    size: makeProp(PROP_TYPE_STRING, 'md'),\n    static: makeProp(PROP_TYPE_BOOLEAN, false),\n    title: makeProp(PROP_TYPE_STRING),\n    titleClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    titleHtml: makeProp(PROP_TYPE_STRING),\n    titleSrOnly: makeProp(PROP_TYPE_BOOLEAN, false),\n    titleTag: makeProp(PROP_TYPE_STRING, 'h5')\n  }),\n  NAME_MODAL\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BModal = /*#__PURE__*/ Vue.extend({\n  name: NAME_MODAL,\n  mixins: [\n    attrsMixin,\n    idMixin,\n    modelMixin,\n    listenOnDocumentMixin,\n    listenOnRootMixin,\n    listenOnWindowMixin,\n    normalizeSlotMixin,\n    scopedStyleMixin\n  ],\n  inheritAttrs: false,\n  props,\n  data() {\n    return {\n      isHidden: true, // If modal should not be in document\n      isVisible: false, // Controls modal visible state\n      isTransitioning: false, // Used for style control\n      isShow: false, // Used for style control\n      isBlock: false, // Used for style control\n      isOpening: false, // To signal that the modal is in the process of opening\n      isClosing: false, // To signal that the modal is in the process of closing\n      ignoreBackdropClick: false, // Used to signify if click out listener should ignore the click\n      isModalOverflowing: false,\n      // The following items are controlled by the modalManager instance\n      scrollbarWidth: 0,\n      zIndex: modalManager.getBaseZIndex(),\n      isTop: true,\n      isBodyOverflowing: false\n    }\n  },\n  computed: {\n    modalId() {\n      return this.safeId()\n    },\n    modalOuterId() {\n      return this.safeId('__BV_modal_outer_')\n    },\n    modalHeaderId() {\n      return this.safeId('__BV_modal_header_')\n    },\n    modalBodyId() {\n      return this.safeId('__BV_modal_body_')\n    },\n    modalTitleId() {\n      return this.safeId('__BV_modal_title_')\n    },\n    modalContentId() {\n      return this.safeId('__BV_modal_content_')\n    },\n    modalFooterId() {\n      return this.safeId('__BV_modal_footer_')\n    },\n    modalBackdropId() {\n      return this.safeId('__BV_modal_backdrop_')\n    },\n    modalClasses() {\n      return [\n        {\n          fade: !this.noFade,\n          show: this.isShow\n        },\n        this.modalClass\n      ]\n    },\n    modalStyles() {\n      const sbWidth = `${this.scrollbarWidth}px`\n      return {\n        paddingLeft: !this.isBodyOverflowing && this.isModalOverflowing ? sbWidth : '',\n        paddingRight: this.isBodyOverflowing && !this.isModalOverflowing ? sbWidth : '',\n        // Needed to fix issue https://github.com/bootstrap-vue/bootstrap-vue/issues/3457\n        // Even though we are using v-show, we must ensure 'none' is restored in the styles\n        display: this.isBlock ? 'block' : 'none'\n      }\n    },\n    dialogClasses() {\n      return [\n        {\n          [`modal-${this.size}`]: this.size,\n          'modal-dialog-centered': this.centered,\n          'modal-dialog-scrollable': this.scrollable\n        },\n        this.dialogClass\n      ]\n    },\n    headerClasses() {\n      return [\n        {\n          [`bg-${this.headerBgVariant}`]: this.headerBgVariant,\n          [`text-${this.headerTextVariant}`]: this.headerTextVariant,\n          [`border-${this.headerBorderVariant}`]: this.headerBorderVariant\n        },\n        this.headerClass\n      ]\n    },\n    titleClasses() {\n      return [{ 'sr-only': this.titleSrOnly }, this.titleClass]\n    },\n    bodyClasses() {\n      return [\n        {\n          [`bg-${this.bodyBgVariant}`]: this.bodyBgVariant,\n          [`text-${this.bodyTextVariant}`]: this.bodyTextVariant\n        },\n        this.bodyClass\n      ]\n    },\n    footerClasses() {\n      return [\n        {\n          [`bg-${this.footerBgVariant}`]: this.footerBgVariant,\n          [`text-${this.footerTextVariant}`]: this.footerTextVariant,\n          [`border-${this.footerBorderVariant}`]: this.footerBorderVariant\n        },\n        this.footerClass\n      ]\n    },\n    modalOuterStyle() {\n      // Styles needed for proper stacking of modals\n      return {\n        position: 'absolute',\n        zIndex: this.zIndex\n      }\n    },\n    slotScope() {\n      return {\n        cancel: this.onCancel,\n        close: this.onClose,\n        hide: this.hide,\n        ok: this.onOk,\n        visible: this.isVisible\n      }\n    },\n    computeIgnoreEnforceFocusSelector() {\n      // Normalize to an single selector with selectors separated by `,`\n      return concat(this.ignoreEnforceFocusSelector)\n        .filter(identity)\n        .join(',')\n        .trim()\n    },\n    computedAttrs() {\n      // If the parent has a scoped style attribute, and the modal\n      // is portalled, add the scoped attribute to the modal wrapper\n      const scopedStyleAttrs = !this.static ? this.scopedStyleAttrs : {}\n\n      return {\n        ...scopedStyleAttrs,\n        ...this.bvAttrs,\n        id: this.modalOuterId\n      }\n    },\n    computedModalAttrs() {\n      const { isVisible, ariaLabel } = this\n\n      return {\n        id: this.modalId,\n        role: 'dialog',\n        'aria-hidden': isVisible ? null : 'true',\n        'aria-modal': isVisible ? 'true' : null,\n        'aria-label': ariaLabel,\n        'aria-labelledby':\n          this.hideHeader ||\n          ariaLabel ||\n          // TODO: Rename slot to `title` and deprecate `modal-title`\n          !(this.hasNormalizedSlot(SLOT_NAME_MODAL_TITLE) || this.titleHtml || this.title)\n            ? null\n            : this.modalTitleId,\n        'aria-describedby': this.modalBodyId\n      }\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue, oldValue) {\n      if (newValue !== oldValue) {\n        this[newValue ? 'show' : 'hide']()\n      }\n    }\n  },\n  created() {\n    // Define non-reactive properties\n    this.$_observer = null\n    this.$_returnFocus = this.returnFocus || null\n  },\n  mounted() {\n    // Set initial z-index as queried from the DOM\n    this.zIndex = modalManager.getBaseZIndex()\n    // Listen for events from others to either open or close ourselves\n    // and listen to all modals to enable/disable enforce focus\n    this.listenOnRoot(getRootActionEventName(NAME_MODAL, EVENT_NAME_SHOW), this.showHandler)\n    this.listenOnRoot(getRootActionEventName(NAME_MODAL, EVENT_NAME_HIDE), this.hideHandler)\n    this.listenOnRoot(getRootActionEventName(NAME_MODAL, EVENT_NAME_TOGGLE), this.toggleHandler)\n    // Listen for `bv:modal::show events`, and close ourselves if the\n    // opening modal not us\n    this.listenOnRoot(getRootEventName(NAME_MODAL, EVENT_NAME_SHOW), this.modalListener)\n    // Initially show modal?\n    if (this[MODEL_PROP_NAME] === true) {\n      this.$nextTick(this.show)\n    }\n  },\n  beforeDestroy() {\n    // Ensure everything is back to normal\n    this.setObserver(false)\n    if (this.isVisible) {\n      this.isVisible = false\n      this.isShow = false\n      this.isTransitioning = false\n    }\n  },\n  methods: {\n    setObserver(on = false) {\n      this.$_observer && this.$_observer.disconnect()\n      this.$_observer = null\n      if (on) {\n        this.$_observer = observeDom(\n          this.$refs.content,\n          this.checkModalOverflow.bind(this),\n          OBSERVER_CONFIG\n        )\n      }\n    },\n    // Private method to update the v-model\n    updateModel(value) {\n      if (value !== this[MODEL_PROP_NAME]) {\n        this.$emit(MODEL_EVENT_NAME, value)\n      }\n    },\n    // Private method to create a BvModalEvent object\n    buildEvent(type, options = {}) {\n      return new BvModalEvent(type, {\n        // Default options\n        cancelable: false,\n        target: this.$refs.modal || this.$el || null,\n        relatedTarget: null,\n        trigger: null,\n        // Supplied options\n        ...options,\n        // Options that can't be overridden\n        vueTarget: this,\n        componentId: this.modalId\n      })\n    },\n    // Public method to show modal\n    show() {\n      if (this.isVisible || this.isOpening) {\n        // If already open, or in the process of opening, do nothing\n        /* istanbul ignore next */\n        return\n      }\n      /* istanbul ignore next */\n      if (this.isClosing) {\n        // If we are in the process of closing, wait until hidden before re-opening\n        /* istanbul ignore next */\n        this.$once(EVENT_NAME_HIDDEN, this.show)\n        /* istanbul ignore next */\n        return\n      }\n      this.isOpening = true\n      // Set the element to return focus to when closed\n      this.$_returnFocus = this.$_returnFocus || this.getActiveElement()\n      const showEvt = this.buildEvent(EVENT_NAME_SHOW, {\n        cancelable: true\n      })\n      this.emitEvent(showEvt)\n      // Don't show if canceled\n      if (showEvt.defaultPrevented || this.isVisible) {\n        this.isOpening = false\n        // Ensure the v-model reflects the current state\n        this.updateModel(false)\n        return\n      }\n      // Show the modal\n      this.doShow()\n    },\n    // Public method to hide modal\n    hide(trigger = '') {\n      if (!this.isVisible || this.isClosing) {\n        /* istanbul ignore next */\n        return\n      }\n      this.isClosing = true\n      const hideEvt = this.buildEvent(EVENT_NAME_HIDE, {\n        cancelable: trigger !== TRIGGER_FORCE,\n        trigger: trigger || null\n      })\n      // We emit specific event for one of the three built-in buttons\n      if (trigger === BUTTON_OK) {\n        this.$emit(EVENT_NAME_OK, hideEvt)\n      } else if (trigger === BUTTON_CANCEL) {\n        this.$emit(EVENT_NAME_CANCEL, hideEvt)\n      } else if (trigger === BUTTON_CLOSE) {\n        this.$emit(EVENT_NAME_CLOSE, hideEvt)\n      }\n      this.emitEvent(hideEvt)\n      // Hide if not canceled\n      if (hideEvt.defaultPrevented || !this.isVisible) {\n        this.isClosing = false\n        // Ensure v-model reflects current state\n        this.updateModel(true)\n        return\n      }\n      // Stop observing for content changes\n      this.setObserver(false)\n      // Trigger the hide transition\n      this.isVisible = false\n      // Update the v-model\n      this.updateModel(false)\n    },\n    // Public method to toggle modal visibility\n    toggle(triggerEl) {\n      if (triggerEl) {\n        this.$_returnFocus = triggerEl\n      }\n      if (this.isVisible) {\n        this.hide(TRIGGER_TOGGLE)\n      } else {\n        this.show()\n      }\n    },\n    // Private method to get the current document active element\n    getActiveElement() {\n      // Returning focus to `document.body` may cause unwanted scrolls,\n      // so we exclude setting focus on body\n      const activeElement = getActiveElement(IS_BROWSER ? [document.body] : [])\n      // Preset the fallback return focus value if it is not set\n      // `document.activeElement` should be the trigger element that was clicked or\n      // in the case of using the v-model, which ever element has current focus\n      // Will be overridden by some commands such as toggle, etc.\n      // Note: On IE 11, `document.activeElement` may be `null`\n      // So we test it for truthiness first\n      // https://github.com/bootstrap-vue/bootstrap-vue/issues/3206\n      return activeElement && activeElement.focus ? activeElement : null\n    },\n    // Private method to finish showing modal\n    doShow() {\n      /* istanbul ignore next: commenting out for now until we can test stacking */\n      if (modalManager.modalsAreOpen && this.noStacking) {\n        // If another modal(s) is already open, wait for it(them) to close\n        this.listenOnRootOnce(getRootEventName(NAME_MODAL, EVENT_NAME_HIDDEN), this.doShow)\n        return\n      }\n      modalManager.registerModal(this)\n      // Place modal in DOM\n      this.isHidden = false\n      this.$nextTick(() => {\n        // We do this in `$nextTick()` to ensure the modal is in DOM first\n        // before we show it\n        this.isVisible = true\n        this.isOpening = false\n        // Update the v-model\n        this.updateModel(true)\n        this.$nextTick(() => {\n          // Observe changes in modal content and adjust if necessary\n          // In a `$nextTick()` in case modal content is lazy\n          this.setObserver(true)\n        })\n      })\n    },\n    // Transition handlers\n    onBeforeEnter() {\n      this.isTransitioning = true\n      this.setResizeEvent(true)\n    },\n    onEnter() {\n      this.isBlock = true\n      // We add the `show` class 1 frame later\n      // `requestAF()` runs the callback before the next repaint, so we need\n      // two calls to guarantee the next frame has been rendered\n      requestAF(() => {\n        requestAF(() => {\n          this.isShow = true\n        })\n      })\n    },\n    onAfterEnter() {\n      this.checkModalOverflow()\n      this.isTransitioning = false\n      // We use `requestAF()` to allow transition hooks to complete\n      // before passing control over to the other handlers\n      // This will allow users to not have to use `$nextTick()` or `requestAF()`\n      // when trying to pre-focus an element\n      requestAF(() => {\n        this.emitEvent(this.buildEvent(EVENT_NAME_SHOWN))\n        this.setEnforceFocus(true)\n        this.$nextTick(() => {\n          // Delayed in a `$nextTick()` to allow users time to pre-focus\n          // an element if the wish\n          this.focusFirst()\n        })\n      })\n    },\n    onBeforeLeave() {\n      this.isTransitioning = true\n      this.setResizeEvent(false)\n      this.setEnforceFocus(false)\n    },\n    onLeave() {\n      // Remove the 'show' class\n      this.isShow = false\n    },\n    onAfterLeave() {\n      this.isBlock = false\n      this.isTransitioning = false\n      this.isModalOverflowing = false\n      this.isHidden = true\n      this.$nextTick(() => {\n        this.isClosing = false\n        modalManager.unregisterModal(this)\n        this.returnFocusTo()\n        // TODO: Need to find a way to pass the `trigger` property\n        //       to the `hidden` event, not just only the `hide` event\n        this.emitEvent(this.buildEvent(EVENT_NAME_HIDDEN))\n      })\n    },\n    // Event emitter\n    emitEvent(bvModalEvt) {\n      const type = bvModalEvt.type\n      // We emit on root first incase a global listener wants to cancel\n      // the event first before the instance emits its event\n      this.emitOnRoot(getRootEventName(NAME_MODAL, type), bvModalEvt, bvModalEvt.componentId)\n      this.$emit(type, bvModalEvt)\n    },\n    // UI event handlers\n    onDialogMousedown() {\n      // Watch to see if the matching mouseup event occurs outside the dialog\n      // And if it does, cancel the clickOut handler\n      const modal = this.$refs.modal\n      const onceModalMouseup = event => {\n        eventOff(modal, 'mouseup', onceModalMouseup, EVENT_OPTIONS_NO_CAPTURE)\n        if (event.target === modal) {\n          this.ignoreBackdropClick = true\n        }\n      }\n      eventOn(modal, 'mouseup', onceModalMouseup, EVENT_OPTIONS_NO_CAPTURE)\n    },\n    onClickOut(event) {\n      if (this.ignoreBackdropClick) {\n        // Click was initiated inside the modal content, but finished outside.\n        // Set by the above onDialogMousedown handler\n        this.ignoreBackdropClick = false\n        return\n      }\n      // Do nothing if not visible, backdrop click disabled, or element\n      // that generated click event is no longer in document body\n      if (!this.isVisible || this.noCloseOnBackdrop || !contains(document.body, event.target)) {\n        return\n      }\n      // If backdrop clicked, hide modal\n      if (!contains(this.$refs.content, event.target)) {\n        this.hide(TRIGGER_BACKDROP)\n      }\n    },\n    onOk() {\n      this.hide(BUTTON_OK)\n    },\n    onCancel() {\n      this.hide(BUTTON_CANCEL)\n    },\n    onClose() {\n      this.hide(BUTTON_CLOSE)\n    },\n    onEsc(event) {\n      // If ESC pressed, hide modal\n      if (event.keyCode === CODE_ESC && this.isVisible && !this.noCloseOnEsc) {\n        this.hide(TRIGGER_ESC)\n      }\n    },\n    // Document focusin listener\n    focusHandler(event) {\n      // If focus leaves modal content, bring it back\n      const content = this.$refs.content\n      const { target } = event\n      if (\n        this.noEnforceFocus ||\n        !this.isTop ||\n        !this.isVisible ||\n        !content ||\n        document === target ||\n        contains(content, target) ||\n        (this.computeIgnoreEnforceFocusSelector &&\n          closest(this.computeIgnoreEnforceFocusSelector, target, true))\n      ) {\n        return\n      }\n      const tabables = getTabables(this.$refs.content)\n      const bottomTrap = this.$refs['bottom-trap']\n      const topTrap = this.$refs['top-trap']\n      if (bottomTrap && target === bottomTrap) {\n        // If user pressed TAB out of modal into our bottom trab trap element\n        // Find the first tabable element in the modal content and focus it\n        if (attemptFocus(tabables[0])) {\n          // Focus was successful\n          return\n        }\n      } else if (topTrap && target === topTrap) {\n        // If user pressed CTRL-TAB out of modal and into our top tab trap element\n        // Find the last tabable element in the modal content and focus it\n        if (attemptFocus(tabables[tabables.length - 1])) {\n          // Focus was successful\n          return\n        }\n      }\n      // Otherwise focus the modal content container\n      attemptFocus(content, { preventScroll: true })\n    },\n    // Turn on/off focusin listener\n    setEnforceFocus(on) {\n      this.listenDocument(on, 'focusin', this.focusHandler)\n    },\n    // Resize listener\n    setResizeEvent(on) {\n      this.listenWindow(on, 'resize', this.checkModalOverflow)\n      this.listenWindow(on, 'orientationchange', this.checkModalOverflow)\n    },\n    // Root listener handlers\n    showHandler(id, triggerEl) {\n      if (id === this.modalId) {\n        this.$_returnFocus = triggerEl || this.getActiveElement()\n        this.show()\n      }\n    },\n    hideHandler(id) {\n      if (id === this.modalId) {\n        this.hide('event')\n      }\n    },\n    toggleHandler(id, triggerEl) {\n      if (id === this.modalId) {\n        this.toggle(triggerEl)\n      }\n    },\n    modalListener(bvEvent) {\n      // If another modal opens, close this one if stacking not permitted\n      if (this.noStacking && bvEvent.vueTarget !== this) {\n        this.hide()\n      }\n    },\n    // Focus control handlers\n    focusFirst() {\n      // Don't try and focus if we are SSR\n      if (IS_BROWSER) {\n        requestAF(() => {\n          const modal = this.$refs.modal\n          const content = this.$refs.content\n          const activeElement = this.getActiveElement()\n          // If the modal contains the activeElement, we don't do anything\n          if (modal && content && !(activeElement && contains(content, activeElement))) {\n            const ok = this.$refs['ok-button']\n            const cancel = this.$refs['cancel-button']\n            const close = this.$refs['close-button']\n            // Focus the appropriate button or modal content wrapper\n            const autoFocus = this.autoFocusButton\n            /* istanbul ignore next */\n            const el =\n              autoFocus === BUTTON_OK && ok\n                ? ok.$el || ok\n                : autoFocus === BUTTON_CANCEL && cancel\n                  ? cancel.$el || cancel\n                  : autoFocus === BUTTON_CLOSE && close\n                    ? close.$el || close\n                    : content\n            // Focus the element\n            attemptFocus(el)\n            if (el === content) {\n              // Make sure top of modal is showing (if longer than the viewport)\n              this.$nextTick(() => {\n                modal.scrollTop = 0\n              })\n            }\n          }\n        })\n      }\n    },\n    returnFocusTo() {\n      // Prefer `returnFocus` prop over event specified\n      // `return_focus` value\n      let el = this.returnFocus || this.$_returnFocus || null\n      this.$_returnFocus = null\n      this.$nextTick(() => {\n        // Is el a string CSS selector?\n        el = isString(el) ? select(el) : el\n        if (el) {\n          // Possibly could be a component reference\n          el = el.$el || el\n          attemptFocus(el)\n        }\n      })\n    },\n    checkModalOverflow() {\n      if (this.isVisible) {\n        const modal = this.$refs.modal\n        this.isModalOverflowing = modal.scrollHeight > document.documentElement.clientHeight\n      }\n    },\n    makeModal(h) {\n      // Modal header\n      let $header = h()\n      if (!this.hideHeader) {\n        // TODO: Rename slot to `header` and deprecate `modal-header`\n        let $modalHeader = this.normalizeSlot(SLOT_NAME_MODAL_HEADER, this.slotScope)\n        if (!$modalHeader) {\n          let $closeButton = h()\n          if (!this.hideHeaderClose) {\n            $closeButton = h(\n              BButtonClose,\n              {\n                props: {\n                  content: this.headerCloseContent,\n                  disabled: this.isTransitioning,\n                  ariaLabel: this.headerCloseLabel,\n                  textVariant: this.headerCloseVariant || this.headerTextVariant\n                },\n                on: { click: this.onClose },\n                ref: 'close-button'\n              },\n              // TODO: Rename slot to `header-close` and deprecate `modal-header-close`\n              [this.normalizeSlot(SLOT_NAME_MODAL_HEADER_CLOSE)]\n            )\n          }\n\n          $modalHeader = [\n            h(\n              this.titleTag,\n              {\n                staticClass: 'modal-title',\n                class: this.titleClasses,\n                attrs: { id: this.modalTitleId },\n                // TODO: Rename slot to `title` and deprecate `modal-title`\n                domProps: this.hasNormalizedSlot(SLOT_NAME_MODAL_TITLE)\n                  ? {}\n                  : htmlOrText(this.titleHtml, this.title)\n              },\n              // TODO: Rename slot to `title` and deprecate `modal-title`\n              this.normalizeSlot(SLOT_NAME_MODAL_TITLE, this.slotScope)\n            ),\n            $closeButton\n          ]\n        }\n\n        $header = h(\n          'header',\n          {\n            staticClass: 'modal-header',\n            class: this.headerClasses,\n            attrs: { id: this.modalHeaderId },\n            ref: 'header'\n          },\n          [$modalHeader]\n        )\n      }\n\n      // Modal body\n      const $body = h(\n        'div',\n        {\n          staticClass: 'modal-body',\n          class: this.bodyClasses,\n          attrs: { id: this.modalBodyId },\n          ref: 'body'\n        },\n        this.normalizeSlot(SLOT_NAME_DEFAULT, this.slotScope)\n      )\n\n      // Modal footer\n      let $footer = h()\n      if (!this.hideFooter) {\n        // TODO: Rename slot to `footer` and deprecate `modal-footer`\n        let $modalFooter = this.normalizeSlot(SLOT_NAME_MODAL_FOOTER, this.slotScope)\n        if (!$modalFooter) {\n          let $cancelButton = h()\n          if (!this.okOnly) {\n            $cancelButton = h(\n              BButton,\n              {\n                props: {\n                  variant: this.cancelVariant,\n                  size: this.buttonSize,\n                  disabled: this.cancelDisabled || this.busy || this.isTransitioning\n                },\n                // TODO: Rename slot to `cancel-button` and deprecate `modal-cancel`\n                domProps: this.hasNormalizedSlot(SLOT_NAME_MODAL_CANCEL)\n                  ? {}\n                  : htmlOrText(this.cancelTitleHtml, this.cancelTitle),\n                on: { click: this.onCancel },\n                ref: 'cancel-button'\n              },\n              // TODO: Rename slot to `cancel-button` and deprecate `modal-cancel`\n              this.normalizeSlot(SLOT_NAME_MODAL_CANCEL)\n            )\n          }\n\n          const $okButton = h(\n            BButton,\n            {\n              props: {\n                variant: this.okVariant,\n                size: this.buttonSize,\n                disabled: this.okDisabled || this.busy || this.isTransitioning\n              },\n              // TODO: Rename slot to `ok-button` and deprecate `modal-ok`\n              domProps: this.hasNormalizedSlot(SLOT_NAME_MODAL_OK)\n                ? {}\n                : htmlOrText(this.okTitleHtml, this.okTitle),\n              on: { click: this.onOk },\n              ref: 'ok-button'\n            },\n            // TODO: Rename slot to `ok-button` and deprecate `modal-ok`\n            this.normalizeSlot(SLOT_NAME_MODAL_OK)\n          )\n\n          $modalFooter = [$cancelButton, $okButton]\n        }\n\n        $footer = h(\n          'footer',\n          {\n            staticClass: 'modal-footer',\n            class: this.footerClasses,\n            attrs: { id: this.modalFooterId },\n            ref: 'footer'\n          },\n          [$modalFooter]\n        )\n      }\n\n      // Assemble modal content\n      const $modalContent = h(\n        'div',\n        {\n          staticClass: 'modal-content',\n          class: this.contentClass,\n          attrs: {\n            id: this.modalContentId,\n            tabindex: '-1'\n          },\n          ref: 'content'\n        },\n        [$header, $body, $footer]\n      )\n\n      // Tab traps to prevent page from scrolling to next element in\n      // tab index during enforce-focus tab cycle\n      let $tabTrapTop = h()\n      let $tabTrapBottom = h()\n      if (this.isVisible && !this.noEnforceFocus) {\n        $tabTrapTop = h('span', {\n          attrs: { tabindex: '0' },\n          ref: 'top-trap'\n        })\n        $tabTrapBottom = h('span', {\n          attrs: { tabindex: '0' },\n          ref: 'bottom-trap'\n        })\n      }\n\n      // Modal dialog wrapper\n      const $modalDialog = h(\n        'div',\n        {\n          staticClass: 'modal-dialog',\n          class: this.dialogClasses,\n          on: { mousedown: this.onDialogMousedown },\n          ref: 'dialog'\n        },\n        [$tabTrapTop, $modalContent, $tabTrapBottom]\n      )\n\n      // Modal\n      let $modal = h(\n        'div',\n        {\n          staticClass: 'modal',\n          class: this.modalClasses,\n          style: this.modalStyles,\n          attrs: this.computedModalAttrs,\n          on: { keydown: this.onEsc, click: this.onClickOut },\n          directives: [{ name: 'show', value: this.isVisible }],\n          ref: 'modal'\n        },\n        [$modalDialog]\n      )\n\n      // Wrap modal in transition\n      // Sadly, we can't use `BVTransition` here due to the differences in\n      // transition durations for `.modal` and `.modal-dialog`\n      // At least until https://github.com/vuejs/vue/issues/9986 is resolved\n      $modal = h(\n        'transition',\n        {\n          props: {\n            enterClass: '',\n            enterToClass: '',\n            enterActiveClass: '',\n            leaveClass: '',\n            leaveActiveClass: '',\n            leaveToClass: ''\n          },\n          on: {\n            beforeEnter: this.onBeforeEnter,\n            enter: this.onEnter,\n            afterEnter: this.onAfterEnter,\n            beforeLeave: this.onBeforeLeave,\n            leave: this.onLeave,\n            afterLeave: this.onAfterLeave\n          }\n        },\n        [$modal]\n      )\n\n      // Modal backdrop\n      let $backdrop = h()\n      if (!this.hideBackdrop && this.isVisible) {\n        $backdrop = h(\n          'div',\n          {\n            staticClass: 'modal-backdrop',\n            attrs: { id: this.modalBackdropId }\n          },\n          // TODO: Rename slot to `backdrop` and deprecate `modal-backdrop`\n          this.normalizeSlot(SLOT_NAME_MODAL_BACKDROP)\n        )\n      }\n      $backdrop = h(BVTransition, { props: { noFade: this.noFade } }, [$backdrop])\n\n      // Assemble modal and backdrop in an outer <div>\n      return h(\n        'div',\n        {\n          style: this.modalOuterStyle,\n          attrs: this.computedAttrs,\n          key: `modal-outer-${this[COMPONENT_UID_KEY]}`\n        },\n        [$modal, $backdrop]\n      )\n    }\n  },\n  render(h) {\n    if (this.static) {\n      return this.lazy && this.isHidden ? h() : this.makeModal(h)\n    } else {\n      return this.isHidden ? h() : h(BVTransporter, [this.makeModal(h)])\n    }\n  }\n})\n","import { NAME_MODAL } from '../../constants/components'\nimport { EVENT_NAME_SHOW, EVENT_OPTIONS_PASSIVE } from '../../constants/events'\nimport { CODE_ENTER, CODE_SPACE } from '../../constants/key-codes'\nimport { getAttr, hasAttr, isDisabled, matches, select, setAttr } from '../../utils/dom'\nimport { getRootActionEventName, eventOn, eventOff } from '../../utils/events'\nimport { isString } from '../../utils/inspect'\nimport { keys } from '../../utils/object'\n\n// Emitted show event for modal\nconst ROOT_ACTION_EVENT_NAME_SHOW = getRootActionEventName(NAME_MODAL, EVENT_NAME_SHOW)\n\n// Prop name we use to store info on root element\nconst PROPERTY = '__bv_modal_directive__'\n\nconst getTarget = ({ modifiers = {}, arg, value }) => {\n  // Try value, then arg, otherwise pick last modifier\n  return isString(value) ? value : isString(arg) ? arg : keys(modifiers).reverse()[0]\n}\n\nconst getTriggerElement = el => {\n  // If root element is a dropdown-item or nav-item, we\n  // need to target the inner link or button instead\n  return el && matches(el, '.dropdown-menu > li, li.nav-item') ? select('a, button', el) || el : el\n}\n\nconst setRole = trigger => {\n  // Ensure accessibility on non button elements\n  if (trigger && trigger.tagName !== 'BUTTON') {\n    // Only set a role if the trigger element doesn't have one\n    if (!hasAttr(trigger, 'role')) {\n      setAttr(trigger, 'role', 'button')\n    }\n    // Add a tabindex is not a button or link, and tabindex is not provided\n    if (trigger.tagName !== 'A' && !hasAttr(trigger, 'tabindex')) {\n      setAttr(trigger, 'tabindex', '0')\n    }\n  }\n}\n\nconst bind = (el, binding, vnode) => {\n  const target = getTarget(binding)\n  const trigger = getTriggerElement(el)\n  if (target && trigger) {\n    const handler = event => {\n      // `currentTarget` is the element with the listener on it\n      const currentTarget = event.currentTarget\n      if (!isDisabled(currentTarget)) {\n        const type = event.type\n        const key = event.keyCode\n        // Open modal only if trigger is not disabled\n        if (\n          type === 'click' ||\n          (type === 'keydown' && (key === CODE_ENTER || key === CODE_SPACE))\n        ) {\n          vnode.context.$root.$emit(ROOT_ACTION_EVENT_NAME_SHOW, target, currentTarget)\n        }\n      }\n    }\n    el[PROPERTY] = { handler, target, trigger }\n    // If element is not a button, we add `role=\"button\"` for accessibility\n    setRole(trigger)\n    // Listen for click events\n    eventOn(trigger, 'click', handler, EVENT_OPTIONS_PASSIVE)\n    if (trigger.tagName !== 'BUTTON' && getAttr(trigger, 'role') === 'button') {\n      // If trigger isn't a button but has role button,\n      // we also listen for `keydown.space` && `keydown.enter`\n      eventOn(trigger, 'keydown', handler, EVENT_OPTIONS_PASSIVE)\n    }\n  }\n}\n\nconst unbind = el => {\n  const oldProp = el[PROPERTY] || {}\n  const trigger = oldProp.trigger\n  const handler = oldProp.handler\n  if (trigger && handler) {\n    eventOff(trigger, 'click', handler, EVENT_OPTIONS_PASSIVE)\n    eventOff(trigger, 'keydown', handler, EVENT_OPTIONS_PASSIVE)\n    eventOff(el, 'click', handler, EVENT_OPTIONS_PASSIVE)\n    eventOff(el, 'keydown', handler, EVENT_OPTIONS_PASSIVE)\n  }\n  delete el[PROPERTY]\n}\n\nconst componentUpdated = (el, binding, vnode) => {\n  const oldProp = el[PROPERTY] || {}\n  const target = getTarget(binding)\n  const trigger = getTriggerElement(el)\n  if (target !== oldProp.target || trigger !== oldProp.trigger) {\n    // We bind and rebind if the target or trigger changes\n    unbind(el, binding, vnode)\n    bind(el, binding, vnode)\n  }\n  // If trigger element is not a button, ensure `role=\"button\"`\n  // is still set for accessibility\n  setRole(trigger)\n}\n\nconst updated = () => {}\n\n/*\n * Export our directive\n */\nexport const VBModal = {\n  inserted: componentUpdated,\n  updated,\n  componentUpdated,\n  unbind\n}\n","// Plugin for adding `$bvModal` property to all Vue instances\nimport { NAME_MODAL, NAME_MSG_BOX } from '../../../constants/components'\nimport {\n  EVENT_NAME_HIDDEN,\n  EVENT_NAME_HIDE,\n  HOOK_EVENT_NAME_BEFORE_DESTROY,\n  HOOK_EVENT_NAME_DESTROYED\n} from '../../../constants/events'\nimport { concat } from '../../../utils/array'\nimport { getComponentConfig } from '../../../utils/config'\nimport { requestAF } from '../../../utils/dom'\nimport { getRootActionEventName } from '../../../utils/events'\nimport { isUndefined, isFunction } from '../../../utils/inspect'\nimport {\n  assign,\n  defineProperties,\n  defineProperty,\n  hasOwnProperty,\n  keys,\n  omit,\n  readonlyDescriptor\n} from '../../../utils/object'\nimport { pluginFactory } from '../../../utils/plugins'\nimport { warn, warnNotClient, warnNoPromiseSupport } from '../../../utils/warn'\nimport { BModal, props as modalProps } from '../modal'\n\n// --- Constants ---\n\nconst PROP_NAME = '$bvModal'\nconst PROP_NAME_PRIV = '_bv__modal'\n\n// Base modal props that are allowed\n// Some may be ignored or overridden on some message boxes\n// Prop ID is allowed, but really only should be used for testing\n// We need to add it in explicitly as it comes from the `idMixin`\nconst BASE_PROPS = [\n  'id',\n  ...keys(omit(modalProps, ['busy', 'lazy', 'noStacking', 'static', 'visible']))\n]\n\n// Fallback event resolver (returns undefined)\nconst defaultResolver = () => {}\n\n// Map prop names to modal slot names\nconst propsToSlots = {\n  msgBoxContent: 'default',\n  title: 'modal-title',\n  okTitle: 'modal-ok',\n  cancelTitle: 'modal-cancel'\n}\n\n// --- Helper methods ---\n\n// Method to filter only recognized props that are not undefined\nconst filterOptions = options => {\n  return BASE_PROPS.reduce((memo, key) => {\n    if (!isUndefined(options[key])) {\n      memo[key] = options[key]\n    }\n    return memo\n  }, {})\n}\n\n// Method to install `$bvModal` VM injection\nconst plugin = Vue => {\n  // Create a private sub-component that extends BModal\n  // which self-destructs after hidden\n  // @vue/component\n  const BMsgBox = Vue.extend({\n    name: NAME_MSG_BOX,\n    extends: BModal,\n    destroyed() {\n      // Make sure we not in document any more\n      if (this.$el && this.$el.parentNode) {\n        this.$el.parentNode.removeChild(this.$el)\n      }\n    },\n    mounted() {\n      // Self destruct handler\n      const handleDestroy = () => {\n        this.$nextTick(() => {\n          // In a `requestAF()` to release control back to application\n          requestAF(() => {\n            this.$destroy()\n          })\n        })\n      }\n      // Self destruct if parent destroyed\n      this.$parent.$once(HOOK_EVENT_NAME_DESTROYED, handleDestroy)\n      // Self destruct after hidden\n      this.$once(EVENT_NAME_HIDDEN, handleDestroy)\n      // Self destruct on route change\n      /* istanbul ignore if */\n      if (this.$router && this.$route) {\n        // Destroy ourselves if route changes\n        /* istanbul ignore next */\n        this.$once(HOOK_EVENT_NAME_BEFORE_DESTROY, this.$watch('$router', handleDestroy))\n      }\n      // Show the `BMsgBox`\n      this.show()\n    }\n  })\n\n  // Method to generate the on-demand modal message box\n  // Returns a promise that resolves to a value returned by the resolve\n  const asyncMsgBox = ($parent, props, resolver = defaultResolver) => {\n    if (warnNotClient(PROP_NAME) || warnNoPromiseSupport(PROP_NAME)) {\n      /* istanbul ignore next */\n      return\n    }\n    // Create an instance of `BMsgBox` component\n    const msgBox = new BMsgBox({\n      // We set parent as the local VM so these modals can emit events on\n      // the app `$root`, as needed by things like tooltips and popovers\n      // And it helps to ensure `BMsgBox` is destroyed when parent is destroyed\n      parent: $parent,\n      // Preset the prop values\n      propsData: {\n        ...filterOptions(getComponentConfig(NAME_MODAL)),\n        // Defaults that user can override\n        hideHeaderClose: true,\n        hideHeader: !(props.title || props.titleHtml),\n        // Add in (filtered) user supplied props\n        ...omit(props, keys(propsToSlots)),\n        // Props that can't be overridden\n        lazy: false,\n        busy: false,\n        visible: false,\n        noStacking: false,\n        noEnforceFocus: false\n      }\n    })\n    // Convert certain props to scoped slots\n    keys(propsToSlots).forEach(prop => {\n      if (!isUndefined(props[prop])) {\n        // Can be a string, or array of VNodes.\n        // Alternatively, user can use HTML version of prop to pass an HTML string.\n        msgBox.$slots[propsToSlots[prop]] = concat(props[prop])\n      }\n    })\n    // Return a promise that resolves when hidden, or rejects on destroyed\n    return new Promise((resolve, reject) => {\n      let resolved = false\n      msgBox.$once(HOOK_EVENT_NAME_DESTROYED, () => {\n        if (!resolved) {\n          /* istanbul ignore next */\n          reject(new Error('BootstrapVue MsgBox destroyed before resolve'))\n        }\n      })\n      msgBox.$on(EVENT_NAME_HIDE, bvModalEvt => {\n        if (!bvModalEvt.defaultPrevented) {\n          const result = resolver(bvModalEvt)\n          // If resolver didn't cancel hide, we resolve\n          if (!bvModalEvt.defaultPrevented) {\n            resolved = true\n            resolve(result)\n          }\n        }\n      })\n      // Create a mount point (a DIV) and mount the msgBo which will trigger it to show\n      const div = document.createElement('div')\n      document.body.appendChild(div)\n      msgBox.$mount(div)\n    })\n  }\n\n  // Private utility method to open a user defined message box and returns a promise.\n  // Not to be used directly by consumers, as this method may change calling syntax\n  const makeMsgBox = ($parent, content, options = {}, resolver = null) => {\n    if (\n      !content ||\n      warnNoPromiseSupport(PROP_NAME) ||\n      warnNotClient(PROP_NAME) ||\n      !isFunction(resolver)\n    ) {\n      /* istanbul ignore next */\n      return\n    }\n    return asyncMsgBox($parent, { ...filterOptions(options), msgBoxContent: content }, resolver)\n  }\n\n  // BvModal instance class\n  class BvModal {\n    constructor(vm) {\n      // Assign the new properties to this instance\n      assign(this, { _vm: vm, _root: vm.$root })\n      // Set these properties as read-only and non-enumerable\n      defineProperties(this, {\n        _vm: readonlyDescriptor(),\n        _root: readonlyDescriptor()\n      })\n    }\n\n    // --- Instance methods ---\n\n    // Show modal with the specified ID args are for future use\n    show(id, ...args) {\n      if (id && this._root) {\n        this._root.$emit(getRootActionEventName(NAME_MODAL, 'show'), id, ...args)\n      }\n    }\n\n    // Hide modal with the specified ID args are for future use\n    hide(id, ...args) {\n      if (id && this._root) {\n        this._root.$emit(getRootActionEventName(NAME_MODAL, 'hide'), id, ...args)\n      }\n    }\n\n    // The following methods require Promise support!\n    // IE 11 and others do not support Promise natively, so users\n    // should have a Polyfill loaded (which they need anyways for IE 11 support)\n\n    // Open a message box with OK button only and returns a promise\n    msgBoxOk(message, options = {}) {\n      // Pick the modal props we support from options\n      const props = {\n        ...options,\n        // Add in overrides and our content prop\n        okOnly: true,\n        okDisabled: false,\n        hideFooter: false,\n        msgBoxContent: message\n      }\n      return makeMsgBox(this._vm, message, props, () => {\n        // Always resolve to true for OK\n        return true\n      })\n    }\n\n    // Open a message box modal with OK and CANCEL buttons\n    // and returns a promise\n    msgBoxConfirm(message, options = {}) {\n      // Set the modal props we support from options\n      const props = {\n        ...options,\n        // Add in overrides and our content prop\n        okOnly: false,\n        okDisabled: false,\n        cancelDisabled: false,\n        hideFooter: false\n      }\n      return makeMsgBox(this._vm, message, props, bvModalEvt => {\n        const trigger = bvModalEvt.trigger\n        return trigger === 'ok' ? true : trigger === 'cancel' ? false : null\n      })\n    }\n  }\n\n  // Add our instance mixin\n  Vue.mixin({\n    beforeCreate() {\n      // Because we need access to `$root` for `$emits`, and VM for parenting,\n      // we have to create a fresh instance of `BvModal` for each VM\n      this[PROP_NAME_PRIV] = new BvModal(this)\n    }\n  })\n\n  // Define our read-only `$bvModal` instance property\n  // Placed in an if just in case in HMR mode\n  if (!hasOwnProperty(Vue.prototype, PROP_NAME)) {\n    defineProperty(Vue.prototype, PROP_NAME, {\n      get() {\n        /* istanbul ignore next */\n        if (!this || !this[PROP_NAME_PRIV]) {\n          warn(`\"${PROP_NAME}\" must be accessed from a Vue instance \"this\" context.`, NAME_MODAL)\n        }\n        return this[PROP_NAME_PRIV]\n      }\n    })\n  }\n}\n\nexport const BVModalPlugin = /*#__PURE__*/ pluginFactory({\n  plugins: { plugin }\n})\n","import { BModal } from './modal'\nimport { VBModal } from '../../directives/modal/modal'\nimport { BVModalPlugin } from './helpers/bv-modal'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ModalPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BModal },\n  directives: { VBModal },\n  // $bvModal injection\n  plugins: { BVModalPlugin }\n})\n\nexport { ModalPlugin, BModal }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_NAV } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Helper methods ---\n\nconst computeJustifyContent = value => {\n  value = value === 'left' ? 'start' : value === 'right' ? 'end' : value\n  return `justify-content-${value}`\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    align: makeProp(PROP_TYPE_STRING),\n    // Set to `true` if placing in a card header\n    cardHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n    fill: makeProp(PROP_TYPE_BOOLEAN, false),\n    justified: makeProp(PROP_TYPE_BOOLEAN, false),\n    pills: makeProp(PROP_TYPE_BOOLEAN, false),\n    small: makeProp(PROP_TYPE_BOOLEAN, false),\n    tabs: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'ul'),\n    vertical: makeProp(PROP_TYPE_BOOLEAN, false)\n  },\n  NAME_NAV\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNav = /*#__PURE__*/ Vue.extend({\n  name: NAME_NAV,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { tabs, pills, vertical, align, cardHeader } = props\n\n    return h(\n      props.tag,\n      mergeData(data, {\n        staticClass: 'nav',\n        class: {\n          'nav-tabs': tabs,\n          'nav-pills': pills && !tabs,\n          'card-header-tabs': !vertical && cardHeader && tabs,\n          'card-header-pills': !vertical && cardHeader && pills && !tabs,\n          'flex-column': vertical,\n          'nav-fill': !vertical && props.fill,\n          'nav-justified': !vertical && props.justified,\n          [computeJustifyContent(align)]: !vertical && align,\n          small: props.small\n        }\n      }),\n      children\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_NAV_ITEM } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_OBJECT } from '../../constants/props'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...omit(BLinkProps, ['event', 'routerTag']),\n    linkAttrs: makeProp(PROP_TYPE_OBJECT, {}),\n    linkClasses: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n  }),\n  NAME_NAV_ITEM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavItem = /*#__PURE__*/ Vue.extend({\n  name: NAME_NAV_ITEM,\n  functional: true,\n  props,\n  render(h, { props, data, listeners, children }) {\n    return h(\n      'li',\n      mergeData(omit(data, ['on']), {\n        staticClass: 'nav-item'\n      }),\n      [\n        h(\n          BLink,\n          {\n            staticClass: 'nav-link',\n            class: props.linkClasses,\n            attrs: props.linkAttrs,\n            props,\n            on: listeners\n          },\n          children\n        )\n      ]\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_NAV_TEXT } from '../../constants/components'\n\n// --- Props ---\n\nexport const props = {}\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavText = /*#__PURE__*/ Vue.extend({\n  name: NAME_NAV_TEXT,\n  functional: true,\n  props,\n  render(h, { data, children }) {\n    return h('li', mergeData(data, { staticClass: 'navbar-text' }), children)\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_NAV_FORM } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING } from '../../constants/props'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BForm, props as BFormProps } from '../form/form'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...omit(BFormProps, ['inline']),\n    formClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n  }),\n  NAME_NAV_FORM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavForm = /*#__PURE__*/ Vue.extend({\n  name: NAME_NAV_FORM,\n  functional: true,\n  props,\n  render(h, { props, data, children, listeners }) {\n    const $form = h(\n      BForm,\n      {\n        class: props.formClass,\n        props: {\n          ...props,\n          inline: true\n        },\n        attrs: data.attrs,\n        on: listeners\n      },\n      children\n    )\n\n    return h(\n      'li',\n      mergeData(omit(data, ['attrs', 'on']), {\n        staticClass: 'form-inline'\n      }),\n      [$form]\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_NAV_ITEM_DROPDOWN } from '../../constants/components'\nimport { SLOT_NAME_BUTTON_CONTENT, SLOT_NAME_DEFAULT, SLOT_NAME_TEXT } from '../../constants/slots'\nimport { htmlOrText } from '../../utils/html'\nimport { keys, pick, sortKeys } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { dropdownMixin, props as dropdownProps } from '../../mixins/dropdown'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { props as BDropdownProps } from '../dropdown/dropdown'\nimport { BLink } from '../link/link'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...pick(BDropdownProps, [\n      ...keys(dropdownProps),\n      'html',\n      'lazy',\n      'menuClass',\n      'noCaret',\n      'role',\n      'text',\n      'toggleClass'\n    ])\n  }),\n  NAME_NAV_ITEM_DROPDOWN\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavItemDropdown = /*#__PURE__*/ Vue.extend({\n  name: NAME_NAV_ITEM_DROPDOWN,\n  mixins: [idMixin, dropdownMixin, normalizeSlotMixin],\n  props,\n  computed: {\n    toggleId() {\n      return this.safeId('_BV_toggle_')\n    },\n    dropdownClasses() {\n      return [this.directionClass, this.boundaryClass, { show: this.visible }]\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      return [this.toggleClass, { 'dropdown-toggle-no-caret': this.noCaret }]\n    }\n  },\n  render(h) {\n    const { toggleId, visible, hide } = this\n\n    const $toggle = h(\n      BLink,\n      {\n        staticClass: 'nav-link dropdown-toggle',\n        class: this.toggleClasses,\n        props: {\n          href: `#${this.id || ''}`,\n          disabled: this.disabled\n        },\n        attrs: {\n          id: toggleId,\n          role: 'button',\n          'aria-haspopup': 'true',\n          'aria-expanded': visible ? 'true' : 'false'\n        },\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      [\n        // TODO: The `text` slot is deprecated in favor of the `button-content` slot\n        this.normalizeSlot([SLOT_NAME_BUTTON_CONTENT, SLOT_NAME_TEXT]) ||\n          h('span', { domProps: htmlOrText(this.html, this.text) })\n      ]\n    )\n\n    const $menu = h(\n      'ul',\n      {\n        staticClass: 'dropdown-menu',\n        class: this.menuClasses,\n        attrs: {\n          tabindex: '-1',\n          'aria-labelledby': toggleId\n        },\n        on: {\n          keydown: this.onKeydown // Handle UP, DOWN and ESC\n        },\n        ref: 'menu'\n      },\n      !this.lazy || visible ? this.normalizeSlot(SLOT_NAME_DEFAULT, { hide }) : [h()]\n    )\n\n    return h(\n      'li',\n      {\n        staticClass: 'nav-item b-nav-dropdown dropdown',\n        class: this.dropdownClasses,\n        attrs: { id: this.safeId() }\n      },\n      [$toggle, $menu]\n    )\n  }\n})\n","import { BNav } from './nav'\nimport { BNavItem } from './nav-item'\nimport { BNavText } from './nav-text'\nimport { BNavForm } from './nav-form'\nimport { BNavItemDropdown } from './nav-item-dropdown'\nimport { DropdownPlugin } from '../dropdown'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst NavPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BNav,\n    BNavItem,\n    BNavText,\n    BNavForm,\n    BNavItemDropdown,\n    BNavItemDd: BNavItemDropdown,\n    BNavDropdown: BNavItemDropdown,\n    BNavDd: BNavItemDropdown\n  },\n  plugins: {\n    DropdownPlugin\n  }\n})\n\nexport { NavPlugin, BNav, BNavItem, BNavText, BNavForm, BNavItemDropdown }\n","import { Vue } from '../../vue'\nimport { NAME_NAVBAR } from '../../constants/components'\nimport {\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { getBreakpoints } from '../../utils/config'\nimport { isTag } from '../../utils/dom'\nimport { isString } from '../../utils/inspect'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    fixed: makeProp(PROP_TYPE_STRING),\n    print: makeProp(PROP_TYPE_BOOLEAN, false),\n    sticky: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'nav'),\n    toggleable: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n    type: makeProp(PROP_TYPE_STRING, 'light'),\n    variant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_NAVBAR\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavbar = /*#__PURE__*/ Vue.extend({\n  name: NAME_NAVBAR,\n  mixins: [normalizeSlotMixin],\n  provide() {\n    return { bvNavbar: this }\n  },\n  props,\n  computed: {\n    breakpointClass() {\n      const { toggleable } = this\n      const xs = getBreakpoints()[0]\n\n      let breakpoint = null\n      if (toggleable && isString(toggleable) && toggleable !== xs) {\n        breakpoint = `navbar-expand-${toggleable}`\n      } else if (toggleable === false) {\n        breakpoint = 'navbar-expand'\n      }\n\n      return breakpoint\n    }\n  },\n  render(h) {\n    const { tag, type, variant, fixed } = this\n\n    return h(\n      tag,\n      {\n        staticClass: 'navbar',\n        class: [\n          {\n            'd-print': this.print,\n            'sticky-top': this.sticky,\n            [`navbar-${type}`]: type,\n            [`bg-${variant}`]: variant,\n            [`fixed-${fixed}`]: fixed\n          },\n          this.breakpointClass\n        ],\n        attrs: {\n          role: isTag(tag, 'nav') ? null : 'navigation'\n        }\n      },\n      [this.normalizeSlot()]\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_NAVBAR_NAV } from '../../constants/components'\nimport { pick } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { props as BNavProps } from '../nav/nav'\n\n// --- Helper methods ---\n\nconst computeJustifyContent = value => {\n  value = value === 'left' ? 'start' : value === 'right' ? 'end' : value\n  return `justify-content-${value}`\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  pick(BNavProps, ['tag', 'fill', 'justified', 'align', 'small']),\n  NAME_NAVBAR_NAV\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavbarNav = /*#__PURE__*/ Vue.extend({\n  name: NAME_NAVBAR_NAV,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const { align } = props\n\n    return h(\n      props.tag,\n      mergeData(data, {\n        staticClass: 'navbar-nav',\n        class: {\n          'nav-fill': props.fill,\n          'nav-justified': props.justified,\n          [computeJustifyContent(align)]: align,\n          small: props.small\n        }\n      }),\n      children\n    )\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_NAVBAR_BRAND } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\nlinkProps.href.default = undefined\nlinkProps.to.default = undefined\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...linkProps,\n    tag: makeProp(PROP_TYPE_STRING, 'div')\n  }),\n  NAME_NAVBAR_BRAND\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavbarBrand = /*#__PURE__*/ Vue.extend({\n  name: NAME_NAVBAR_BRAND,\n  functional: true,\n  props,\n  render(h, { props, data, children }) {\n    const isLink = props.to || props.href\n    const tag = isLink ? BLink : props.tag\n\n    return h(\n      tag,\n      mergeData(data, {\n        staticClass: 'navbar-brand',\n        props: isLink ? pluckProps(linkProps, props) : {}\n      }),\n      children\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_COLLAPSE, NAME_NAVBAR_TOGGLE } from '../../constants/components'\nimport { EVENT_NAME_CLICK } from '../../constants/events'\nimport { PROP_TYPE_ARRAY_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { getRootEventName } from '../../utils/events'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { VBToggle } from '../../directives/toggle/toggle'\n\n// --- Constants ---\n\nconst CLASS_NAME = 'navbar-toggler'\n\nconst ROOT_EVENT_NAME_STATE = getRootEventName(NAME_COLLAPSE, 'state')\nconst ROOT_EVENT_NAME_SYNC_STATE = getRootEventName(NAME_COLLAPSE, 'sync-state')\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    label: makeProp(PROP_TYPE_STRING, 'Toggle navigation'),\n    target: makeProp(PROP_TYPE_ARRAY_STRING, undefined, true) // Required\n  },\n  NAME_NAVBAR_TOGGLE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavbarToggle = /*#__PURE__*/ Vue.extend({\n  name: NAME_NAVBAR_TOGGLE,\n  directives: { VBToggle },\n  mixins: [listenOnRootMixin, normalizeSlotMixin],\n  props,\n  data() {\n    return {\n      toggleState: false\n    }\n  },\n  created() {\n    this.listenOnRoot(ROOT_EVENT_NAME_STATE, this.handleStateEvt)\n    this.listenOnRoot(ROOT_EVENT_NAME_SYNC_STATE, this.handleStateEvt)\n  },\n  methods: {\n    onClick(event) {\n      if (!this.disabled) {\n        // Emit courtesy `click` event\n        this.$emit(EVENT_NAME_CLICK, event)\n      }\n    },\n    handleStateEvt(id, state) {\n      // We listen for state events so that we can pass the\n      // boolean expanded state to the default scoped slot\n      if (id === this.target) {\n        this.toggleState = state\n      }\n    }\n  },\n  render(h) {\n    const { disabled } = this\n\n    return h(\n      'button',\n      {\n        staticClass: CLASS_NAME,\n        class: { disabled },\n        directives: [{ name: 'VBToggle', value: this.target }],\n        attrs: {\n          type: 'button',\n          disabled,\n          'aria-label': this.label\n        },\n        on: { click: this.onClick }\n      },\n      [\n        this.normalizeSlot(SLOT_NAME_DEFAULT, { expanded: this.toggleState }) ||\n          h('span', { staticClass: `${CLASS_NAME}-icon` })\n      ]\n    )\n  }\n})\n","import { BNavbar } from './navbar'\nimport { BNavbarNav } from './navbar-nav'\nimport { BNavbarBrand } from './navbar-brand'\nimport { BNavbarToggle } from './navbar-toggle'\nimport { NavPlugin } from '../nav'\nimport { CollapsePlugin } from '../collapse'\nimport { DropdownPlugin } from '../dropdown'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst NavbarPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BNavbar,\n    BNavbarNav,\n    BNavbarBrand,\n    BNavbarToggle,\n    BNavToggle: BNavbarToggle\n  },\n  plugins: {\n    NavPlugin,\n    CollapsePlugin,\n    DropdownPlugin\n  }\n})\n\nexport { NavbarPlugin, BNavbar, BNavbarNav, BNavbarBrand, BNavbarToggle }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_SPINNER } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_LABEL } from '../../constants/slots'\nimport { normalizeSlot } from '../../utils/normalize-slot'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    label: makeProp(PROP_TYPE_STRING),\n    role: makeProp(PROP_TYPE_STRING, 'status'),\n    small: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'span'),\n    type: makeProp(PROP_TYPE_STRING, 'border'),\n    variant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_SPINNER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BSpinner = /*#__PURE__*/ Vue.extend({\n  name: NAME_SPINNER,\n  functional: true,\n  props,\n  render(h, { props, data, slots, scopedSlots }) {\n    const $slots = slots()\n    const $scopedSlots = scopedSlots || {}\n\n    let $label = normalizeSlot(SLOT_NAME_LABEL, {}, $scopedSlots, $slots) || props.label\n    if ($label) {\n      $label = h('span', { staticClass: 'sr-only' }, $label)\n    }\n\n    return h(\n      props.tag,\n      mergeData(data, {\n        attrs: {\n          role: $label ? props.role || 'status' : null,\n          'aria-hidden': $label ? null : 'true'\n        },\n        class: {\n          [`spinner-${props.type}`]: props.type,\n          [`spinner-${props.type}-sm`]: props.small,\n          [`text-${props.variant}`]: props.variant\n        }\n      }),\n      [$label || h()]\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_OVERLAY } from '../../constants/components'\nimport { EVENT_NAME_CLICK, EVENT_NAME_HIDDEN, EVENT_NAME_SHOWN } from '../../constants/events'\nimport {\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_STRING,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_OVERLAY } from '../../constants/slots'\nimport { toFloat } from '../../utils/number'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BSpinner } from '../spinner/spinner'\nimport { BVTransition } from '../transition/bv-transition'\n\n// --- Constants ---\n\nconst POSITION_COVER = { top: 0, left: 0, bottom: 0, right: 0 }\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    // Alternative to variant, allowing a specific\n    // CSS color to be applied to the overlay\n    bgColor: makeProp(PROP_TYPE_STRING),\n    blur: makeProp(PROP_TYPE_STRING, '2px'),\n    fixed: makeProp(PROP_TYPE_BOOLEAN, false),\n    noCenter: makeProp(PROP_TYPE_BOOLEAN, false),\n    noFade: makeProp(PROP_TYPE_BOOLEAN, false),\n    // If `true, does not render the default slot\n    // and switches to absolute positioning\n    noWrap: makeProp(PROP_TYPE_BOOLEAN, false),\n    opacity: makeProp(PROP_TYPE_NUMBER_STRING, 0.85, value => {\n      const number = toFloat(value, 0)\n      return number >= 0 && number <= 1\n    }),\n    overlayTag: makeProp(PROP_TYPE_STRING, 'div'),\n    rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n    show: makeProp(PROP_TYPE_BOOLEAN, false),\n    spinnerSmall: makeProp(PROP_TYPE_BOOLEAN, false),\n    spinnerType: makeProp(PROP_TYPE_STRING, 'border'),\n    spinnerVariant: makeProp(PROP_TYPE_STRING),\n    variant: makeProp(PROP_TYPE_STRING, 'light'),\n    wrapTag: makeProp(PROP_TYPE_STRING, 'div'),\n    zIndex: makeProp(PROP_TYPE_NUMBER_STRING, 10)\n  },\n  NAME_OVERLAY\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BOverlay = /*#__PURE__*/ Vue.extend({\n  name: NAME_OVERLAY,\n  mixins: [normalizeSlotMixin],\n  props,\n  computed: {\n    computedRounded() {\n      const { rounded } = this\n      return rounded === true || rounded === '' ? 'rounded' : !rounded ? '' : `rounded-${rounded}`\n    },\n    computedVariant() {\n      const { variant } = this\n      return variant && !this.bgColor ? `bg-${variant}` : ''\n    },\n    slotScope() {\n      return {\n        spinnerType: this.spinnerType || null,\n        spinnerVariant: this.spinnerVariant || null,\n        spinnerSmall: this.spinnerSmall\n      }\n    }\n  },\n  methods: {\n    defaultOverlayFn({ spinnerType, spinnerVariant, spinnerSmall }) {\n      return this.$createElement(BSpinner, {\n        props: {\n          type: spinnerType,\n          variant: spinnerVariant,\n          small: spinnerSmall\n        }\n      })\n    }\n  },\n  render(h) {\n    const { show, fixed, noFade, noWrap, slotScope } = this\n\n    let $overlay = h()\n    if (show) {\n      const $background = h('div', {\n        staticClass: 'position-absolute',\n        class: [this.computedVariant, this.computedRounded],\n        style: {\n          ...POSITION_COVER,\n          opacity: this.opacity,\n          backgroundColor: this.bgColor || null,\n          backdropFilter: this.blur ? `blur(${this.blur})` : null\n        }\n      })\n\n      const $content = h(\n        'div',\n        {\n          staticClass: 'position-absolute',\n          style: this.noCenter\n            ? /* istanbul ignore next */ { ...POSITION_COVER }\n            : { top: '50%', left: '50%', transform: 'translateX(-50%) translateY(-50%)' }\n        },\n        [this.normalizeSlot(SLOT_NAME_OVERLAY, slotScope) || this.defaultOverlayFn(slotScope)]\n      )\n\n      $overlay = h(\n        this.overlayTag,\n        {\n          staticClass: 'b-overlay',\n          class: {\n            'position-absolute': !noWrap || (noWrap && !fixed),\n            'position-fixed': noWrap && fixed\n          },\n          style: {\n            ...POSITION_COVER,\n            zIndex: this.zIndex || 10\n          },\n          on: { click: event => this.$emit(EVENT_NAME_CLICK, event) },\n          key: 'overlay'\n        },\n        [$background, $content]\n      )\n    }\n\n    // Wrap in a fade transition\n    $overlay = h(\n      BVTransition,\n      {\n        props: {\n          noFade,\n          appear: true\n        },\n        on: {\n          'after-enter': () => this.$emit(EVENT_NAME_SHOWN),\n          'after-leave': () => this.$emit(EVENT_NAME_HIDDEN)\n        }\n      },\n      [$overlay]\n    )\n\n    if (noWrap) {\n      return $overlay\n    }\n\n    return h(\n      this.wrapTag,\n      {\n        staticClass: 'b-overlay-wrap position-relative',\n        attrs: { 'aria-busy': show ? 'true' : null }\n      },\n      noWrap ? [$overlay] : [this.normalizeSlot(), $overlay]\n    )\n  }\n})\n","import { BOverlay } from './overlay'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst OverlayPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BOverlay }\n})\n\nexport { OverlayPlugin, BOverlay }\n","import { Vue } from '../vue'\nimport { NAME_PAGINATION } from '../constants/components'\nimport { CODE_DOWN, CODE_LEFT, CODE_RIGHT, CODE_SPACE, CODE_UP } from '../constants/key-codes'\nimport {\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_NUMBER_STRING,\n  PROP_TYPE_FUNCTION_STRING,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../constants/props'\nimport {\n  SLOT_NAME_ELLIPSIS_TEXT,\n  SLOT_NAME_FIRST_TEXT,\n  SLOT_NAME_LAST_TEXT,\n  SLOT_NAME_NEXT_TEXT,\n  SLOT_NAME_PAGE,\n  SLOT_NAME_PREV_TEXT\n} from '../constants/slots'\nimport { createArray } from '../utils/array'\nimport {\n  attemptFocus,\n  getActiveElement,\n  getAttr,\n  isDisabled,\n  isVisible,\n  selectAll\n} from '../utils/dom'\nimport { stopEvent } from '../utils/events'\nimport { isFunction, isNull } from '../utils/inspect'\nimport { mathFloor, mathMax, mathMin } from '../utils/math'\nimport { makeModelMixin } from '../utils/model'\nimport { toInteger } from '../utils/number'\nimport { sortKeys } from '../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../utils/props'\nimport { toString } from '../utils/string'\nimport { warn } from '../utils/warn'\nimport { normalizeSlotMixin } from '../mixins/normalize-slot'\nimport { BLink } from '../components/link/link'\n\n// Common props, computed, data, render function, and methods\n// for `<b-pagination>` and `<b-pagination-nav>`\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n  type: PROP_TYPE_BOOLEAN_NUMBER_STRING,\n  defaultValue: null,\n  /* istanbul ignore next */\n  validator(value) {\n    if (!isNull(value) && toInteger(value, 0) < 1) {\n      warn('\"v-model\" value must be a number greater than \"0\"', NAME_PAGINATION)\n      return false\n    }\n    return true\n  }\n})\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }\n\n// Threshold of limit size when we start/stop showing ellipsis\nconst ELLIPSIS_THRESHOLD = 3\n\n// Default # of buttons limit\nconst DEFAULT_LIMIT = 5\n\n// --- Helper methods ---\n\n// Make an array of N to N+X\nconst makePageArray = (startNumber, numberOfPages) =>\n  createArray(numberOfPages, (_, i) => ({ number: startNumber + i, classes: null }))\n\n// Sanitize the provided limit value (converting to a number)\nconst sanitizeLimit = value => {\n  const limit = toInteger(value) || 1\n  return limit < 1 ? DEFAULT_LIMIT : limit\n}\n\n// Sanitize the provided current page number (converting to a number)\nconst sanitizeCurrentPage = (val, numberOfPages) => {\n  const page = toInteger(val) || 1\n  return page > numberOfPages ? numberOfPages : page < 1 ? 1 : page\n}\n\n// Links don't normally respond to SPACE, so we add that\n// functionality via this handler\nconst onSpaceKey = event => {\n  if (event.keyCode === CODE_SPACE) {\n    // Stop page from scrolling\n    stopEvent(event, { immediatePropagation: true })\n    // Trigger the click event on the link\n    event.currentTarget.click()\n    return false\n  }\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...modelProps,\n    align: makeProp(PROP_TYPE_STRING, 'left'),\n    ariaLabel: makeProp(PROP_TYPE_STRING, 'Pagination'),\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    ellipsisClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    ellipsisText: makeProp(PROP_TYPE_STRING, '\\u2026'), // '…'\n    firstClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    firstNumber: makeProp(PROP_TYPE_BOOLEAN, false),\n    firstText: makeProp(PROP_TYPE_STRING, '\\u00AB'), // '«'\n    hideEllipsis: makeProp(PROP_TYPE_BOOLEAN, false),\n    hideGotoEndButtons: makeProp(PROP_TYPE_BOOLEAN, false),\n    labelFirstPage: makeProp(PROP_TYPE_STRING, 'Go to first page'),\n    labelLastPage: makeProp(PROP_TYPE_STRING, 'Go to last page'),\n    labelNextPage: makeProp(PROP_TYPE_STRING, 'Go to next page'),\n    labelPage: makeProp(PROP_TYPE_FUNCTION_STRING, 'Go to page'),\n    labelPrevPage: makeProp(PROP_TYPE_STRING, 'Go to previous page'),\n    lastClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    lastNumber: makeProp(PROP_TYPE_BOOLEAN, false),\n    lastText: makeProp(PROP_TYPE_STRING, '\\u00BB'), // '»'\n    limit: makeProp(\n      PROP_TYPE_NUMBER_STRING,\n      DEFAULT_LIMIT,\n      /* istanbul ignore next */ value => {\n        if (toInteger(value, 0) < 1) {\n          warn('Prop \"limit\" must be a number greater than \"0\"', NAME_PAGINATION)\n          return false\n        }\n        return true\n      }\n    ),\n    nextClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    nextText: makeProp(PROP_TYPE_STRING, '\\u203A'), // '›'\n    pageClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    pills: makeProp(PROP_TYPE_BOOLEAN, false),\n    prevClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    prevText: makeProp(PROP_TYPE_STRING, '\\u2039'), // '‹'\n    size: makeProp(PROP_TYPE_STRING)\n  }),\n  'pagination'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const paginationMixin = Vue.extend({\n  mixins: [modelMixin, normalizeSlotMixin],\n  props,\n  data() {\n    // `-1` signifies no page initially selected\n    let currentPage = toInteger(this[MODEL_PROP_NAME], 0)\n    currentPage = currentPage > 0 ? currentPage : -1\n\n    return {\n      currentPage,\n      localNumberOfPages: 1,\n      localLimit: DEFAULT_LIMIT\n    }\n  },\n  computed: {\n    btnSize() {\n      const { size } = this\n      return size ? `pagination-${size}` : ''\n    },\n    alignment() {\n      const { align } = this\n      if (align === 'center') {\n        return 'justify-content-center'\n      } else if (align === 'end' || align === 'right') {\n        return 'justify-content-end'\n      } else if (align === 'fill') {\n        // The page-items will also have 'flex-fill' added\n        // We add text centering to make the button appearance better in fill mode\n        return 'text-center'\n      }\n      return ''\n    },\n    styleClass() {\n      return this.pills ? 'b-pagination-pills' : ''\n    },\n    computedCurrentPage() {\n      return sanitizeCurrentPage(this.currentPage, this.localNumberOfPages)\n    },\n    paginationParams() {\n      // Determine if we should show the the ellipsis\n      const {\n        localLimit: limit,\n        localNumberOfPages: numberOfPages,\n        computedCurrentPage: currentPage,\n        hideEllipsis,\n        firstNumber,\n        lastNumber\n      } = this\n      let showFirstDots = false\n      let showLastDots = false\n      let numberOfLinks = limit\n      let startNumber = 1\n\n      if (numberOfPages <= limit) {\n        // Special case: Less pages available than the limit of displayed pages\n        numberOfLinks = numberOfPages\n      } else if (currentPage < limit - 1 && limit > ELLIPSIS_THRESHOLD) {\n        if (!hideEllipsis || lastNumber) {\n          showLastDots = true\n          numberOfLinks = limit - (firstNumber ? 0 : 1)\n        }\n        numberOfLinks = mathMin(numberOfLinks, limit)\n      } else if (numberOfPages - currentPage + 2 < limit && limit > ELLIPSIS_THRESHOLD) {\n        if (!hideEllipsis || firstNumber) {\n          showFirstDots = true\n          numberOfLinks = limit - (lastNumber ? 0 : 1)\n        }\n        startNumber = numberOfPages - numberOfLinks + 1\n      } else {\n        // We are somewhere in the middle of the page list\n        if (limit > ELLIPSIS_THRESHOLD) {\n          numberOfLinks = limit - (hideEllipsis ? 0 : 2)\n          showFirstDots = !!(!hideEllipsis || firstNumber)\n          showLastDots = !!(!hideEllipsis || lastNumber)\n        }\n        startNumber = currentPage - mathFloor(numberOfLinks / 2)\n      }\n      // Sanity checks\n      /* istanbul ignore if */\n      if (startNumber < 1) {\n        startNumber = 1\n        showFirstDots = false\n      } else if (startNumber > numberOfPages - numberOfLinks) {\n        startNumber = numberOfPages - numberOfLinks + 1\n        showLastDots = false\n      }\n      if (showFirstDots && firstNumber && startNumber < 4) {\n        numberOfLinks = numberOfLinks + 2\n        startNumber = 1\n        showFirstDots = false\n      }\n      const lastPageNumber = startNumber + numberOfLinks - 1\n      if (showLastDots && lastNumber && lastPageNumber > numberOfPages - 3) {\n        numberOfLinks = numberOfLinks + (lastPageNumber === numberOfPages - 2 ? 2 : 3)\n        showLastDots = false\n      }\n      // Special handling for lower limits (where ellipsis are never shown)\n      if (limit <= ELLIPSIS_THRESHOLD) {\n        if (firstNumber && startNumber === 1) {\n          numberOfLinks = mathMin(numberOfLinks + 1, numberOfPages, limit + 1)\n        } else if (lastNumber && numberOfPages === startNumber + numberOfLinks - 1) {\n          startNumber = mathMax(startNumber - 1, 1)\n          numberOfLinks = mathMin(numberOfPages - startNumber + 1, numberOfPages, limit + 1)\n        }\n      }\n      numberOfLinks = mathMin(numberOfLinks, numberOfPages - startNumber + 1)\n      return { showFirstDots, showLastDots, numberOfLinks, startNumber }\n    },\n    pageList() {\n      // Generates the pageList array\n      const { numberOfLinks, startNumber } = this.paginationParams\n      const currentPage = this.computedCurrentPage\n      // Generate list of page numbers\n      const pages = makePageArray(startNumber, numberOfLinks)\n      // We limit to a total of 3 page buttons on XS screens\n      // So add classes to page links to hide them for XS breakpoint\n      // Note: Ellipsis will also be hidden on XS screens\n      // TODO: Make this visual limit configurable based on breakpoint(s)\n      if (pages.length > 3) {\n        const idx = currentPage - startNumber\n        // THe following is a bootstrap-vue custom utility class\n        const classes = 'bv-d-xs-down-none'\n        if (idx === 0) {\n          // Keep leftmost 3 buttons visible when current page is first page\n          for (let i = 3; i < pages.length; i++) {\n            pages[i].classes = classes\n          }\n        } else if (idx === pages.length - 1) {\n          // Keep rightmost 3 buttons visible when current page is last page\n          for (let i = 0; i < pages.length - 3; i++) {\n            pages[i].classes = classes\n          }\n        } else {\n          // Hide all except current page, current page - 1 and current page + 1\n          for (let i = 0; i < idx - 1; i++) {\n            // hide some left button(s)\n            pages[i].classes = classes\n          }\n          for (let i = pages.length - 1; i > idx + 1; i--) {\n            // hide some right button(s)\n            pages[i].classes = classes\n          }\n        }\n      }\n      return pages\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue, oldValue) {\n      if (newValue !== oldValue) {\n        this.currentPage = sanitizeCurrentPage(newValue, this.localNumberOfPages)\n      }\n    },\n    currentPage(newValue, oldValue) {\n      if (newValue !== oldValue) {\n        // Emit `null` if no page selected\n        this.$emit(MODEL_EVENT_NAME, newValue > 0 ? newValue : null)\n      }\n    },\n    limit(newValue, oldValue) {\n      if (newValue !== oldValue) {\n        this.localLimit = sanitizeLimit(newValue)\n      }\n    }\n  },\n  created() {\n    // Set our default values in data\n    this.localLimit = sanitizeLimit(this.limit)\n    this.$nextTick(() => {\n      // Sanity check\n      this.currentPage =\n        this.currentPage > this.localNumberOfPages ? this.localNumberOfPages : this.currentPage\n    })\n  },\n  methods: {\n    handleKeyNav(event) {\n      const { keyCode, shiftKey } = event\n      /* istanbul ignore if */\n      if (this.isNav) {\n        // We disable left/right keyboard navigation in `<b-pagination-nav>`\n        return\n      }\n      if (keyCode === CODE_LEFT || keyCode === CODE_UP) {\n        stopEvent(event, { propagation: false })\n        shiftKey ? this.focusFirst() : this.focusPrev()\n      } else if (keyCode === CODE_RIGHT || keyCode === CODE_DOWN) {\n        stopEvent(event, { propagation: false })\n        shiftKey ? this.focusLast() : this.focusNext()\n      }\n    },\n    getButtons() {\n      // Return only buttons that are visible\n      return selectAll('button.page-link, a.page-link', this.$el).filter(btn => isVisible(btn))\n    },\n    focusCurrent() {\n      // We do this in `$nextTick()` to ensure buttons have finished rendering\n      this.$nextTick(() => {\n        const btn = this.getButtons().find(\n          el => toInteger(getAttr(el, 'aria-posinset'), 0) === this.computedCurrentPage\n        )\n        if (!attemptFocus(btn)) {\n          // Fallback if current page is not in button list\n          this.focusFirst()\n        }\n      })\n    },\n    focusFirst() {\n      // We do this in `$nextTick()` to ensure buttons have finished rendering\n      this.$nextTick(() => {\n        const btn = this.getButtons().find(el => !isDisabled(el))\n        attemptFocus(btn)\n      })\n    },\n    focusLast() {\n      // We do this in `$nextTick()` to ensure buttons have finished rendering\n      this.$nextTick(() => {\n        const btn = this.getButtons()\n          .reverse()\n          .find(el => !isDisabled(el))\n        attemptFocus(btn)\n      })\n    },\n    focusPrev() {\n      // We do this in `$nextTick()` to ensure buttons have finished rendering\n      this.$nextTick(() => {\n        const buttons = this.getButtons()\n        const index = buttons.indexOf(getActiveElement())\n        if (index > 0 && !isDisabled(buttons[index - 1])) {\n          attemptFocus(buttons[index - 1])\n        }\n      })\n    },\n    focusNext() {\n      // We do this in `$nextTick()` to ensure buttons have finished rendering\n      this.$nextTick(() => {\n        const buttons = this.getButtons()\n        const index = buttons.indexOf(getActiveElement())\n        if (index < buttons.length - 1 && !isDisabled(buttons[index + 1])) {\n          attemptFocus(buttons[index + 1])\n        }\n      })\n    }\n  },\n  render(h) {\n    const {\n      disabled,\n      labelPage,\n      ariaLabel,\n      isNav,\n      localNumberOfPages: numberOfPages,\n      computedCurrentPage: currentPage\n    } = this\n    const pageNumbers = this.pageList.map(p => p.number)\n    const { showFirstDots, showLastDots } = this.paginationParams\n    const fill = this.align === 'fill'\n    const $buttons = []\n\n    // Helper function and flag\n    const isActivePage = pageNumber => pageNumber === currentPage\n    const noCurrentPage = this.currentPage < 1\n\n    // Factory function for prev/next/first/last buttons\n    const makeEndBtn = (linkTo, ariaLabel, btnSlot, btnText, btnClass, pageTest, key) => {\n      const isDisabled =\n        disabled || isActivePage(pageTest) || noCurrentPage || linkTo < 1 || linkTo > numberOfPages\n      const pageNumber = linkTo < 1 ? 1 : linkTo > numberOfPages ? numberOfPages : linkTo\n      const scope = { disabled: isDisabled, page: pageNumber, index: pageNumber - 1 }\n      const $btnContent = this.normalizeSlot(btnSlot, scope) || toString(btnText) || h()\n      const $inner = h(\n        isDisabled ? 'span' : isNav ? BLink : 'button',\n        {\n          staticClass: 'page-link',\n          class: { 'flex-grow-1': !isNav && !isDisabled && fill },\n          props: isDisabled || !isNav ? {} : this.linkProps(linkTo),\n          attrs: {\n            role: isNav ? null : 'menuitem',\n            type: isNav || isDisabled ? null : 'button',\n            tabindex: isDisabled || isNav ? null : '-1',\n            'aria-label': ariaLabel,\n            'aria-controls': this.ariaControls || null,\n            'aria-disabled': isDisabled ? 'true' : null\n          },\n          on: isDisabled\n            ? {}\n            : {\n                '!click': event => {\n                  this.onClick(event, linkTo)\n                },\n                keydown: onSpaceKey\n              }\n        },\n        [$btnContent]\n      )\n      return h(\n        'li',\n        {\n          key,\n          staticClass: 'page-item',\n          class: [\n            {\n              disabled: isDisabled,\n              'flex-fill': fill,\n              'd-flex': fill && !isNav && !isDisabled\n            },\n            btnClass\n          ],\n          attrs: {\n            role: isNav ? null : 'presentation',\n            'aria-hidden': isDisabled ? 'true' : null\n          }\n        },\n        [$inner]\n      )\n    }\n\n    // Ellipsis factory\n    const makeEllipsis = isLast => {\n      return h(\n        'li',\n        {\n          staticClass: 'page-item',\n          class: ['disabled', 'bv-d-xs-down-none', fill ? 'flex-fill' : '', this.ellipsisClass],\n          attrs: { role: 'separator' },\n          key: `ellipsis-${isLast ? 'last' : 'first'}`\n        },\n        [\n          h('span', { staticClass: 'page-link' }, [\n            this.normalizeSlot(SLOT_NAME_ELLIPSIS_TEXT) || toString(this.ellipsisText) || h()\n          ])\n        ]\n      )\n    }\n\n    // Page button factory\n    const makePageButton = (page, idx) => {\n      const { number: pageNumber } = page\n      const active = isActivePage(pageNumber) && !noCurrentPage\n      // Active page will have tabindex of 0, or if no current page and first page button\n      const tabIndex = disabled ? null : active || (noCurrentPage && idx === 0) ? '0' : '-1'\n\n      const attrs = {\n        role: isNav ? null : 'menuitemradio',\n        type: isNav || disabled ? null : 'button',\n        'aria-disabled': disabled ? 'true' : null,\n        'aria-controls': this.ariaControls || null,\n        'aria-label': hasPropFunction(labelPage)\n          ? /* istanbul ignore next */ labelPage(pageNumber)\n          : `${isFunction(labelPage) ? labelPage() : labelPage} ${pageNumber}`,\n        'aria-checked': isNav ? null : active ? 'true' : 'false',\n        'aria-current': isNav && active ? 'page' : null,\n        'aria-posinset': isNav ? null : pageNumber,\n        'aria-setsize': isNav ? null : numberOfPages,\n        // ARIA \"roving tabindex\" method (except in `isNav` mode)\n        tabindex: isNav ? null : tabIndex\n      }\n      const btnContent = toString(this.makePage(pageNumber))\n      const scope = {\n        page: pageNumber,\n        index: pageNumber - 1,\n        content: btnContent,\n        active,\n        disabled\n      }\n\n      const $inner = h(\n        disabled ? 'span' : isNav ? BLink : 'button',\n        {\n          props: disabled || !isNav ? {} : this.linkProps(pageNumber),\n          staticClass: 'page-link',\n          class: { 'flex-grow-1': !isNav && !disabled && fill },\n          attrs,\n          on: disabled\n            ? {}\n            : {\n                '!click': event => {\n                  this.onClick(event, pageNumber)\n                },\n                keydown: onSpaceKey\n              }\n        },\n        [this.normalizeSlot(SLOT_NAME_PAGE, scope) || btnContent]\n      )\n\n      return h(\n        'li',\n        {\n          staticClass: 'page-item',\n          class: [\n            {\n              disabled,\n              active,\n              'flex-fill': fill,\n              'd-flex': fill && !isNav && !disabled\n            },\n            page.classes,\n            this.pageClass\n          ],\n          attrs: { role: isNav ? null : 'presentation' },\n          key: `page-${pageNumber}`\n        },\n        [$inner]\n      )\n    }\n\n    // Goto first page button\n    // Don't render button when `hideGotoEndButtons` or `firstNumber` is set\n    let $firstPageBtn = h()\n    if (!this.firstNumber && !this.hideGotoEndButtons) {\n      $firstPageBtn = makeEndBtn(\n        1,\n        this.labelFirstPage,\n        SLOT_NAME_FIRST_TEXT,\n        this.firstText,\n        this.firstClass,\n        1,\n        'pagination-goto-first'\n      )\n    }\n    $buttons.push($firstPageBtn)\n\n    // Goto previous page button\n    $buttons.push(\n      makeEndBtn(\n        currentPage - 1,\n        this.labelPrevPage,\n        SLOT_NAME_PREV_TEXT,\n        this.prevText,\n        this.prevClass,\n        1,\n        'pagination-goto-prev'\n      )\n    )\n\n    // Show first (1) button?\n    $buttons.push(this.firstNumber && pageNumbers[0] !== 1 ? makePageButton({ number: 1 }, 0) : h())\n\n    // First ellipsis\n    $buttons.push(showFirstDots ? makeEllipsis(false) : h())\n\n    // Individual page links\n    this.pageList.forEach((page, idx) => {\n      const offset = showFirstDots && this.firstNumber && pageNumbers[0] !== 1 ? 1 : 0\n      $buttons.push(makePageButton(page, idx + offset))\n    })\n\n    // Last ellipsis\n    $buttons.push(showLastDots ? makeEllipsis(true) : h())\n\n    // Show last page button?\n    $buttons.push(\n      this.lastNumber && pageNumbers[pageNumbers.length - 1] !== numberOfPages\n        ? makePageButton({ number: numberOfPages }, -1)\n        : h()\n    )\n\n    // Goto next page button\n    $buttons.push(\n      makeEndBtn(\n        currentPage + 1,\n        this.labelNextPage,\n        SLOT_NAME_NEXT_TEXT,\n        this.nextText,\n        this.nextClass,\n        numberOfPages,\n        'pagination-goto-next'\n      )\n    )\n\n    // Goto last page button\n    // Don't render button when `hideGotoEndButtons` or `lastNumber` is set\n    let $lastPageBtn = h()\n    if (!this.lastNumber && !this.hideGotoEndButtons) {\n      $lastPageBtn = makeEndBtn(\n        numberOfPages,\n        this.labelLastPage,\n        SLOT_NAME_LAST_TEXT,\n        this.lastText,\n        this.lastClass,\n        numberOfPages,\n        'pagination-goto-last'\n      )\n    }\n    $buttons.push($lastPageBtn)\n\n    // Assemble the pagination buttons\n    const $pagination = h(\n      'ul',\n      {\n        staticClass: 'pagination',\n        class: ['b-pagination', this.btnSize, this.alignment, this.styleClass],\n        attrs: {\n          role: isNav ? null : 'menubar',\n          'aria-disabled': disabled ? 'true' : 'false',\n          'aria-label': isNav ? null : ariaLabel || null\n        },\n        // We disable keyboard left/right nav when `<b-pagination-nav>`\n        on: isNav ? {} : { keydown: this.handleKeyNav },\n        ref: 'ul'\n      },\n      $buttons\n    )\n\n    // If we are `<b-pagination-nav>`, wrap in `<nav>` wrapper\n    if (isNav) {\n      return h(\n        'nav',\n        {\n          attrs: {\n            'aria-disabled': disabled ? 'true' : null,\n            'aria-hidden': disabled ? 'true' : 'false',\n            'aria-label': isNav ? ariaLabel || null : null\n          }\n        },\n        [$pagination]\n      )\n    }\n\n    return $pagination\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_PAGINATION } from '../../constants/components'\nimport { EVENT_NAME_CHANGE, EVENT_NAME_PAGE_CLICK } from '../../constants/events'\nimport { PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { BvEvent } from '../../utils/bv-event.class'\nimport { attemptFocus, isVisible } from '../../utils/dom'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { mathCeil, mathMax } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { MODEL_PROP_NAME, paginationMixin, props as paginationProps } from '../../mixins/pagination'\n\n// --- Constants ---\n\nconst DEFAULT_PER_PAGE = 20\nconst DEFAULT_TOTAL_ROWS = 0\n\n// --- Helper methods ---\n\n// Sanitize the provided per page number (converting to a number)\nconst sanitizePerPage = value => mathMax(toInteger(value) || DEFAULT_PER_PAGE, 1)\n\n// Sanitize the provided total rows number (converting to a number)\nconst sanitizeTotalRows = value => mathMax(toInteger(value) || DEFAULT_TOTAL_ROWS, 0)\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...paginationProps,\n    ariaControls: makeProp(PROP_TYPE_STRING),\n    perPage: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_PER_PAGE),\n    totalRows: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_TOTAL_ROWS)\n  }),\n  NAME_PAGINATION\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BPagination = /*#__PURE__*/ Vue.extend({\n  name: NAME_PAGINATION,\n  // The render function is brought in via the `paginationMixin`\n  mixins: [paginationMixin],\n  props,\n  computed: {\n    numberOfPages() {\n      const result = mathCeil(sanitizeTotalRows(this.totalRows) / sanitizePerPage(this.perPage))\n      return result < 1 ? 1 : result\n    },\n    pageSizeNumberOfPages() {\n      // Used for watching changes to `perPage` and `numberOfPages`\n      return {\n        perPage: sanitizePerPage(this.perPage),\n        totalRows: sanitizeTotalRows(this.totalRows),\n        numberOfPages: this.numberOfPages\n      }\n    }\n  },\n  watch: {\n    pageSizeNumberOfPages(newValue, oldValue) {\n      if (!isUndefinedOrNull(oldValue)) {\n        if (newValue.perPage !== oldValue.perPage && newValue.totalRows === oldValue.totalRows) {\n          // If the page size changes, reset to page 1\n          this.currentPage = 1\n        } else if (\n          newValue.numberOfPages !== oldValue.numberOfPages &&\n          this.currentPage > newValue.numberOfPages\n        ) {\n          // If `numberOfPages` changes and is less than\n          // the `currentPage` number, reset to page 1\n          this.currentPage = 1\n        }\n      }\n      this.localNumberOfPages = newValue.numberOfPages\n    }\n  },\n  created() {\n    // Set the initial page count\n    this.localNumberOfPages = this.numberOfPages\n    // Set the initial page value\n    const currentPage = toInteger(this[MODEL_PROP_NAME], 0)\n    if (currentPage > 0) {\n      this.currentPage = currentPage\n    } else {\n      this.$nextTick(() => {\n        // If this value parses to `NaN` or a value less than `1`\n        // trigger an initial emit of `null` if no page specified\n        this.currentPage = 0\n      })\n    }\n  },\n  mounted() {\n    // Set the initial page count\n    this.localNumberOfPages = this.numberOfPages\n  },\n  methods: {\n    // These methods are used by the render function\n    onClick(event, pageNumber) {\n      // Dont do anything if clicking the current active page\n      if (pageNumber === this.currentPage) {\n        return\n      }\n\n      const { target } = event\n\n      // Emit a user-cancelable `page-click` event\n      const clickEvt = new BvEvent(EVENT_NAME_PAGE_CLICK, {\n        cancelable: true,\n        vueTarget: this,\n        target\n      })\n      this.$emit(clickEvt.type, clickEvt, pageNumber)\n      if (clickEvt.defaultPrevented) {\n        return\n      }\n\n      // Update the `v-model`\n      this.currentPage = pageNumber\n      // Emit event triggered by user interaction\n      this.$emit(EVENT_NAME_CHANGE, this.currentPage)\n\n      // Keep the current button focused if possible\n      this.$nextTick(() => {\n        if (isVisible(target) && this.$el.contains(target)) {\n          attemptFocus(target)\n        } else {\n          this.focusCurrent()\n        }\n      })\n    },\n    makePage(pageNum) {\n      return pageNum\n    },\n    /* istanbul ignore next */\n    linkProps() {\n      // No props, since we render a plain button\n      return {}\n    }\n  }\n})\n","import { BPagination } from './pagination'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst PaginationPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BPagination }\n})\n\nexport { PaginationPlugin, BPagination }\n","import { Vue } from '../../vue'\nimport { NAME_PAGINATION_NAV } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport { EVENT_NAME_CHANGE, EVENT_NAME_PAGE_CLICK } from '../../constants/events'\nimport {\n  PROP_TYPE_ARRAY,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_FUNCTION,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { BvEvent } from '../../utils/bv-event.class'\nimport { attemptBlur, requestAF } from '../../utils/dom'\nimport { isArray, isUndefined, isObject } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { mathMax } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport { omit, sortKeys } from '../../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { computeHref, parseQuery } from '../../utils/router'\nimport { toString } from '../../utils/string'\nimport { warn } from '../../utils/warn'\nimport { paginationMixin, props as paginationProps } from '../../mixins/pagination'\nimport { props as BLinkProps } from '../link/link'\n\n// --- Helper methods ---\n\n// Sanitize the provided number of pages (converting to a number)\nexport const sanitizeNumberOfPages = value => mathMax(toInteger(value, 0), 1)\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\n\nconst props = makePropsConfigurable(\n  sortKeys({\n    ...paginationProps,\n    ...linkProps,\n    baseUrl: makeProp(PROP_TYPE_STRING, '/'),\n    linkGen: makeProp(PROP_TYPE_FUNCTION),\n    // Disable auto page number detection if `true`\n    noPageDetect: makeProp(PROP_TYPE_BOOLEAN, false),\n    numberOfPages: makeProp(\n      PROP_TYPE_NUMBER_STRING,\n      1,\n      /* istanbul ignore next */\n      value => {\n        const number = toInteger(value, 0)\n        if (number < 1) {\n          warn('Prop \"number-of-pages\" must be a number greater than \"0\"', NAME_PAGINATION_NAV)\n          return false\n        }\n        return true\n      }\n    ),\n    pageGen: makeProp(PROP_TYPE_FUNCTION),\n    // Optional array of page links\n    pages: makeProp(PROP_TYPE_ARRAY),\n    useRouter: makeProp(PROP_TYPE_BOOLEAN, false)\n  }),\n  NAME_PAGINATION_NAV\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BPaginationNav = /*#__PURE__*/ Vue.extend({\n  name: NAME_PAGINATION_NAV,\n  // The render function is brought in via the pagination mixin\n  mixins: [paginationMixin],\n  props,\n  computed: {\n    // Used by render function to trigger wrapping in '<nav>' element\n    isNav() {\n      return true\n    },\n    computedValue() {\n      // Returns the value prop as a number or `null` if undefined or < 1\n      const value = toInteger(this.value, 0)\n      return value < 1 ? null : value\n    }\n  },\n  watch: {\n    numberOfPages() {\n      this.$nextTick(() => {\n        this.setNumberOfPages()\n      })\n    },\n    pages() {\n      this.$nextTick(() => {\n        this.setNumberOfPages()\n      })\n    }\n  },\n  created() {\n    this.setNumberOfPages()\n  },\n  mounted() {\n    if (this.$router) {\n      // We only add the watcher if vue router is detected\n      this.$watch('$route', () => {\n        this.$nextTick(() => {\n          requestAF(() => {\n            this.guessCurrentPage()\n          })\n        })\n      })\n    }\n  },\n  methods: {\n    setNumberOfPages() {\n      if (isArray(this.pages) && this.pages.length > 0) {\n        this.localNumberOfPages = this.pages.length\n      } else {\n        this.localNumberOfPages = sanitizeNumberOfPages(this.numberOfPages)\n      }\n      this.$nextTick(() => {\n        this.guessCurrentPage()\n      })\n    },\n    onClick(event, pageNumber) {\n      // Dont do anything if clicking the current active page\n      if (pageNumber === this.currentPage) {\n        return\n      }\n\n      const target = event.currentTarget || event.target\n\n      // Emit a user-cancelable `page-click` event\n      const clickEvt = new BvEvent(EVENT_NAME_PAGE_CLICK, {\n        cancelable: true,\n        vueTarget: this,\n        target\n      })\n      this.$emit(clickEvt.type, clickEvt, pageNumber)\n      if (clickEvt.defaultPrevented) {\n        return\n      }\n\n      // Update the `v-model`\n      // Done in in requestAF() to allow browser to complete the\n      // native browser click handling of a link\n      requestAF(() => {\n        this.currentPage = pageNumber\n        this.$emit(EVENT_NAME_CHANGE, pageNumber)\n      })\n\n      // Emulate native link click page reloading behaviour by blurring the\n      // paginator and returning focus to the document\n      // Done in a `nextTick()` to ensure rendering complete\n      this.$nextTick(() => {\n        attemptBlur(target)\n      })\n    },\n    getPageInfo(pageNumber) {\n      if (\n        !isArray(this.pages) ||\n        this.pages.length === 0 ||\n        isUndefined(this.pages[pageNumber - 1])\n      ) {\n        const link = `${this.baseUrl}${pageNumber}`\n        return {\n          link: this.useRouter ? { path: link } : link,\n          text: toString(pageNumber)\n        }\n      }\n      const info = this.pages[pageNumber - 1]\n      if (isObject(info)) {\n        const link = info.link\n        return {\n          // Normalize link for router use\n          link: isObject(link) ? link : this.useRouter ? { path: link } : link,\n          // Make sure text has a value\n          text: toString(info.text || pageNumber)\n        }\n      } else {\n        return { link: toString(info), text: toString(pageNumber) }\n      }\n    },\n    makePage(pageNumber) {\n      const { pageGen } = this\n      const info = this.getPageInfo(pageNumber)\n      if (hasPropFunction(pageGen)) {\n        return pageGen(pageNumber, info)\n      }\n      return info.text\n    },\n    makeLink(pageNumber) {\n      const { linkGen } = this\n      const info = this.getPageInfo(pageNumber)\n      if (hasPropFunction(linkGen)) {\n        return linkGen(pageNumber, info)\n      }\n      return info.link\n    },\n    linkProps(pageNumber) {\n      const props = pluckProps(linkProps, this)\n      const link = this.makeLink(pageNumber)\n      if (this.useRouter || isObject(link)) {\n        props.to = link\n      } else {\n        props.href = link\n      }\n      return props\n    },\n    resolveLink(to = '') {\n      // Given a to (or href string), convert to normalized route-like structure\n      // Works only client side!\n      let link\n      try {\n        // Convert the `to` to a HREF via a temporary `a` tag\n        link = document.createElement('a')\n        link.href = computeHref({ to }, 'a', '/', '/')\n        // We need to add the anchor to the document to make sure the\n        // `pathname` is correctly detected in any browser (i.e. IE)\n        document.body.appendChild(link)\n        // Once href is assigned, the link will be normalized to the full URL bits\n        const { pathname, hash, search } = link\n        // Remove link from document\n        document.body.removeChild(link)\n        // Return the location in a route-like object\n        return { path: pathname, hash, query: parseQuery(search) }\n      } catch (e) {\n        /* istanbul ignore next */\n        try {\n          link && link.parentNode && link.parentNode.removeChild(link)\n        } catch {}\n        /* istanbul ignore next */\n        return {}\n      }\n    },\n    resolveRoute(to = '') {\n      // Given a to (or href string), convert to normalized route location structure\n      // Works only when router available!\n      try {\n        const route = this.$router.resolve(to, this.$route).route\n        return { path: route.path, hash: route.hash, query: route.query }\n      } catch (e) {\n        /* istanbul ignore next */\n        return {}\n      }\n    },\n    guessCurrentPage() {\n      const { $router, $route } = this\n      let guess = this.computedValue\n      // This section only occurs if we are client side, or server-side with `$router`\n      if (!this.noPageDetect && !guess && (IS_BROWSER || (!IS_BROWSER && $router))) {\n        // Current route (if router available)\n        const currentRoute =\n          $router && $route ? { path: $route.path, hash: $route.hash, query: $route.query } : {}\n        // Current page full HREF (if client side)\n        // Can't be done as a computed prop!\n        const loc = IS_BROWSER ? window.location || document.location : null\n        const currentLink = loc\n          ? { path: loc.pathname, hash: loc.hash, query: parseQuery(loc.search) }\n          : /* istanbul ignore next */ {}\n        // Loop through the possible pages looking for a match until found\n        for (let pageNumber = 1; !guess && pageNumber <= this.localNumberOfPages; pageNumber++) {\n          const to = this.makeLink(pageNumber)\n          if ($router && (isObject(to) || this.useRouter)) {\n            // Resolve the page via the `$router`\n            guess = looseEqual(this.resolveRoute(to), currentRoute) ? pageNumber : null\n          } else if (IS_BROWSER) {\n            // If no `$router` available (or `!this.useRouter` when `to` is a string)\n            // we compare using parsed URIs\n            guess = looseEqual(this.resolveLink(to), currentLink) ? pageNumber : null\n          } else {\n            // Probably SSR, but no `$router` so we can't guess,\n            // so lets break out of the loop early\n            /* istanbul ignore next */\n            guess = -1\n          }\n        }\n      }\n      // We set `currentPage` to `0` to trigger an `$emit('input', null)`\n      // As the default for `currentPage` is `-1` when no value is specified\n      // Valid page numbers are greater than `0`\n      this.currentPage = guess > 0 ? guess : 0\n    }\n  }\n})\n","import { BPaginationNav } from './pagination-nav'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst PaginationNavPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BPaginationNav }\n})\n\nexport { PaginationNavPlugin, BPaginationNav }\n","// Base on-demand component for tooltip / popover templates\n//\n// Currently:\n//   Responsible for positioning and transitioning the template\n//   Templates are only instantiated when shown, and destroyed when hidden\n//\n\nimport Popper from 'popper.js'\nimport { Vue } from '../../../vue'\nimport { NAME_POPPER } from '../../../constants/components'\nimport {\n  EVENT_NAME_HIDDEN,\n  EVENT_NAME_HIDE,\n  EVENT_NAME_SHOW,\n  EVENT_NAME_SHOWN,\n  HOOK_EVENT_NAME_DESTROYED\n} from '../../../constants/events'\nimport {\n  PROP_TYPE_ARRAY_STRING,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../../constants/props'\nimport { HTMLElement, SVGElement } from '../../../constants/safe-types'\nimport { getCS, requestAF, select } from '../../../utils/dom'\nimport { toFloat } from '../../../utils/number'\nimport { makeProp } from '../../../utils/props'\nimport { BVTransition } from '../../transition/bv-transition'\n\n// --- Constants ---\n\nconst AttachmentMap = {\n  AUTO: 'auto',\n  TOP: 'top',\n  RIGHT: 'right',\n  BOTTOM: 'bottom',\n  LEFT: 'left',\n  TOPLEFT: 'top',\n  TOPRIGHT: 'top',\n  RIGHTTOP: 'right',\n  RIGHTBOTTOM: 'right',\n  BOTTOMLEFT: 'bottom',\n  BOTTOMRIGHT: 'bottom',\n  LEFTTOP: 'left',\n  LEFTBOTTOM: 'left'\n}\n\nconst OffsetMap = {\n  AUTO: 0,\n  TOPLEFT: -1,\n  TOP: 0,\n  TOPRIGHT: +1,\n  RIGHTTOP: -1,\n  RIGHT: 0,\n  RIGHTBOTTOM: +1,\n  BOTTOMLEFT: -1,\n  BOTTOM: 0,\n  BOTTOMRIGHT: +1,\n  LEFTTOP: -1,\n  LEFT: 0,\n  LEFTBOTTOM: +1\n}\n\n// --- Props ---\n\nexport const props = {\n  // The minimum distance (in `px`) from the edge of the\n  // tooltip/popover that the arrow can be positioned\n  arrowPadding: makeProp(PROP_TYPE_NUMBER_STRING, 6),\n  // 'scrollParent', 'viewport', 'window', or `Element`\n  boundary: makeProp([HTMLElement, PROP_TYPE_STRING], 'scrollParent'),\n  // Tooltip/popover will try and stay away from\n  // boundary edge by this many pixels\n  boundaryPadding: makeProp(PROP_TYPE_NUMBER_STRING, 5),\n  fallbackPlacement: makeProp(PROP_TYPE_ARRAY_STRING, 'flip'),\n  offset: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n  placement: makeProp(PROP_TYPE_STRING, 'top'),\n  // Element that the tooltip/popover is positioned relative to\n  target: makeProp([HTMLElement, SVGElement])\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BVPopper = /*#__PURE__*/ Vue.extend({\n  name: NAME_POPPER,\n  props,\n  data() {\n    return {\n      // reactive props set by parent\n      noFade: false,\n      // State related data\n      localShow: true,\n      attachment: this.getAttachment(this.placement)\n    }\n  },\n  computed: {\n    /* istanbul ignore next */\n    templateType() {\n      // Overridden by template component\n      return 'unknown'\n    },\n    popperConfig() {\n      const { placement } = this\n      return {\n        placement: this.getAttachment(placement),\n        modifiers: {\n          offset: { offset: this.getOffset(placement) },\n          flip: { behavior: this.fallbackPlacement },\n          // `arrow.element` can also be a reference to an HTML Element\n          // maybe we should make this a `$ref` in the templates?\n          arrow: { element: '.arrow' },\n          preventOverflow: {\n            padding: this.boundaryPadding,\n            boundariesElement: this.boundary\n          }\n        },\n        onCreate: data => {\n          // Handle flipping arrow classes\n          if (data.originalPlacement !== data.placement) {\n            /* istanbul ignore next: can't test in JSDOM */\n            this.popperPlacementChange(data)\n          }\n        },\n        onUpdate: data => {\n          // Handle flipping arrow classes\n          this.popperPlacementChange(data)\n        }\n      }\n    }\n  },\n  created() {\n    // Note: We are created on-demand, and should be guaranteed that\n    // DOM is rendered/ready by the time the created hook runs\n    this.$_popper = null\n    // Ensure we show as we mount\n    this.localShow = true\n    // Create popper instance before shown\n    this.$on(EVENT_NAME_SHOW, el => {\n      this.popperCreate(el)\n    })\n    // Self destruct handler\n    const handleDestroy = () => {\n      this.$nextTick(() => {\n        // In a `requestAF()` to release control back to application\n        requestAF(() => {\n          this.$destroy()\n        })\n      })\n    }\n    // Self destruct if parent destroyed\n    this.$parent.$once(HOOK_EVENT_NAME_DESTROYED, handleDestroy)\n    // Self destruct after hidden\n    this.$once(EVENT_NAME_HIDDEN, handleDestroy)\n  },\n  beforeMount() {\n    // Ensure that the attachment position is correct before mounting\n    // as our propsData is added after `new Template({...})`\n    this.attachment = this.getAttachment(this.placement)\n  },\n  updated() {\n    // Update popper if needed\n    // TODO: Should this be a watcher on `this.popperConfig` instead?\n    this.updatePopper()\n  },\n  beforeDestroy() {\n    this.destroyPopper()\n  },\n  destroyed() {\n    // Make sure template is removed from DOM\n    const el = this.$el\n    el && el.parentNode && el.parentNode.removeChild(el)\n  },\n  methods: {\n    // \"Public\" method to trigger hide template\n    hide() {\n      this.localShow = false\n    },\n    // Private\n    getAttachment(placement) {\n      return AttachmentMap[String(placement).toUpperCase()] || 'auto'\n    },\n    getOffset(placement) {\n      if (!this.offset) {\n        // Could set a ref for the arrow element\n        const arrow = this.$refs.arrow || select('.arrow', this.$el)\n        const arrowOffset = toFloat(getCS(arrow).width, 0) + toFloat(this.arrowPadding, 0)\n        switch (OffsetMap[String(placement).toUpperCase()] || 0) {\n          /* istanbul ignore next: can't test in JSDOM */\n          case +1:\n            /* istanbul ignore next: can't test in JSDOM */\n            return `+50%p - ${arrowOffset}px`\n          /* istanbul ignore next: can't test in JSDOM */\n          case -1:\n            /* istanbul ignore next: can't test in JSDOM */\n            return `-50%p + ${arrowOffset}px`\n          default:\n            return 0\n        }\n      }\n      /* istanbul ignore next */\n      return this.offset\n    },\n    popperCreate(el) {\n      this.destroyPopper()\n      // We use `el` rather than `this.$el` just in case the original\n      // mountpoint root element type was changed by the template\n      this.$_popper = new Popper(this.target, el, this.popperConfig)\n    },\n    destroyPopper() {\n      this.$_popper && this.$_popper.destroy()\n      this.$_popper = null\n    },\n    updatePopper() {\n      this.$_popper && this.$_popper.scheduleUpdate()\n    },\n    popperPlacementChange(data) {\n      // Callback used by popper to adjust the arrow placement\n      this.attachment = this.getAttachment(data.placement)\n    },\n    /* istanbul ignore next */\n    renderTemplate(h) {\n      // Will be overridden by templates\n      return h('div')\n    }\n  },\n  render(h) {\n    const { noFade } = this\n\n    // Note: 'show' and 'fade' classes are only appled during transition\n    return h(\n      BVTransition,\n      {\n        // Transitions as soon as mounted\n        props: { appear: true, noFade },\n        on: {\n          // Events used by parent component/instance\n          beforeEnter: el => this.$emit(EVENT_NAME_SHOW, el),\n          afterEnter: el => this.$emit(EVENT_NAME_SHOWN, el),\n          beforeLeave: el => this.$emit(EVENT_NAME_HIDE, el),\n          afterLeave: el => this.$emit(EVENT_NAME_HIDDEN, el)\n        }\n      },\n      [this.localShow ? this.renderTemplate(h) : h()]\n    )\n  }\n})\n","import { Vue } from '../../../vue'\nimport { NAME_TOOLTIP_TEMPLATE } from '../../../constants/components'\nimport {\n  EVENT_NAME_FOCUSIN,\n  EVENT_NAME_FOCUSOUT,\n  EVENT_NAME_MOUSEENTER,\n  EVENT_NAME_MOUSELEAVE\n} from '../../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../../constants/props'\nimport { isFunction } from '../../../utils/inspect'\nimport { makeProp } from '../../../utils/props'\nimport { scopedStyleMixin } from '../../../mixins/scoped-style'\nimport { BVPopper } from './bv-popper'\n\n// --- Props ---\n\nexport const props = {\n  // Used only by the directive versions\n  html: makeProp(PROP_TYPE_BOOLEAN, false),\n  // Other non-reactive (while open) props are pulled in from BVPopper\n  id: makeProp(PROP_TYPE_STRING)\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BVTooltipTemplate = /*#__PURE__*/ Vue.extend({\n  name: NAME_TOOLTIP_TEMPLATE,\n  extends: BVPopper,\n  mixins: [scopedStyleMixin],\n  props,\n  data() {\n    // We use data, rather than props to ensure reactivity\n    // Parent component will directly set this data\n    return {\n      title: '',\n      content: '',\n      variant: null,\n      customClass: null,\n      interactive: true\n    }\n  },\n  computed: {\n    templateType() {\n      return 'tooltip'\n    },\n    templateClasses() {\n      const { variant, attachment, templateType } = this\n\n      return [\n        {\n          // Disables pointer events to hide the tooltip when the user\n          // hovers over its content\n          noninteractive: !this.interactive,\n          [`b-${templateType}-${variant}`]: variant,\n          // `attachment` will come from BVToolpop\n          [`bs-${templateType}-${attachment}`]: attachment\n        },\n        this.customClass\n      ]\n    },\n    templateAttributes() {\n      const { id } = this\n\n      return {\n        // Apply attributes from root tooltip component\n        ...this.$parent.$parent.$attrs,\n\n        id,\n        role: 'tooltip',\n        tabindex: '-1',\n\n        // Add the scoped style data attribute to the template root element\n        ...this.scopedStyleAttrs\n      }\n    },\n    templateListeners() {\n      // Used for hover/focus trigger listeners\n      return {\n        mouseenter: /* istanbul ignore next */ event => {\n          this.$emit(EVENT_NAME_MOUSEENTER, event)\n        },\n        mouseleave: /* istanbul ignore next */ event => {\n          this.$emit(EVENT_NAME_MOUSELEAVE, event)\n        },\n        focusin: /* istanbul ignore next */ event => {\n          this.$emit(EVENT_NAME_FOCUSIN, event)\n        },\n        focusout: /* istanbul ignore next */ event => {\n          this.$emit(EVENT_NAME_FOCUSOUT, event)\n        }\n      }\n    }\n  },\n  methods: {\n    renderTemplate(h) {\n      const { title } = this\n\n      // Title can be a scoped slot function\n      const $title = isFunction(title) ? title({}) : title\n\n      // Directive versions only\n      const domProps = this.html && !isFunction(title) ? { innerHTML: title } : {}\n\n      return h(\n        'div',\n        {\n          staticClass: 'tooltip b-tooltip',\n          class: this.templateClasses,\n          attrs: this.templateAttributes,\n          on: this.templateListeners\n        },\n        [\n          h('div', {\n            staticClass: 'arrow',\n            ref: 'arrow'\n          }),\n          h(\n            'div',\n            {\n              staticClass: 'tooltip-inner',\n              domProps\n            },\n            [$title]\n          )\n        ]\n      )\n    }\n  }\n})\n","// Tooltip \"Class\" (Built as a renderless Vue instance)\n//\n// Handles trigger events, etc.\n// Instantiates template on demand\n\nimport { COMPONENT_UID_KEY, Vue } from '../../../vue'\nimport { NAME_MODAL, NAME_TOOLTIP_HELPER } from '../../../constants/components'\nimport {\n  EVENT_NAME_DISABLE,\n  EVENT_NAME_DISABLED,\n  EVENT_NAME_ENABLE,\n  EVENT_NAME_ENABLED,\n  EVENT_NAME_FOCUSIN,\n  EVENT_NAME_FOCUSOUT,\n  EVENT_NAME_HIDDEN,\n  EVENT_NAME_HIDE,\n  EVENT_NAME_MOUSEENTER,\n  EVENT_NAME_MOUSELEAVE,\n  EVENT_NAME_SHOW,\n  EVENT_NAME_SHOWN,\n  EVENT_OPTIONS_NO_CAPTURE,\n  HOOK_EVENT_NAME_BEFORE_DESTROY,\n  HOOK_EVENT_NAME_DESTROYED\n} from '../../../constants/events'\nimport { arrayIncludes, concat, from as arrayFrom } from '../../../utils/array'\nimport {\n  attemptFocus,\n  closest,\n  contains,\n  getAttr,\n  getById,\n  hasAttr,\n  hasClass,\n  isDisabled,\n  isElement,\n  isVisible,\n  removeAttr,\n  requestAF,\n  select,\n  setAttr\n} from '../../../utils/dom'\nimport {\n  eventOff,\n  eventOn,\n  eventOnOff,\n  getRootActionEventName,\n  getRootEventName\n} from '../../../utils/events'\nimport { getScopeId } from '../../../utils/get-scope-id'\nimport { identity } from '../../../utils/identity'\nimport {\n  isFunction,\n  isNumber,\n  isPlainObject,\n  isString,\n  isUndefined,\n  isUndefinedOrNull\n} from '../../../utils/inspect'\nimport { looseEqual } from '../../../utils/loose-equal'\nimport { mathMax } from '../../../utils/math'\nimport { noop } from '../../../utils/noop'\nimport { toInteger } from '../../../utils/number'\nimport { keys } from '../../../utils/object'\nimport { warn } from '../../../utils/warn'\nimport { BvEvent } from '../../../utils/bv-event.class'\nimport { BVTooltipTemplate } from './bv-tooltip-template'\n\n// --- Constants ---\n\n// Modal container selector for appending tooltip/popover\nconst MODAL_SELECTOR = '.modal-content'\n\n// Modal `$root` hidden event\nconst ROOT_EVENT_NAME_MODAL_HIDDEN = getRootEventName(NAME_MODAL, EVENT_NAME_HIDDEN)\n\n// Sidebar container selector for appending tooltip/popover\nconst SIDEBAR_SELECTOR = '.b-sidebar'\n\n// For finding the container to append to\nconst CONTAINER_SELECTOR = [MODAL_SELECTOR, SIDEBAR_SELECTOR].join(', ')\n\n// For dropdown sniffing\nconst DROPDOWN_CLASS = 'dropdown'\nconst DROPDOWN_OPEN_SELECTOR = '.dropdown-menu.show'\n\n// Data attribute to temporary store the `title` attribute's value\nconst DATA_TITLE_ATTR = 'data-original-title'\n\n// Data specific to popper and template\n// We don't use props, as we need reactivity (we can't pass reactive props)\nconst templateData = {\n  // Text string or Scoped slot function\n  title: '',\n  // Text string or Scoped slot function\n  content: '',\n  // String\n  variant: null,\n  // String, Array, Object\n  customClass: null,\n  // String or array of Strings (overwritten by BVPopper)\n  triggers: '',\n  // String (overwritten by BVPopper)\n  placement: 'auto',\n  // String or array of strings\n  fallbackPlacement: 'flip',\n  // Element or Component reference (or function that returns element) of\n  // the element that will have the trigger events bound, and is also\n  // default element for positioning\n  target: null,\n  // HTML ID, Element or Component reference\n  container: null, // 'body'\n  // Boolean\n  noFade: false,\n  // 'scrollParent', 'viewport', 'window', Element, or Component reference\n  boundary: 'scrollParent',\n  // Tooltip/popover will try and stay away from\n  // boundary edge by this many pixels (Number)\n  boundaryPadding: 5,\n  // Arrow offset (Number)\n  offset: 0,\n  // Hover/focus delay (Number or Object)\n  delay: 0,\n  // Arrow of Tooltip/popover will try and stay away from\n  // the edge of tooltip/popover edge by this many pixels\n  arrowPadding: 6,\n  // Interactive state (Boolean)\n  interactive: true,\n  // Disabled state (Boolean)\n  disabled: false,\n  // ID to use for tooltip/popover\n  id: null,\n  // Flag used by directives only, for HTML content\n  html: false\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BVTooltip = /*#__PURE__*/ Vue.extend({\n  name: NAME_TOOLTIP_HELPER,\n  data() {\n    return {\n      // BTooltip/BPopover/VBTooltip/VBPopover will update this data\n      // Via the exposed updateData() method on this instance\n      // BVPopover will override some of these defaults\n      ...templateData,\n      // State management data\n      activeTrigger: {\n        // manual: false,\n        hover: false,\n        click: false,\n        focus: false\n      },\n      localShow: false\n    }\n  },\n  computed: {\n    templateType() {\n      // Overwritten by BVPopover\n      return 'tooltip'\n    },\n    computedId() {\n      return this.id || `__bv_${this.templateType}_${this[COMPONENT_UID_KEY]}__`\n    },\n    computedDelay() {\n      // Normalizes delay into object form\n      const delay = { show: 0, hide: 0 }\n      if (isPlainObject(this.delay)) {\n        delay.show = mathMax(toInteger(this.delay.show, 0), 0)\n        delay.hide = mathMax(toInteger(this.delay.hide, 0), 0)\n      } else if (isNumber(this.delay) || isString(this.delay)) {\n        delay.show = delay.hide = mathMax(toInteger(this.delay, 0), 0)\n      }\n      return delay\n    },\n    computedTriggers() {\n      // Returns the triggers in sorted array form\n      // TODO: Switch this to object form for easier lookup\n      return concat(this.triggers)\n        .filter(identity)\n        .join(' ')\n        .trim()\n        .toLowerCase()\n        .split(/\\s+/)\n        .sort()\n    },\n    isWithActiveTrigger() {\n      for (const trigger in this.activeTrigger) {\n        if (this.activeTrigger[trigger]) {\n          return true\n        }\n      }\n      return false\n    },\n    computedTemplateData() {\n      const { title, content, variant, customClass, noFade, interactive } = this\n      return { title, content, variant, customClass, noFade, interactive }\n    }\n  },\n  watch: {\n    computedTriggers(newTriggers, oldTriggers) {\n      // Triggers have changed, so re-register them\n      /* istanbul ignore next */\n      if (!looseEqual(newTriggers, oldTriggers)) {\n        this.$nextTick(() => {\n          // Disable trigger listeners\n          this.unListen()\n          // Clear any active triggers that are no longer in the list of triggers\n          oldTriggers.forEach(trigger => {\n            if (!arrayIncludes(newTriggers, trigger)) {\n              if (this.activeTrigger[trigger]) {\n                this.activeTrigger[trigger] = false\n              }\n            }\n          })\n          // Re-enable the trigger listeners\n          this.listen()\n        })\n      }\n    },\n    computedTemplateData() {\n      // If any of the while open reactive \"props\" change,\n      // ensure that the template updates accordingly\n      this.handleTemplateUpdate()\n    },\n    title(newValue, oldValue) {\n      // Make sure to hide the tooltip when the title is set empty\n      if (newValue !== oldValue && !newValue) {\n        this.hide()\n      }\n    },\n    disabled(newValue) {\n      if (newValue) {\n        this.disable()\n      } else {\n        this.enable()\n      }\n    }\n  },\n  created() {\n    // Create non-reactive properties\n    this.$_tip = null\n    this.$_hoverTimeout = null\n    this.$_hoverState = ''\n    this.$_visibleInterval = null\n    this.$_enabled = !this.disabled\n    this.$_noop = noop.bind(this)\n\n    // Destroy ourselves when the parent is destroyed\n    if (this.$parent) {\n      this.$parent.$once(HOOK_EVENT_NAME_BEFORE_DESTROY, () => {\n        this.$nextTick(() => {\n          // In a `requestAF()` to release control back to application\n          requestAF(() => {\n            this.$destroy()\n          })\n        })\n      })\n    }\n\n    this.$nextTick(() => {\n      const target = this.getTarget()\n      if (target && contains(document.body, target)) {\n        // Copy the parent's scoped style attribute\n        this.scopeId = getScopeId(this.$parent)\n        // Set up all trigger handlers and listeners\n        this.listen()\n      } else {\n        /* istanbul ignore next */\n        warn(\n          isString(this.target)\n            ? `Unable to find target element by ID \"#${this.target}\" in document.`\n            : 'The provided target is no valid HTML element.',\n          this.templateType\n        )\n      }\n    })\n  },\n  /* istanbul ignore next */\n  updated() {\n    // Usually called when the slots/data changes\n    this.$nextTick(this.handleTemplateUpdate)\n  },\n  /* istanbul ignore next */\n  deactivated() {\n    // In a keepalive that has been deactivated, so hide\n    // the tooltip/popover if it is showing\n    this.forceHide()\n  },\n  beforeDestroy() {\n    // Remove all handler/listeners\n    this.unListen()\n    this.setWhileOpenListeners(false)\n    // Clear any timeouts/intervals\n    this.clearHoverTimeout()\n    this.clearVisibilityInterval()\n    // Destroy the template\n    this.destroyTemplate()\n    // Remove any other private properties created during create\n    this.$_noop = null\n  },\n  methods: {\n    // --- Methods for creating and destroying the template ---\n    getTemplate() {\n      // Overridden by BVPopover\n      return BVTooltipTemplate\n    },\n    updateData(data = {}) {\n      // Method for updating popper/template data\n      // We only update data if it exists, and has not changed\n      let titleUpdated = false\n      keys(templateData).forEach(prop => {\n        if (!isUndefined(data[prop]) && this[prop] !== data[prop]) {\n          this[prop] = data[prop]\n          if (prop === 'title') {\n            titleUpdated = true\n          }\n        }\n      })\n      // If the title has updated, we may need to handle the `title`\n      // attribute on the trigger target\n      // We only do this while the template is open\n      if (titleUpdated && this.localShow) {\n        this.fixTitle()\n      }\n    },\n    createTemplateAndShow() {\n      // Creates the template instance and show it\n      const container = this.getContainer()\n      const Template = this.getTemplate()\n      const $tip = (this.$_tip = new Template({\n        parent: this,\n        // The following is not reactive to changes in the props data\n        propsData: {\n          // These values cannot be changed while template is showing\n          id: this.computedId,\n          html: this.html,\n          placement: this.placement,\n          fallbackPlacement: this.fallbackPlacement,\n          target: this.getPlacementTarget(),\n          boundary: this.getBoundary(),\n          // Ensure the following are integers\n          offset: toInteger(this.offset, 0),\n          arrowPadding: toInteger(this.arrowPadding, 0),\n          boundaryPadding: toInteger(this.boundaryPadding, 0)\n        }\n      }))\n      // We set the initial reactive data (values that can be changed while open)\n      this.handleTemplateUpdate()\n      // Template transition phase events (handled once only)\n      // When the template has mounted, but not visibly shown yet\n      $tip.$once(EVENT_NAME_SHOW, this.onTemplateShow)\n      // When the template has completed showing\n      $tip.$once(EVENT_NAME_SHOWN, this.onTemplateShown)\n      // When the template has started to hide\n      $tip.$once(EVENT_NAME_HIDE, this.onTemplateHide)\n      // When the template has completed hiding\n      $tip.$once(EVENT_NAME_HIDDEN, this.onTemplateHidden)\n      // When the template gets destroyed for any reason\n      $tip.$once(HOOK_EVENT_NAME_DESTROYED, this.destroyTemplate)\n      // Convenience events from template\n      // To save us from manually adding/removing DOM\n      // listeners to tip element when it is open\n      $tip.$on(EVENT_NAME_FOCUSIN, this.handleEvent)\n      $tip.$on(EVENT_NAME_FOCUSOUT, this.handleEvent)\n      $tip.$on(EVENT_NAME_MOUSEENTER, this.handleEvent)\n      $tip.$on(EVENT_NAME_MOUSELEAVE, this.handleEvent)\n      // Mount (which triggers the `show`)\n      $tip.$mount(container.appendChild(document.createElement('div')))\n      // Template will automatically remove its markup from DOM when hidden\n    },\n    hideTemplate() {\n      // Trigger the template to start hiding\n      // The template will emit the `hide` event after this and\n      // then emit the `hidden` event once it is fully hidden\n      // The `hook:destroyed` will also be called (safety measure)\n      this.$_tip && this.$_tip.hide()\n      // Clear out any stragging active triggers\n      this.clearActiveTriggers()\n      // Reset the hover state\n      this.$_hoverState = ''\n    },\n    // Destroy the template instance and reset state\n    destroyTemplate() {\n      this.setWhileOpenListeners(false)\n      this.clearHoverTimeout()\n      this.$_hoverState = ''\n      this.clearActiveTriggers()\n      this.localPlacementTarget = null\n      try {\n        this.$_tip.$destroy()\n      } catch {}\n      this.$_tip = null\n      this.removeAriaDescribedby()\n      this.restoreTitle()\n      this.localShow = false\n    },\n    getTemplateElement() {\n      return this.$_tip ? this.$_tip.$el : null\n    },\n    handleTemplateUpdate() {\n      // Update our template title/content \"props\"\n      // So that the template updates accordingly\n      const $tip = this.$_tip\n      if ($tip) {\n        const props = ['title', 'content', 'variant', 'customClass', 'noFade', 'interactive']\n        // Only update the values if they have changed\n        props.forEach(prop => {\n          if ($tip[prop] !== this[prop]) {\n            $tip[prop] = this[prop]\n          }\n        })\n      }\n    },\n    // --- Show/Hide handlers ---\n    // Show the tooltip\n    show() {\n      const target = this.getTarget()\n      if (\n        !target ||\n        !contains(document.body, target) ||\n        !isVisible(target) ||\n        this.dropdownOpen() ||\n        ((isUndefinedOrNull(this.title) || this.title === '') &&\n          (isUndefinedOrNull(this.content) || this.content === ''))\n      ) {\n        // If trigger element isn't in the DOM or is not visible, or\n        // is on an open dropdown toggle, or has no content, then\n        // we exit without showing\n        return\n      }\n      // If tip already exists, exit early\n      if (this.$_tip || this.localShow) {\n        /* istanbul ignore next */\n        return\n      }\n      // In the process of showing\n      this.localShow = true\n      // Create a cancelable BvEvent\n      const showEvt = this.buildEvent(EVENT_NAME_SHOW, { cancelable: true })\n      this.emitEvent(showEvt)\n      // Don't show if event cancelled\n      /* istanbul ignore if */\n      if (showEvt.defaultPrevented) {\n        // Destroy the template (if for some reason it was created)\n        this.destroyTemplate()\n        return\n      }\n      // Fix the title attribute on target\n      this.fixTitle()\n      // Set aria-describedby on target\n      this.addAriaDescribedby()\n      // Create and show the tooltip\n      this.createTemplateAndShow()\n    },\n    hide(force = false) {\n      // Hide the tooltip\n      const tip = this.getTemplateElement()\n      /* istanbul ignore if */\n      if (!tip || !this.localShow) {\n        this.restoreTitle()\n        return\n      }\n\n      // Emit cancelable BvEvent 'hide'\n      // We disable cancelling if `force` is true\n      const hideEvt = this.buildEvent(EVENT_NAME_HIDE, { cancelable: !force })\n      this.emitEvent(hideEvt)\n      /* istanbul ignore if: ignore for now */\n      if (hideEvt.defaultPrevented) {\n        // Don't hide if event cancelled\n        return\n      }\n\n      // Tell the template to hide\n      this.hideTemplate()\n    },\n    forceHide() {\n      // Forcefully hides/destroys the template, regardless of any active triggers\n      const tip = this.getTemplateElement()\n      if (!tip || !this.localShow) {\n        /* istanbul ignore next */\n        return\n      }\n      // Disable while open listeners/watchers\n      // This is also done in the template `hide` event handler\n      this.setWhileOpenListeners(false)\n      // Clear any hover enter/leave event\n      this.clearHoverTimeout()\n      this.$_hoverState = ''\n      this.clearActiveTriggers()\n      // Disable the fade animation on the template\n      if (this.$_tip) {\n        this.$_tip.noFade = true\n      }\n      // Hide the tip (with force = true)\n      this.hide(true)\n    },\n    enable() {\n      this.$_enabled = true\n      // Create a non-cancelable BvEvent\n      this.emitEvent(this.buildEvent(EVENT_NAME_ENABLED))\n    },\n    disable() {\n      this.$_enabled = false\n      // Create a non-cancelable BvEvent\n      this.emitEvent(this.buildEvent(EVENT_NAME_DISABLED))\n    },\n    // --- Handlers for template events ---\n    // When template is inserted into DOM, but not yet shown\n    onTemplateShow() {\n      // Enable while open listeners/watchers\n      this.setWhileOpenListeners(true)\n    },\n    // When template show transition completes\n    onTemplateShown() {\n      const prevHoverState = this.$_hoverState\n      this.$_hoverState = ''\n      /* istanbul ignore next: occasional Node 10 coverage error */\n      if (prevHoverState === 'out') {\n        this.leave(null)\n      }\n      // Emit a non-cancelable BvEvent 'shown'\n      this.emitEvent(this.buildEvent(EVENT_NAME_SHOWN))\n    },\n    // When template is starting to hide\n    onTemplateHide() {\n      // Disable while open listeners/watchers\n      this.setWhileOpenListeners(false)\n    },\n    // When template has completed closing (just before it self destructs)\n    onTemplateHidden() {\n      // Destroy the template\n      this.destroyTemplate()\n      // Emit a non-cancelable BvEvent 'shown'\n      this.emitEvent(this.buildEvent(EVENT_NAME_HIDDEN))\n    },\n    // --- Helper methods ---\n    getTarget() {\n      let { target } = this\n      if (isString(target)) {\n        target = getById(target.replace(/^#/, ''))\n      } else if (isFunction(target)) {\n        target = target()\n      } else if (target) {\n        target = target.$el || target\n      }\n      return isElement(target) ? target : null\n    },\n    getPlacementTarget() {\n      // This is the target that the tooltip will be placed on, which may not\n      // necessarily be the same element that has the trigger event listeners\n      // For now, this is the same as target\n      // TODO:\n      //   Add in child selector support\n      //   Add in visibility checks for this element\n      //   Fallback to target if not found\n      return this.getTarget()\n    },\n    getTargetId() {\n      // Returns the ID of the trigger element\n      const target = this.getTarget()\n      return target && target.id ? target.id : null\n    },\n    getContainer() {\n      // Handle case where container may be a component ref\n      const container = this.container ? this.container.$el || this.container : false\n      const body = document.body\n      const target = this.getTarget()\n      // If we are in a modal, we append to the modal, If we\n      // are in a sidebar, we append to the sidebar, else append\n      // to body, unless a container is specified\n      // TODO:\n      //   Template should periodically check to see if it is in dom\n      //   And if not, self destruct (if container got v-if'ed out of DOM)\n      //   Or this could possibly be part of the visibility check\n      return container === false\n        ? closest(CONTAINER_SELECTOR, target) || body\n        : /*istanbul ignore next */ isString(container)\n          ? /*istanbul ignore next */ getById(container.replace(/^#/, '')) || body\n          : /*istanbul ignore next */ body\n    },\n    getBoundary() {\n      return this.boundary ? this.boundary.$el || this.boundary : 'scrollParent'\n    },\n    isInModal() {\n      const target = this.getTarget()\n      return target && closest(MODAL_SELECTOR, target)\n    },\n    isDropdown() {\n      // Returns true if trigger is a dropdown\n      const target = this.getTarget()\n      return target && hasClass(target, DROPDOWN_CLASS)\n    },\n    dropdownOpen() {\n      // Returns true if trigger is a dropdown and the dropdown menu is open\n      const target = this.getTarget()\n      return this.isDropdown() && target && select(DROPDOWN_OPEN_SELECTOR, target)\n    },\n    clearHoverTimeout() {\n      clearTimeout(this.$_hoverTimeout)\n      this.$_hoverTimeout = null\n    },\n    clearVisibilityInterval() {\n      clearInterval(this.$_visibleInterval)\n      this.$_visibleInterval = null\n    },\n    clearActiveTriggers() {\n      for (const trigger in this.activeTrigger) {\n        this.activeTrigger[trigger] = false\n      }\n    },\n    addAriaDescribedby() {\n      // Add aria-describedby on trigger element, without removing any other IDs\n      const target = this.getTarget()\n      let desc = getAttr(target, 'aria-describedby') || ''\n      desc = desc\n        .split(/\\s+/)\n        .concat(this.computedId)\n        .join(' ')\n        .trim()\n      // Update/add aria-described by\n      setAttr(target, 'aria-describedby', desc)\n    },\n    removeAriaDescribedby() {\n      // Remove aria-describedby on trigger element, without removing any other IDs\n      const target = this.getTarget()\n      let desc = getAttr(target, 'aria-describedby') || ''\n      desc = desc\n        .split(/\\s+/)\n        .filter(d => d !== this.computedId)\n        .join(' ')\n        .trim()\n      // Update or remove aria-describedby\n      if (desc) {\n        /* istanbul ignore next */\n        setAttr(target, 'aria-describedby', desc)\n      } else {\n        removeAttr(target, 'aria-describedby')\n      }\n    },\n    fixTitle() {\n      // If the target has a `title` attribute,\n      // remove it and store it on a data attribute\n      const target = this.getTarget()\n      if (hasAttr(target, 'title')) {\n        // Get `title` attribute value and remove it from target\n        const title = getAttr(target, 'title')\n        setAttr(target, 'title', '')\n        // Only set the data attribute when the value is truthy\n        if (title) {\n          setAttr(target, DATA_TITLE_ATTR, title)\n        }\n      }\n    },\n    restoreTitle() {\n      // If the target had a `title` attribute,\n      // restore it and remove the data attribute\n      const target = this.getTarget()\n      if (hasAttr(target, DATA_TITLE_ATTR)) {\n        // Get data attribute value and remove it from target\n        const title = getAttr(target, DATA_TITLE_ATTR)\n        removeAttr(target, DATA_TITLE_ATTR)\n        // Only restore the `title` attribute when the value is truthy\n        if (title) {\n          setAttr(target, 'title', title)\n        }\n      }\n    },\n    // --- BvEvent helpers ---\n    buildEvent(type, options = {}) {\n      // Defaults to a non-cancellable event\n      return new BvEvent(type, {\n        cancelable: false,\n        target: this.getTarget(),\n        relatedTarget: this.getTemplateElement() || null,\n        componentId: this.computedId,\n        vueTarget: this,\n        // Add in option overrides\n        ...options\n      })\n    },\n    emitEvent(bvEvent) {\n      // Emits a BvEvent on $root and this instance\n      const eventName = bvEvent.type\n      const $root = this.$root\n      if ($root && $root.$emit) {\n        // Emit an event on $root\n        $root.$emit(getRootEventName(this.templateType, eventName), bvEvent)\n      }\n      this.$emit(eventName, bvEvent)\n    },\n    // --- Event handler setup methods ---\n    listen() {\n      // Enable trigger event handlers\n      const el = this.getTarget()\n      if (!el) {\n        /* istanbul ignore next */\n        return\n      }\n      // Listen for global show/hide events\n      this.setRootListener(true)\n      // Set up our listeners on the target trigger element\n      this.computedTriggers.forEach(trigger => {\n        if (trigger === 'click') {\n          eventOn(el, 'click', this.handleEvent, EVENT_OPTIONS_NO_CAPTURE)\n        } else if (trigger === 'focus') {\n          eventOn(el, 'focusin', this.handleEvent, EVENT_OPTIONS_NO_CAPTURE)\n          eventOn(el, 'focusout', this.handleEvent, EVENT_OPTIONS_NO_CAPTURE)\n        } else if (trigger === 'blur') {\n          // Used to close $tip when element looses focus\n          /* istanbul ignore next */\n          eventOn(el, 'focusout', this.handleEvent, EVENT_OPTIONS_NO_CAPTURE)\n        } else if (trigger === 'hover') {\n          eventOn(el, 'mouseenter', this.handleEvent, EVENT_OPTIONS_NO_CAPTURE)\n          eventOn(el, 'mouseleave', this.handleEvent, EVENT_OPTIONS_NO_CAPTURE)\n        }\n      }, this)\n    },\n    /* istanbul ignore next */\n    unListen() {\n      // Remove trigger event handlers\n      const events = ['click', 'focusin', 'focusout', 'mouseenter', 'mouseleave']\n      const target = this.getTarget()\n\n      // Stop listening for global show/hide/enable/disable events\n      this.setRootListener(false)\n\n      // Clear out any active target listeners\n      events.forEach(event => {\n        target && eventOff(target, event, this.handleEvent, EVENT_OPTIONS_NO_CAPTURE)\n      }, this)\n    },\n    setRootListener(on) {\n      // Listen for global `bv::{hide|show}::{tooltip|popover}` hide request event\n      const $root = this.$root\n      if ($root) {\n        const method = on ? '$on' : '$off'\n        const type = this.templateType\n        $root[method](getRootActionEventName(type, EVENT_NAME_HIDE), this.doHide)\n        $root[method](getRootActionEventName(type, EVENT_NAME_SHOW), this.doShow)\n        $root[method](getRootActionEventName(type, EVENT_NAME_DISABLE), this.doDisable)\n        $root[method](getRootActionEventName(type, EVENT_NAME_ENABLE), this.doEnable)\n      }\n    },\n    setWhileOpenListeners(on) {\n      // Events that are only registered when the template is showing\n      // Modal close events\n      this.setModalListener(on)\n      // Dropdown open events (if we are attached to a dropdown)\n      this.setDropdownListener(on)\n      // Periodic $element visibility check\n      // For handling when tip target is in <keepalive>, tabs, carousel, etc\n      this.visibleCheck(on)\n      // On-touch start listeners\n      this.setOnTouchStartListener(on)\n    },\n    // Handler for periodic visibility check\n    visibleCheck(on) {\n      this.clearVisibilityInterval()\n      const target = this.getTarget()\n      const tip = this.getTemplateElement()\n      if (on) {\n        this.$_visibleInterval = setInterval(() => {\n          if (tip && this.localShow && (!target.parentNode || !isVisible(target))) {\n            // Target element is no longer visible or not in DOM, so force-hide the tooltip\n            this.forceHide()\n          }\n        }, 100)\n      }\n    },\n    setModalListener(on) {\n      // Handle case where tooltip/target is in a modal\n      if (this.isInModal()) {\n        // We can listen for modal hidden events on `$root`\n        this.$root[on ? '$on' : '$off'](ROOT_EVENT_NAME_MODAL_HIDDEN, this.forceHide)\n      }\n    },\n    /* istanbul ignore next: JSDOM doesn't support `ontouchstart` */\n    setOnTouchStartListener(on) {\n      // If this is a touch-enabled device we add extra empty\n      // `mouseover` listeners to the body's immediate children\n      // Only needed because of broken event delegation on iOS\n      // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n      if ('ontouchstart' in document.documentElement) {\n        arrayFrom(document.body.children).forEach(el => {\n          eventOnOff(on, el, 'mouseover', this.$_noop)\n        })\n      }\n    },\n    setDropdownListener(on) {\n      const target = this.getTarget()\n      if (!target || !this.$root || !this.isDropdown) {\n        return\n      }\n      // We can listen for dropdown shown events on its instance\n      // TODO:\n      //   We could grab the ID from the dropdown, and listen for\n      //   $root events for that particular dropdown id\n      //   Dropdown shown and hidden events will need to emit\n      //   Note: Dropdown auto-ID happens in a `$nextTick()` after mount\n      //         So the ID lookup would need to be done in a `$nextTick()`\n      if (target.__vue__) {\n        target.__vue__[on ? '$on' : '$off'](EVENT_NAME_SHOWN, this.forceHide)\n      }\n    },\n    // --- Event handlers ---\n    handleEvent(event) {\n      // General trigger event handler\n      // target is the trigger element\n      const target = this.getTarget()\n      if (!target || isDisabled(target) || !this.$_enabled || this.dropdownOpen()) {\n        // If disabled or not enabled, or if a dropdown that is open, don't do anything\n        // If tip is shown before element gets disabled, then tip will not\n        // close until no longer disabled or forcefully closed\n        return\n      }\n      const type = event.type\n      const triggers = this.computedTriggers\n\n      if (type === 'click' && arrayIncludes(triggers, 'click')) {\n        this.click(event)\n      } else if (type === 'mouseenter' && arrayIncludes(triggers, 'hover')) {\n        // `mouseenter` is a non-bubbling event\n        this.enter(event)\n      } else if (type === 'focusin' && arrayIncludes(triggers, 'focus')) {\n        // `focusin` is a bubbling event\n        // `event` includes `relatedTarget` (element losing focus)\n        this.enter(event)\n      } else if (\n        (type === 'focusout' &&\n          (arrayIncludes(triggers, 'focus') || arrayIncludes(triggers, 'blur'))) ||\n        (type === 'mouseleave' && arrayIncludes(triggers, 'hover'))\n      ) {\n        // `focusout` is a bubbling event\n        // `mouseleave` is a non-bubbling event\n        // `tip` is the template (will be null if not open)\n        const tip = this.getTemplateElement()\n        // `eventTarget` is the element which is losing focus/hover and\n        const eventTarget = event.target\n        // `relatedTarget` is the element gaining focus/hover\n        const relatedTarget = event.relatedTarget\n        /* istanbul ignore next */\n        if (\n          // From tip to target\n          (tip && contains(tip, eventTarget) && contains(target, relatedTarget)) ||\n          // From target to tip\n          (tip && contains(target, eventTarget) && contains(tip, relatedTarget)) ||\n          // Within tip\n          (tip && contains(tip, eventTarget) && contains(tip, relatedTarget)) ||\n          // Within target\n          (contains(target, eventTarget) && contains(target, relatedTarget))\n        ) {\n          // If focus/hover moves within `tip` and `target`, don't trigger a leave\n          return\n        }\n        // Otherwise trigger a leave\n        this.leave(event)\n      }\n    },\n    doHide(id) {\n      // Programmatically hide tooltip or popover\n      if (!id || (this.getTargetId() === id || this.computedId === id)) {\n        // Close all tooltips or popovers, or this specific tip (with ID)\n        this.forceHide()\n      }\n    },\n    doShow(id) {\n      // Programmatically show tooltip or popover\n      if (!id || (this.getTargetId() === id || this.computedId === id)) {\n        // Open all tooltips or popovers, or this specific tip (with ID)\n        this.show()\n      }\n    },\n    /*istanbul ignore next: ignore for now */\n    doDisable(id) /*istanbul ignore next: ignore for now */ {\n      // Programmatically disable tooltip or popover\n      if (!id || (this.getTargetId() === id || this.computedId === id)) {\n        // Disable all tooltips or popovers (no ID), or this specific tip (with ID)\n        this.disable()\n      }\n    },\n    /*istanbul ignore next: ignore for now */\n    doEnable(id) /*istanbul ignore next: ignore for now */ {\n      // Programmatically enable tooltip or popover\n      if (!id || (this.getTargetId() === id || this.computedId === id)) {\n        // Enable all tooltips or popovers (no ID), or this specific tip (with ID)\n        this.enable()\n      }\n    },\n    click(event) {\n      if (!this.$_enabled || this.dropdownOpen()) {\n        /* istanbul ignore next */\n        return\n      }\n      // Get around a WebKit bug where `click` does not trigger focus events\n      // On most browsers, `click` triggers a `focusin`/`focus` event first\n      // Needed so that trigger 'click blur' works on iOS\n      // https://github.com/bootstrap-vue/bootstrap-vue/issues/5099\n      // We use `currentTarget` rather than `target` to trigger on the\n      // element, not the inner content\n      attemptFocus(event.currentTarget)\n      this.activeTrigger.click = !this.activeTrigger.click\n      if (this.isWithActiveTrigger) {\n        this.enter(null)\n      } else {\n        /* istanbul ignore next */\n        this.leave(null)\n      }\n    },\n    /* istanbul ignore next */\n    toggle() {\n      // Manual toggle handler\n      if (!this.$_enabled || this.dropdownOpen()) {\n        /* istanbul ignore next */\n        return\n      }\n      // Should we register as an active trigger?\n      // this.activeTrigger.manual = !this.activeTrigger.manual\n      if (this.localShow) {\n        this.leave(null)\n      } else {\n        this.enter(null)\n      }\n    },\n    enter(event = null) {\n      // Opening trigger handler\n      // Note: Click events are sent with event === null\n      if (event) {\n        this.activeTrigger[event.type === 'focusin' ? 'focus' : 'hover'] = true\n      }\n      /* istanbul ignore next */\n      if (this.localShow || this.$_hoverState === 'in') {\n        this.$_hoverState = 'in'\n        return\n      }\n      this.clearHoverTimeout()\n      this.$_hoverState = 'in'\n      if (!this.computedDelay.show) {\n        this.show()\n      } else {\n        // Hide any title attribute while enter delay is active\n        this.fixTitle()\n        this.$_hoverTimeout = setTimeout(() => {\n          /* istanbul ignore else */\n          if (this.$_hoverState === 'in') {\n            this.show()\n          } else if (!this.localShow) {\n            this.restoreTitle()\n          }\n        }, this.computedDelay.show)\n      }\n    },\n    leave(event = null) {\n      // Closing trigger handler\n      // Note: Click events are sent with event === null\n      if (event) {\n        this.activeTrigger[event.type === 'focusout' ? 'focus' : 'hover'] = false\n        /* istanbul ignore next */\n        if (event.type === 'focusout' && arrayIncludes(this.computedTriggers, 'blur')) {\n          // Special case for `blur`: we clear out the other triggers\n          this.activeTrigger.click = false\n          this.activeTrigger.hover = false\n        }\n      }\n      /* istanbul ignore next: ignore for now */\n      if (this.isWithActiveTrigger) {\n        return\n      }\n      this.clearHoverTimeout()\n      this.$_hoverState = 'out'\n      if (!this.computedDelay.hide) {\n        this.hide()\n      } else {\n        this.$_hoverTimeout = setTimeout(() => {\n          if (this.$_hoverState === 'out') {\n            this.hide()\n          }\n        }, this.computedDelay.hide)\n      }\n    }\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TOOLTIP } from '../../constants/components'\nimport {\n  EVENT_NAME_CLOSE,\n  EVENT_NAME_DISABLE,\n  EVENT_NAME_DISABLED,\n  EVENT_NAME_ENABLE,\n  EVENT_NAME_ENABLED,\n  EVENT_NAME_HIDDEN,\n  EVENT_NAME_HIDE,\n  EVENT_NAME_OPEN,\n  EVENT_NAME_SHOW,\n  EVENT_NAME_SHOWN,\n  MODEL_EVENT_NAME_PREFIX\n} from '../../constants/events'\nimport {\n  PROP_TYPE_ARRAY_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_FUNCTION,\n  PROP_TYPE_NUMBER_OBJECT_STRING,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_OBJECT,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { HTMLElement, SVGElement } from '../../constants/safe-types'\nimport { getScopeId } from '../../utils/get-scope-id'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { pick } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BVTooltip } from './helpers/bv-tooltip'\n\n// --- Constants ---\n\nconst MODEL_PROP_NAME_ENABLED = 'disabled'\nconst MODEL_EVENT_NAME_ENABLED = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_ENABLED\n\nconst MODEL_PROP_NAME_SHOW = 'show'\nconst MODEL_EVENT_NAME_SHOW = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_SHOW\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    // String: scrollParent, window, or viewport\n    // Element: element reference\n    // Object: Vue component\n    boundary: makeProp([HTMLElement, PROP_TYPE_OBJECT, PROP_TYPE_STRING], 'scrollParent'),\n    boundaryPadding: makeProp(PROP_TYPE_NUMBER_STRING, 50),\n    // String: HTML ID of container, if null body is used (default)\n    // HTMLElement: element reference reference\n    // Object: Vue Component\n    container: makeProp([HTMLElement, PROP_TYPE_OBJECT, PROP_TYPE_STRING]),\n    customClass: makeProp(PROP_TYPE_STRING),\n    delay: makeProp(PROP_TYPE_NUMBER_OBJECT_STRING, 50),\n    [MODEL_PROP_NAME_ENABLED]: makeProp(PROP_TYPE_BOOLEAN, false),\n    fallbackPlacement: makeProp(PROP_TYPE_ARRAY_STRING, 'flip'),\n    // ID to use for tooltip element\n    // If not provided on will automatically be generated\n    id: makeProp(PROP_TYPE_STRING),\n    noFade: makeProp(PROP_TYPE_BOOLEAN, false),\n    noninteractive: makeProp(PROP_TYPE_BOOLEAN, false),\n    offset: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n    placement: makeProp(PROP_TYPE_STRING, 'top'),\n    [MODEL_PROP_NAME_SHOW]: makeProp(PROP_TYPE_BOOLEAN, false),\n    // String ID of element, or element/component reference\n    // Or function that returns one of the above\n    // Required\n    target: makeProp(\n      [HTMLElement, SVGElement, PROP_TYPE_FUNCTION, PROP_TYPE_OBJECT, PROP_TYPE_STRING],\n      undefined,\n      true\n    ),\n    title: makeProp(PROP_TYPE_STRING),\n    triggers: makeProp(PROP_TYPE_ARRAY_STRING, 'hover focus'),\n    variant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_TOOLTIP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BTooltip = /*#__PURE__*/ Vue.extend({\n  name: NAME_TOOLTIP,\n  mixins: [normalizeSlotMixin],\n  inheritAttrs: false,\n  props,\n  data() {\n    return {\n      localShow: this[MODEL_PROP_NAME_SHOW],\n      localTitle: '',\n      localContent: ''\n    }\n  },\n  computed: {\n    // Data that will be passed to the template and popper\n    templateData() {\n      return {\n        title: this.localTitle,\n        content: this.localContent,\n        interactive: !this.noninteractive,\n        // Pass these props as is\n        ...pick(this.$props, [\n          'boundary',\n          'boundaryPadding',\n          'container',\n          'customClass',\n          'delay',\n          'fallbackPlacement',\n          'id',\n          'noFade',\n          'offset',\n          'placement',\n          'target',\n          'target',\n          'triggers',\n          'variant',\n          MODEL_PROP_NAME_ENABLED\n        ])\n      }\n    },\n    // Used to watch for changes to the title and content props\n    templateTitleContent() {\n      const { title, content } = this\n      return { title, content }\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME_SHOW](newValue, oldValue) {\n      if (newValue !== oldValue && newValue !== this.localShow && this.$_toolpop) {\n        if (newValue) {\n          this.$_toolpop.show()\n        } else {\n          // We use `forceHide()` to override any active triggers\n          this.$_toolpop.forceHide()\n        }\n      }\n    },\n    [MODEL_PROP_NAME_ENABLED](newValue) {\n      if (newValue) {\n        this.doDisable()\n      } else {\n        this.doEnable()\n      }\n    },\n    localShow(newValue) {\n      // TODO: May need to be done in a `$nextTick()`\n      this.$emit(MODEL_EVENT_NAME_SHOW, newValue)\n    },\n    templateData() {\n      this.$nextTick(() => {\n        if (this.$_toolpop) {\n          this.$_toolpop.updateData(this.templateData)\n        }\n      })\n    },\n    // Watchers for title/content props (prop changes do not trigger the `updated()` hook)\n    templateTitleContent() {\n      this.$nextTick(this.updateContent)\n    }\n  },\n  created() {\n    // Create private non-reactive props\n    this.$_toolpop = null\n  },\n  updated() {\n    // Update the `propData` object\n    // Done in a `$nextTick()` to ensure slot(s) have updated\n    this.$nextTick(this.updateContent)\n  },\n  beforeDestroy() {\n    // Shutdown our local event listeners\n    this.$off(EVENT_NAME_OPEN, this.doOpen)\n    this.$off(EVENT_NAME_CLOSE, this.doClose)\n    this.$off(EVENT_NAME_DISABLE, this.doDisable)\n    this.$off(EVENT_NAME_ENABLE, this.doEnable)\n    // Destroy the tip instance\n    if (this.$_toolpop) {\n      this.$_toolpop.$destroy()\n      this.$_toolpop = null\n    }\n  },\n  mounted() {\n    // Instantiate a new BVTooltip instance\n    // Done in a `$nextTick()` to ensure DOM has completed rendering\n    // so that target can be found\n    this.$nextTick(() => {\n      // Load the on demand child instance\n      const Component = this.getComponent()\n      // Ensure we have initial content\n      this.updateContent()\n      // Pass down the scoped style attribute if available\n      const scopeId = getScopeId(this) || getScopeId(this.$parent)\n      // Create the instance\n      const $toolpop = (this.$_toolpop = new Component({\n        parent: this,\n        // Pass down the scoped style ID\n        _scopeId: scopeId || undefined\n      }))\n      // Set the initial data\n      $toolpop.updateData(this.templateData)\n      // Set listeners\n      $toolpop.$on(EVENT_NAME_SHOW, this.onShow)\n      $toolpop.$on(EVENT_NAME_SHOWN, this.onShown)\n      $toolpop.$on(EVENT_NAME_HIDE, this.onHide)\n      $toolpop.$on(EVENT_NAME_HIDDEN, this.onHidden)\n      $toolpop.$on(EVENT_NAME_DISABLED, this.onDisabled)\n      $toolpop.$on(EVENT_NAME_ENABLED, this.onEnabled)\n      // Initially disabled?\n      if (this[MODEL_PROP_NAME_ENABLED]) {\n        // Initially disabled\n        this.doDisable()\n      }\n      // Listen to open signals from others\n      this.$on(EVENT_NAME_OPEN, this.doOpen)\n      // Listen to close signals from others\n      this.$on(EVENT_NAME_CLOSE, this.doClose)\n      // Listen to disable signals from others\n      this.$on(EVENT_NAME_DISABLE, this.doDisable)\n      // Listen to enable signals from others\n      this.$on(EVENT_NAME_ENABLE, this.doEnable)\n      // Initially show tooltip?\n      if (this.localShow) {\n        $toolpop.show()\n      }\n    })\n  },\n  methods: {\n    getComponent() {\n      // Overridden by BPopover\n      return BVTooltip\n    },\n    updateContent() {\n      // Overridden by BPopover\n      // Tooltip: Default slot is `title`\n      // Popover: Default slot is `content`, `title` slot is title\n      // We pass a scoped slot function reference by default (Vue v2.6x)\n      // And pass the title prop as a fallback\n      this.setTitle(this.normalizeSlot() || this.title)\n    },\n    // Helper methods for `updateContent()`\n    setTitle(value) {\n      value = isUndefinedOrNull(value) ? '' : value\n      // We only update the value if it has changed\n      if (this.localTitle !== value) {\n        this.localTitle = value\n      }\n    },\n    setContent(value) {\n      value = isUndefinedOrNull(value) ? '' : value\n      // We only update the value if it has changed\n      if (this.localContent !== value) {\n        this.localContent = value\n      }\n    },\n    // --- Template event handlers ---\n    onShow(bvEvent) {\n      // Placeholder\n      this.$emit(EVENT_NAME_SHOW, bvEvent)\n      if (bvEvent) {\n        this.localShow = !bvEvent.defaultPrevented\n      }\n    },\n    onShown(bvEvent) {\n      // Tip is now showing\n      this.localShow = true\n      this.$emit(EVENT_NAME_SHOWN, bvEvent)\n    },\n    onHide(bvEvent) {\n      this.$emit(EVENT_NAME_HIDE, bvEvent)\n    },\n    onHidden(bvEvent) {\n      // Tip is no longer showing\n      this.$emit(EVENT_NAME_HIDDEN, bvEvent)\n      this.localShow = false\n    },\n    onDisabled(bvEvent) {\n      // Prevent possible endless loop if user mistakenly\n      // fires `disabled` instead of `disable`\n      if (bvEvent && bvEvent.type === EVENT_NAME_DISABLED) {\n        this.$emit(MODEL_EVENT_NAME_ENABLED, true)\n        this.$emit(EVENT_NAME_DISABLED, bvEvent)\n      }\n    },\n    onEnabled(bvEvent) {\n      // Prevent possible endless loop if user mistakenly\n      // fires `enabled` instead of `enable`\n      if (bvEvent && bvEvent.type === EVENT_NAME_ENABLED) {\n        this.$emit(MODEL_EVENT_NAME_ENABLED, false)\n        this.$emit(EVENT_NAME_ENABLED, bvEvent)\n      }\n    },\n    // --- Local event listeners ---\n    doOpen() {\n      !this.localShow && this.$_toolpop && this.$_toolpop.show()\n    },\n    doClose() {\n      this.localShow && this.$_toolpop && this.$_toolpop.hide()\n    },\n    doDisable() {\n      this.$_toolpop && this.$_toolpop.disable()\n    },\n    doEnable() {\n      this.$_toolpop && this.$_toolpop.enable()\n    }\n  },\n  render(h) {\n    // Always renders a comment node\n    // TODO:\n    //   Future: Possibly render a target slot (single root element)\n    //   which we can apply the listeners to (pass `this.$el` to BVTooltip)\n    return h()\n  }\n})\n","import { Vue } from '../../../vue'\nimport { NAME_POPOVER_TEMPLATE } from '../../../constants/components'\nimport { isFunction, isUndefinedOrNull } from '../../../utils/inspect'\nimport { BVTooltipTemplate } from '../../tooltip/helpers/bv-tooltip-template'\n\n// @vue/component\nexport const BVPopoverTemplate = /*#__PURE__*/ Vue.extend({\n  name: NAME_POPOVER_TEMPLATE,\n  extends: BVTooltipTemplate,\n  computed: {\n    templateType() {\n      return 'popover'\n    }\n  },\n  methods: {\n    renderTemplate(h) {\n      const { title, content } = this\n\n      // Title and content could be a scoped slot function\n      const $title = isFunction(title) ? title({}) : title\n      const $content = isFunction(content) ? content({}) : content\n\n      // Directive usage only\n      const titleDomProps = this.html && !isFunction(title) ? { innerHTML: title } : {}\n      const contentDomProps = this.html && !isFunction(content) ? { innerHTML: content } : {}\n\n      return h(\n        'div',\n        {\n          staticClass: 'popover b-popover',\n          class: this.templateClasses,\n          attrs: this.templateAttributes,\n          on: this.templateListeners\n        },\n        [\n          h('div', {\n            staticClass: 'arrow',\n            ref: 'arrow'\n          }),\n          isUndefinedOrNull($title) || $title === ''\n            ? /* istanbul ignore next */ h()\n            : h('h3', { staticClass: 'popover-header', domProps: titleDomProps }, [$title]),\n          isUndefinedOrNull($content) || $content === ''\n            ? /* istanbul ignore next */ h()\n            : h('div', { staticClass: 'popover-body', domProps: contentDomProps }, [$content])\n        ]\n      )\n    }\n  }\n})\n","// Popover \"Class\" (Built as a renderless Vue instance)\n// Inherits from BVTooltip\n//\n// Handles trigger events, etc.\n// Instantiates template on demand\n\nimport { Vue } from '../../../vue'\nimport { NAME_POPOVER_HELPER } from '../../../constants/components'\nimport { BVTooltip } from '../../tooltip/helpers/bv-tooltip'\nimport { BVPopoverTemplate } from './bv-popover-template'\n\n// @vue/component\nexport const BVPopover = /*#__PURE__*/ Vue.extend({\n  name: NAME_POPOVER_HELPER,\n  extends: BVTooltip,\n  computed: {\n    // Overwrites BVTooltip\n    templateType() {\n      return 'popover'\n    }\n  },\n  methods: {\n    getTemplate() {\n      // Overwrites BVTooltip\n      return BVPopoverTemplate\n    }\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_POPOVER } from '../../constants/components'\nimport { EVENT_NAME_CLICK } from '../../constants/events'\nimport { PROP_TYPE_ARRAY_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_TITLE } from '../../constants/slots'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BTooltip, props as BTooltipProps } from '../tooltip/tooltip'\nimport { BVPopover } from './helpers/bv-popover'\nimport { sortKeys } from '../../utils/object'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...BTooltipProps,\n    content: makeProp(PROP_TYPE_STRING),\n    placement: makeProp(PROP_TYPE_STRING, 'right'),\n    triggers: makeProp(PROP_TYPE_ARRAY_STRING, EVENT_NAME_CLICK)\n  }),\n  NAME_POPOVER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BPopover = /*#__PURE__*/ Vue.extend({\n  name: NAME_POPOVER,\n  extends: BTooltip,\n  inheritAttrs: false,\n  props,\n  methods: {\n    getComponent() {\n      // Overridden by BPopover\n      return BVPopover\n    },\n    updateContent() {\n      // Tooltip: Default slot is `title`\n      // Popover: Default slot is `content`, `title` slot is title\n      // We pass a scoped slot function references by default (Vue v2.6x)\n      // And pass the title prop as a fallback\n      this.setContent(this.normalizeSlot() || this.content)\n      this.setTitle(this.normalizeSlot(SLOT_NAME_TITLE) || this.title)\n    }\n  }\n  // Render function provided by BTooltip\n})\n","import { NAME_POPOVER } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport { EVENT_NAME_SHOW } from '../../constants/events'\nimport { concat } from '../../utils/array'\nimport { getComponentConfig } from '../../utils/config'\nimport { getScopeId } from '../../utils/get-scope-id'\nimport { identity } from '../../utils/identity'\nimport {\n  isFunction,\n  isNumber,\n  isPlainObject,\n  isString,\n  isUndefined,\n  isUndefinedOrNull\n} from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { toInteger } from '../../utils/number'\nimport { keys } from '../../utils/object'\nimport { BVPopover } from '../../components/popover/helpers/bv-popover'\n\n// Key which we use to store tooltip object on element\nconst BV_POPOVER = '__BV_Popover__'\n\n// Default trigger\nconst DefaultTrigger = 'click'\n\n// Valid event triggers\nconst validTriggers = {\n  focus: true,\n  hover: true,\n  click: true,\n  blur: true,\n  manual: true\n}\n\n// Directive modifier test regular expressions. Pre-compile for performance\nconst htmlRE = /^html$/i\nconst noFadeRE = /^nofade$/i\nconst placementRE = /^(auto|top(left|right)?|bottom(left|right)?|left(top|bottom)?|right(top|bottom)?)$/i\nconst boundaryRE = /^(window|viewport|scrollParent)$/i\nconst delayRE = /^d\\d+$/i\nconst delayShowRE = /^ds\\d+$/i\nconst delayHideRE = /^dh\\d+$/i\nconst offsetRE = /^o-?\\d+$/i\nconst variantRE = /^v-.+$/i\nconst spacesRE = /\\s+/\n\n// Build a Popover config based on bindings (if any)\n// Arguments and modifiers take precedence over passed value config object\nconst parseBindings = (bindings, vnode) => /* istanbul ignore next: not easy to test */ {\n  // We start out with a basic config\n  let config = {\n    title: undefined,\n    content: undefined,\n    trigger: '', // Default set below if needed\n    placement: 'right',\n    fallbackPlacement: 'flip',\n    container: false, // Default of body\n    animation: true,\n    offset: 0,\n    disabled: false,\n    id: null,\n    html: false,\n    delay: getComponentConfig(NAME_POPOVER, 'delay', 50),\n    boundary: String(getComponentConfig(NAME_POPOVER, 'boundary', 'scrollParent')),\n    boundaryPadding: toInteger(getComponentConfig(NAME_POPOVER, 'boundaryPadding', 5), 0),\n    variant: getComponentConfig(NAME_POPOVER, 'variant'),\n    customClass: getComponentConfig(NAME_POPOVER, 'customClass')\n  }\n\n  // Process `bindings.value`\n  if (isString(bindings.value) || isNumber(bindings.value)) {\n    // Value is popover content (html optionally supported)\n    config.content = bindings.value\n  } else if (isFunction(bindings.value)) {\n    // Content generator function\n    config.content = bindings.value\n  } else if (isPlainObject(bindings.value)) {\n    // Value is config object, so merge\n    config = { ...config, ...bindings.value }\n  }\n\n  // If argument, assume element ID of container element\n  if (bindings.arg) {\n    // Element ID specified as arg\n    // We must prepend '#' to become a CSS selector\n    config.container = `#${bindings.arg}`\n  }\n\n  // If title is not provided, try title attribute\n  if (isUndefined(config.title)) {\n    // Try attribute\n    const data = vnode.data || {}\n    config.title = data.attrs && !isUndefinedOrNull(data.attrs.title) ? data.attrs.title : undefined\n  }\n\n  // Normalize delay\n  if (!isPlainObject(config.delay)) {\n    config.delay = {\n      show: toInteger(config.delay, 0),\n      hide: toInteger(config.delay, 0)\n    }\n  }\n\n  // Process modifiers\n  keys(bindings.modifiers).forEach(mod => {\n    if (htmlRE.test(mod)) {\n      // Title/content allows HTML\n      config.html = true\n    } else if (noFadeRE.test(mod)) {\n      // No animation\n      config.animation = false\n    } else if (placementRE.test(mod)) {\n      // Placement of popover\n      config.placement = mod\n    } else if (boundaryRE.test(mod)) {\n      // Boundary of popover\n      mod = mod === 'scrollparent' ? 'scrollParent' : mod\n      config.boundary = mod\n    } else if (delayRE.test(mod)) {\n      // Delay value\n      const delay = toInteger(mod.slice(1), 0)\n      config.delay.show = delay\n      config.delay.hide = delay\n    } else if (delayShowRE.test(mod)) {\n      // Delay show value\n      config.delay.show = toInteger(mod.slice(2), 0)\n    } else if (delayHideRE.test(mod)) {\n      // Delay hide value\n      config.delay.hide = toInteger(mod.slice(2), 0)\n    } else if (offsetRE.test(mod)) {\n      // Offset value, negative allowed\n      config.offset = toInteger(mod.slice(1), 0)\n    } else if (variantRE.test(mod)) {\n      // Variant\n      config.variant = mod.slice(2) || null\n    }\n  })\n\n  // Special handling of event trigger modifiers trigger is\n  // a space separated list\n  const selectedTriggers = {}\n\n  // Parse current config object trigger\n  concat(config.trigger || '')\n    .filter(identity)\n    .join(' ')\n    .trim()\n    .toLowerCase()\n    .split(spacesRE)\n    .forEach(trigger => {\n      if (validTriggers[trigger]) {\n        selectedTriggers[trigger] = true\n      }\n    })\n\n  // Parse modifiers for triggers\n  keys(bindings.modifiers).forEach(mod => {\n    mod = mod.toLowerCase()\n    if (validTriggers[mod]) {\n      // If modifier is a valid trigger\n      selectedTriggers[mod] = true\n    }\n  })\n\n  // Sanitize triggers\n  config.trigger = keys(selectedTriggers).join(' ')\n  if (config.trigger === 'blur') {\n    // Blur by itself is useless, so convert it to 'focus'\n    config.trigger = 'focus'\n  }\n  if (!config.trigger) {\n    // Use default trigger\n    config.trigger = DefaultTrigger\n  }\n\n  return config\n}\n\n// Add or update Popover on our element\nconst applyPopover = (el, bindings, vnode) => {\n  if (!IS_BROWSER) {\n    /* istanbul ignore next */\n    return\n  }\n  const config = parseBindings(bindings, vnode)\n  if (!el[BV_POPOVER]) {\n    const $parent = vnode.context\n    el[BV_POPOVER] = new BVPopover({\n      parent: $parent,\n      // Add the parent's scoped style attribute data\n      _scopeId: getScopeId($parent, undefined)\n    })\n    el[BV_POPOVER].__bv_prev_data__ = {}\n    el[BV_POPOVER].$on(EVENT_NAME_SHOW, () => /* istanbul ignore next: for now */ {\n      // Before showing the popover, we update the title\n      // and content if they are functions\n      const data = {}\n      if (isFunction(config.title)) {\n        data.title = config.title(el)\n      }\n      if (isFunction(config.content)) {\n        data.content = config.content(el)\n      }\n      if (keys(data).length > 0) {\n        el[BV_POPOVER].updateData(data)\n      }\n    })\n  }\n  const data = {\n    title: config.title,\n    content: config.content,\n    triggers: config.trigger,\n    placement: config.placement,\n    fallbackPlacement: config.fallbackPlacement,\n    variant: config.variant,\n    customClass: config.customClass,\n    container: config.container,\n    boundary: config.boundary,\n    delay: config.delay,\n    offset: config.offset,\n    noFade: !config.animation,\n    id: config.id,\n    disabled: config.disabled,\n    html: config.html\n  }\n  const oldData = el[BV_POPOVER].__bv_prev_data__\n  el[BV_POPOVER].__bv_prev_data__ = data\n  if (!looseEqual(data, oldData)) {\n    // We only update the instance if data has changed\n    const newData = {\n      target: el\n    }\n    keys(data).forEach(prop => {\n      // We only pass data properties that have changed\n      if (data[prop] !== oldData[prop]) {\n        // If title/content is a function, we execute it here\n        newData[prop] =\n          (prop === 'title' || prop === 'content') && isFunction(data[prop])\n            ? /* istanbul ignore next */ data[prop](el)\n            : data[prop]\n      }\n    })\n    el[BV_POPOVER].updateData(newData)\n  }\n}\n\n// Remove Popover from our element\nconst removePopover = el => {\n  if (el[BV_POPOVER]) {\n    el[BV_POPOVER].$destroy()\n    el[BV_POPOVER] = null\n  }\n  delete el[BV_POPOVER]\n}\n\n// Export our directive\nexport const VBPopover = {\n  bind(el, bindings, vnode) {\n    applyPopover(el, bindings, vnode)\n  },\n  // We use `componentUpdated` here instead of `update`, as the former\n  // waits until the containing component and children have finished updating\n  componentUpdated(el, bindings, vnode) {\n    // Performed in a `$nextTick()` to prevent endless render/update loops\n    vnode.context.$nextTick(() => {\n      applyPopover(el, bindings, vnode)\n    })\n  },\n  unbind(el) {\n    removePopover(el)\n  }\n}\n","import { VBPopover } from './popover'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBPopoverPlugin = /*#__PURE__*/ pluginFactory({\n  directives: { VBPopover }\n})\n\nexport { VBPopoverPlugin, VBPopover }\n","import { BPopover } from './popover'\nimport { VBPopoverPlugin } from '../../directives/popover'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst PopoverPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BPopover },\n  plugins: { VBPopoverPlugin }\n})\n\nexport { PopoverPlugin, BPopover }\n","import { Vue } from '../../vue'\nimport { NAME_PROGRESS_BAR } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { htmlOrText } from '../../utils/html'\nimport { isBoolean } from '../../utils/inspect'\nimport { mathMax, mathPow } from '../../utils/math'\nimport { toFixed, toFloat, toInteger } from '../../utils/number'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    animated: makeProp(PROP_TYPE_BOOLEAN, null),\n    label: makeProp(PROP_TYPE_STRING),\n    labelHtml: makeProp(PROP_TYPE_STRING),\n    max: makeProp(PROP_TYPE_NUMBER_STRING, null),\n    precision: makeProp(PROP_TYPE_NUMBER_STRING, null),\n    showProgress: makeProp(PROP_TYPE_BOOLEAN, null),\n    showValue: makeProp(PROP_TYPE_BOOLEAN, null),\n    striped: makeProp(PROP_TYPE_BOOLEAN, null),\n    value: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n    variant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_PROGRESS_BAR\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BProgressBar = /*#__PURE__*/ Vue.extend({\n  name: NAME_PROGRESS_BAR,\n  mixins: [normalizeSlotMixin],\n  inject: {\n    bvProgress: {\n      default: /* istanbul ignore next */ () => ({})\n    }\n  },\n  props,\n  computed: {\n    progressBarClasses() {\n      const { computedAnimated, computedVariant } = this\n      return [\n        computedVariant ? `bg-${computedVariant}` : '',\n        this.computedStriped || computedAnimated ? 'progress-bar-striped' : '',\n        computedAnimated ? 'progress-bar-animated' : ''\n      ]\n    },\n    progressBarStyles() {\n      return {\n        width: 100 * (this.computedValue / this.computedMax) + '%'\n      }\n    },\n    computedValue() {\n      return toFloat(this.value, 0)\n    },\n    computedMax() {\n      // Prefer our max over parent setting\n      // Default to `100` for invalid values (`-x`, `0`, `NaN`)\n      const max = toFloat(this.max) || toFloat(this.bvProgress.max, 0)\n      return max > 0 ? max : 100\n    },\n    computedPrecision() {\n      // Prefer our precision over parent setting\n      // Default to `0` for invalid values (`-x`, `NaN`)\n      return mathMax(toInteger(this.precision, toInteger(this.bvProgress.precision, 0)), 0)\n    },\n    computedProgress() {\n      const precision = this.computedPrecision\n      const p = mathPow(10, precision)\n      return toFixed((100 * p * this.computedValue) / this.computedMax / p, precision)\n    },\n    computedVariant() {\n      // Prefer our variant over parent setting\n      return this.variant || this.bvProgress.variant\n    },\n    computedStriped() {\n      // Prefer our striped over parent setting\n      return isBoolean(this.striped) ? this.striped : this.bvProgress.striped || false\n    },\n    computedAnimated() {\n      // Prefer our animated over parent setting\n      return isBoolean(this.animated) ? this.animated : this.bvProgress.animated || false\n    },\n    computedShowProgress() {\n      // Prefer our showProgress over parent setting\n      return isBoolean(this.showProgress)\n        ? this.showProgress\n        : this.bvProgress.showProgress || false\n    },\n    computedShowValue() {\n      // Prefer our showValue over parent setting\n      return isBoolean(this.showValue) ? this.showValue : this.bvProgress.showValue || false\n    }\n  },\n  render(h) {\n    const { label, labelHtml, computedValue, computedPrecision } = this\n\n    let $children\n    let domProps = {}\n    if (this.hasNormalizedSlot()) {\n      $children = this.normalizeSlot()\n    } else if (label || labelHtml) {\n      domProps = htmlOrText(labelHtml, label)\n    } else if (this.computedShowProgress) {\n      $children = this.computedProgress\n    } else if (this.computedShowValue) {\n      $children = toFixed(computedValue, computedPrecision)\n    }\n\n    return h(\n      'div',\n      {\n        staticClass: 'progress-bar',\n        class: this.progressBarClasses,\n        style: this.progressBarStyles,\n        attrs: {\n          role: 'progressbar',\n          'aria-valuemin': '0',\n          'aria-valuemax': toString(this.computedMax),\n          'aria-valuenow': toFixed(computedValue, computedPrecision)\n        },\n        domProps\n      },\n      $children\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_PROGRESS } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BProgressBar, props as BProgressBarProps } from './progress-bar'\n\n// --- Props ---\n\nconst progressBarProps = omit(BProgressBarProps, ['label', 'labelHtml'])\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...progressBarProps,\n    animated: makeProp(PROP_TYPE_BOOLEAN, false),\n    height: makeProp(PROP_TYPE_STRING),\n    max: makeProp(PROP_TYPE_NUMBER_STRING, 100),\n    precision: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n    showProgress: makeProp(PROP_TYPE_BOOLEAN, false),\n    showValue: makeProp(PROP_TYPE_BOOLEAN, false),\n    striped: makeProp(PROP_TYPE_BOOLEAN, false)\n  }),\n  NAME_PROGRESS\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BProgress = /*#__PURE__*/ Vue.extend({\n  name: NAME_PROGRESS,\n  mixins: [normalizeSlotMixin],\n  provide() {\n    return { bvProgress: this }\n  },\n  props,\n  computed: {\n    progressHeight() {\n      return { height: this.height || null }\n    }\n  },\n  render(h) {\n    let $childNodes = this.normalizeSlot()\n    if (!$childNodes) {\n      $childNodes = h(BProgressBar, { props: pluckProps(progressBarProps, this.$props) })\n    }\n\n    return h(\n      'div',\n      {\n        staticClass: 'progress',\n        style: this.progressHeight\n      },\n      [$childNodes]\n    )\n  }\n})\n","import { BProgress } from './progress'\nimport { BProgressBar } from './progress-bar'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ProgressPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BProgress,\n    BProgressBar\n  }\n})\n\nexport { ProgressPlugin, BProgress, BProgressBar }\n","import { Vue } from '../../vue'\nimport { NAME_COLLAPSE, NAME_SIDEBAR } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport { EVENT_NAME_CHANGE, EVENT_NAME_HIDDEN, EVENT_NAME_SHOWN } from '../../constants/events'\nimport { CODE_ESC } from '../../constants/key-codes'\nimport {\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_STRING,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport {\n  SLOT_NAME_DEFAULT,\n  SLOT_NAME_FOOTER,\n  SLOT_NAME_HEADER,\n  SLOT_NAME_HEADER_CLOSE,\n  SLOT_NAME_TITLE\n} from '../../constants/slots'\nimport { attemptFocus, contains, getActiveElement, getTabables } from '../../utils/dom'\nimport { getRootActionEventName, getRootEventName } from '../../utils/events'\nimport { makeModelMixin } from '../../utils/model'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BIconX } from '../../icons/icons'\nimport { BButtonClose } from '../button/button-close'\nimport { BVTransition } from '../transition/bv-transition'\n\n// --- Constants ---\n\nconst CLASS_NAME = 'b-sidebar'\n\nconst ROOT_ACTION_EVENT_NAME_REQUEST_STATE = getRootActionEventName(NAME_COLLAPSE, 'request-state')\nconst ROOT_ACTION_EVENT_NAME_TOGGLE = getRootActionEventName(NAME_COLLAPSE, 'toggle')\n\nconst ROOT_EVENT_NAME_STATE = getRootEventName(NAME_COLLAPSE, 'state')\nconst ROOT_EVENT_NAME_SYNC_STATE = getRootEventName(NAME_COLLAPSE, 'sync-state')\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('visible', {\n  type: PROP_TYPE_BOOLEAN,\n  defaultValue: false,\n  event: EVENT_NAME_CHANGE\n})\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ariaLabel: makeProp(PROP_TYPE_STRING),\n    ariaLabelledby: makeProp(PROP_TYPE_STRING),\n    // If `true`, shows a basic backdrop\n    backdrop: makeProp(PROP_TYPE_BOOLEAN, false),\n    backdropVariant: makeProp(PROP_TYPE_STRING, 'dark'),\n    bgVariant: makeProp(PROP_TYPE_STRING, 'light'),\n    bodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    // `aria-label` for close button\n    closeLabel: makeProp(PROP_TYPE_STRING),\n    footerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    headerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n    noCloseOnBackdrop: makeProp(PROP_TYPE_BOOLEAN, false),\n    noCloseOnEsc: makeProp(PROP_TYPE_BOOLEAN, false),\n    noCloseOnRouteChange: makeProp(PROP_TYPE_BOOLEAN, false),\n    noEnforceFocus: makeProp(PROP_TYPE_BOOLEAN, false),\n    noHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n    noHeaderClose: makeProp(PROP_TYPE_BOOLEAN, false),\n    noSlide: makeProp(PROP_TYPE_BOOLEAN, false),\n    right: makeProp(PROP_TYPE_BOOLEAN, false),\n    shadow: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n    sidebarClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    tag: makeProp(PROP_TYPE_STRING, 'div'),\n    textVariant: makeProp(PROP_TYPE_STRING, 'dark'),\n    title: makeProp(PROP_TYPE_STRING),\n    width: makeProp(PROP_TYPE_STRING),\n    zIndex: makeProp(PROP_TYPE_NUMBER_STRING)\n  }),\n  NAME_SIDEBAR\n)\n\n// --- Render methods ---\n\nconst renderHeaderTitle = (h, ctx) => {\n  // Render a empty `<span>` when to title was provided\n  const title = ctx.normalizeSlot(SLOT_NAME_TITLE, ctx.slotScope) || ctx.title\n  if (!title) {\n    return h('span')\n  }\n\n  return h('strong', { attrs: { id: ctx.safeId('__title__') } }, [title])\n}\n\nconst renderHeaderClose = (h, ctx) => {\n  if (ctx.noHeaderClose) {\n    return h()\n  }\n\n  const { closeLabel, textVariant, hide } = ctx\n\n  return h(\n    BButtonClose,\n    {\n      props: { ariaLabel: closeLabel, textVariant },\n      on: { click: hide },\n      ref: 'close-button'\n    },\n    [ctx.normalizeSlot(SLOT_NAME_HEADER_CLOSE) || h(BIconX)]\n  )\n}\n\nconst renderHeader = (h, ctx) => {\n  if (ctx.noHeader) {\n    return h()\n  }\n\n  let $content = ctx.normalizeSlot(SLOT_NAME_HEADER, ctx.slotScope)\n  if (!$content) {\n    const $title = renderHeaderTitle(h, ctx)\n    const $close = renderHeaderClose(h, ctx)\n    $content = ctx.right ? [$close, $title] : [$title, $close]\n  }\n\n  return h(\n    'header',\n    {\n      staticClass: `${CLASS_NAME}-header`,\n      class: ctx.headerClass,\n      key: 'header'\n    },\n    $content\n  )\n}\n\nconst renderBody = (h, ctx) => {\n  return h(\n    'div',\n    {\n      staticClass: `${CLASS_NAME}-body`,\n      class: ctx.bodyClass,\n      key: 'body'\n    },\n    [ctx.normalizeSlot(SLOT_NAME_DEFAULT, ctx.slotScope)]\n  )\n}\n\nconst renderFooter = (h, ctx) => {\n  const $footer = ctx.normalizeSlot(SLOT_NAME_FOOTER, ctx.slotScope)\n  if (!$footer) {\n    return h()\n  }\n\n  return h(\n    'footer',\n    {\n      staticClass: `${CLASS_NAME}-footer`,\n      class: ctx.footerClass,\n      key: 'footer'\n    },\n    [$footer]\n  )\n}\n\nconst renderContent = (h, ctx) => {\n  // We render the header even if `lazy` is enabled as it\n  // acts as the accessible label for the sidebar\n  const $header = renderHeader(h, ctx)\n  if (ctx.lazy && !ctx.isOpen) {\n    return $header\n  }\n\n  return [$header, renderBody(h, ctx), renderFooter(h, ctx)]\n}\n\nconst renderBackdrop = (h, ctx) => {\n  if (!ctx.backdrop) {\n    return h()\n  }\n\n  const { backdropVariant } = ctx\n\n  return h('div', {\n    directives: [{ name: 'show', value: ctx.localShow }],\n    staticClass: 'b-sidebar-backdrop',\n    class: { [`bg-${backdropVariant}`]: backdropVariant },\n    on: { click: ctx.onBackdropClick }\n  })\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BSidebar = /*#__PURE__*/ Vue.extend({\n  name: NAME_SIDEBAR,\n  mixins: [attrsMixin, idMixin, modelMixin, listenOnRootMixin, normalizeSlotMixin],\n  inheritAttrs: false,\n  props,\n  data() {\n    const visible = !!this[MODEL_PROP_NAME]\n    return {\n      // Internal `v-model` state\n      localShow: visible,\n      // For lazy render triggering\n      isOpen: visible\n    }\n  },\n  computed: {\n    transitionProps() {\n      return this.noSlide\n        ? /* istanbul ignore next */ { css: true }\n        : {\n            css: true,\n            enterClass: '',\n            enterActiveClass: 'slide',\n            enterToClass: 'show',\n            leaveClass: 'show',\n            leaveActiveClass: 'slide',\n            leaveToClass: ''\n          }\n    },\n    slotScope() {\n      const { hide, right, localShow: visible } = this\n      return { hide, right, visible }\n    },\n    hasTitle() {\n      const { $scopedSlots, $slots } = this\n      return (\n        !this.noHeader &&\n        !this.hasNormalizedSlot(SLOT_NAME_HEADER) &&\n        !!(this.normalizeSlot(SLOT_NAME_TITLE, this.slotScope, $scopedSlots, $slots) || this.title)\n      )\n    },\n    titleId() {\n      return this.hasTitle ? this.safeId('__title__') : null\n    },\n    computedAttrs() {\n      return {\n        ...this.bvAttrs,\n        id: this.safeId(),\n        tabindex: '-1',\n        role: 'dialog',\n        'aria-modal': this.backdrop ? 'true' : 'false',\n        'aria-hidden': this.localShow ? null : 'true',\n        'aria-label': this.ariaLabel || null,\n        'aria-labelledby': this.ariaLabelledby || this.titleId || null\n      }\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue, oldValue) {\n      if (newValue !== oldValue) {\n        this.localShow = newValue\n      }\n    },\n    localShow(newValue, oldValue) {\n      if (newValue !== oldValue) {\n        this.emitState(newValue)\n        this.$emit(MODEL_EVENT_NAME, newValue)\n      }\n    },\n    /* istanbul ignore next */\n    $route(newValue = {}, oldValue = {}) {\n      if (!this.noCloseOnRouteChange && newValue.fullPath !== oldValue.fullPath) {\n        this.hide()\n      }\n    }\n  },\n  created() {\n    // Define non-reactive properties\n    this.$_returnFocusEl = null\n  },\n  mounted() {\n    // Add `$root` listeners\n    this.listenOnRoot(ROOT_ACTION_EVENT_NAME_TOGGLE, this.handleToggle)\n    this.listenOnRoot(ROOT_ACTION_EVENT_NAME_REQUEST_STATE, this.handleSync)\n    // Send out a gratuitous state event to ensure toggle button is synced\n    this.$nextTick(() => {\n      this.emitState(this.localShow)\n    })\n  },\n  /* istanbul ignore next */\n  activated() {\n    this.emitSync()\n  },\n  beforeDestroy() {\n    this.localShow = false\n    this.$_returnFocusEl = null\n  },\n  methods: {\n    hide() {\n      this.localShow = false\n    },\n    emitState(state = this.localShow) {\n      this.emitOnRoot(ROOT_EVENT_NAME_STATE, this.safeId(), state)\n    },\n    emitSync(state = this.localShow) {\n      this.emitOnRoot(ROOT_EVENT_NAME_SYNC_STATE, this.safeId(), state)\n    },\n    handleToggle(id) {\n      // Note `safeId()` can be null until after mount\n      if (id && id === this.safeId()) {\n        this.localShow = !this.localShow\n      }\n    },\n    handleSync(id) {\n      // Note `safeId()` can be null until after mount\n      if (id && id === this.safeId()) {\n        this.$nextTick(() => {\n          this.emitSync(this.localShow)\n        })\n      }\n    },\n    onKeydown(event) {\n      const { keyCode } = event\n      if (!this.noCloseOnEsc && keyCode === CODE_ESC && this.localShow) {\n        this.hide()\n      }\n    },\n    onBackdropClick() {\n      if (this.localShow && !this.noCloseOnBackdrop) {\n        this.hide()\n      }\n    },\n    /* istanbul ignore next */\n    onTopTrapFocus() {\n      const tabables = getTabables(this.$refs.content)\n      this.enforceFocus(tabables.reverse()[0])\n    },\n    /* istanbul ignore next */\n    onBottomTrapFocus() {\n      const tabables = getTabables(this.$refs.content)\n      this.enforceFocus(tabables[0])\n    },\n    onBeforeEnter() {\n      // Returning focus to `document.body` may cause unwanted scrolls,\n      // so we exclude setting focus on body\n      this.$_returnFocusEl = getActiveElement(IS_BROWSER ? [document.body] : [])\n      // Trigger lazy render\n      this.isOpen = true\n    },\n    onAfterEnter(el) {\n      if (!contains(el, getActiveElement())) {\n        this.enforceFocus(el)\n      }\n      this.$emit(EVENT_NAME_SHOWN)\n    },\n    onAfterLeave() {\n      this.enforceFocus(this.$_returnFocusEl)\n      this.$_returnFocusEl = null\n      // Trigger lazy render\n      this.isOpen = false\n      this.$emit(EVENT_NAME_HIDDEN)\n    },\n    enforceFocus(el) {\n      if (!this.noEnforceFocus) {\n        attemptFocus(el)\n      }\n    }\n  },\n  render(h) {\n    const { bgVariant, width, textVariant, localShow } = this\n    const shadow = this.shadow === '' ? true : this.shadow\n\n    let $sidebar = h(\n      this.tag,\n      {\n        staticClass: CLASS_NAME,\n        class: [\n          {\n            shadow: shadow === true,\n            [`shadow-${shadow}`]: shadow && shadow !== true,\n            [`${CLASS_NAME}-right`]: this.right,\n            [`bg-${bgVariant}`]: bgVariant,\n            [`text-${textVariant}`]: textVariant\n          },\n          this.sidebarClass\n        ],\n        style: { width },\n        attrs: this.computedAttrs,\n        directives: [{ name: 'show', value: localShow }],\n        ref: 'content'\n      },\n      [renderContent(h, this)]\n    )\n\n    $sidebar = h(\n      'transition',\n      {\n        props: this.transitionProps,\n        on: {\n          beforeEnter: this.onBeforeEnter,\n          afterEnter: this.onAfterEnter,\n          afterLeave: this.onAfterLeave\n        }\n      },\n      [$sidebar]\n    )\n\n    const $backdrop = h(BVTransition, { props: { noFade: this.noSlide } }, [\n      renderBackdrop(h, this)\n    ])\n\n    let $tabTrapTop = h()\n    let $tabTrapBottom = h()\n    if (this.backdrop && localShow) {\n      $tabTrapTop = h('div', {\n        attrs: { tabindex: '0' },\n        on: { focus: this.onTopTrapFocus }\n      })\n      $tabTrapBottom = h('div', {\n        attrs: { tabindex: '0' },\n        on: { focus: this.onBottomTrapFocus }\n      })\n    }\n\n    return h(\n      'div',\n      {\n        staticClass: 'b-sidebar-outer',\n        style: { zIndex: this.zIndex },\n        attrs: { tabindex: '-1' },\n        on: { keydown: this.onKeydown }\n      },\n      [$tabTrapTop, $sidebar, $tabTrapBottom, $backdrop]\n    )\n  }\n})\n","import { BSidebar } from './sidebar'\nimport { VBTogglePlugin } from '../../directives/toggle'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst SidebarPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BSidebar },\n  plugins: { VBTogglePlugin }\n})\n\nexport { SidebarPlugin, BSidebar }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_SKELETON } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    animation: makeProp(PROP_TYPE_STRING, 'wave'),\n    height: makeProp(PROP_TYPE_STRING),\n    size: makeProp(PROP_TYPE_STRING),\n    type: makeProp(PROP_TYPE_STRING, 'text'),\n    variant: makeProp(PROP_TYPE_STRING),\n    width: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_SKELETON\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BSkeleton = /*#__PURE__*/ Vue.extend({\n  name: NAME_SKELETON,\n  functional: true,\n  props,\n  render(h, { data, props }) {\n    const { size, animation, variant } = props\n\n    return h(\n      'div',\n      mergeData(data, {\n        staticClass: 'b-skeleton',\n        style: {\n          width: size || props.width,\n          height: size || props.height\n        },\n        class: {\n          [`b-skeleton-${props.type}`]: true,\n          [`b-skeleton-animate-${animation}`]: animation,\n          [`bg-${variant}`]: variant\n        }\n      })\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_SKELETON_ICON } from '../../constants/components'\nimport { PROP_TYPE_OBJECT, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BIcon } from '../../icons'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    animation: makeProp(PROP_TYPE_STRING, 'wave'),\n    icon: makeProp(PROP_TYPE_STRING),\n    iconProps: makeProp(PROP_TYPE_OBJECT, {})\n  },\n  NAME_SKELETON_ICON\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BSkeletonIcon = /*#__PURE__*/ Vue.extend({\n  name: NAME_SKELETON_ICON,\n  functional: true,\n  props,\n  render(h, { props }) {\n    const { icon, animation } = props\n\n    const $icon = h(BIcon, {\n      staticClass: 'b-skeleton-icon',\n      props: {\n        ...props.iconProps,\n        icon\n      }\n    })\n\n    return h(\n      'div',\n      {\n        staticClass: 'b-skeleton-icon-wrapper position-relative d-inline-block overflow-hidden',\n        class: { [`b-skeleton-animate-${animation}`]: animation }\n      },\n      [$icon]\n    )\n  }\n})\n","import { Vue, mergeData } from '../vue'\nimport { NAME_ICONSTACK } from '../constants/components'\nimport { omit } from '../utils/object'\nimport { makePropsConfigurable } from '../utils/props'\nimport { BVIconBase, props as BVIconBaseProps } from './helpers/icon-base'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  omit(BVIconBaseProps, ['content', 'stacked']),\n  NAME_ICONSTACK\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BIconstack = /*#__PURE__*/ Vue.extend({\n  name: NAME_ICONSTACK,\n  functional: true,\n  props,\n  render(h, { data, props, children }) {\n    return h(\n      BVIconBase,\n      mergeData(data, {\n        staticClass: 'b-iconstack',\n        props: {\n          ...props,\n          stacked: false\n        }\n      }),\n      children\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_SKELETON_IMG } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BAspect } from '../aspect'\nimport { BSkeleton } from './skeleton'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    animation: makeProp(PROP_TYPE_STRING),\n    aspect: makeProp(PROP_TYPE_STRING, '16:9'),\n    cardImg: makeProp(PROP_TYPE_STRING),\n    height: makeProp(PROP_TYPE_STRING),\n    noAspect: makeProp(PROP_TYPE_BOOLEAN, false),\n    variant: makeProp(PROP_TYPE_STRING),\n    width: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_SKELETON_IMG\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BSkeletonImg = /*#__PURE__*/ Vue.extend({\n  name: NAME_SKELETON_IMG,\n  functional: true,\n  props,\n  render(h, { props }) {\n    const { aspect, width, height, animation, variant, cardImg } = props\n\n    const $img = h(BSkeleton, {\n      props: {\n        type: 'img',\n        width,\n        height,\n        animation,\n        variant\n      },\n      class: { [`card-img-${cardImg}`]: cardImg }\n    })\n\n    return props.noAspect ? $img : h(BAspect, { props: { aspect } }, [$img])\n  }\n})\n","// Mixin to determine if an event listener has been registered\n// either via `v-on:name` (in the parent) or programmatically\n// via `vm.$on('name', ...)`\n// See: https://github.com/vuejs/vue/issues/10825\nimport { Vue } from '../vue'\nimport { isArray, isUndefined } from '../utils/inspect'\n\n// @vue/component\nexport const hasListenerMixin = Vue.extend({\n  methods: {\n    hasListener(name) {\n      // Only includes listeners registered via `v-on:name`\n      const $listeners = this.$listeners || {}\n      // Includes `v-on:name` and `this.$on('name')` registered listeners\n      // Note this property is not part of the public Vue API, but it is\n      // the only way to determine if a listener was added via `vm.$on`\n      const $events = this._events || {}\n      // Registered listeners in `this._events` are always an array,\n      // but might be zero length\n      return !isUndefined($listeners[name]) || (isArray($events[name]) && $events[name].length > 0)\n    }\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TR } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst LIGHT = 'light'\nconst DARK = 'dark'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    variant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_TR\n)\n\n// --- Main component ---\n\n// TODO:\n//   In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n//   to the child elements, so this can be converted to a functional component\n// @vue/component\nexport const BTr = /*#__PURE__*/ Vue.extend({\n  name: NAME_TR,\n  mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n  provide() {\n    return {\n      bvTableTr: this\n    }\n  },\n  inject: {\n    bvTableRowGroup: {\n      default: /* istanbul ignore next */ () => ({})\n    }\n  },\n  inheritAttrs: false,\n  props,\n  computed: {\n    // Sniffed by `<b-td>` / `<b-th>`\n    inTbody() {\n      return this.bvTableRowGroup.isTbody\n    },\n    // Sniffed by `<b-td>` / `<b-th>`\n    inThead() {\n      return this.bvTableRowGroup.isThead\n    },\n    // Sniffed by `<b-td>` / `<b-th>`\n    inTfoot() {\n      return this.bvTableRowGroup.isTfoot\n    },\n    // Sniffed by `<b-td>` / `<b-th>`\n    isDark() {\n      return this.bvTableRowGroup.isDark\n    },\n    // Sniffed by `<b-td>` / `<b-th>`\n    isStacked() {\n      return this.bvTableRowGroup.isStacked\n    },\n    // Sniffed by `<b-td>` / `<b-th>`\n    isResponsive() {\n      return this.bvTableRowGroup.isResponsive\n    },\n    // Sniffed by `<b-td>` / `<b-th>`\n    // Sticky headers are only supported in thead\n    isStickyHeader() {\n      return this.bvTableRowGroup.isStickyHeader\n    },\n    // Sniffed by <b-tr> / `<b-td>` / `<b-th>`\n    // Needed to handle header background classes, due to lack of\n    // background color inheritance with Bootstrap v4 table CSS\n    hasStickyHeader() {\n      return !this.isStacked && this.bvTableRowGroup.hasStickyHeader\n    },\n    // Sniffed by `<b-td>` / `<b-th>`\n    tableVariant() {\n      return this.bvTableRowGroup.tableVariant\n    },\n    // Sniffed by `<b-td>` / `<b-th>`\n    headVariant() {\n      return this.inThead ? this.bvTableRowGroup.headVariant : null\n    },\n    // Sniffed by `<b-td>` / `<b-th>`\n    footVariant() {\n      return this.inTfoot ? this.bvTableRowGroup.footVariant : null\n    },\n    isRowDark() {\n      return this.headVariant === LIGHT || this.footVariant === LIGHT\n        ? /* istanbul ignore next */ false\n        : this.headVariant === DARK || this.footVariant === DARK\n          ? /* istanbul ignore next */ true\n          : this.isDark\n    },\n    trClasses() {\n      const { variant } = this\n      return [variant ? `${this.isRowDark ? 'bg' : 'table'}-${variant}` : null]\n    },\n    trAttrs() {\n      return { role: 'row', ...this.bvAttrs }\n    }\n  },\n  render(h) {\n    return h(\n      'tr',\n      {\n        class: this.trClasses,\n        attrs: this.trAttrs,\n        // Pass native listeners to child\n        on: this.bvListeners\n      },\n      this.normalizeSlot()\n    )\n  }\n})\n","import { Vue } from '../../../vue'\nimport { SLOT_NAME_BOTTOM_ROW } from '../../../constants/slots'\nimport { isFunction } from '../../../utils/inspect'\nimport { BTr } from '../tr'\n\n// --- Props ---\n\nexport const props = {}\n\n// --- Mixin ---\n\n// @vue/component\nexport const bottomRowMixin = Vue.extend({\n  props,\n  methods: {\n    renderBottomRow() {\n      const { computedFields: fields, stacked, tbodyTrClass, tbodyTrAttr } = this\n      const h = this.$createElement\n\n      // Static bottom row slot (hidden in visibly stacked mode as we can't control the data-label)\n      // If in *always* stacked mode, we don't bother rendering the row\n      if (!this.hasNormalizedSlot(SLOT_NAME_BOTTOM_ROW) || stacked === true || stacked === '') {\n        return h()\n      }\n\n      return h(\n        BTr,\n        {\n          staticClass: 'b-table-bottom-row',\n          class: [\n            isFunction(tbodyTrClass)\n              ? /* istanbul ignore next */ tbodyTrClass(null, 'row-bottom')\n              : tbodyTrClass\n          ],\n          attrs: isFunction(tbodyTrAttr)\n            ? /* istanbul ignore next */ tbodyTrAttr(null, 'row-bottom')\n            : tbodyTrAttr,\n          key: 'b-bottom-row'\n        },\n        this.normalizeSlot(SLOT_NAME_BOTTOM_ROW, { columns: fields.length, fields })\n      )\n    }\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TABLE_CELL } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { isTag } from '../../utils/dom'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { toInteger } from '../../utils/number'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Helper methods ---\n\n// Parse a rowspan or colspan into a digit (or `null` if < `1` )\nconst parseSpan = value => {\n  value = toInteger(value, 0)\n  return value > 0 ? value : null\n}\n\n/* istanbul ignore next */\nconst spanValidator = value => isUndefinedOrNull(value) || parseSpan(value) > 0\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    colspan: makeProp(PROP_TYPE_NUMBER_STRING, null, spanValidator),\n    rowspan: makeProp(PROP_TYPE_NUMBER_STRING, null, spanValidator),\n    stackedHeading: makeProp(PROP_TYPE_STRING),\n    stickyColumn: makeProp(PROP_TYPE_BOOLEAN, false),\n    variant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_TABLE_CELL\n)\n\n// --- Main component ---\n\n// TODO:\n//   In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n//   to the child elements, so this can be converted to a functional component\n// @vue/component\nexport const BTd = /*#__PURE__*/ Vue.extend({\n  name: NAME_TABLE_CELL,\n  // Mixin order is important!\n  mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n  inject: {\n    bvTableTr: {\n      default: /* istanbul ignore next */ () => ({})\n    }\n  },\n  inheritAttrs: false,\n  props,\n  computed: {\n    // Overridden by `<b-th>`\n    tag() {\n      return 'td'\n    },\n    inTbody() {\n      return this.bvTableTr.inTbody\n    },\n    inThead() {\n      return this.bvTableTr.inThead\n    },\n    inTfoot() {\n      return this.bvTableTr.inTfoot\n    },\n    isDark() {\n      return this.bvTableTr.isDark\n    },\n    isStacked() {\n      return this.bvTableTr.isStacked\n    },\n    // We only support stacked-heading in tbody in stacked mode\n    isStackedCell() {\n      return this.inTbody && this.isStacked\n    },\n    isResponsive() {\n      return this.bvTableTr.isResponsive\n    },\n    // Needed to handle header background classes, due to lack of\n    // background color inheritance with Bootstrap v4 table CSS\n    // Sticky headers only apply to cells in table `thead`\n    isStickyHeader() {\n      return this.bvTableTr.isStickyHeader\n    },\n    // Needed to handle header background classes, due to lack of\n    // background color inheritance with Bootstrap v4 table CSS\n    hasStickyHeader() {\n      return this.bvTableTr.hasStickyHeader\n    },\n    // Needed to handle background classes, due to lack of\n    // background color inheritance with Bootstrap v4 table CSS\n    // Sticky column cells are only available in responsive\n    // mode (horizontal scrolling) or when sticky header mode\n    // Applies to cells in `thead`, `tbody` and `tfoot`\n    isStickyColumn() {\n      return !this.isStacked && (this.isResponsive || this.hasStickyHeader) && this.stickyColumn\n    },\n    rowVariant() {\n      return this.bvTableTr.variant\n    },\n    headVariant() {\n      return this.bvTableTr.headVariant\n    },\n    footVariant() {\n      return this.bvTableTr.footVariant\n    },\n    tableVariant() {\n      return this.bvTableTr.tableVariant\n    },\n    computedColspan() {\n      return parseSpan(this.colspan)\n    },\n    computedRowspan() {\n      return parseSpan(this.rowspan)\n    },\n    // We use computed props here for improved performance by caching\n    // the results of the string interpolation\n    cellClasses() {\n      let { variant, headVariant, isStickyColumn } = this\n      if (\n        (!variant && this.isStickyHeader && !headVariant) ||\n        (!variant && isStickyColumn && this.inTfoot && !this.footVariant) ||\n        (!variant && isStickyColumn && this.inThead && !headVariant) ||\n        (!variant && isStickyColumn && this.inTbody)\n      ) {\n        // Needed for sticky-header mode as Bootstrap v4 table cells do\n        // not inherit parent's `background-color`\n        variant = this.rowVariant || this.tableVariant || 'b-table-default'\n      }\n      return [\n        variant ? `${this.isDark ? 'bg' : 'table'}-${variant}` : null,\n        isStickyColumn ? 'b-table-sticky-column' : null\n      ]\n    },\n    cellAttrs() {\n      const { stackedHeading } = this\n\n      // We use computed props here for improved performance by caching\n      // the results of the object spread (Object.assign)\n      const headOrFoot = this.inThead || this.inTfoot\n      // Make sure col/rowspan's are > 0 or null\n      const colspan = this.computedColspan\n      const rowspan = this.computedRowspan\n      // Default role and scope\n      let role = 'cell'\n      let scope = null\n\n      // Compute role and scope\n      // We only add scopes with an explicit span of 1 or greater\n      if (headOrFoot) {\n        // Header or footer cells\n        role = 'columnheader'\n        scope = colspan > 0 ? 'colspan' : 'col'\n      } else if (isTag(this.tag, 'th')) {\n        // th's in tbody\n        role = 'rowheader'\n        scope = rowspan > 0 ? 'rowgroup' : 'row'\n      }\n\n      return {\n        colspan,\n        rowspan,\n        role,\n        scope,\n        // Allow users to override role/scope plus add other attributes\n        ...this.bvAttrs,\n        // Add in the stacked cell label data-attribute if in\n        // stacked mode (if a stacked heading label is provided)\n        'data-label':\n          this.isStackedCell && !isUndefinedOrNull(stackedHeading)\n            ? /* istanbul ignore next */ toString(stackedHeading)\n            : null\n      }\n    }\n  },\n  render(h) {\n    const $content = [this.normalizeSlot()]\n\n    return h(\n      this.tag,\n      {\n        class: this.cellClasses,\n        attrs: this.cellAttrs,\n        // Transfer any native listeners\n        on: this.bvListeners\n      },\n      [this.isStackedCell ? h('div', [$content]) : $content]\n    )\n  }\n})\n","import { Vue } from '../../../vue'\nimport { MODEL_EVENT_NAME_PREFIX } from '../../../constants/events'\nimport { PROP_TYPE_BOOLEAN } from '../../../constants/props'\nimport { SLOT_NAME_TABLE_BUSY } from '../../../constants/slots'\nimport { stopEvent } from '../../../utils/events'\nimport { isFunction } from '../../../utils/inspect'\nimport { makeProp } from '../../../utils/props'\nimport { BTr } from '../tr'\nimport { BTd } from '../td'\n\n// --- Constants ---\n\nconst MODEL_PROP_NAME_BUSY = 'busy'\nconst MODEL_EVENT_NAME_BUSY = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_BUSY\n\n// --- Props ---\n\nexport const props = {\n  [MODEL_PROP_NAME_BUSY]: makeProp(PROP_TYPE_BOOLEAN, false)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const busyMixin = Vue.extend({\n  props,\n  data() {\n    return {\n      localBusy: false\n    }\n  },\n  computed: {\n    computedBusy() {\n      return this[MODEL_PROP_NAME_BUSY] || this.localBusy\n    }\n  },\n  watch: {\n    localBusy(newValue, oldValue) {\n      if (newValue !== oldValue) {\n        this.$emit(MODEL_EVENT_NAME_BUSY, newValue)\n      }\n    }\n  },\n  methods: {\n    // Event handler helper\n    stopIfBusy(event) {\n      // If table is busy (via provider) then don't propagate\n      if (this.computedBusy) {\n        stopEvent(event)\n        return true\n      }\n      return false\n    },\n    // Render the busy indicator or return `null` if not busy\n    renderBusy() {\n      const { tbodyTrClass, tbodyTrAttr } = this\n      const h = this.$createElement\n\n      // Return a busy indicator row, or `null` if not busy\n      if (this.computedBusy && this.hasNormalizedSlot(SLOT_NAME_TABLE_BUSY)) {\n        return h(\n          BTr,\n          {\n            staticClass: 'b-table-busy-slot',\n            class: [\n              isFunction(tbodyTrClass)\n                ? /* istanbul ignore next */ tbodyTrClass(null, SLOT_NAME_TABLE_BUSY)\n                : tbodyTrClass\n            ],\n            attrs: isFunction(tbodyTrAttr)\n              ? /* istanbul ignore next */ tbodyTrAttr(null, SLOT_NAME_TABLE_BUSY)\n              : tbodyTrAttr,\n            key: 'table-busy-slot'\n          },\n          [\n            h(BTd, { props: { colspan: this.computedFields.length || null } }, [\n              this.normalizeSlot(SLOT_NAME_TABLE_BUSY)\n            ])\n          ]\n        )\n      }\n\n      // We return `null` here so that we can determine if we need to\n      // render the table items rows or not\n      return null\n    }\n  }\n})\n","import { Vue } from '../../../vue'\nimport { PROP_TYPE_STRING } from '../../../constants/props'\nimport { SLOT_NAME_TABLE_CAPTION } from '../../../constants/slots'\nimport { htmlOrText } from '../../../utils/html'\nimport { makeProp } from '../../../utils/props'\n\n// --- Props ---\n\nexport const props = {\n  caption: makeProp(PROP_TYPE_STRING),\n  captionHtml: makeProp(PROP_TYPE_STRING)\n  // `caption-top` is part of table-render mixin (styling)\n  // captionTop: makeProp(PROP_TYPE_BOOLEAN, false)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const captionMixin = Vue.extend({\n  props,\n  computed: {\n    captionId() {\n      // Even though `this.safeId` looks like a method, it is a computed prop\n      // that returns a new function if the underlying ID changes\n      return this.isStacked ? this.safeId('_caption_') : null\n    }\n  },\n  methods: {\n    renderCaption() {\n      const { caption, captionHtml } = this\n      const h = this.$createElement\n\n      let $caption = h()\n      const hasCaptionSlot = this.hasNormalizedSlot(SLOT_NAME_TABLE_CAPTION)\n      if (hasCaptionSlot || caption || captionHtml) {\n        $caption = h(\n          'caption',\n          {\n            attrs: { id: this.captionId },\n            domProps: hasCaptionSlot ? {} : htmlOrText(captionHtml, caption),\n            key: 'caption'\n          },\n          this.normalizeSlot(SLOT_NAME_TABLE_CAPTION)\n        )\n      }\n\n      return $caption\n    }\n  }\n})\n","import { Vue } from '../../../vue'\nimport { SLOT_NAME_TABLE_COLGROUP } from '../../../constants/slots'\n\n// --- Props ---\n\nexport const props = {}\n\n// --- Mixin ---\n\n// @vue/component\nexport const colgroupMixin = Vue.extend({\n  methods: {\n    renderColgroup() {\n      const { computedFields: fields } = this\n      const h = this.$createElement\n\n      let $colgroup = h()\n      if (this.hasNormalizedSlot(SLOT_NAME_TABLE_COLGROUP)) {\n        $colgroup = h('colgroup', { key: 'colgroup' }, [\n          this.normalizeSlot(SLOT_NAME_TABLE_COLGROUP, { columns: fields.length, fields })\n        ])\n      }\n\n      return $colgroup\n    }\n  }\n})\n","import { Vue } from '../../../vue'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../../constants/props'\nimport {\n  SLOT_NAME_EMPTY,\n  SLOT_NAME_EMPTYFILTERED,\n  SLOT_NAME_TABLE_BUSY\n} from '../../../constants/slots'\nimport { htmlOrText } from '../../../utils/html'\nimport { isFunction } from '../../../utils/inspect'\nimport { makeProp } from '../../../utils/props'\nimport { BTr } from '../tr'\nimport { BTd } from '../td'\n\n// --- Props ---\n\nexport const props = {\n  emptyFilteredHtml: makeProp(PROP_TYPE_STRING),\n  emptyFilteredText: makeProp(PROP_TYPE_STRING, 'There are no records matching your request'),\n  emptyHtml: makeProp(PROP_TYPE_STRING),\n  emptyText: makeProp(PROP_TYPE_STRING, 'There are no records to show'),\n  showEmpty: makeProp(PROP_TYPE_BOOLEAN, false)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const emptyMixin = Vue.extend({\n  props,\n  methods: {\n    renderEmpty() {\n      const { computedItems: items } = this\n      const h = this.$createElement\n\n      let $empty = h()\n      if (\n        this.showEmpty &&\n        (!items || items.length === 0) &&\n        !(this.computedBusy && this.hasNormalizedSlot(SLOT_NAME_TABLE_BUSY))\n      ) {\n        const {\n          computedFields: fields,\n          isFiltered,\n          emptyText,\n          emptyHtml,\n          emptyFilteredText,\n          emptyFilteredHtml,\n          tbodyTrClass,\n          tbodyTrAttr\n        } = this\n\n        $empty = this.normalizeSlot(isFiltered ? SLOT_NAME_EMPTYFILTERED : SLOT_NAME_EMPTY, {\n          emptyFilteredHtml,\n          emptyFilteredText,\n          emptyHtml,\n          emptyText,\n          fields,\n          // Not sure why this is included, as it will always be an empty array\n          items\n        })\n\n        if (!$empty) {\n          $empty = h('div', {\n            class: ['text-center', 'my-2'],\n            domProps: isFiltered\n              ? htmlOrText(emptyFilteredHtml, emptyFilteredText)\n              : htmlOrText(emptyHtml, emptyText)\n          })\n        }\n\n        $empty = h(BTd, { props: { colspan: fields.length || null } }, [\n          h(\n            'div',\n            {\n              attrs: {\n                role: 'alert',\n                'aria-live': 'polite'\n              }\n            },\n            [$empty]\n          )\n        ])\n\n        $empty = h(\n          BTr,\n          {\n            staticClass: 'b-table-empty-row',\n            class: [\n              isFunction(tbodyTrClass)\n                ? /* istanbul ignore next */ tbodyTrClass(null, 'row-empty')\n                : tbodyTrClass\n            ],\n            attrs: isFunction(tbodyTrAttr)\n              ? /* istanbul ignore next */ tbodyTrAttr(null, 'row-empty')\n              : tbodyTrAttr,\n            key: isFiltered ? 'b-empty-filtered-row' : 'b-empty-row'\n          },\n          [$empty]\n        )\n      }\n\n      return $empty\n    }\n  }\n})\n","import { isDate, isObject, isUndefinedOrNull } from './inspect'\nimport { keys } from './object'\nimport { toString } from './string'\n\n// Recursively stringifies the values of an object, space separated, in an\n// SSR safe deterministic way (keys are sorted before stringification)\n//\n//   ex:\n//     { b: 3, c: { z: 'zzz', d: null, e: 2 }, d: [10, 12, 11], a: 'one' }\n//   becomes\n//     'one 3 2 zzz 10 12 11'\n//\n// Strings are returned as-is\n// Numbers get converted to string\n// `null` and `undefined` values are filtered out\n// Dates are converted to their native string format\nexport const stringifyObjectValues = value => {\n  if (isUndefinedOrNull(value)) {\n    return ''\n  }\n  // Arrays are also object, and keys just returns the array indexes\n  // Date objects we convert to strings\n  if (isObject(value) && !isDate(value)) {\n    return keys(value)\n      .sort() // Sort to prevent SSR issues on pre-rendered sorted tables\n      .map(k => stringifyObjectValues(value[k]))\n      .filter(v => !!v) // Ignore empty strings\n      .join(' ')\n  }\n  return toString(value)\n}\n","// Constants used by table helpers\n\nexport const FIELD_KEY_CELL_VARIANT = '_cellVariants'\nexport const FIELD_KEY_ROW_VARIANT = '_rowVariant'\nexport const FIELD_KEY_SHOW_DETAILS = '_showDetails'\n\n// Object of item keys that should be ignored for headers and\n// stringification and filter events\nexport const IGNORED_FIELD_KEYS = [\n  FIELD_KEY_CELL_VARIANT,\n  FIELD_KEY_ROW_VARIANT,\n  FIELD_KEY_SHOW_DETAILS\n].reduce((result, key) => ({ ...result, [key]: true }), {})\n\n// Filter CSS selector for click/dblclick/etc. events\n// If any of these selectors match the clicked element, we ignore the event\nexport const EVENT_FILTER = [\n  'a',\n  'a *', // Include content inside links\n  'button',\n  'button *', // Include content inside buttons\n  'input:not(.disabled):not([disabled])',\n  'select:not(.disabled):not([disabled])',\n  'textarea:not(.disabled):not([disabled])',\n  '[role=\"link\"]',\n  '[role=\"link\"] *',\n  '[role=\"button\"]',\n  '[role=\"button\"] *',\n  '[tabindex]:not(.disabled):not([disabled])'\n].join(',')\n","import { arrayIncludes } from '../../../utils/array'\nimport { isArray, isFunction } from '../../../utils/inspect'\nimport { clone, keys, pick } from '../../../utils/object'\nimport { IGNORED_FIELD_KEYS } from './constants'\n\n// Return a copy of a row after all reserved fields have been filtered out\nexport const sanitizeRow = (row, ignoreFields, includeFields, fieldsObj = {}) => {\n  // We first need to format the row based on the field configurations\n  // This ensures that we add formatted values for keys that may not\n  // exist in the row itself\n  const formattedRow = keys(fieldsObj).reduce((result, key) => {\n    const field = fieldsObj[key]\n    const { filterByFormatted } = field\n    const formatter = isFunction(filterByFormatted)\n      ? /* istanbul ignore next */ filterByFormatted\n      : filterByFormatted\n        ? /* istanbul ignore next */ field.formatter\n        : null\n\n    if (isFunction(formatter)) {\n      result[key] = formatter(row[key], key, row)\n    }\n\n    return result\n  }, clone(row))\n\n  // Determine the allowed keys:\n  //   - Ignore special fields that start with `_`\n  //   - Ignore fields in the `ignoreFields` array\n  //   - Include only fields in the `includeFields` array\n  const allowedKeys = keys(formattedRow).filter(\n    key =>\n      !IGNORED_FIELD_KEYS[key] &&\n      !(isArray(ignoreFields) && ignoreFields.length > 0 && arrayIncludes(ignoreFields, key)) &&\n      !(isArray(includeFields) && includeFields.length > 0 && !arrayIncludes(includeFields, key))\n  )\n\n  return pick(formattedRow, allowedKeys)\n}\n","import { Vue } from '../../../vue'\nimport { NAME_TABLE } from '../../../constants/components'\nimport { EVENT_NAME_FILTERED } from '../../../constants/events'\nimport {\n  PROP_TYPE_REG_EXP,\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_FUNCTION,\n  PROP_TYPE_ARRAY,\n  PROP_TYPE_NUMBER_STRING\n} from '../../../constants/props'\nimport { RX_DIGITS, RX_SPACES } from '../../../constants/regex'\nimport { concat } from '../../../utils/array'\nimport { cloneDeep } from '../../../utils/clone-deep'\nimport { identity } from '../../../utils/identity'\nimport { isFunction, isString, isRegExp } from '../../../utils/inspect'\nimport { looseEqual } from '../../../utils/loose-equal'\nimport { toInteger } from '../../../utils/number'\nimport { hasPropFunction, makeProp } from '../../../utils/props'\nimport { escapeRegExp } from '../../../utils/string'\nimport { warn } from '../../../utils/warn'\nimport { stringifyRecordValues } from './stringify-record-values'\n\n// --- Constants ---\n\nconst DEBOUNCE_DEPRECATED_MSG =\n  'Prop \"filter-debounce\" is deprecated. Use the debounce feature of \"<b-form-input>\" instead.'\n\n// --- Props ---\n\nexport const props = {\n  filter: makeProp([...PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_REG_EXP]),\n  filterDebounce: makeProp(PROP_TYPE_NUMBER_STRING, 0, value => {\n    return RX_DIGITS.test(String(value))\n  }),\n  filterFunction: makeProp(PROP_TYPE_FUNCTION),\n  filterIgnoredFields: makeProp(PROP_TYPE_ARRAY, []),\n  filterIncludedFields: makeProp(PROP_TYPE_ARRAY, [])\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const filteringMixin = Vue.extend({\n  props,\n  data() {\n    return {\n      // Flag for displaying which empty slot to show and some event triggering\n      isFiltered: false,\n      // Where we store the copy of the filter criteria after debouncing\n      // We pre-set it with the sanitized filter value\n      localFilter: this.filterSanitize(this.filter)\n    }\n  },\n  computed: {\n    computedFilterIgnored() {\n      return concat(this.filterIgnoredFields || []).filter(identity)\n    },\n    computedFilterIncluded() {\n      return concat(this.filterIncludedFields || []).filter(identity)\n    },\n    computedFilterDebounce() {\n      const ms = toInteger(this.filterDebounce, 0)\n      /* istanbul ignore next */\n      if (ms > 0) {\n        warn(DEBOUNCE_DEPRECATED_MSG, NAME_TABLE)\n      }\n      return ms\n    },\n    localFiltering() {\n      return this.hasProvider ? !!this.noProviderFiltering : true\n    },\n    // For watching changes to `filteredItems` vs `localItems`\n    filteredCheck() {\n      const { filteredItems, localItems, localFilter } = this\n      return { filteredItems, localItems, localFilter }\n    },\n    // Sanitized/normalize filter-function prop\n    localFilterFn() {\n      // Return `null` to signal to use internal filter function\n      const { filterFunction } = this\n      return hasPropFunction(filterFunction) ? filterFunction : null\n    },\n    // Returns the records in `localItems` that match the filter criteria\n    // Returns the original `localItems` array if not sorting\n    filteredItems() {\n      // Note the criteria is debounced and sanitized\n      const { localItems: items, localFilter: criteria } = this\n\n      // Resolve the filtering function, when requested\n      // We prefer the provided filtering function and fallback to the internal one\n      // When no filtering criteria is specified the filtering factories will return `null`\n      const filterFn = this.localFiltering\n        ? this.filterFnFactory(this.localFilterFn, criteria) ||\n          this.defaultFilterFnFactory(criteria)\n        : null\n\n      // We only do local filtering when requested and there are records to filter\n      return filterFn && items.length > 0 ? items.filter(filterFn) : items\n    }\n  },\n  watch: {\n    // Watch for debounce being set to 0\n    computedFilterDebounce(newValue) {\n      if (!newValue && this.$_filterTimer) {\n        this.clearFilterTimer()\n        this.localFilter = this.filterSanitize(this.filter)\n      }\n    },\n    // Watch for changes to the filter criteria, and debounce if necessary\n    filter: {\n      // We need a deep watcher in case the user passes\n      // an object when using `filter-function`\n      deep: true,\n      handler(newCriteria) {\n        const timeout = this.computedFilterDebounce\n        this.clearFilterTimer()\n        if (timeout && timeout > 0) {\n          // If we have a debounce time, delay the update of `localFilter`\n          this.$_filterTimer = setTimeout(() => {\n            this.localFilter = this.filterSanitize(newCriteria)\n          }, timeout)\n        } else {\n          // Otherwise, immediately update `localFilter` with `newFilter` value\n          this.localFilter = this.filterSanitize(newCriteria)\n        }\n      }\n    },\n    // Watch for changes to the filter criteria and filtered items vs `localItems`\n    // Set visual state and emit events as required\n    filteredCheck({ filteredItems, localFilter }) {\n      // Determine if the dataset is filtered or not\n      let isFiltered = false\n      if (!localFilter) {\n        // If filter criteria is falsey\n        isFiltered = false\n      } else if (looseEqual(localFilter, []) || looseEqual(localFilter, {})) {\n        // If filter criteria is an empty array or object\n        isFiltered = false\n      } else if (localFilter) {\n        // If filter criteria is truthy\n        isFiltered = true\n      }\n      if (isFiltered) {\n        this.$emit(EVENT_NAME_FILTERED, filteredItems, filteredItems.length)\n      }\n      this.isFiltered = isFiltered\n    },\n    isFiltered(newValue, oldValue) {\n      if (newValue === false && oldValue === true) {\n        // We need to emit a filtered event if `isFiltered` transitions from `true` to\n        // `false` so that users can update their pagination controls\n        const { localItems } = this\n        this.$emit(EVENT_NAME_FILTERED, localItems, localItems.length)\n      }\n    }\n  },\n  created() {\n    // Create private non-reactive props\n    this.$_filterTimer = null\n    // If filter is \"pre-set\", set the criteria\n    // This will trigger any watchers/dependents\n    // this.localFilter = this.filterSanitize(this.filter)\n    // Set the initial filtered state in a `$nextTick()` so that\n    // we trigger a filtered event if needed\n    this.$nextTick(() => {\n      this.isFiltered = Boolean(this.localFilter)\n    })\n  },\n  beforeDestroy() {\n    this.clearFilterTimer()\n  },\n  methods: {\n    clearFilterTimer() {\n      clearTimeout(this.$_filterTimer)\n      this.$_filterTimer = null\n    },\n    filterSanitize(criteria) {\n      // Sanitizes filter criteria based on internal or external filtering\n      if (\n        this.localFiltering &&\n        !this.localFilterFn &&\n        !(isString(criteria) || isRegExp(criteria))\n      ) {\n        // If using internal filter function, which only accepts string or RegExp,\n        // return '' to signify no filter\n        return ''\n      }\n\n      // Could be a string, object or array, as needed by external filter function\n      // We use `cloneDeep` to ensure we have a new copy of an object or array\n      // without Vue's reactive observers\n      return cloneDeep(criteria)\n    },\n    // Filter Function factories\n    filterFnFactory(filterFn, criteria) {\n      // Wrapper factory for external filter functions\n      // Wrap the provided filter-function and return a new function\n      // Returns `null` if no filter-function defined or if criteria is falsey\n      // Rather than directly grabbing `this.computedLocalFilterFn` or `this.filterFunction`\n      // we have it passed, so that the caller computed prop will be reactive to changes\n      // in the original filter-function (as this routine is a method)\n      if (\n        !filterFn ||\n        !isFunction(filterFn) ||\n        !criteria ||\n        looseEqual(criteria, []) ||\n        looseEqual(criteria, {})\n      ) {\n        return null\n      }\n\n      // Build the wrapped filter test function, passing the criteria to the provided function\n      const fn = item => {\n        // Generated function returns true if the criteria matches part\n        // of the serialized data, otherwise false\n        return filterFn(item, criteria)\n      }\n\n      // Return the wrapped function\n      return fn\n    },\n    defaultFilterFnFactory(criteria) {\n      // Generates the default filter function, using the given filter criteria\n      // Returns `null` if no criteria or criteria format not supported\n      if (!criteria || !(isString(criteria) || isRegExp(criteria))) {\n        // Built in filter can only support strings or RegExp criteria (at the moment)\n        return null\n      }\n\n      // Build the RegExp needed for filtering\n      let regExp = criteria\n      if (isString(regExp)) {\n        // Escape special RegExp characters in the string and convert contiguous\n        // whitespace to \\s+ matches\n        const pattern = escapeRegExp(criteria).replace(RX_SPACES, '\\\\s+')\n        // Build the RegExp (no need for global flag, as we only need\n        // to find the value once in the string)\n        regExp = new RegExp(`.*${pattern}.*`, 'i')\n      }\n\n      // Generate the wrapped filter test function to use\n      const fn = item => {\n        // This searches all row values (and sub property values) in the entire (excluding\n        // special `_` prefixed keys), because we convert the record to a space-separated\n        // string containing all the value properties (recursively), even ones that are\n        // not visible (not specified in this.fields)\n        // Users can ignore filtering on specific fields, or on only certain fields,\n        // and can optionall specify searching results of fields with formatter\n        //\n        // TODO: Enable searching on scoped slots (optional, as it will be SLOW)\n        //\n        // Generated function returns true if the criteria matches part of\n        // the serialized data, otherwise false\n        //\n        // We set `lastIndex = 0` on the `RegExp` in case someone specifies the `/g` global flag\n        regExp.lastIndex = 0\n        return regExp.test(\n          stringifyRecordValues(\n            item,\n            this.computedFilterIgnored,\n            this.computedFilterIncluded,\n            this.computedFieldsObj\n          )\n        )\n      }\n\n      // Return the generated function\n      return fn\n    }\n  }\n})\n","import { isObject } from '../../../utils/inspect'\nimport { stringifyObjectValues } from '../../../utils/stringify-object-values'\nimport { sanitizeRow } from './sanitize-row'\n\n// Stringifies the values of a record, ignoring any special top level field keys\n// TODO: Add option to stringify `scopedSlot` items\nexport const stringifyRecordValues = (row, ignoreFields, includeFields, fieldsObj) => {\n  return isObject(row)\n    ? stringifyObjectValues(sanitizeRow(row, ignoreFields, includeFields, fieldsObj))\n    : /* istanbul ignore next */ ''\n}\n","import { identity } from '../../../utils/identity'\nimport { isArray, isFunction, isObject, isString } from '../../../utils/inspect'\nimport { clone, keys } from '../../../utils/object'\nimport { startCase } from '../../../utils/string'\nimport { IGNORED_FIELD_KEYS } from './constants'\n\n// Private function to massage field entry into common object format\nconst processField = (key, value) => {\n  let field = null\n  if (isString(value)) {\n    // Label shortcut\n    field = { key, label: value }\n  } else if (isFunction(value)) {\n    // Formatter shortcut\n    field = { key, formatter: value }\n  } else if (isObject(value)) {\n    field = clone(value)\n    field.key = field.key || key\n  } else if (value !== false) {\n    // Fallback to just key\n    /* istanbul ignore next */\n    field = { key }\n  }\n  return field\n}\n\n// We normalize fields into an array of objects\n// [ { key:..., label:..., ...}, {...}, ..., {..}]\nexport const normalizeFields = (origFields, items) => {\n  const fields = []\n\n  if (isArray(origFields)) {\n    // Normalize array Form\n    origFields.filter(identity).forEach(f => {\n      if (isString(f)) {\n        fields.push({ key: f, label: startCase(f) })\n      } else if (isObject(f) && f.key && isString(f.key)) {\n        // Full object definition. We use assign so that we don't mutate the original\n        fields.push(clone(f))\n      } else if (isObject(f) && keys(f).length === 1) {\n        // Shortcut object (i.e. { 'foo_bar': 'This is Foo Bar' }\n        const key = keys(f)[0]\n        const field = processField(key, f[key])\n        if (field) {\n          fields.push(field)\n        }\n      }\n    })\n  }\n\n  // If no field provided, take a sample from first record (if exits)\n  if (fields.length === 0 && isArray(items) && items.length > 0) {\n    const sample = items[0]\n    keys(sample).forEach(k => {\n      if (!IGNORED_FIELD_KEYS[k]) {\n        fields.push({ key: k, label: startCase(k) })\n      }\n    })\n  }\n\n  // Ensure we have a unique array of fields and that they have String labels\n  const memo = {}\n  return fields.filter(f => {\n    if (!memo[f.key]) {\n      memo[f.key] = true\n      f.label = isString(f.label) ? f.label : startCase(f.key)\n      return true\n    }\n    return false\n  })\n}\n","import { Vue } from '../../../vue'\nimport { EVENT_NAME_CONTEXT_CHANGED } from '../../../constants/events'\nimport { PROP_TYPE_ARRAY, PROP_TYPE_STRING } from '../../../constants/props'\nimport { isArray, isFunction, isString } from '../../../utils/inspect'\nimport { looseEqual } from '../../../utils/loose-equal'\nimport { mathMax } from '../../../utils/math'\nimport { makeModelMixin } from '../../../utils/model'\nimport { toInteger } from '../../../utils/number'\nimport { clone, sortKeys } from '../../../utils/object'\nimport { makeProp } from '../../../utils/props'\nimport { normalizeFields } from './normalize-fields'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n  type: PROP_TYPE_ARRAY,\n  defaultValue: []\n})\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }\n\n// --- Props ---\n\nexport const props = sortKeys({\n  ...modelProps,\n  fields: makeProp(PROP_TYPE_ARRAY, null),\n  // Provider mixin adds in `Function` type\n  items: makeProp(PROP_TYPE_ARRAY, []),\n  // Primary key for record\n  // If provided the value in each row must be unique!\n  primaryKey: makeProp(PROP_TYPE_STRING),\n  // `v-model` for retrieving the current displayed rows\n  [MODEL_PROP_NAME]: makeProp(PROP_TYPE_ARRAY, [])\n})\n\n// --- Mixin ---\n\n// @vue/component\nexport const itemsMixin = Vue.extend({\n  mixins: [modelMixin],\n  props,\n  data() {\n    const { items } = this\n\n    return {\n      // Our local copy of the items\n      // Must be an array\n      localItems: isArray(items) ? items.slice() : []\n    }\n  },\n  computed: {\n    computedFields() {\n      // We normalize fields into an array of objects\n      // `[ { key:..., label:..., ...}, {...}, ..., {..}]`\n      return normalizeFields(this.fields, this.localItems)\n    },\n    computedFieldsObj() {\n      // Fields as a simple lookup hash object\n      // Mainly for formatter lookup and use in `scopedSlots` for convenience\n      // If the field has a formatter, it normalizes formatter to a\n      // function ref or `undefined` if no formatter\n      const { $parent } = this\n      return this.computedFields.reduce((obj, f) => {\n        // We use object spread here so we don't mutate the original field object\n        obj[f.key] = clone(f)\n        if (f.formatter) {\n          // Normalize formatter to a function ref or `undefined`\n          let formatter = f.formatter\n          if (isString(formatter) && isFunction($parent[formatter])) {\n            formatter = $parent[formatter]\n          } else if (!isFunction(formatter)) {\n            /* istanbul ignore next */\n            formatter = undefined\n          }\n          // Return formatter function or `undefined` if none\n          obj[f.key].formatter = formatter\n        }\n        return obj\n      }, {})\n    },\n    computedItems() {\n      // Fallback if various mixins not provided\n      return (\n        this.paginatedItems ||\n        this.sortedItems ||\n        this.filteredItems ||\n        this.localItems ||\n        /* istanbul ignore next */\n        []\n      ).slice()\n    },\n    context() {\n      // Current state of sorting, filtering and pagination props/values\n      return {\n        filter: this.localFilter,\n        sortBy: this.localSortBy,\n        sortDesc: this.localSortDesc,\n        perPage: mathMax(toInteger(this.perPage, 0), 0),\n        currentPage: mathMax(toInteger(this.currentPage, 0), 1),\n        apiUrl: this.apiUrl\n      }\n    }\n  },\n  watch: {\n    items(newValue) {\n      // Set `localItems`/`filteredItems` to a copy of the provided array\n      this.localItems = isArray(newValue) ? newValue.slice() : []\n    },\n    // Watch for changes on `computedItems` and update the `v-model`\n    computedItems(newValue, oldValue) {\n      if (!looseEqual(newValue, oldValue)) {\n        this.$emit(MODEL_EVENT_NAME, newValue)\n      }\n    },\n    // Watch for context changes\n    context(newValue, oldValue) {\n      // Emit context information for external paging/filtering/sorting handling\n      if (!looseEqual(newValue, oldValue)) {\n        this.$emit(EVENT_NAME_CONTEXT_CHANGED, newValue)\n      }\n    }\n  },\n  mounted() {\n    // Initially update the `v-model` of displayed items\n    this.$emit(MODEL_EVENT_NAME, this.computedItems)\n  },\n  methods: {\n    // Method to get the formatter method for a given field key\n    getFieldFormatter(key) {\n      const field = this.computedFieldsObj[key]\n      // `this.computedFieldsObj` has pre-normalized the formatter to a\n      // function ref if present, otherwise `undefined`\n      return field ? field.formatter : undefined\n    }\n  }\n})\n","import { Vue } from '../../../vue'\nimport { PROP_TYPE_NUMBER_STRING } from '../../../constants/props'\nimport { mathMax } from '../../../utils/math'\nimport { toInteger } from '../../../utils/number'\nimport { makeProp } from '../../../utils/props'\n\n// --- Props ---\n\nexport const props = {\n  currentPage: makeProp(PROP_TYPE_NUMBER_STRING, 1),\n  perPage: makeProp(PROP_TYPE_NUMBER_STRING, 0)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const paginationMixin = Vue.extend({\n  props,\n  computed: {\n    localPaging() {\n      return this.hasProvider ? !!this.noProviderPaging : true\n    },\n    paginatedItems() {\n      let items = this.sortedItems || this.filteredItems || this.localItems || []\n      const currentPage = mathMax(toInteger(this.currentPage, 1), 1)\n      const perPage = mathMax(toInteger(this.perPage, 0), 0)\n      // Apply local pagination\n      if (this.localPaging && perPage) {\n        // Grab the current page of data (which may be past filtered items limit)\n        items = items.slice((currentPage - 1) * perPage, currentPage * perPage)\n      }\n      // Return the items to display in the table\n      return items\n    }\n  }\n})\n","import { Vue } from '../../../vue'\nimport { NAME_TABLE } from '../../../constants/components'\nimport { EVENT_NAME_REFRESH, EVENT_NAME_REFRESHED } from '../../../constants/events'\nimport {\n  PROP_TYPE_ARRAY_FUNCTION,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_STRING\n} from '../../../constants/props'\nimport { getRootActionEventName, getRootEventName } from '../../../utils/events'\nimport { isArray, isFunction, isPromise } from '../../../utils/inspect'\nimport { looseEqual } from '../../../utils/loose-equal'\nimport { clone } from '../../../utils/object'\nimport { makeProp } from '../../../utils/props'\nimport { warn } from '../../../utils/warn'\nimport { listenOnRootMixin } from '../../../mixins/listen-on-root'\n\n// --- Constants ---\n\nconst ROOT_EVENT_NAME_REFRESHED = getRootEventName(NAME_TABLE, EVENT_NAME_REFRESHED)\nconst ROOT_ACTION_EVENT_NAME_REFRESH = getRootActionEventName(NAME_TABLE, EVENT_NAME_REFRESH)\n\n// --- Props ---\n\nexport const props = {\n  // Passed to the context object\n  // Not used by `<b-table>` directly\n  apiUrl: makeProp(PROP_TYPE_STRING),\n  // Adds in 'Function' support\n  items: makeProp(PROP_TYPE_ARRAY_FUNCTION, []),\n  noProviderFiltering: makeProp(PROP_TYPE_BOOLEAN, false),\n  noProviderPaging: makeProp(PROP_TYPE_BOOLEAN, false),\n  noProviderSorting: makeProp(PROP_TYPE_BOOLEAN, false)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const providerMixin = Vue.extend({\n  mixins: [listenOnRootMixin],\n  props,\n  computed: {\n    hasProvider() {\n      return isFunction(this.items)\n    },\n    providerTriggerContext() {\n      // Used to trigger the provider function via a watcher. Only the fields that\n      // are needed for triggering a provider update are included. Note that the\n      // regular this.context is sent to the provider during fetches though, as they\n      // may need all the prop info.\n      const ctx = {\n        apiUrl: this.apiUrl,\n        filter: null,\n        sortBy: null,\n        sortDesc: null,\n        perPage: null,\n        currentPage: null\n      }\n      if (!this.noProviderFiltering) {\n        // Either a string, or could be an object or array.\n        ctx.filter = this.localFilter\n      }\n      if (!this.noProviderSorting) {\n        ctx.sortBy = this.localSortBy\n        ctx.sortDesc = this.localSortDesc\n      }\n      if (!this.noProviderPaging) {\n        ctx.perPage = this.perPage\n        ctx.currentPage = this.currentPage\n      }\n      return clone(ctx)\n    }\n  },\n  watch: {\n    // Provider update triggering\n    items(newValue) {\n      // If a new provider has been specified, trigger an update\n      if (this.hasProvider || isFunction(newValue)) {\n        this.$nextTick(this._providerUpdate)\n      }\n    },\n    providerTriggerContext(newValue, oldValue) {\n      // Trigger the provider to update as the relevant context values have changed.\n      if (!looseEqual(newValue, oldValue)) {\n        this.$nextTick(this._providerUpdate)\n      }\n    }\n  },\n  mounted() {\n    // Call the items provider if necessary\n    if (this.hasProvider && (!this.localItems || this.localItems.length === 0)) {\n      // Fetch on mount if localItems is empty\n      this._providerUpdate()\n    }\n    // Listen for global messages to tell us to force refresh the table\n    this.listenOnRoot(ROOT_ACTION_EVENT_NAME_REFRESH, id => {\n      if (id === this.id || id === this) {\n        this.refresh()\n      }\n    })\n  },\n  methods: {\n    refresh() {\n      const { items, refresh } = this\n\n      // Public Method: Force a refresh of the provider function\n      this.$off(EVENT_NAME_REFRESHED, refresh)\n      if (this.computedBusy) {\n        // Can't force an update when forced busy by user (busy prop === true)\n        if (this.localBusy && this.hasProvider) {\n          // But if provider running (localBusy), re-schedule refresh once `refreshed` emitted\n          this.$on(EVENT_NAME_REFRESHED, refresh)\n        }\n      } else {\n        this.clearSelected()\n        if (this.hasProvider) {\n          this.$nextTick(this._providerUpdate)\n        } else {\n          /* istanbul ignore next */\n          this.localItems = isArray(items) ? items.slice() : []\n        }\n      }\n    },\n    // Provider related methods\n    _providerSetLocal(items) {\n      this.localItems = isArray(items) ? items.slice() : []\n      this.localBusy = false\n      this.$emit(EVENT_NAME_REFRESHED)\n      // New root emit\n      if (this.id) {\n        this.emitOnRoot(ROOT_EVENT_NAME_REFRESHED, this.id)\n      }\n    },\n    _providerUpdate() {\n      // Refresh the provider function items.\n      if (!this.hasProvider) {\n        // Do nothing if no provider\n        return\n      }\n      // If table is busy, wait until refreshed before calling again\n      if (this.computedBusy) {\n        // Schedule a new refresh once `refreshed` is emitted\n        this.$nextTick(this.refresh)\n        return\n      }\n\n      // Set internal busy state\n      this.localBusy = true\n\n      // Call provider function with context and optional callback after DOM is fully updated\n      this.$nextTick(() => {\n        try {\n          // Call provider function passing it the context and optional callback\n          const data = this.items(this.context, this._providerSetLocal)\n          if (isPromise(data)) {\n            // Provider returned Promise\n            data.then(items => {\n              // Provider resolved with items\n              this._providerSetLocal(items)\n            })\n          } else if (isArray(data)) {\n            // Provider returned Array data\n            this._providerSetLocal(data)\n          } else {\n            /* istanbul ignore if */\n            if (this.items.length !== 2) {\n              // Check number of arguments provider function requested\n              // Provider not using callback (didn't request second argument), so we clear\n              // busy state as most likely there was an error in the provider function\n              /* istanbul ignore next */\n              warn(\n                \"Provider function didn't request callback and did not return a promise or data.\",\n                NAME_TABLE\n              )\n              this.localBusy = false\n            }\n          }\n        } catch (e) /* istanbul ignore next */ {\n          // Provider function borked on us, so we spew out a warning\n          // and clear the busy state\n          warn(`Provider function error [${e.name}] ${e.message}.`, NAME_TABLE)\n          this.localBusy = false\n          this.$off(EVENT_NAME_REFRESHED, this.refresh)\n        }\n      })\n    }\n  }\n})\n","import { Vue } from '../../../vue'\nimport {\n  EVENT_NAME_CONTEXT_CHANGED,\n  EVENT_NAME_FILTERED,\n  EVENT_NAME_ROW_CLICKED,\n  EVENT_NAME_ROW_SELECTED\n} from '../../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../../constants/props'\nimport { arrayIncludes, createArray } from '../../../utils/array'\nimport { identity } from '../../../utils/identity'\nimport { isArray, isNumber } from '../../../utils/inspect'\nimport { looseEqual } from '../../../utils/loose-equal'\nimport { mathMax, mathMin } from '../../../utils/math'\nimport { makeProp } from '../../../utils/props'\nimport { sanitizeRow } from './sanitize-row'\n\n// --- Constants ---\n\nconst SELECT_MODES = ['range', 'multi', 'single']\n\n// --- Props ---\n\nexport const props = {\n  // Disable use of click handlers for row selection\n  noSelectOnClick: makeProp(PROP_TYPE_BOOLEAN, false),\n  selectMode: makeProp(PROP_TYPE_STRING, 'multi', value => {\n    return arrayIncludes(SELECT_MODES, value)\n  }),\n  selectable: makeProp(PROP_TYPE_BOOLEAN, false),\n  selectedVariant: makeProp(PROP_TYPE_STRING, 'active')\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const selectableMixin = Vue.extend({\n  props,\n  data() {\n    return {\n      selectedRows: [],\n      selectedLastRow: -1\n    }\n  },\n  computed: {\n    isSelectable() {\n      return this.selectable && this.selectMode\n    },\n    hasSelectableRowClick() {\n      return this.isSelectable && !this.noSelectOnClick\n    },\n    supportsSelectableRows() {\n      return true\n    },\n    selectableHasSelection() {\n      const { selectedRows } = this\n      return (\n        this.isSelectable && selectedRows && selectedRows.length > 0 && selectedRows.some(identity)\n      )\n    },\n    selectableIsMultiSelect() {\n      return this.isSelectable && arrayIncludes(['range', 'multi'], this.selectMode)\n    },\n    selectableTableClasses() {\n      const { isSelectable } = this\n      return {\n        'b-table-selectable': isSelectable,\n        [`b-table-select-${this.selectMode}`]: isSelectable,\n        'b-table-selecting': this.selectableHasSelection,\n        'b-table-selectable-no-click': isSelectable && !this.hasSelectableRowClick\n      }\n    },\n    selectableTableAttrs() {\n      return {\n        // TODO:\n        //   Should this attribute not be included when no-select-on-click is set\n        //   since this attribute implies keyboard navigation?\n        'aria-multiselectable': !this.isSelectable\n          ? null\n          : this.selectableIsMultiSelect\n            ? 'true'\n            : 'false'\n      }\n    }\n  },\n  watch: {\n    computedItems(newValue, oldValue) {\n      // Reset for selectable\n      let equal = false\n      if (this.isSelectable && this.selectedRows.length > 0) {\n        // Quick check against array length\n        equal = isArray(newValue) && isArray(oldValue) && newValue.length === oldValue.length\n        for (let i = 0; equal && i < newValue.length; i++) {\n          // Look for the first non-loosely equal row, after ignoring reserved fields\n          equal = looseEqual(sanitizeRow(newValue[i]), sanitizeRow(oldValue[i]))\n        }\n      }\n      if (!equal) {\n        this.clearSelected()\n      }\n    },\n    selectable(newValue) {\n      this.clearSelected()\n      this.setSelectionHandlers(newValue)\n    },\n    selectMode() {\n      this.clearSelected()\n    },\n    hasSelectableRowClick(newValue) {\n      this.clearSelected()\n      this.setSelectionHandlers(!newValue)\n    },\n    selectedRows(selectedRows, oldValue) {\n      if (this.isSelectable && !looseEqual(selectedRows, oldValue)) {\n        const items = []\n        // `.forEach()` skips over non-existent indices (on sparse arrays)\n        selectedRows.forEach((v, idx) => {\n          if (v) {\n            items.push(this.computedItems[idx])\n          }\n        })\n        this.$emit(EVENT_NAME_ROW_SELECTED, items)\n      }\n    }\n  },\n  beforeMount() {\n    // Set up handlers if needed\n    if (this.isSelectable) {\n      this.setSelectionHandlers(true)\n    }\n  },\n  methods: {\n    // Public methods\n    selectRow(index) {\n      // Select a particular row (indexed based on computedItems)\n      if (\n        this.isSelectable &&\n        isNumber(index) &&\n        index >= 0 &&\n        index < this.computedItems.length &&\n        !this.isRowSelected(index)\n      ) {\n        const selectedRows = this.selectableIsMultiSelect ? this.selectedRows.slice() : []\n        selectedRows[index] = true\n        this.selectedLastClicked = -1\n        this.selectedRows = selectedRows\n      }\n    },\n    unselectRow(index) {\n      // Un-select a particular row (indexed based on `computedItems`)\n      if (this.isSelectable && isNumber(index) && this.isRowSelected(index)) {\n        const selectedRows = this.selectedRows.slice()\n        selectedRows[index] = false\n        this.selectedLastClicked = -1\n        this.selectedRows = selectedRows\n      }\n    },\n    selectAllRows() {\n      const length = this.computedItems.length\n      if (this.isSelectable && length > 0) {\n        this.selectedLastClicked = -1\n        this.selectedRows = this.selectableIsMultiSelect ? createArray(length, true) : [true]\n      }\n    },\n    isRowSelected(index) {\n      // Determine if a row is selected (indexed based on `computedItems`)\n      return !!(isNumber(index) && this.selectedRows[index])\n    },\n    clearSelected() {\n      // Clear any active selected row(s)\n      this.selectedLastClicked = -1\n      this.selectedRows = []\n    },\n    // Internal private methods\n    selectableRowClasses(index) {\n      if (this.isSelectable && this.isRowSelected(index)) {\n        const variant = this.selectedVariant\n        return {\n          'b-table-row-selected': true,\n          [`${this.dark ? 'bg' : 'table'}-${variant}`]: variant\n        }\n      }\n\n      return {}\n    },\n    selectableRowAttrs(index) {\n      return {\n        'aria-selected': !this.isSelectable ? null : this.isRowSelected(index) ? 'true' : 'false'\n      }\n    },\n    setSelectionHandlers(on) {\n      const method = on && !this.noSelectOnClick ? '$on' : '$off'\n      // Handle row-clicked event\n      this[method](EVENT_NAME_ROW_CLICKED, this.selectionHandler)\n      // Clear selection on filter, pagination, and sort changes\n      this[method](EVENT_NAME_FILTERED, this.clearSelected)\n      this[method](EVENT_NAME_CONTEXT_CHANGED, this.clearSelected)\n    },\n    selectionHandler(item, index, event) {\n      /* istanbul ignore if: should never happen */\n      if (!this.isSelectable || this.noSelectOnClick) {\n        // Don't do anything if table is not in selectable mode\n        this.clearSelected()\n        return\n      }\n      const { selectMode, selectedLastRow } = this\n      let selectedRows = this.selectedRows.slice()\n      let selected = !selectedRows[index]\n      // Note 'multi' mode needs no special event handling\n      if (selectMode === 'single') {\n        selectedRows = []\n      } else if (selectMode === 'range') {\n        if (selectedLastRow > -1 && event.shiftKey) {\n          // range\n          for (\n            let idx = mathMin(selectedLastRow, index);\n            idx <= mathMax(selectedLastRow, index);\n            idx++\n          ) {\n            selectedRows[idx] = true\n          }\n          selected = true\n        } else {\n          if (!(event.ctrlKey || event.metaKey)) {\n            // Clear range selection if any\n            selectedRows = []\n            selected = true\n          }\n          this.selectedLastRow = selected ? index : -1\n        }\n      }\n      selectedRows[index] = selected\n      this.selectedRows = selectedRows\n    }\n  }\n})\n","/*\n * Consistent and stable sort function across JavaScript platforms\n *\n * Inconsistent sorts can cause SSR problems between client and server\n * such as in <b-table> if sortBy is applied to the data on server side render.\n * Chrome and V8 native sorts are inconsistent/unstable\n *\n * This function uses native sort with fallback to index compare when the a and b\n * compare returns 0\n *\n * Algorithm based on:\n * https://stackoverflow.com/questions/1427608/fast-stable-sorting-algorithm-implementation-in-javascript/45422645#45422645\n *\n * @param {array} array to sort\n * @param {function} sort compare function\n * @return {array}\n */\nexport const stableSort = (array, compareFn) => {\n  // Using `.bind(compareFn)` on the wrapped anonymous function improves\n  // performance by avoiding the function call setup. We don't use an arrow\n  // function here as it binds `this` to the `stableSort` context rather than\n  // the `compareFn` context, which wouldn't give us the performance increase.\n  return array\n    .map((a, index) => [index, a])\n    .sort(\n      function(a, b) {\n        return this(a[1], b[1]) || a[0] - b[0]\n      }.bind(compareFn)\n    )\n    .map(e => e[1])\n}\n","import { get } from '../../../utils/get'\nimport { isDate, isFunction, isNumber, isNumeric, isUndefinedOrNull } from '../../../utils/inspect'\nimport { toFloat } from '../../../utils/number'\nimport { stringifyObjectValues } from '../../../utils/stringify-object-values'\n\nconst normalizeValue = value => {\n  if (isUndefinedOrNull(value)) {\n    return ''\n  }\n  if (isNumeric(value)) {\n    return toFloat(value, value)\n  }\n  return value\n}\n\n// Default sort compare routine\n//\n// TODO:\n//   Add option to sort by multiple columns (tri-state per column,\n//   plus order of columns in sort) where `sortBy` could be an array\n//   of objects `[ {key: 'foo', sortDir: 'asc'}, {key:'bar', sortDir: 'desc'} ...]`\n//   or an array of arrays `[ ['foo','asc'], ['bar','desc'] ]`\n//   Multisort will most likely be handled in `mixin-sort.js` by\n//   calling this method for each sortBy\nexport const defaultSortCompare = (\n  a,\n  b,\n  { sortBy = null, formatter = null, locale = undefined, localeOptions = {}, nullLast = false } = {}\n) => {\n  // Get the value by `sortBy`\n  let aa = get(a, sortBy, null)\n  let bb = get(b, sortBy, null)\n\n  // Apply user-provided formatter\n  if (isFunction(formatter)) {\n    aa = formatter(aa, sortBy, a)\n    bb = formatter(bb, sortBy, b)\n  }\n\n  // Internally normalize value\n  // `null` / `undefined` => ''\n  // `'0'` => `0`\n  aa = normalizeValue(aa)\n  bb = normalizeValue(bb)\n\n  if ((isDate(aa) && isDate(bb)) || (isNumber(aa) && isNumber(bb))) {\n    // Special case for comparing dates and numbers\n    // Internally dates are compared via their epoch number values\n    return aa < bb ? -1 : aa > bb ? 1 : 0\n  } else if (nullLast && aa === '' && bb !== '') {\n    // Special case when sorting `null` / `undefined` / '' last\n    return 1\n  } else if (nullLast && aa !== '' && bb === '') {\n    // Special case when sorting `null` / `undefined` / '' last\n    return -1\n  }\n\n  // Do localized string comparison\n  return stringifyObjectValues(aa).localeCompare(stringifyObjectValues(bb), locale, localeOptions)\n}\n","import { Vue } from '../../../vue'\nimport {\n  EVENT_NAME_HEAD_CLICKED,\n  EVENT_NAME_SORT_CHANGED,\n  MODEL_EVENT_NAME_PREFIX\n} from '../../../constants/events'\nimport {\n  PROP_TYPE_ARRAY_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_FUNCTION,\n  PROP_TYPE_OBJECT,\n  PROP_TYPE_STRING\n} from '../../../constants/props'\nimport { arrayIncludes } from '../../../utils/array'\nimport { isFunction, isUndefinedOrNull } from '../../../utils/inspect'\nimport { makeProp } from '../../../utils/props'\nimport { stableSort } from '../../../utils/stable-sort'\nimport { trim } from '../../../utils/string'\nimport { defaultSortCompare } from './default-sort-compare'\n\n// --- Constants ---\n\nconst MODEL_PROP_NAME_SORT_BY = 'sortBy'\nconst MODEL_EVENT_NAME_SORT_BY = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_SORT_BY\n\nconst MODEL_PROP_NAME_SORT_DESC = 'sortDesc'\nconst MODEL_EVENT_NAME_SORT_DESC = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_SORT_DESC\n\nconst SORT_DIRECTION_ASC = 'asc'\nconst SORT_DIRECTION_DESC = 'desc'\nconst SORT_DIRECTION_LAST = 'last'\nconst SORT_DIRECTIONS = [SORT_DIRECTION_ASC, SORT_DIRECTION_DESC, SORT_DIRECTION_LAST]\n\n// --- Props ---\n\nexport const props = {\n  labelSortAsc: makeProp(PROP_TYPE_STRING, 'Click to sort Ascending'),\n  labelSortClear: makeProp(PROP_TYPE_STRING, 'Click to clear sorting'),\n  labelSortDesc: makeProp(PROP_TYPE_STRING, 'Click to sort Descending'),\n  noFooterSorting: makeProp(PROP_TYPE_BOOLEAN, false),\n  noLocalSorting: makeProp(PROP_TYPE_BOOLEAN, false),\n  // Another prop that should have had a better name\n  // It should be `noSortClear` (on non-sortable headers)\n  // We will need to make sure the documentation is clear on what\n  // this prop does (as well as in the code for future reference)\n  noSortReset: makeProp(PROP_TYPE_BOOLEAN, false),\n  [MODEL_PROP_NAME_SORT_BY]: makeProp(PROP_TYPE_STRING),\n  sortCompare: makeProp(PROP_TYPE_FUNCTION),\n  // String: locale code\n  // Array: array of Locale strings\n  sortCompareLocale: makeProp(PROP_TYPE_ARRAY_STRING),\n  // Supported localCompare options, see `options` section of:\n  // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/localeCompare\n  sortCompareOptions: makeProp(PROP_TYPE_OBJECT, { numeric: true }),\n  // TODO: Make this tri-state: `true`, `false`, `null`\n  [MODEL_PROP_NAME_SORT_DESC]: makeProp(PROP_TYPE_BOOLEAN, false),\n  // This prop is named incorrectly\n  // It should be `initialSortDirection` as it is a bit misleading\n  // (not to mention it screws up the ARIA label on the headers)\n  sortDirection: makeProp(PROP_TYPE_STRING, SORT_DIRECTION_ASC, value => {\n    return arrayIncludes(SORT_DIRECTIONS, value)\n  }),\n  // Place the sorting icon on the left of the header cells\n  sortIconLeft: makeProp(PROP_TYPE_BOOLEAN, false),\n  // Sort null and undefined to appear last\n  sortNullLast: makeProp(PROP_TYPE_BOOLEAN, false)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const sortingMixin = Vue.extend({\n  props,\n  data() {\n    return {\n      localSortBy: this[MODEL_PROP_NAME_SORT_BY] || '',\n      localSortDesc: this[MODEL_PROP_NAME_SORT_DESC] || false\n    }\n  },\n  computed: {\n    localSorting() {\n      return this.hasProvider ? !!this.noProviderSorting : !this.noLocalSorting\n    },\n    isSortable() {\n      return this.computedFields.some(f => f.sortable)\n    },\n    // Sorts the filtered items and returns a new array of the sorted items\n    // When not sorted, the original items array will be returned\n    sortedItems() {\n      const {\n        localSortBy: sortBy,\n        localSortDesc: sortDesc,\n        sortCompareLocale: locale,\n        sortNullLast: nullLast,\n        sortCompare,\n        localSorting\n      } = this\n      const items = (this.filteredItems || this.localItems || []).slice()\n      const localeOptions = { ...this.sortCompareOptions, usage: 'sort' }\n\n      if (sortBy && localSorting) {\n        const field = this.computedFieldsObj[sortBy] || {}\n        const sortByFormatted = field.sortByFormatted\n        const formatter = isFunction(sortByFormatted)\n          ? /* istanbul ignore next */ sortByFormatted\n          : sortByFormatted\n            ? this.getFieldFormatter(sortBy)\n            : undefined\n\n        // `stableSort` returns a new array, and leaves the original array intact\n        return stableSort(items, (a, b) => {\n          let result = null\n          // Call user provided `sortCompare` routine first\n          if (isFunction(sortCompare)) {\n            // TODO:\n            //   Change the `sortCompare` signature to the one of `defaultSortCompare`\n            //   with the next major version bump\n            result = sortCompare(a, b, sortBy, sortDesc, formatter, localeOptions, locale)\n          }\n          // Fallback to built-in `defaultSortCompare` if `sortCompare`\n          // is not defined or returns `null`/`false`\n          if (isUndefinedOrNull(result) || result === false) {\n            result = defaultSortCompare(a, b, {\n              sortBy,\n              formatter,\n              locale,\n              localeOptions,\n              nullLast\n            })\n          }\n          // Negate result if sorting in descending order\n          return (result || 0) * (sortDesc ? -1 : 1)\n        })\n      }\n\n      return items\n    }\n  },\n  watch: {\n    /* istanbul ignore next: pain in the butt to test */\n    isSortable(newValue) {\n      if (newValue) {\n        if (this.isSortable) {\n          this.$on(EVENT_NAME_HEAD_CLICKED, this.handleSort)\n        }\n      } else {\n        this.$off(EVENT_NAME_HEAD_CLICKED, this.handleSort)\n      }\n    },\n    [MODEL_PROP_NAME_SORT_DESC](newValue) {\n      /* istanbul ignore next */\n      if (newValue === this.localSortDesc) {\n        return\n      }\n      this.localSortDesc = newValue || false\n    },\n    [MODEL_PROP_NAME_SORT_BY](newValue) {\n      /* istanbul ignore next */\n      if (newValue === this.localSortBy) {\n        return\n      }\n      this.localSortBy = newValue || ''\n    },\n    // Update .sync props\n    localSortDesc(newValue, oldValue) {\n      // Emit update to sort-desc.sync\n      if (newValue !== oldValue) {\n        this.$emit(MODEL_EVENT_NAME_SORT_DESC, newValue)\n      }\n    },\n    localSortBy(newValue, oldValue) {\n      if (newValue !== oldValue) {\n        this.$emit(MODEL_EVENT_NAME_SORT_BY, newValue)\n      }\n    }\n  },\n  created() {\n    if (this.isSortable) {\n      this.$on(EVENT_NAME_HEAD_CLICKED, this.handleSort)\n    }\n  },\n  methods: {\n    // Handlers\n    // Need to move from thead-mixin\n    handleSort(key, field, event, isFoot) {\n      if (!this.isSortable) {\n        /* istanbul ignore next */\n        return\n      }\n      if (isFoot && this.noFooterSorting) {\n        return\n      }\n      // TODO: make this tri-state sorting\n      // cycle desc => asc => none => desc => ...\n      let sortChanged = false\n      const toggleLocalSortDesc = () => {\n        const sortDirection = field.sortDirection || this.sortDirection\n        if (sortDirection === SORT_DIRECTION_ASC) {\n          this.localSortDesc = false\n        } else if (sortDirection === SORT_DIRECTION_DESC) {\n          this.localSortDesc = true\n        } else {\n          // sortDirection === 'last'\n          // Leave at last sort direction from previous column\n        }\n      }\n      if (field.sortable) {\n        const sortKey = !this.localSorting && field.sortKey ? field.sortKey : key\n        if (this.localSortBy === sortKey) {\n          // Change sorting direction on current column\n          this.localSortDesc = !this.localSortDesc\n        } else {\n          // Start sorting this column ascending\n          this.localSortBy = sortKey\n          // this.localSortDesc = false\n          toggleLocalSortDesc()\n        }\n        sortChanged = true\n      } else if (this.localSortBy && !this.noSortReset) {\n        this.localSortBy = ''\n        toggleLocalSortDesc()\n        sortChanged = true\n      }\n      if (sortChanged) {\n        // Sorting parameters changed\n        this.$emit(EVENT_NAME_SORT_CHANGED, this.context)\n      }\n    },\n    // methods to compute classes and attrs for thead>th cells\n    sortTheadThClasses(key, field, isFoot) {\n      return {\n        // If sortable and sortIconLeft are true, then place sort icon on the left\n        'b-table-sort-icon-left':\n          field.sortable && this.sortIconLeft && !(isFoot && this.noFooterSorting)\n      }\n    },\n    sortTheadThAttrs(key, field, isFoot) {\n      if (!this.isSortable || (isFoot && this.noFooterSorting)) {\n        // No attributes if not a sortable table\n        return {}\n      }\n      const sortable = field.sortable\n      // Assemble the aria-sort attribute value\n      const ariaSort =\n        sortable && this.localSortBy === key\n          ? this.localSortDesc\n            ? 'descending'\n            : 'ascending'\n          : sortable\n            ? 'none'\n            : null\n      // Return the attribute\n      return {\n        'aria-sort': ariaSort\n      }\n    },\n    sortTheadThLabel(key, field, isFoot) {\n      // A label to be placed in an `.sr-only` element in the header cell\n      if (!this.isSortable || (isFoot && this.noFooterSorting)) {\n        // No label if not a sortable table\n        return null\n      }\n      const sortable = field.sortable\n      // The correctness of these labels is very important for screen-reader users.\n      let labelSorting = ''\n      if (sortable) {\n        if (this.localSortBy === key) {\n          // currently sorted sortable column.\n          labelSorting = this.localSortDesc ? this.labelSortAsc : this.labelSortDesc\n        } else {\n          // Not currently sorted sortable column.\n          // Not using nested ternary's here for clarity/readability\n          // Default for ariaLabel\n          labelSorting = this.localSortDesc ? this.labelSortDesc : this.labelSortAsc\n          // Handle sortDirection setting\n          const sortDirection = this.sortDirection || field.sortDirection\n          if (sortDirection === SORT_DIRECTION_ASC) {\n            labelSorting = this.labelSortAsc\n          } else if (sortDirection === SORT_DIRECTION_DESC) {\n            labelSorting = this.labelSortDesc\n          }\n        }\n      } else if (!this.noSortReset) {\n        // Non sortable column\n        labelSorting = this.localSortBy ? this.labelSortClear : ''\n      }\n      // Return the sr-only sort label or null if no label\n      return trim(labelSorting) || null\n    }\n  }\n})\n","import { Vue } from '../../../vue'\nimport { PROP_TYPE_BOOLEAN_STRING } from '../../../constants/props'\nimport { makeProp } from '../../../utils/props'\n\n// --- Props ---\n\nexport const props = {\n  stacked: makeProp(PROP_TYPE_BOOLEAN_STRING, false)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const stackedMixin = Vue.extend({\n  props,\n  computed: {\n    isStacked() {\n      const { stacked } = this\n      // `true` when always stacked, or returns breakpoint specified\n      return stacked === '' ? true : stacked\n    },\n    isStackedAlways() {\n      return this.isStacked === true\n    },\n    stackedTableClasses() {\n      const { isStackedAlways } = this\n      return {\n        'b-table-stacked': isStackedAlways,\n        [`b-table-stacked-${this.stacked}`]: !isStackedAlways && this.isStacked\n      }\n    }\n  }\n})\n","import { Vue } from '../../../vue'\nimport {\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_BOOLEAN_STRING,\n  PROP_TYPE_STRING\n} from '../../../constants/props'\nimport { identity } from '../../../utils/identity'\nimport { isBoolean } from '../../../utils/inspect'\nimport { makeProp } from '../../../utils/props'\nimport { toString } from '../../../utils/string'\nimport { attrsMixin } from '../../../mixins/attrs'\n\n// Main `<table>` render mixin\n// Includes all main table styling options\n\n// --- Props ---\n\nexport const props = {\n  bordered: makeProp(PROP_TYPE_BOOLEAN, false),\n  borderless: makeProp(PROP_TYPE_BOOLEAN, false),\n  captionTop: makeProp(PROP_TYPE_BOOLEAN, false),\n  dark: makeProp(PROP_TYPE_BOOLEAN, false),\n  fixed: makeProp(PROP_TYPE_BOOLEAN, false),\n  hover: makeProp(PROP_TYPE_BOOLEAN, false),\n  noBorderCollapse: makeProp(PROP_TYPE_BOOLEAN, false),\n  outlined: makeProp(PROP_TYPE_BOOLEAN, false),\n  responsive: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n  small: makeProp(PROP_TYPE_BOOLEAN, false),\n  // If a string, it is assumed to be the table `max-height` value\n  stickyHeader: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n  striped: makeProp(PROP_TYPE_BOOLEAN, false),\n  tableClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n  tableVariant: makeProp(PROP_TYPE_STRING)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const tableRendererMixin = Vue.extend({\n  mixins: [attrsMixin],\n  provide() {\n    return {\n      bvTable: this\n    }\n  },\n  // Don't place attributes on root element automatically,\n  // as table could be wrapped in responsive `<div>`\n  inheritAttrs: false,\n  props,\n  computed: {\n    // Layout related computed props\n    isResponsive() {\n      let { responsive } = this\n      responsive = responsive === '' ? true : responsive\n      return this.isStacked ? false : responsive\n    },\n    isStickyHeader() {\n      let { stickyHeader } = this\n      stickyHeader = stickyHeader === '' ? true : stickyHeader\n      return this.isStacked ? false : stickyHeader\n    },\n    wrapperClasses() {\n      const { isResponsive } = this\n      return [\n        this.isStickyHeader ? 'b-table-sticky-header' : '',\n        isResponsive === true\n          ? 'table-responsive'\n          : isResponsive\n            ? `table-responsive-${this.responsive}`\n            : ''\n      ].filter(identity)\n    },\n    wrapperStyles() {\n      const { isStickyHeader } = this\n      return isStickyHeader && !isBoolean(isStickyHeader) ? { maxHeight: isStickyHeader } : {}\n    },\n    tableClasses() {\n      let { hover, tableVariant } = this\n      hover = this.isTableSimple\n        ? hover\n        : hover && this.computedItems.length > 0 && !this.computedBusy\n\n      return [\n        // User supplied classes\n        this.tableClass,\n        // Styling classes\n        {\n          'table-striped': this.striped,\n          'table-hover': hover,\n          'table-dark': this.dark,\n          'table-bordered': this.bordered,\n          'table-borderless': this.borderless,\n          'table-sm': this.small,\n          // The following are b-table custom styles\n          border: this.outlined,\n          'b-table-fixed': this.fixed,\n          'b-table-caption-top': this.captionTop,\n          'b-table-no-border-collapse': this.noBorderCollapse\n        },\n        tableVariant ? `${this.dark ? 'bg' : 'table'}-${tableVariant}` : '',\n        // Stacked table classes\n        this.stackedTableClasses,\n        // Selectable classes\n        this.selectableTableClasses\n      ]\n    },\n    tableAttrs() {\n      const {\n        computedItems: items,\n        filteredItems,\n        computedFields: fields,\n        selectableTableAttrs\n      } = this\n\n      // Preserve user supplied aria-describedby, if provided in `$attrs`\n      const adb =\n        [(this.bvAttrs || {})['aria-describedby'], this.captionId].filter(identity).join(' ') ||\n        null\n\n      const ariaAttrs = this.isTableSimple\n        ? {}\n        : {\n            'aria-busy': this.computedBusy ? 'true' : 'false',\n            'aria-colcount': toString(fields.length),\n            'aria-describedby': adb\n          }\n\n      const rowCount =\n        items && filteredItems && filteredItems.length > items.length\n          ? toString(filteredItems.length)\n          : null\n\n      return {\n        // We set `aria-rowcount` before merging in `$attrs`,\n        // in case user has supplied their own\n        'aria-rowcount': rowCount,\n        // Merge in user supplied `$attrs` if any\n        ...this.bvAttrs,\n        // Now we can override any `$attrs` here\n        id: this.safeId(),\n        role: 'table',\n        ...ariaAttrs,\n        ...selectableTableAttrs\n      }\n    }\n  },\n  render(h) {\n    const {\n      wrapperClasses,\n      renderCaption,\n      renderColgroup,\n      renderThead,\n      renderTbody,\n      renderTfoot\n    } = this\n\n    const $content = []\n    if (this.isTableSimple) {\n      $content.push(this.normalizeSlot())\n    } else {\n      // Build the `<caption>` (from caption mixin)\n      $content.push(renderCaption ? renderCaption() : null)\n\n      // Build the `<colgroup>`\n      $content.push(renderColgroup ? renderColgroup() : null)\n\n      // Build the `<thead>`\n      $content.push(renderThead ? renderThead() : null)\n\n      // Build the `<tbody>`\n      $content.push(renderTbody ? renderTbody() : null)\n\n      // Build the `<tfoot>`\n      $content.push(renderTfoot ? renderTfoot() : null)\n    }\n\n    // Assemble `<table>`\n    const $table = h(\n      'table',\n      {\n        staticClass: 'table b-table',\n        class: this.tableClasses,\n        attrs: this.tableAttrs,\n        key: 'b-table'\n      },\n      $content.filter(identity)\n    )\n\n    // Add responsive/sticky wrapper if needed and return table\n    return wrapperClasses.length > 0\n      ? h(\n          'div',\n          {\n            class: wrapperClasses,\n            style: this.wrapperStyles,\n            key: 'wrap'\n          },\n          [$table]\n        )\n      : $table\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TBODY } from '../../constants/components'\nimport { PROP_TYPE_OBJECT } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    tbodyTransitionHandlers: makeProp(PROP_TYPE_OBJECT),\n    tbodyTransitionProps: makeProp(PROP_TYPE_OBJECT)\n  },\n  NAME_TBODY\n)\n\n// --- Main component ---\n\n// TODO:\n//   In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n//   to the child elements, so this can be converted to a functional component\n// @vue/component\nexport const BTbody = /*#__PURE__*/ Vue.extend({\n  name: NAME_TBODY,\n  mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n  provide() {\n    return {\n      bvTableRowGroup: this\n    }\n  },\n  inject: {\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    bvTable: {\n      default: /* istanbul ignore next */ () => ({})\n    }\n  },\n  inheritAttrs: false,\n  props,\n  computed: {\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    isTbody() {\n      return true\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    isDark() {\n      return this.bvTable.dark\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    isStacked() {\n      return this.bvTable.isStacked\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    isResponsive() {\n      return this.bvTable.isResponsive\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    // Sticky headers are only supported in thead\n    isStickyHeader() {\n      return false\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    // Needed to handle header background classes, due to lack of\n    // background color inheritance with Bootstrap v4 table CSS\n    hasStickyHeader() {\n      return !this.isStacked && this.bvTable.stickyHeader\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    tableVariant() {\n      return this.bvTable.tableVariant\n    },\n    isTransitionGroup() {\n      return this.tbodyTransitionProps || this.tbodyTransitionHandlers\n    },\n    tbodyAttrs() {\n      return { role: 'rowgroup', ...this.bvAttrs }\n    },\n    tbodyProps() {\n      const { tbodyTransitionProps } = this\n      return tbodyTransitionProps ? { ...tbodyTransitionProps, tag: 'tbody' } : {}\n    }\n  },\n  render(h) {\n    const data = {\n      props: this.tbodyProps,\n      attrs: this.tbodyAttrs\n    }\n    if (this.isTransitionGroup) {\n      // We use native listeners if a transition group for any delegated events\n      data.on = this.tbodyTransitionHandlers || {}\n      data.nativeOn = this.bvListeners\n    } else {\n      // Otherwise we place any listeners on the tbody element\n      data.on = this.bvListeners\n    }\n\n    return h(this.isTransitionGroup ? 'transition-group' : 'tbody', data, this.normalizeSlot())\n  }\n})\n","import { closest, getAttr, getById, matches, select } from '../../../utils/dom'\nimport { EVENT_FILTER } from './constants'\n\nconst TABLE_TAG_NAMES = ['TD', 'TH', 'TR']\n\n// Returns `true` if we should ignore the click/double-click/keypress event\n// Avoids having the user need to use `@click.stop` on the form control\nexport const filterEvent = event => {\n  // Exit early when we don't have a target element\n  if (!event || !event.target) {\n    /* istanbul ignore next */\n    return false\n  }\n  const el = event.target\n  // Exit early when element is disabled or a table element\n  if (el.disabled || TABLE_TAG_NAMES.indexOf(el.tagName) !== -1) {\n    return false\n  }\n  // Ignore the click when it was inside a dropdown menu\n  if (closest('.dropdown-menu', el)) {\n    return true\n  }\n  const label = el.tagName === 'LABEL' ? el : closest('label', el)\n  // If the label's form control is not disabled then we don't propagate event\n  // Modern browsers have `label.control` that references the associated input, but IE 11\n  // does not have this property on the label element, so we resort to DOM lookups\n  if (label) {\n    const labelFor = getAttr(label, 'for')\n    const input = labelFor ? getById(labelFor) : select('input, select, textarea', label)\n    if (input && !input.disabled) {\n      return true\n    }\n  }\n  // Otherwise check if the event target matches one of the selectors in the\n  // event filter (i.e. anchors, non disabled inputs, etc.)\n  // Return `true` if we should ignore the event\n  return matches(el, EVENT_FILTER)\n}\n","import { getSel, isElement } from '../../../utils/dom'\n\n// Helper to determine if a there is an active text selection on the document page\n// Used to filter out click events caused by the mouse up at end of selection\n//\n// Accepts an element as only argument to test to see if selection overlaps or is\n// contained within the element\nexport const textSelectionActive = (el = document) => {\n  const sel = getSel()\n  return sel && sel.toString().trim() !== '' && sel.containsNode && isElement(el)\n    ? /* istanbul ignore next */ sel.containsNode(el, true)\n    : false\n}\n","import { Vue } from '../../vue'\nimport { NAME_TH } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { BTd, props as BTdProps } from './td'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(BTdProps, NAME_TH)\n\n// --- Main component ---\n\n// TODO:\n//   In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n//   to the child elements, so this can be converted to a functional component\n// @vue/component\nexport const BTh = /*#__PURE__*/ Vue.extend({\n  name: NAME_TH,\n  extends: BTd,\n  props,\n  computed: {\n    tag() {\n      return 'th'\n    }\n  }\n})\n","import { Vue } from '../../../vue'\nimport {\n  EVENT_NAME_ROW_CLICKED,\n  EVENT_NAME_ROW_HOVERED,\n  EVENT_NAME_ROW_UNHOVERED\n} from '../../../constants/events'\nimport {\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_FUNCTION,\n  PROP_TYPE_OBJECT_FUNCTION\n} from '../../../constants/props'\nimport { SLOT_NAME_ROW_DETAILS } from '../../../constants/slots'\nimport { get } from '../../../utils/get'\nimport { isFunction, isString, isUndefinedOrNull } from '../../../utils/inspect'\nimport { makeProp } from '../../../utils/props'\nimport { toString } from '../../../utils/string'\nimport { BTr } from '../tr'\nimport { BTd } from '../td'\nimport { BTh } from '../th'\nimport { FIELD_KEY_CELL_VARIANT, FIELD_KEY_ROW_VARIANT, FIELD_KEY_SHOW_DETAILS } from './constants'\n\n// --- Props ---\n\nexport const props = {\n  detailsTdClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n  tbodyTrAttr: makeProp(PROP_TYPE_OBJECT_FUNCTION),\n  tbodyTrClass: makeProp([...PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_FUNCTION])\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const tbodyRowMixin = Vue.extend({\n  props,\n  methods: {\n    // Methods for computing classes, attributes and styles for table cells\n    getTdValues(item, key, tdValue, defaultValue) {\n      const { $parent } = this\n      if (tdValue) {\n        const value = get(item, key, '')\n        if (isFunction(tdValue)) {\n          return tdValue(value, key, item)\n        } else if (isString(tdValue) && isFunction($parent[tdValue])) {\n          return $parent[tdValue](value, key, item)\n        }\n        return tdValue\n      }\n      return defaultValue\n    },\n    getThValues(item, key, thValue, type, defaultValue) {\n      const { $parent } = this\n      if (thValue) {\n        const value = get(item, key, '')\n        if (isFunction(thValue)) {\n          return thValue(value, key, item, type)\n        } else if (isString(thValue) && isFunction($parent[thValue])) {\n          return $parent[thValue](value, key, item, type)\n        }\n        return thValue\n      }\n      return defaultValue\n    },\n    // Method to get the value for a field\n    getFormattedValue(item, field) {\n      const { key } = field\n      const formatter = this.getFieldFormatter(key)\n      let value = get(item, key, null)\n      if (isFunction(formatter)) {\n        value = formatter(value, key, item)\n      }\n      return isUndefinedOrNull(value) ? '' : value\n    },\n    // Factory function methods\n    toggleDetailsFactory(hasDetailsSlot, item) {\n      // Returns a function to toggle a row's details slot\n      return () => {\n        if (hasDetailsSlot) {\n          this.$set(item, FIELD_KEY_SHOW_DETAILS, !item[FIELD_KEY_SHOW_DETAILS])\n        }\n      }\n    },\n    // Row event handlers\n    rowHovered(event) {\n      // `mouseenter` handler (non-bubbling)\n      // `this.tbodyRowEvtStopped` from tbody mixin\n      if (!this.tbodyRowEvtStopped(event)) {\n        // `this.emitTbodyRowEvent` from tbody mixin\n        this.emitTbodyRowEvent(EVENT_NAME_ROW_HOVERED, event)\n      }\n    },\n    rowUnhovered(event) {\n      // `mouseleave` handler (non-bubbling)\n      // `this.tbodyRowEvtStopped` from tbody mixin\n      if (!this.tbodyRowEvtStopped(event)) {\n        // `this.emitTbodyRowEvent` from tbody mixin\n        this.emitTbodyRowEvent(EVENT_NAME_ROW_UNHOVERED, event)\n      }\n    },\n    // Renders a TD or TH for a row's field\n    renderTbodyRowCell(field, colIndex, item, rowIndex) {\n      const { isStacked } = this\n      const { key, label, isRowHeader } = field\n      const h = this.$createElement\n      const hasDetailsSlot = this.hasNormalizedSlot(SLOT_NAME_ROW_DETAILS)\n      const formatted = this.getFormattedValue(item, field)\n      const stickyColumn =\n        !isStacked && (this.isResponsive || this.stickyHeader) && field.stickyColumn\n      // We only uses the helper components for sticky columns to\n      // improve performance of BTable/BTableLite by reducing the\n      // total number of vue instances created during render\n      const cellTag = stickyColumn ? (isRowHeader ? BTh : BTd) : isRowHeader ? 'th' : 'td'\n      const cellVariant =\n        item[FIELD_KEY_CELL_VARIANT] && item[FIELD_KEY_CELL_VARIANT][key]\n          ? item[FIELD_KEY_CELL_VARIANT][key]\n          : field.variant || null\n      const data = {\n        // For the Vue key, we concatenate the column index and\n        // field key (as field keys could be duplicated)\n        // TODO: Although we do prevent duplicate field keys...\n        //   So we could change this to: `row-${rowIndex}-cell-${key}`\n        class: [field.class ? field.class : '', this.getTdValues(item, key, field.tdClass, '')],\n        props: {},\n        attrs: {\n          'aria-colindex': String(colIndex + 1),\n          ...(isRowHeader\n            ? this.getThValues(item, key, field.thAttr, 'row', {})\n            : this.getTdValues(item, key, field.tdAttr, {}))\n        },\n        key: `row-${rowIndex}-cell-${colIndex}-${key}`\n      }\n      if (stickyColumn) {\n        // We are using the helper BTd or BTh\n        data.props = {\n          stackedHeading: isStacked ? label : null,\n          stickyColumn: true,\n          variant: cellVariant\n        }\n      } else {\n        // Using native TD or TH element, so we need to\n        // add in the attributes and variant class\n        data.attrs['data-label'] = isStacked && !isUndefinedOrNull(label) ? toString(label) : null\n        data.attrs.role = isRowHeader ? 'rowheader' : 'cell'\n        data.attrs.scope = isRowHeader ? 'row' : null\n        // Add in the variant class\n        if (cellVariant) {\n          data.class.push(`${this.dark ? 'bg' : 'table'}-${cellVariant}`)\n        }\n      }\n\n      const slotScope = {\n        item,\n        index: rowIndex,\n        field,\n        unformatted: get(item, key, ''),\n        value: formatted,\n        toggleDetails: this.toggleDetailsFactory(hasDetailsSlot, item),\n        detailsShowing: Boolean(item[FIELD_KEY_SHOW_DETAILS])\n      }\n      // If table supports selectable mode, then add in the following scope\n      // this.supportsSelectableRows will be undefined if mixin isn't loaded\n      if (this.supportsSelectableRows) {\n        slotScope.rowSelected = this.isRowSelected(rowIndex)\n        slotScope.selectRow = () => this.selectRow(rowIndex)\n        slotScope.unselectRow = () => this.unselectRow(rowIndex)\n      }\n\n      // The new `v-slot` syntax doesn't like a slot name starting with\n      // a square bracket and if using in-document HTML templates, the\n      // v-slot attributes are lower-cased by the browser.\n      // Switched to round bracket syntax to prevent confusion with\n      // dynamic slot name syntax.\n      // We look for slots in this order: `cell(${key})`, `cell(${key.toLowerCase()})`, 'cell()'\n      // Slot names are now cached by mixin tbody in `this.$_bodyFieldSlotNameCache`\n      // Will be `null` if no slot (or fallback slot) exists\n      const slotName = this.$_bodyFieldSlotNameCache[key]\n      let $childNodes = slotName ? this.normalizeSlot(slotName, slotScope) : toString(formatted)\n      if (this.isStacked) {\n        // We wrap in a DIV to ensure rendered as a single cell when visually stacked!\n        $childNodes = [h('div', [$childNodes])]\n      }\n\n      // Render either a td or th cell\n      return h(cellTag, data, [$childNodes])\n    },\n    // Renders an item's row (or rows if details supported)\n    renderTbodyRow(item, rowIndex) {\n      const {\n        computedFields: fields,\n        striped,\n        primaryKey,\n        currentPage,\n        perPage,\n        tbodyTrClass,\n        tbodyTrAttr\n      } = this\n      const h = this.$createElement\n      const hasDetailsSlot = this.hasNormalizedSlot(SLOT_NAME_ROW_DETAILS)\n      const rowShowDetails = item[FIELD_KEY_SHOW_DETAILS] && hasDetailsSlot\n      const hasRowClickHandler =\n        this.$listeners[EVENT_NAME_ROW_CLICKED] || this.hasSelectableRowClick\n\n      // We can return more than one TR if rowDetails enabled\n      const $rows = []\n\n      // Details ID needed for `aria-details` when details showing\n      // We set it to `null` when not showing so that attribute\n      // does not appear on the element\n      const detailsId = rowShowDetails ? this.safeId(`_details_${rowIndex}_`) : null\n\n      // For each item data field in row\n      const $tds = fields.map((field, colIndex) => {\n        return this.renderTbodyRowCell(field, colIndex, item, rowIndex)\n      })\n\n      // Calculate the row number in the dataset (indexed from 1)\n      let ariaRowIndex = null\n      if (currentPage && perPage && perPage > 0) {\n        ariaRowIndex = String((currentPage - 1) * perPage + rowIndex + 1)\n      }\n\n      // Create a unique :key to help ensure that sub components are re-rendered rather than\n      // re-used, which can cause issues. If a primary key is not provided we use the rendered\n      // rows index within the tbody.\n      // See: https://github.com/bootstrap-vue/bootstrap-vue/issues/2410\n      const primaryKeyValue = toString(get(item, primaryKey)) || null\n      const rowKey = primaryKeyValue || toString(rowIndex)\n\n      // If primary key is provided, use it to generate a unique ID on each tbody > tr\n      // In the format of '{tableId}__row_{primaryKeyValue}'\n      const rowId = primaryKeyValue ? this.safeId(`_row_${primaryKeyValue}`) : null\n\n      // Selectable classes and attributes\n      const selectableClasses = this.selectableRowClasses ? this.selectableRowClasses(rowIndex) : {}\n      const selectableAttrs = this.selectableRowAttrs ? this.selectableRowAttrs(rowIndex) : {}\n\n      // Additional classes and attributes\n      const userTrClasses = isFunction(tbodyTrClass) ? tbodyTrClass(item, 'row') : tbodyTrClass\n      const userTrAttrs = isFunction(tbodyTrAttr)\n        ? /* istanbul ignore next */ tbodyTrAttr(item, 'row')\n        : tbodyTrAttr\n\n      // Add the item row\n      $rows.push(\n        h(\n          BTr,\n          {\n            class: [userTrClasses, selectableClasses, rowShowDetails ? 'b-table-has-details' : ''],\n            props: { variant: item[FIELD_KEY_ROW_VARIANT] || null },\n            attrs: {\n              id: rowId,\n              ...userTrAttrs,\n              // Users cannot override the following attributes\n              tabindex: hasRowClickHandler ? '0' : null,\n              'data-pk': primaryKeyValue || null,\n              'aria-details': detailsId,\n              'aria-owns': detailsId,\n              'aria-rowindex': ariaRowIndex,\n              ...selectableAttrs\n            },\n            on: {\n              // Note: These events are not A11Y friendly!\n              mouseenter: this.rowHovered,\n              mouseleave: this.rowUnhovered\n            },\n            key: `__b-table-row-${rowKey}__`,\n            ref: 'item-rows',\n            refInFor: true\n          },\n          $tds\n        )\n      )\n\n      // Row Details slot\n      if (rowShowDetails) {\n        const detailsScope = {\n          item,\n          index: rowIndex,\n          fields,\n          toggleDetails: this.toggleDetailsFactory(hasDetailsSlot, item)\n        }\n        // If table supports selectable mode, then add in the following scope\n        // this.supportsSelectableRows will be undefined if mixin isn't loaded\n        if (this.supportsSelectableRows) {\n          detailsScope.rowSelected = this.isRowSelected(rowIndex)\n          detailsScope.selectRow = () => this.selectRow(rowIndex)\n          detailsScope.unselectRow = () => this.unselectRow(rowIndex)\n        }\n\n        // Render the details slot in a TD\n        const $details = h(\n          BTd,\n          {\n            props: { colspan: fields.length },\n            class: this.detailsTdClass\n          },\n          [this.normalizeSlot(SLOT_NAME_ROW_DETAILS, detailsScope)]\n        )\n\n        // Add a hidden row to keep table row striping consistent when details showing\n        // Only added if the table is striped\n        if (striped) {\n          $rows.push(\n            // We don't use `BTr` here as we don't need the extra functionality\n            h('tr', {\n              staticClass: 'd-none',\n              attrs: {\n                'aria-hidden': 'true',\n                role: 'presentation'\n              },\n              key: `__b-table-details-stripe__${rowKey}`\n            })\n          )\n        }\n\n        // Add the actual details row\n        const userDetailsTrClasses = isFunction(this.tbodyTrClass)\n          ? /* istanbul ignore next */ this.tbodyTrClass(item, SLOT_NAME_ROW_DETAILS)\n          : this.tbodyTrClass\n        const userDetailsTrAttrs = isFunction(this.tbodyTrAttr)\n          ? /* istanbul ignore next */ this.tbodyTrAttr(item, SLOT_NAME_ROW_DETAILS)\n          : this.tbodyTrAttr\n        $rows.push(\n          h(\n            BTr,\n            {\n              staticClass: 'b-table-details',\n              class: [userDetailsTrClasses],\n              props: { variant: item[FIELD_KEY_ROW_VARIANT] || null },\n              attrs: {\n                ...userDetailsTrAttrs,\n                // Users cannot override the following attributes\n                id: detailsId,\n                tabindex: '-1'\n              },\n              key: `__b-table-details__${rowKey}`\n            },\n            [$details]\n          )\n        )\n      } else if (hasDetailsSlot) {\n        // Only add the placeholder if a the table has a row-details slot defined (but not shown)\n        $rows.push(h())\n        if (striped) {\n          // Add extra placeholder if table is striped\n          $rows.push(h())\n        }\n      }\n\n      // Return the row(s)\n      return $rows\n    }\n  }\n})\n","import { Vue } from '../../../vue'\nimport {\n  EVENT_NAME_ROW_CLICKED,\n  EVENT_NAME_ROW_CONTEXTMENU,\n  EVENT_NAME_ROW_DBLCLICKED,\n  EVENT_NAME_ROW_MIDDLE_CLICKED\n} from '../../../constants/events'\nimport {\n  CODE_DOWN,\n  CODE_END,\n  CODE_ENTER,\n  CODE_HOME,\n  CODE_SPACE,\n  CODE_UP\n} from '../../../constants/key-codes'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING } from '../../../constants/props'\nimport { arrayIncludes, from as arrayFrom } from '../../../utils/array'\nimport { attemptFocus, closest, isActiveElement, isElement } from '../../../utils/dom'\nimport { stopEvent } from '../../../utils/events'\nimport { sortKeys } from '../../../utils/object'\nimport { makeProp, pluckProps } from '../../../utils/props'\nimport { BTbody, props as BTbodyProps } from '../tbody'\nimport { filterEvent } from './filter-event'\nimport { textSelectionActive } from './text-selection-active'\nimport { tbodyRowMixin, props as tbodyRowProps } from './mixin-tbody-row'\n\n// --- Helper methods ---\n\nconst getCellSlotName = value => `cell(${value || ''})`\n\n// --- Props ---\n\nexport const props = sortKeys({\n  ...BTbodyProps,\n  ...tbodyRowProps,\n  tbodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n})\n\n// --- Mixin ---\n\n// @vue/component\nexport const tbodyMixin = Vue.extend({\n  mixins: [tbodyRowMixin],\n  props,\n  beforeDestroy() {\n    this.$_bodyFieldSlotNameCache = null\n  },\n  methods: {\n    // Returns all the item TR elements (excludes detail and spacer rows)\n    // `this.$refs['item-rows']` is an array of item TR components/elements\n    // Rows should all be `<b-tr>` components, but we map to TR elements\n    // Also note that `this.$refs['item-rows']` may not always be in document order\n    getTbodyTrs() {\n      const { $refs } = this\n      const tbody = $refs.tbody ? $refs.tbody.$el || $refs.tbody : null\n      const trs = ($refs['item-rows'] || []).map(tr => tr.$el || tr)\n      return tbody && tbody.children && tbody.children.length > 0 && trs && trs.length > 0\n        ? arrayFrom(tbody.children).filter(tr => arrayIncludes(trs, tr))\n        : /* istanbul ignore next */ []\n    },\n    // Returns index of a particular TBODY item TR\n    // We set `true` on closest to include self in result\n    getTbodyTrIndex(el) {\n      /* istanbul ignore next: should not normally happen */\n      if (!isElement(el)) {\n        return -1\n      }\n      const tr = el.tagName === 'TR' ? el : closest('tr', el, true)\n      return tr ? this.getTbodyTrs().indexOf(tr) : -1\n    },\n    // Emits a row event, with the item object, row index and original event\n    emitTbodyRowEvent(type, event) {\n      if (type && this.hasListener(type) && event && event.target) {\n        const rowIndex = this.getTbodyTrIndex(event.target)\n        if (rowIndex > -1) {\n          // The array of TRs correlate to the `computedItems` array\n          const item = this.computedItems[rowIndex]\n          this.$emit(type, item, rowIndex, event)\n        }\n      }\n    },\n    tbodyRowEvtStopped(event) {\n      return this.stopIfBusy && this.stopIfBusy(event)\n    },\n    // Delegated row event handlers\n    onTbodyRowKeydown(event) {\n      // Keyboard navigation and row click emulation\n      const { target, keyCode } = event\n      if (\n        this.tbodyRowEvtStopped(event) ||\n        target.tagName !== 'TR' ||\n        !isActiveElement(target) ||\n        target.tabIndex !== 0\n      ) {\n        // Early exit if not an item row TR\n        return\n      }\n\n      if (arrayIncludes([CODE_ENTER, CODE_SPACE], keyCode)) {\n        // Emulated click for keyboard users, transfer to click handler\n        stopEvent(event)\n        this.onTBodyRowClicked(event)\n      } else if (arrayIncludes([CODE_UP, CODE_DOWN, CODE_HOME, CODE_END], keyCode)) {\n        // Keyboard navigation\n        const rowIndex = this.getTbodyTrIndex(target)\n        if (rowIndex > -1) {\n          stopEvent(event)\n          const trs = this.getTbodyTrs()\n          const shift = event.shiftKey\n          if (keyCode === CODE_HOME || (shift && keyCode === CODE_UP)) {\n            // Focus first row\n            attemptFocus(trs[0])\n          } else if (keyCode === CODE_END || (shift && keyCode === CODE_DOWN)) {\n            // Focus last row\n            attemptFocus(trs[trs.length - 1])\n          } else if (keyCode === CODE_UP && rowIndex > 0) {\n            // Focus previous row\n            attemptFocus(trs[rowIndex - 1])\n          } else if (keyCode === CODE_DOWN && rowIndex < trs.length - 1) {\n            // Focus next row\n            attemptFocus(trs[rowIndex + 1])\n          }\n        }\n      }\n    },\n    onTBodyRowClicked(event) {\n      // Don't emit event when the table is busy, the user clicked\n      // on a non-disabled control or is selecting text\n      if (this.tbodyRowEvtStopped(event) || filterEvent(event) || textSelectionActive(this.$el)) {\n        return\n      }\n      this.emitTbodyRowEvent(EVENT_NAME_ROW_CLICKED, event)\n    },\n    onTbodyRowMiddleMouseRowClicked(event) {\n      if (!this.tbodyRowEvtStopped(event) && event.which === 2) {\n        this.emitTbodyRowEvent(EVENT_NAME_ROW_MIDDLE_CLICKED, event)\n      }\n    },\n    onTbodyRowContextmenu(event) {\n      if (!this.tbodyRowEvtStopped(event)) {\n        this.emitTbodyRowEvent(EVENT_NAME_ROW_CONTEXTMENU, event)\n      }\n    },\n    onTbodyRowDblClicked(event) {\n      if (!this.tbodyRowEvtStopped(event) && !filterEvent(event)) {\n        this.emitTbodyRowEvent(EVENT_NAME_ROW_DBLCLICKED, event)\n      }\n    },\n    // Render the tbody element and children\n    // Note:\n    //   Row hover handlers are handled by the tbody-row mixin\n    //   As mouseenter/mouseleave events do not bubble\n    renderTbody() {\n      const { computedItems: items, renderBusy, renderTopRow, renderEmpty, renderBottomRow } = this\n      const h = this.$createElement\n      const hasRowClickHandler =\n        this.hasListener(EVENT_NAME_ROW_CLICKED) || this.hasSelectableRowClick\n\n      // Prepare the tbody rows\n      const $rows = []\n\n      // Add the item data rows or the busy slot\n      const $busy = renderBusy ? renderBusy() : null\n      if ($busy) {\n        // If table is busy and a busy slot, then return only the busy \"row\" indicator\n        $rows.push($busy)\n      } else {\n        // Table isn't busy, or we don't have a busy slot\n\n        // Create a slot cache for improved performance when looking up cell slot names\n        // Values will be keyed by the field's `key` and will store the slot's name\n        // Slots could be dynamic (i.e. `v-if`), so we must compute on each render\n        // Used by tbody-row mixin render helper\n        const cache = {}\n        let defaultSlotName = getCellSlotName()\n        defaultSlotName = this.hasNormalizedSlot(defaultSlotName) ? defaultSlotName : null\n        this.computedFields.forEach(field => {\n          const { key } = field\n          const slotName = getCellSlotName(key)\n          const lowercaseSlotName = getCellSlotName(key.toLowerCase())\n          cache[key] = this.hasNormalizedSlot(slotName)\n            ? slotName\n            : this.hasNormalizedSlot(lowercaseSlotName)\n              ? /* istanbul ignore next */ lowercaseSlotName\n              : defaultSlotName\n        })\n        // Created as a non-reactive property so to not trigger component updates\n        // Must be a fresh object each render\n        this.$_bodyFieldSlotNameCache = cache\n\n        // Add static top row slot (hidden in visibly stacked mode\n        // as we can't control `data-label` attr)\n        $rows.push(renderTopRow ? renderTopRow() : h())\n\n        // Render the rows\n        items.forEach((item, rowIndex) => {\n          // Render the individual item row (rows if details slot)\n          $rows.push(this.renderTbodyRow(item, rowIndex))\n        })\n\n        // Empty items / empty filtered row slot (only shows if `items.length < 1`)\n        $rows.push(renderEmpty ? renderEmpty() : h())\n\n        // Static bottom row slot (hidden in visibly stacked mode\n        // as we can't control `data-label` attr)\n        $rows.push(renderBottomRow ? renderBottomRow() : h())\n      }\n\n      // Note: these events will only emit if a listener is registered\n      const handlers = {\n        auxclick: this.onTbodyRowMiddleMouseRowClicked,\n        // TODO:\n        //   Perhaps we do want to automatically prevent the\n        //   default context menu from showing if there is a\n        //   `row-contextmenu` listener registered\n        contextmenu: this.onTbodyRowContextmenu,\n        // The following event(s) is not considered A11Y friendly\n        dblclick: this.onTbodyRowDblClicked\n        // Hover events (`mouseenter`/`mouseleave`) are handled by `tbody-row` mixin\n      }\n      // Add in click/keydown listeners if needed\n      if (hasRowClickHandler) {\n        handlers.click = this.onTBodyRowClicked\n        handlers.keydown = this.onTbodyRowKeydown\n      }\n\n      // Assemble rows into the tbody\n      const $tbody = h(\n        BTbody,\n        {\n          class: this.tbodyClass || null,\n          props: pluckProps(BTbodyProps, this.$props),\n          // BTbody transfers all native event listeners to the root element\n          // TODO: Only set the handlers if the table is not busy\n          on: handlers,\n          ref: 'tbody'\n        },\n        $rows\n      )\n\n      // Return the assembled tbody\n      return $tbody\n    }\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TFOOT } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    // Supported values: 'lite', 'dark', or null\n    footVariant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_TFOOT\n)\n\n// --- Main component ---\n\n// TODO:\n//   In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n//   to the child elements, so this can be converted to a functional component\n// @vue/component\nexport const BTfoot = /*#__PURE__*/ Vue.extend({\n  name: NAME_TFOOT,\n  mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n  provide() {\n    return {\n      bvTableRowGroup: this\n    }\n  },\n  inject: {\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    bvTable: {\n      default: /* istanbul ignore next */ () => ({})\n    }\n  },\n  inheritAttrs: false,\n  props,\n  computed: {\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    isTfoot() {\n      return true\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    isDark() {\n      return this.bvTable.dark\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    isStacked() {\n      return this.bvTable.isStacked\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    isResponsive() {\n      return this.bvTable.isResponsive\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    // Sticky headers are only supported in thead\n    isStickyHeader() {\n      return false\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    // Needed to handle header background classes, due to lack of\n    // background color inheritance with Bootstrap v4 table CSS\n    hasStickyHeader() {\n      return !this.isStacked && this.bvTable.stickyHeader\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    tableVariant() {\n      return this.bvTable.tableVariant\n    },\n    tfootClasses() {\n      return [this.footVariant ? `thead-${this.footVariant}` : null]\n    },\n    tfootAttrs() {\n      return { ...this.bvAttrs, role: 'rowgroup' }\n    }\n  },\n  render(h) {\n    return h(\n      'tfoot',\n      {\n        class: this.tfootClasses,\n        attrs: this.tfootAttrs,\n        // Pass down any native listeners\n        on: this.bvListeners\n      },\n      this.normalizeSlot()\n    )\n  }\n})\n","import { Vue } from '../../../vue'\nimport {\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_STRING\n} from '../../../constants/props'\nimport { SLOT_NAME_CUSTOM_FOOT } from '../../../constants/slots'\nimport { makeProp } from '../../../utils/props'\nimport { BTfoot } from '../tfoot'\n\n// --- Props ---\n\nexport const props = {\n  footClone: makeProp(PROP_TYPE_BOOLEAN, false),\n  // Any Bootstrap theme variant (or custom)\n  // Falls back to `headRowVariant`\n  footRowVariant: makeProp(PROP_TYPE_STRING),\n  // 'dark', 'light', or `null` (or custom)\n  footVariant: makeProp(PROP_TYPE_STRING),\n  tfootClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n  tfootTrClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const tfootMixin = Vue.extend({\n  props,\n  methods: {\n    renderTFootCustom() {\n      const h = this.$createElement\n      if (this.hasNormalizedSlot(SLOT_NAME_CUSTOM_FOOT)) {\n        return h(\n          BTfoot,\n          {\n            class: this.tfootClass || null,\n            props: { footVariant: this.footVariant || this.headVariant || null },\n            key: 'bv-tfoot-custom'\n          },\n          this.normalizeSlot(SLOT_NAME_CUSTOM_FOOT, {\n            items: this.computedItems.slice(),\n            fields: this.computedFields.slice(),\n            columns: this.computedFields.length\n          })\n        )\n      }\n\n      return h()\n    },\n    renderTfoot() {\n      // Passing true to renderThead will make it render a tfoot\n      return this.footClone ? this.renderThead(true) : this.renderTFootCustom()\n    }\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_THEAD } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    // Also sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    // Supported values: 'lite', 'dark', or `null`\n    headVariant: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_THEAD\n)\n\n// --- Main component ---\n\n// TODO:\n//   In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n//   to the child elements, so this can be converted to a functional component\n// @vue/component\nexport const BThead = /*#__PURE__*/ Vue.extend({\n  name: NAME_THEAD,\n  mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n  provide() {\n    return {\n      bvTableRowGroup: this\n    }\n  },\n  inject: {\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    bvTable: {\n      default: /* istanbul ignore next */ () => ({})\n    }\n  },\n  inheritAttrs: false,\n  props,\n  computed: {\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    isThead() {\n      return true\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    isDark() {\n      return this.bvTable.dark\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    isStacked() {\n      return this.bvTable.isStacked\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    isResponsive() {\n      return this.bvTable.isResponsive\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    // Needed to handle header background classes, due to lack of\n    // background color inheritance with Bootstrap v4 table CSS\n    // Sticky headers only apply to cells in table `thead`\n    isStickyHeader() {\n      return !this.isStacked && this.bvTable.stickyHeader\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    // Needed to handle header background classes, due to lack of\n    // background color inheritance with Bootstrap v4 table CSS\n    hasStickyHeader() {\n      return !this.isStacked && this.bvTable.stickyHeader\n    },\n    // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n    tableVariant() {\n      return this.bvTable.tableVariant\n    },\n    theadClasses() {\n      return [this.headVariant ? `thead-${this.headVariant}` : null]\n    },\n    theadAttrs() {\n      return { role: 'rowgroup', ...this.bvAttrs }\n    }\n  },\n  render(h) {\n    return h(\n      'thead',\n      {\n        class: this.theadClasses,\n        attrs: this.theadAttrs,\n        // Pass down any native listeners\n        on: this.bvListeners\n      },\n      this.normalizeSlot()\n    )\n  }\n})\n","import { Vue } from '../../../vue'\nimport { EVENT_NAME_HEAD_CLICKED } from '../../../constants/events'\nimport { CODE_ENTER, CODE_SPACE } from '../../../constants/key-codes'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../../constants/props'\nimport { SLOT_NAME_THEAD_TOP } from '../../../constants/slots'\nimport { stopEvent } from '../../../utils/events'\nimport { htmlOrText } from '../../../utils/html'\nimport { identity } from '../../../utils/identity'\nimport { isUndefinedOrNull } from '../../../utils/inspect'\nimport { noop } from '../../../utils/noop'\nimport { makeProp } from '../../../utils/props'\nimport { startCase } from '../../../utils/string'\nimport { BThead } from '../thead'\nimport { BTfoot } from '../tfoot'\nimport { BTr } from '../tr'\nimport { BTh } from '../th'\nimport { filterEvent } from './filter-event'\nimport { textSelectionActive } from './text-selection-active'\n\n// --- Helper methods ---\n\nconst getHeadSlotName = value => `head(${value || ''})`\n\nconst getFootSlotName = value => `foot(${value || ''})`\n\n// --- Props ---\n\nexport const props = {\n  // Any Bootstrap theme variant (or custom)\n  headRowVariant: makeProp(PROP_TYPE_STRING),\n  // 'light', 'dark' or `null` (or custom)\n  headVariant: makeProp(PROP_TYPE_STRING),\n  theadClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n  theadTrClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const theadMixin = Vue.extend({\n  props,\n  methods: {\n    fieldClasses(field) {\n      // Header field (<th>) classes\n      return [field.class ? field.class : '', field.thClass ? field.thClass : '']\n    },\n    headClicked(event, field, isFoot) {\n      if (this.stopIfBusy && this.stopIfBusy(event)) {\n        // If table is busy (via provider) then don't propagate\n        return\n      } else if (filterEvent(event)) {\n        // Clicked on a non-disabled control so ignore\n        return\n      } else if (textSelectionActive(this.$el)) {\n        // User is selecting text, so ignore\n        /* istanbul ignore next: JSDOM doesn't support getSelection() */\n        return\n      }\n      stopEvent(event)\n      this.$emit(EVENT_NAME_HEAD_CLICKED, field.key, field, event, isFoot)\n    },\n    renderThead(isFoot = false) {\n      const {\n        computedFields: fields,\n        isSortable,\n        isSelectable,\n        headVariant,\n        footVariant,\n        headRowVariant,\n        footRowVariant\n      } = this\n      const h = this.$createElement\n\n      // In always stacked mode, we don't bother rendering the head/foot\n      // Or if no field headings (empty table)\n      if (this.isStackedAlways || fields.length === 0) {\n        return h()\n      }\n\n      const hasHeadClickListener = isSortable || this.hasListener(EVENT_NAME_HEAD_CLICKED)\n\n      // Reference to `selectAllRows` and `clearSelected()`, if table is selectable\n      const selectAllRows = isSelectable ? this.selectAllRows : noop\n      const clearSelected = isSelectable ? this.clearSelected : noop\n\n      // Helper function to generate a field <th> cell\n      const makeCell = (field, colIndex) => {\n        const { label, labelHtml, variant, stickyColumn, key } = field\n\n        let ariaLabel = null\n        if (!field.label.trim() && !field.headerTitle) {\n          // In case field's label and title are empty/blank\n          // We need to add a hint about what the column is about for non-sighted users\n          /* istanbul ignore next */\n          ariaLabel = startCase(field.key)\n        }\n\n        const on = {}\n        if (hasHeadClickListener) {\n          on.click = event => {\n            this.headClicked(event, field, isFoot)\n          }\n          on.keydown = event => {\n            const keyCode = event.keyCode\n            if (keyCode === CODE_ENTER || keyCode === CODE_SPACE) {\n              this.headClicked(event, field, isFoot)\n            }\n          }\n        }\n\n        const sortAttrs = isSortable ? this.sortTheadThAttrs(key, field, isFoot) : {}\n        const sortClass = isSortable ? this.sortTheadThClasses(key, field, isFoot) : null\n        const sortLabel = isSortable ? this.sortTheadThLabel(key, field, isFoot) : null\n\n        const data = {\n          class: [this.fieldClasses(field), sortClass],\n          props: { variant, stickyColumn },\n          style: field.thStyle || {},\n          attrs: {\n            // We only add a `tabindex` of `0` if there is a head-clicked listener\n            // and the current field is sortable\n            tabindex: hasHeadClickListener && field.sortable ? '0' : null,\n            abbr: field.headerAbbr || null,\n            title: field.headerTitle || null,\n            'aria-colindex': colIndex + 1,\n            'aria-label': ariaLabel,\n            ...this.getThValues(null, key, field.thAttr, isFoot ? 'foot' : 'head', {}),\n            ...sortAttrs\n          },\n          on,\n          key\n        }\n\n        // Handle edge case where in-document templates are used with new\n        // `v-slot:name` syntax where the browser lower-cases the v-slot's\n        // name (attributes become lower cased when parsed by the browser)\n        // We have replaced the square bracket syntax with round brackets\n        // to prevent confusion with dynamic slot names\n        let slotNames = [\n          getHeadSlotName(key),\n          getHeadSlotName(key.toLowerCase()),\n          getHeadSlotName()\n        ]\n        // Footer will fallback to header slot names\n        if (isFoot) {\n          slotNames = [\n            getFootSlotName(key),\n            getFootSlotName(key.toLowerCase()),\n            getFootSlotName(),\n            ...slotNames\n          ]\n        }\n\n        const scope = {\n          label,\n          column: key,\n          field,\n          isFoot,\n          // Add in row select methods\n          selectAllRows,\n          clearSelected\n        }\n\n        const $content =\n          this.normalizeSlot(slotNames, scope) ||\n          h('div', { domProps: htmlOrText(labelHtml, label) })\n\n        const $srLabel = sortLabel ? h('span', { staticClass: 'sr-only' }, ` (${sortLabel})`) : null\n\n        // Return the header cell\n        return h(BTh, data, [$content, $srLabel].filter(identity))\n      }\n\n      // Generate the array of <th> cells\n      const $cells = fields.map(makeCell).filter(identity)\n\n      // Generate the row(s)\n      const $trs = []\n      if (isFoot) {\n        $trs.push(\n          h(\n            BTr,\n            {\n              class: this.tfootTrClass,\n              props: {\n                variant: isUndefinedOrNull(footRowVariant)\n                  ? headRowVariant\n                  : /* istanbul ignore next */ footRowVariant\n              }\n            },\n            $cells\n          )\n        )\n      } else {\n        const scope = {\n          columns: fields.length,\n          fields,\n          // Add in row select methods\n          selectAllRows,\n          clearSelected\n        }\n        $trs.push(this.normalizeSlot(SLOT_NAME_THEAD_TOP, scope) || h())\n\n        $trs.push(\n          h(\n            BTr,\n            {\n              class: this.theadTrClass,\n              props: { variant: headRowVariant }\n            },\n            $cells\n          )\n        )\n      }\n\n      return h(\n        isFoot ? BTfoot : BThead,\n        {\n          class: (isFoot ? this.tfootClass : this.theadClass) || null,\n          props: isFoot\n            ? { footVariant: footVariant || headVariant || null }\n            : { headVariant: headVariant || null },\n          key: isFoot ? 'bv-tfoot' : 'bv-thead'\n        },\n        $trs\n      )\n    }\n  }\n})\n","import { Vue } from '../../../vue'\nimport { SLOT_NAME_TOP_ROW } from '../../../constants/slots'\nimport { isFunction } from '../../../utils/inspect'\nimport { BTr } from '../tr'\n\n// --- Props ---\n\nexport const props = {}\n\n// --- Mixin ---\n\n// @vue/component\nexport const topRowMixin = Vue.extend({\n  methods: {\n    renderTopRow() {\n      const { computedFields: fields, stacked, tbodyTrClass, tbodyTrAttr } = this\n      const h = this.$createElement\n\n      // Add static Top Row slot (hidden in visibly stacked mode as we can't control the data-label)\n      // If in *always* stacked mode, we don't bother rendering the row\n      if (!this.hasNormalizedSlot(SLOT_NAME_TOP_ROW) || stacked === true || stacked === '') {\n        return h()\n      }\n\n      return h(\n        BTr,\n        {\n          staticClass: 'b-table-top-row',\n          class: [isFunction(tbodyTrClass) ? tbodyTrClass(null, 'row-top') : tbodyTrClass],\n          attrs: isFunction(tbodyTrAttr) ? tbodyTrAttr(null, 'row-top') : tbodyTrAttr,\n          key: 'b-top-row'\n        },\n        [this.normalizeSlot(SLOT_NAME_TOP_ROW, { columns: fields.length, fields })]\n      )\n    }\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TABLE } from '../../constants/components'\nimport { sortKeys } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { hasListenerMixin } from '../../mixins/has-listener'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { bottomRowMixin, props as bottomRowProps } from './helpers/mixin-bottom-row'\nimport { busyMixin, props as busyProps } from './helpers/mixin-busy'\nimport { captionMixin, props as captionProps } from './helpers/mixin-caption'\nimport { colgroupMixin, props as colgroupProps } from './helpers/mixin-colgroup'\nimport { emptyMixin, props as emptyProps } from './helpers/mixin-empty'\nimport { filteringMixin, props as filteringProps } from './helpers/mixin-filtering'\nimport { itemsMixin, props as itemsProps } from './helpers/mixin-items'\nimport { paginationMixin, props as paginationProps } from './helpers/mixin-pagination'\nimport { providerMixin, props as providerProps } from './helpers/mixin-provider'\nimport { selectableMixin, props as selectableProps } from './helpers/mixin-selectable'\nimport { sortingMixin, props as sortingProps } from './helpers/mixin-sorting'\nimport { stackedMixin, props as stackedProps } from './helpers/mixin-stacked'\nimport { tableRendererMixin, props as tableRendererProps } from './helpers/mixin-table-renderer'\nimport { tbodyMixin, props as tbodyProps } from './helpers/mixin-tbody'\nimport { tfootMixin, props as tfootProps } from './helpers/mixin-tfoot'\nimport { theadMixin, props as theadProps } from './helpers/mixin-thead'\nimport { topRowMixin, props as topRowProps } from './helpers/mixin-top-row'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...bottomRowProps,\n    ...busyProps,\n    ...captionProps,\n    ...colgroupProps,\n    ...emptyProps,\n    ...filteringProps,\n    ...itemsProps,\n    ...paginationProps,\n    ...providerProps,\n    ...selectableProps,\n    ...sortingProps,\n    ...stackedProps,\n    ...tableRendererProps,\n    ...tbodyProps,\n    ...tfootProps,\n    ...theadProps,\n    ...topRowProps\n  }),\n  NAME_TABLE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BTable = /*#__PURE__*/ Vue.extend({\n  name: NAME_TABLE,\n  // Order of mixins is important!\n  // They are merged from first to last, followed by this component\n  mixins: [\n    // General mixins\n    attrsMixin,\n    hasListenerMixin,\n    idMixin,\n    normalizeSlotMixin,\n    // Required table mixins\n    itemsMixin,\n    tableRendererMixin,\n    stackedMixin,\n    theadMixin,\n    tfootMixin,\n    tbodyMixin,\n    // Table features mixins\n    stackedMixin,\n    filteringMixin,\n    sortingMixin,\n    paginationMixin,\n    captionMixin,\n    colgroupMixin,\n    selectableMixin,\n    emptyMixin,\n    topRowMixin,\n    bottomRowMixin,\n    busyMixin,\n    providerMixin\n  ],\n  props\n  // Render function is provided by `tableRendererMixin`\n})\n","import { Vue } from '../../vue'\nimport { NAME_TABLE_LITE } from '../../constants/components'\nimport { sortKeys } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { hasListenerMixin } from '../../mixins/has-listener'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { captionMixin, props as captionProps } from './helpers/mixin-caption'\nimport { colgroupMixin, props as colgroupProps } from './helpers/mixin-colgroup'\nimport { itemsMixin, props as itemsProps } from './helpers/mixin-items'\nimport { stackedMixin, props as stackedProps } from './helpers/mixin-stacked'\nimport { tableRendererMixin, props as tableRendererProps } from './helpers/mixin-table-renderer'\nimport { tbodyMixin, props as tbodyProps } from './helpers/mixin-tbody'\nimport { tfootMixin, props as tfootProps } from './helpers/mixin-tfoot'\nimport { theadMixin, props as theadProps } from './helpers/mixin-thead'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...captionProps,\n    ...colgroupProps,\n    ...itemsProps,\n    ...stackedProps,\n    ...tableRendererProps,\n    ...tbodyProps,\n    ...tfootProps,\n    ...theadProps\n  }),\n  NAME_TABLE_LITE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BTableLite = /*#__PURE__*/ Vue.extend({\n  name: NAME_TABLE_LITE,\n  // Order of mixins is important!\n  // They are merged from first to last, followed by this component\n  mixins: [\n    // General mixins\n    attrsMixin,\n    hasListenerMixin,\n    idMixin,\n    normalizeSlotMixin,\n    // Required table mixins\n    itemsMixin,\n    tableRendererMixin,\n    stackedMixin,\n    theadMixin,\n    tfootMixin,\n    tbodyMixin,\n    // Table features mixins\n    // These are pretty lightweight, and are useful for lightweight tables\n    captionMixin,\n    colgroupMixin\n  ],\n  props\n  // Render function is provided by `tableRendererMixin`\n})\n","import { Vue } from '../../vue'\nimport { NAME_TABLE_SIMPLE } from '../../constants/components'\nimport { sortKeys } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { hasListenerMixin } from '../../mixins/has-listener'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { stackedMixin, props as stackedProps } from './helpers/mixin-stacked'\nimport { tableRendererMixin, props as tableRendererProps } from './helpers/mixin-table-renderer'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...stackedProps,\n    ...tableRendererProps\n  }),\n  NAME_TABLE_SIMPLE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BTableSimple = /*#__PURE__*/ Vue.extend({\n  name: NAME_TABLE_SIMPLE,\n  // Order of mixins is important!\n  // They are merged from first to last, followed by this component\n  mixins: [\n    // General mixins\n    attrsMixin,\n    hasListenerMixin,\n    idMixin,\n    normalizeSlotMixin,\n    // Required table mixins\n    tableRendererMixin,\n    // Table features mixins\n    // Stacked requires extra handling by users via\n    // the table cell `stacked-heading` prop\n    stackedMixin\n  ],\n  props,\n  computed: {\n    isTableSimple() {\n      return true\n    }\n  }\n  // Render function is provided by `tableRendererMixin`\n})\n","import { BTable } from './table'\nimport { BTableLite } from './table-lite'\nimport { BTableSimple } from './table-simple'\nimport { BTbody } from './tbody'\nimport { BThead } from './thead'\nimport { BTfoot } from './tfoot'\nimport { BTr } from './tr'\nimport { BTd } from './td'\nimport { BTh } from './th'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst TableLitePlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BTableLite\n  }\n})\n\nconst TableSimplePlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BTableSimple,\n    BTbody,\n    BThead,\n    BTfoot,\n    BTr,\n    BTd,\n    BTh\n  }\n})\n\nconst TablePlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BTable\n  },\n  plugins: {\n    TableLitePlugin,\n    TableSimplePlugin\n  }\n})\n\nexport {\n  // Plugins\n  TablePlugin,\n  TableLitePlugin,\n  TableSimplePlugin,\n  // Table components\n  BTable,\n  BTableLite,\n  BTableSimple,\n  // Helper components\n  BTbody,\n  BThead,\n  BTfoot,\n  BTr,\n  BTd,\n  BTh\n}\n","import { Vue } from '../../vue'\nimport { NAME_SKELETON_TABLE } from '../../constants/components'\nimport {\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_NUMBER,\n  PROP_TYPE_OBJECT,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { createArray } from '../../utils/array'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BSkeleton } from './skeleton'\nimport { BTableSimple } from '../table'\n\n// --- Helper methods ---\n\nconst isPositiveNumber = value => value > 0\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    animation: makeProp(PROP_TYPE_STRING),\n    columns: makeProp(PROP_TYPE_NUMBER, 5, isPositiveNumber),\n    hideHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n    rows: makeProp(PROP_TYPE_NUMBER, 3, isPositiveNumber),\n    showFooter: makeProp(PROP_TYPE_BOOLEAN, false),\n    tableProps: makeProp(PROP_TYPE_OBJECT, {})\n  },\n  NAME_SKELETON_TABLE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BSkeletonTable = /*#__PURE__*/ Vue.extend({\n  name: NAME_SKELETON_TABLE,\n  functional: true,\n  props,\n  render(h, { props }) {\n    const { animation, columns } = props\n\n    const $th = h('th', [h(BSkeleton, { props: { animation } })])\n    const $thTr = h('tr', createArray(columns, $th))\n\n    const $td = h('td', [h(BSkeleton, { props: { width: '75%', animation } })])\n    const $tdTr = h('tr', createArray(columns, $td))\n    const $tbody = h('tbody', createArray(props.rows, $tdTr))\n\n    const $thead = !props.hideHeader ? h('thead', [$thTr]) : h()\n    const $tfoot = props.showFooter ? h('tfoot', [$thTr]) : h()\n\n    return h(BTableSimple, { props: { ...props.tableProps } }, [$thead, $tbody, $tfoot])\n  }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_SKELETON_WRAPPER } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_LOADING } from '../../constants/slots'\nimport { normalizeSlot } from '../../utils/normalize-slot'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    loading: makeProp(PROP_TYPE_BOOLEAN, false)\n  },\n  NAME_SKELETON_WRAPPER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BSkeletonWrapper = /*#__PURE__*/ Vue.extend({\n  name: NAME_SKELETON_WRAPPER,\n  functional: true,\n  props,\n  render(h, { data, props, slots, scopedSlots }) {\n    const $slots = slots()\n    const $scopedSlots = scopedSlots || {}\n    const slotScope = {}\n\n    if (props.loading) {\n      return h(\n        'div',\n        mergeData(data, {\n          attrs: {\n            role: 'alert',\n            'aria-live': 'polite',\n            'aria-busy': true\n          },\n          staticClass: 'b-skeleton-wrapper',\n          key: 'loading'\n        }),\n        normalizeSlot(SLOT_NAME_LOADING, slotScope, $scopedSlots, $slots)\n      )\n    }\n\n    return normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots)\n  }\n})\n","import { pluginFactory } from '../../utils/plugins'\nimport { BSkeleton } from './skeleton'\nimport { BSkeletonIcon } from './skeleton-icon'\nimport { BSkeletonImg } from './skeleton-img'\nimport { BSkeletonTable } from './skeleton-table'\nimport { BSkeletonWrapper } from './skeleton-wrapper'\n\nconst SkeletonPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BSkeleton,\n    BSkeletonIcon,\n    BSkeletonImg,\n    BSkeletonTable,\n    BSkeletonWrapper\n  }\n})\n\nexport { SkeletonPlugin, BSkeleton, BSkeletonIcon, BSkeletonImg, BSkeletonTable, BSkeletonWrapper }\n","import { BSpinner } from './spinner'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst SpinnerPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BSpinner }\n})\n\nexport { SpinnerPlugin, BSpinner }\n","import { COMPONENT_UID_KEY, Vue } from '../../vue'\nimport { NAME_TABS, NAME_TAB_BUTTON_HELPER } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport {\n  EVENT_NAME_ACTIVATE_TAB,\n  EVENT_NAME_CHANGED,\n  EVENT_NAME_CLICK,\n  EVENT_NAME_FIRST,\n  EVENT_NAME_LAST,\n  EVENT_NAME_NEXT,\n  EVENT_NAME_PREV\n} from '../../constants/events'\nimport {\n  CODE_DOWN,\n  CODE_END,\n  CODE_HOME,\n  CODE_LEFT,\n  CODE_RIGHT,\n  CODE_SPACE,\n  CODE_UP\n} from '../../constants/key-codes'\nimport {\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_NUMBER,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport {\n  SLOT_NAME_EMPTY,\n  SLOT_NAME_TABS_END,\n  SLOT_NAME_TABS_START,\n  SLOT_NAME_TITLE\n} from '../../constants/slots'\nimport { arrayIncludes } from '../../utils/array'\nimport { BvEvent } from '../../utils/bv-event.class'\nimport { attemptFocus, selectAll } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isEvent } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { mathMax } from '../../utils/math'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { omit, sortKeys } from '../../utils/object'\nimport { observeDom } from '../../utils/observe-dom'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { stableSort } from '../../utils/stable-sort'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BLink } from '../link/link'\nimport { BNav, props as BNavProps } from '../nav/nav'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('value', { type: PROP_TYPE_NUMBER })\n\n// --- Helper methods ---\n\n// Filter function to filter out disabled tabs\nconst notDisabled = tab => !tab.disabled\n\n// --- Helper components ---\n\n// @vue/component\nconst BVTabButton = /*#__PURE__*/ Vue.extend({\n  name: NAME_TAB_BUTTON_HELPER,\n  inject: {\n    bvTabs: {\n      default: /* istanbul ignore next */ () => ({})\n    }\n  },\n  props: {\n    controls: makeProp(PROP_TYPE_STRING),\n    id: makeProp(PROP_TYPE_STRING),\n    noKeyNav: makeProp(PROP_TYPE_BOOLEAN, false),\n    posInSet: makeProp(PROP_TYPE_NUMBER),\n    setSize: makeProp(PROP_TYPE_NUMBER),\n    // Reference to the child <b-tab> instance\n    tab: makeProp(),\n    tabIndex: makeProp(PROP_TYPE_NUMBER)\n  },\n  methods: {\n    focus() {\n      attemptFocus(this.$refs.link)\n    },\n    handleEvt(event) {\n      /* istanbul ignore next */\n      if (this.tab.disabled) {\n        return\n      }\n      const { type, keyCode, shiftKey } = event\n      if (type === 'click') {\n        stopEvent(event)\n        this.$emit(EVENT_NAME_CLICK, event)\n      } else if (type === 'keydown' && keyCode === CODE_SPACE) {\n        // For ARIA tabs the SPACE key will also trigger a click/select\n        // Even with keyboard navigation disabled, SPACE should \"click\" the button\n        // See: https://github.com/bootstrap-vue/bootstrap-vue/issues/4323\n        stopEvent(event)\n        this.$emit(EVENT_NAME_CLICK, event)\n      } else if (type === 'keydown' && !this.noKeyNav) {\n        // For keyboard navigation\n        if ([CODE_UP, CODE_LEFT, CODE_HOME].indexOf(keyCode) !== -1) {\n          stopEvent(event)\n          if (shiftKey || keyCode === CODE_HOME) {\n            this.$emit(EVENT_NAME_FIRST, event)\n          } else {\n            this.$emit(EVENT_NAME_PREV, event)\n          }\n        } else if ([CODE_DOWN, CODE_RIGHT, CODE_END].indexOf(keyCode) !== -1) {\n          stopEvent(event)\n          if (shiftKey || keyCode === CODE_END) {\n            this.$emit(EVENT_NAME_LAST, event)\n          } else {\n            this.$emit(EVENT_NAME_NEXT, event)\n          }\n        }\n      }\n    }\n  },\n  render(h) {\n    const { id, tabIndex, setSize, posInSet, controls, handleEvt } = this\n    const {\n      title,\n      localActive,\n      disabled,\n      titleItemClass,\n      titleLinkClass,\n      titleLinkAttributes\n    } = this.tab\n\n    const $link = h(\n      BLink,\n      {\n        staticClass: 'nav-link',\n        class: [\n          {\n            active: localActive && !disabled,\n            disabled\n          },\n          titleLinkClass,\n          // Apply <b-tabs> `activeNavItemClass` styles when the tab is active\n          localActive ? this.bvTabs.activeNavItemClass : null\n        ],\n        props: { disabled },\n        attrs: {\n          ...titleLinkAttributes,\n          id,\n          role: 'tab',\n          // Roving tab index when keynav enabled\n          tabindex: tabIndex,\n          'aria-selected': localActive && !disabled ? 'true' : 'false',\n          'aria-setsize': setSize,\n          'aria-posinset': posInSet,\n          'aria-controls': controls\n        },\n        on: {\n          click: handleEvt,\n          keydown: handleEvt\n        },\n        ref: 'link'\n      },\n      [this.tab.normalizeSlot(SLOT_NAME_TITLE) || title]\n    )\n\n    return h(\n      'li',\n      {\n        staticClass: 'nav-item',\n        class: [titleItemClass],\n        attrs: { role: 'presentation' }\n      },\n      [$link]\n    )\n  }\n})\n\n// --- Props ---\n\nconst navProps = omit(BNavProps, ['tabs', 'isNavBar', 'cardHeader'])\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ...navProps,\n    // Only applied to the currently active `<b-nav-item>`\n    activeNavItemClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    // Only applied to the currently active `<b-tab>`\n    // This prop is sniffed by the `<b-tab>` child\n    activeTabClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    card: makeProp(PROP_TYPE_BOOLEAN, false),\n    contentClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    // Synonym for 'bottom'\n    end: makeProp(PROP_TYPE_BOOLEAN, false),\n    // This prop is sniffed by the `<b-tab>` child\n    lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n    navClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    navWrapperClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    noFade: makeProp(PROP_TYPE_BOOLEAN, false),\n    noKeyNav: makeProp(PROP_TYPE_BOOLEAN, false),\n    noNavStyle: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'div')\n  }),\n  NAME_TABS\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BTabs = /*#__PURE__*/ Vue.extend({\n  name: NAME_TABS,\n  mixins: [idMixin, modelMixin, normalizeSlotMixin],\n  provide() {\n    return {\n      bvTabs: this\n    }\n  },\n  props,\n  data() {\n    return {\n      // Index of current tab\n      currentTab: toInteger(this[MODEL_PROP_NAME], -1),\n      // Array of direct child `<b-tab>` instances, in DOM order\n      tabs: [],\n      // Array of child instances registered (for triggering reactive updates)\n      registeredTabs: []\n    }\n  },\n  computed: {\n    fade() {\n      // This computed prop is sniffed by the tab child\n      return !this.noFade\n    },\n    localNavClass() {\n      const classes = []\n      if (this.card && this.vertical) {\n        classes.push('card-header', 'h-100', 'border-bottom-0', 'rounded-0')\n      }\n      return [...classes, this.navClass]\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue, oldValue) {\n      if (newValue !== oldValue) {\n        newValue = toInteger(newValue, -1)\n        oldValue = toInteger(oldValue, 0)\n\n        const $tab = this.tabs[newValue]\n        if ($tab && !$tab.disabled) {\n          this.activateTab($tab)\n        } else {\n          // Try next or prev tabs\n          if (newValue < oldValue) {\n            this.previousTab()\n          } else {\n            this.nextTab()\n          }\n        }\n      }\n    },\n    currentTab(newValue) {\n      let index = -1\n\n      // Ensure only one tab is active at most\n      this.tabs.forEach(($tab, i) => {\n        if (i === newValue && !$tab.disabled) {\n          $tab.localActive = true\n          index = i\n        } else {\n          $tab.localActive = false\n        }\n      })\n\n      // Update the v-model\n      this.$emit(MODEL_EVENT_NAME, index)\n    },\n    tabs(newValue, oldValue) {\n      // If tabs added, removed, or re-ordered, we emit a `changed` event\n      // We use `tab._uid` instead of `tab.safeId()`, as the later is changed\n      // in a `$nextTick()` if no explicit ID is provided, causing duplicate emits\n      if (\n        !looseEqual(\n          newValue.map(t => t[COMPONENT_UID_KEY]),\n          oldValue.map(t => t[COMPONENT_UID_KEY])\n        )\n      ) {\n        // In a `$nextTick()` to ensure `currentTab` has been set first\n        this.$nextTick(() => {\n          // We emit shallow copies of the new and old arrays of tabs,\n          // to prevent users from potentially mutating the internal arrays\n          this.$emit(EVENT_NAME_CHANGED, newValue.slice(), oldValue.slice())\n        })\n      }\n    },\n    registeredTabs() {\n      this.updateTabs()\n    }\n  },\n  created() {\n    // Create private non-reactive props\n    this.$_observer = null\n  },\n  mounted() {\n    this.setObserver(true)\n  },\n  beforeDestroy() {\n    this.setObserver(false)\n    // Ensure no references to child instances exist\n    this.tabs = []\n  },\n  methods: {\n    registerTab($tab) {\n      if (!arrayIncludes(this.registeredTabs, $tab)) {\n        this.registeredTabs.push($tab)\n      }\n    },\n    unregisterTab($tab) {\n      this.registeredTabs = this.registeredTabs.slice().filter($t => $t !== $tab)\n    },\n    // DOM observer is needed to detect changes in order of tabs\n    setObserver(on = true) {\n      this.$_observer && this.$_observer.disconnect()\n      this.$_observer = null\n\n      if (on) {\n        /* istanbul ignore next: difficult to test mutation observer in JSDOM */\n        const handler = () => {\n          this.$nextTick(() => {\n            this.updateTabs()\n          })\n        }\n\n        // Watch for changes to `<b-tab>` sub components\n        this.$_observer = observeDom(this.$refs.content, handler, {\n          childList: true,\n          subtree: false,\n          attributes: true,\n          attributeFilter: ['id']\n        })\n      }\n    },\n    getTabs() {\n      const $tabs = this.registeredTabs.filter(\n        $tab => $tab.$children.filter($t => $t._isTab).length === 0\n      )\n\n      // DOM Order of Tabs\n      let order = []\n      if (IS_BROWSER && $tabs.length > 0) {\n        // We rely on the DOM when mounted to get the 'true' order of the `<b-tab>` children\n        // `querySelectorAll()` always returns elements in document order, regardless of\n        // order specified in the selector\n        const selector = $tabs.map($tab => `#${$tab.safeId()}`).join(', ')\n        order = selectAll(selector, this.$el)\n          .map($el => $el.id)\n          .filter(identity)\n      }\n\n      // Stable sort keeps the original order if not found in the `order` array,\n      // which will be an empty array before mount\n      return stableSort($tabs, (a, b) => order.indexOf(a.safeId()) - order.indexOf(b.safeId()))\n    },\n    updateTabs() {\n      const $tabs = this.getTabs()\n\n      // Normalize `currentTab`\n      let { currentTab } = this\n      const $tab = $tabs[currentTab]\n      if (!$tab || $tab.disabled) {\n        currentTab = $tabs.indexOf(\n          $tabs\n            .slice()\n            .reverse()\n            .find($tab => $tab.localActive && !$tab.disabled)\n        )\n\n        if (currentTab === -1) {\n          currentTab = $tabs.indexOf($tabs.find(notDisabled))\n        }\n      }\n\n      // Ensure only one tab is active at a time\n      $tabs.forEach(($tab, index) => {\n        $tab.localActive = index === currentTab\n      })\n\n      this.tabs = $tabs\n      this.currentTab = currentTab\n    },\n    // Find a button that controls a tab, given the tab reference\n    // Returns the button vm instance\n    getButtonForTab($tab) {\n      return (this.$refs.buttons || []).find($btn => $btn.tab === $tab)\n    },\n    // Force a button to re-render its content, given a `<b-tab>` instance\n    // Called by `<b-tab>` on `update()`\n    updateButton($tab) {\n      const $button = this.getButtonForTab($tab)\n      if ($button && $button.$forceUpdate) {\n        $button.$forceUpdate()\n      }\n    },\n    // Activate a tab given a `<b-tab>` instance\n    // Also accessed by `<b-tab>`\n    activateTab($tab) {\n      const { currentTab, tabs: $tabs } = this\n      let result = false\n\n      if ($tab) {\n        const index = $tabs.indexOf($tab)\n        if (index !== currentTab && index > -1 && !$tab.disabled) {\n          const tabEvent = new BvEvent(EVENT_NAME_ACTIVATE_TAB, {\n            cancelable: true,\n            vueTarget: this,\n            componentId: this.safeId()\n          })\n\n          this.$emit(tabEvent.type, index, currentTab, tabEvent)\n\n          if (!tabEvent.defaultPrevented) {\n            this.currentTab = index\n            result = true\n          }\n        }\n      }\n\n      // Couldn't set tab, so ensure v-model is up to date\n      /* istanbul ignore next: should rarely happen */\n      if (!result && this[MODEL_PROP_NAME] !== currentTab) {\n        this.$emit(MODEL_EVENT_NAME, currentTab)\n      }\n\n      return result\n    },\n    // Deactivate a tab given a `<b-tab>` instance\n    // Accessed by `<b-tab>`\n    deactivateTab($tab) {\n      if ($tab) {\n        // Find first non-disabled tab that isn't the one being deactivated\n        // If no tabs are available, then don't deactivate current tab\n        return this.activateTab(this.tabs.filter($t => $t !== $tab).find(notDisabled))\n      }\n      /* istanbul ignore next: should never/rarely happen */\n      return false\n    },\n    // Focus a tab button given its `<b-tab>` instance\n    focusButton($tab) {\n      // Wrap in `$nextTick()` to ensure DOM has completed rendering\n      this.$nextTick(() => {\n        attemptFocus(this.getButtonForTab($tab))\n      })\n    },\n    // Emit a click event on a specified `<b-tab>` component instance\n    emitTabClick(tab, event) {\n      if (isEvent(event) && tab && tab.$emit && !tab.disabled) {\n        tab.$emit(EVENT_NAME_CLICK, event)\n      }\n    },\n    // Click handler\n    clickTab($tab, event) {\n      this.activateTab($tab)\n      this.emitTabClick($tab, event)\n    },\n    // Move to first non-disabled tab\n    firstTab(focus) {\n      const $tab = this.tabs.find(notDisabled)\n      if (this.activateTab($tab) && focus) {\n        this.focusButton($tab)\n        this.emitTabClick($tab, focus)\n      }\n    },\n    // Move to previous non-disabled tab\n    previousTab(focus) {\n      const currentIndex = mathMax(this.currentTab, 0)\n      const $tab = this.tabs\n        .slice(0, currentIndex)\n        .reverse()\n        .find(notDisabled)\n      if (this.activateTab($tab) && focus) {\n        this.focusButton($tab)\n        this.emitTabClick($tab, focus)\n      }\n    },\n    // Move to next non-disabled tab\n    nextTab(focus) {\n      const currentIndex = mathMax(this.currentTab, -1)\n      const $tab = this.tabs.slice(currentIndex + 1).find(notDisabled)\n      if (this.activateTab($tab) && focus) {\n        this.focusButton($tab)\n        this.emitTabClick($tab, focus)\n      }\n    },\n    // Move to last non-disabled tab\n    lastTab(focus) {\n      const $tab = this.tabs\n        .slice()\n        .reverse()\n        .find(notDisabled)\n      if (this.activateTab($tab) && focus) {\n        this.focusButton($tab)\n        this.emitTabClick($tab, focus)\n      }\n    }\n  },\n  render(h) {\n    const {\n      align,\n      card,\n      end,\n      fill,\n      firstTab,\n      justified,\n      lastTab,\n      nextTab,\n      noKeyNav,\n      noNavStyle,\n      pills,\n      previousTab,\n      small,\n      tabs: $tabs,\n      vertical\n    } = this\n\n    // Currently active tab\n    const $activeTab = $tabs.find($tab => $tab.localActive && !$tab.disabled)\n\n    // Tab button to allow focusing when no active tab found (keynav only)\n    const $fallbackTab = $tabs.find($tab => !$tab.disabled)\n\n    // For each `<b-tab>` found create the tab buttons\n    const $buttons = $tabs.map(($tab, index) => {\n      const { safeId } = $tab\n\n      // Ensure at least one tab button is focusable when keynav enabled (if possible)\n      let tabIndex = null\n      if (!noKeyNav) {\n        // Buttons are not in tab index unless active, or a fallback tab\n        tabIndex = -1\n        if ($tab === $activeTab || (!$activeTab && $tab === $fallbackTab)) {\n          // Place tab button in tab sequence\n          tabIndex = null\n        }\n      }\n\n      return h(BVTabButton, {\n        props: {\n          controls: safeId ? safeId() : null,\n          id: $tab.controlledBy || (safeId ? safeId(`_BV_tab_button_`) : null),\n          noKeyNav,\n          posInSet: index + 1,\n          setSize: $tabs.length,\n          tab: $tab,\n          tabIndex\n        },\n        on: {\n          [EVENT_NAME_CLICK]: event => {\n            this.clickTab($tab, event)\n          },\n          [EVENT_NAME_FIRST]: firstTab,\n          [EVENT_NAME_PREV]: previousTab,\n          [EVENT_NAME_NEXT]: nextTab,\n          [EVENT_NAME_LAST]: lastTab\n        },\n        key: $tab[COMPONENT_UID_KEY] || index,\n        ref: 'buttons',\n        // Needed to make `this.$refs.buttons` an array\n        refInFor: true\n      })\n    })\n\n    let $nav = h(\n      BNav,\n      {\n        class: this.localNavClass,\n        attrs: {\n          role: 'tablist',\n          id: this.safeId('_BV_tab_controls_')\n        },\n        props: {\n          fill,\n          justified,\n          align,\n          tabs: !noNavStyle && !pills,\n          pills: !noNavStyle && pills,\n          vertical,\n          small,\n          cardHeader: card && !vertical\n        },\n        ref: 'nav'\n      },\n      [\n        this.normalizeSlot(SLOT_NAME_TABS_START) || h(),\n        $buttons,\n        this.normalizeSlot(SLOT_NAME_TABS_END) || h()\n      ]\n    )\n\n    $nav = h(\n      'div',\n      {\n        class: [\n          {\n            'card-header': card && !vertical && !end,\n            'card-footer': card && !vertical && end,\n            'col-auto': vertical\n          },\n          this.navWrapperClass\n        ],\n        key: 'bv-tabs-nav'\n      },\n      [$nav]\n    )\n\n    const $children = this.normalizeSlot() || []\n\n    let $empty = h()\n    if ($children.length === 0) {\n      $empty = h(\n        'div',\n        {\n          class: ['tab-pane', 'active', { 'card-body': card }],\n          key: 'bv-empty-tab'\n        },\n        this.normalizeSlot(SLOT_NAME_EMPTY)\n      )\n    }\n\n    const $content = h(\n      'div',\n      {\n        staticClass: 'tab-content',\n        class: [{ col: vertical }, this.contentClass],\n        attrs: { id: this.safeId('_BV_tab_container_') },\n        key: 'bv-content',\n        ref: 'content'\n      },\n      [$children, $empty]\n    )\n\n    // Render final output\n    return h(\n      this.tag,\n      {\n        staticClass: 'tabs',\n        class: {\n          row: vertical,\n          'no-gutters': vertical && card\n        },\n        attrs: { id: this.safeId() }\n      },\n      [end ? $content : h(), $nav, end ? h() : $content]\n    )\n  }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TAB } from '../../constants/components'\nimport { MODEL_EVENT_NAME_PREFIX } from '../../constants/events'\nimport {\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_OBJECT,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_TITLE } from '../../constants/slots'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BVTransition } from '../transition/bv-transition'\n\n// --- Constants ---\n\nconst MODEL_PROP_NAME_ACTIVE = 'active'\nconst MODEL_EVENT_NAME_ACTIVE = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_ACTIVE\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    [MODEL_PROP_NAME_ACTIVE]: makeProp(PROP_TYPE_BOOLEAN, false),\n    buttonId: makeProp(PROP_TYPE_STRING),\n    disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n    lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n    noBody: makeProp(PROP_TYPE_BOOLEAN, false),\n    tag: makeProp(PROP_TYPE_STRING, 'div'),\n    title: makeProp(PROP_TYPE_STRING),\n    // Sniffed by `<b-tabs>` and added to nav `li.nav-item`\n    titleItemClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    titleLinkAttributes: makeProp(PROP_TYPE_OBJECT),\n    // Sniffed by `<b-tabs>` and added to nav `a.nav-link`\n    titleLinkClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n  }),\n  NAME_TAB\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BTab = /*#__PURE__*/ Vue.extend({\n  name: NAME_TAB,\n  mixins: [idMixin, normalizeSlotMixin],\n  inject: {\n    bvTabs: {\n      default: () => ({})\n    }\n  },\n  props,\n  data() {\n    return {\n      localActive: this[MODEL_PROP_NAME_ACTIVE] && !this.disabled\n    }\n  },\n  computed: {\n    // For parent sniffing of child\n    _isTab() {\n      return true\n    },\n    tabClasses() {\n      const { localActive: active, disabled } = this\n\n      return [\n        {\n          active,\n          disabled,\n          'card-body': this.bvTabs.card && !this.noBody\n        },\n        // Apply <b-tabs> `activeTabClass` styles when this tab is active\n        active ? this.bvTabs.activeTabClass : null\n      ]\n    },\n    controlledBy() {\n      return this.buttonId || this.safeId('__BV_tab_button__')\n    },\n    computedNoFade() {\n      return !(this.bvTabs.fade || false)\n    },\n    computedLazy() {\n      return this.bvTabs.lazy || this.lazy\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME_ACTIVE](newValue, oldValue) {\n      if (newValue !== oldValue) {\n        if (newValue) {\n          // If activated post mount\n          this.activate()\n        } else {\n          /* istanbul ignore next */\n          if (!this.deactivate()) {\n            // Tab couldn't be deactivated, so we reset the synced active prop\n            // Deactivation will fail if no other tabs to activate\n            this.$emit(MODEL_EVENT_NAME_ACTIVE, this.localActive)\n          }\n        }\n      }\n    },\n    disabled(newValue, oldValue) {\n      if (newValue !== oldValue) {\n        const { firstTab } = this.bvTabs\n        if (newValue && this.localActive && firstTab) {\n          this.localActive = false\n          firstTab()\n        }\n      }\n    },\n    localActive(newValue) {\n      // Make `active` prop work with `.sync` modifier\n      this.$emit(MODEL_EVENT_NAME_ACTIVE, newValue)\n    }\n  },\n  mounted() {\n    // Inform `<b-tabs>` of our presence\n    this.registerTab()\n  },\n  updated() {\n    // Force the tab button content to update (since slots are not reactive)\n    // Only done if we have a title slot, as the title prop is reactive\n    const { updateButton } = this.bvTabs\n    if (updateButton && this.hasNormalizedSlot(SLOT_NAME_TITLE)) {\n      updateButton(this)\n    }\n  },\n  beforeDestroy() {\n    // Inform `<b-tabs>` of our departure\n    this.unregisterTab()\n  },\n  methods: {\n    // Private methods\n    registerTab() {\n      // Inform `<b-tabs>` of our presence\n      const { registerTab } = this.bvTabs\n      if (registerTab) {\n        registerTab(this)\n      }\n    },\n    unregisterTab() {\n      // Inform `<b-tabs>` of our departure\n      const { unregisterTab } = this.bvTabs\n      if (unregisterTab) {\n        unregisterTab(this)\n      }\n    },\n    // Public methods\n    activate() {\n      // Not inside a `<b-tabs>` component or tab is disabled\n      const { activateTab } = this.bvTabs\n      return activateTab && !this.disabled ? activateTab(this) : false\n    },\n    deactivate() {\n      // Not inside a `<b-tabs>` component or not active to begin with\n      const { deactivateTab } = this.bvTabs\n      return deactivateTab && this.localActive ? deactivateTab(this) : false\n    }\n  },\n  render(h) {\n    const { localActive } = this\n\n    const $content = h(\n      this.tag,\n      {\n        staticClass: 'tab-pane',\n        class: this.tabClasses,\n        directives: [{ name: 'show', value: localActive }],\n        attrs: {\n          role: 'tabpanel',\n          id: this.safeId(),\n          'aria-hidden': localActive ? 'false' : 'true',\n          'aria-labelledby': this.controlledBy || null\n        },\n        ref: 'panel'\n      },\n      // Render content lazily if requested\n      [localActive || !this.computedLazy ? this.normalizeSlot() : h()]\n    )\n\n    return h(\n      BVTransition,\n      {\n        props: {\n          mode: 'out-in',\n          noFade: this.computedNoFade\n        }\n      },\n      [$content]\n    )\n  }\n})\n","import { BTabs } from './tabs'\nimport { BTab } from './tab'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst TabsPlugin = /*#__PURE__*/ pluginFactory({\n  components: {\n    BTabs,\n    BTab\n  }\n})\n\nexport { TabsPlugin, BTabs, BTab }\n","import { BTime } from './time'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst TimePlugin = /*#__PURE__*/ pluginFactory({\n  components: { BTime }\n})\n\nexport { TimePlugin, BTime }\n","\n /*! \n  * portal-vue © Thorsten Lünborg, 2019 \n  * \n  * Version: 2.1.7\n  * \n  * LICENCE: MIT \n  * \n  * https://github.com/linusborg/portal-vue\n  * \n */\n\nimport Vue from 'vue';\n\nfunction _typeof(obj) {\n  if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n    _typeof = function (obj) {\n      return typeof obj;\n    };\n  } else {\n    _typeof = function (obj) {\n      return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n    };\n  }\n\n  return _typeof(obj);\n}\n\nfunction _toConsumableArray(arr) {\n  return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n  if (Array.isArray(arr)) {\n    for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n    return arr2;\n  }\n}\n\nfunction _iterableToArray(iter) {\n  if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nfunction _nonIterableSpread() {\n  throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\nvar inBrowser = typeof window !== 'undefined';\nfunction freeze(item) {\n  if (Array.isArray(item) || _typeof(item) === 'object') {\n    return Object.freeze(item);\n  }\n\n  return item;\n}\nfunction combinePassengers(transports) {\n  var slotProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n  return transports.reduce(function (passengers, transport) {\n    var temp = transport.passengers[0];\n    var newPassengers = typeof temp === 'function' ? temp(slotProps) : transport.passengers;\n    return passengers.concat(newPassengers);\n  }, []);\n}\nfunction stableSort(array, compareFn) {\n  return array.map(function (v, idx) {\n    return [idx, v];\n  }).sort(function (a, b) {\n    return compareFn(a[1], b[1]) || a[0] - b[0];\n  }).map(function (c) {\n    return c[1];\n  });\n}\nfunction pick(obj, keys) {\n  return keys.reduce(function (acc, key) {\n    if (obj.hasOwnProperty(key)) {\n      acc[key] = obj[key];\n    }\n\n    return acc;\n  }, {});\n}\n\nvar transports = {};\nvar targets = {};\nvar sources = {};\nvar Wormhole = Vue.extend({\n  data: function data() {\n    return {\n      transports: transports,\n      targets: targets,\n      sources: sources,\n      trackInstances: inBrowser\n    };\n  },\n  methods: {\n    open: function open(transport) {\n      if (!inBrowser) return;\n      var to = transport.to,\n          from = transport.from,\n          passengers = transport.passengers,\n          _transport$order = transport.order,\n          order = _transport$order === void 0 ? Infinity : _transport$order;\n      if (!to || !from || !passengers) return;\n      var newTransport = {\n        to: to,\n        from: from,\n        passengers: freeze(passengers),\n        order: order\n      };\n      var keys = Object.keys(this.transports);\n\n      if (keys.indexOf(to) === -1) {\n        Vue.set(this.transports, to, []);\n      }\n\n      var currentIndex = this.$_getTransportIndex(newTransport); // Copying the array here so that the PortalTarget change event will actually contain two distinct arrays\n\n      var newTransports = this.transports[to].slice(0);\n\n      if (currentIndex === -1) {\n        newTransports.push(newTransport);\n      } else {\n        newTransports[currentIndex] = newTransport;\n      }\n\n      this.transports[to] = stableSort(newTransports, function (a, b) {\n        return a.order - b.order;\n      });\n    },\n    close: function close(transport) {\n      var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n      var to = transport.to,\n          from = transport.from;\n      if (!to || !from && force === false) return;\n\n      if (!this.transports[to]) {\n        return;\n      }\n\n      if (force) {\n        this.transports[to] = [];\n      } else {\n        var index = this.$_getTransportIndex(transport);\n\n        if (index >= 0) {\n          // Copying the array here so that the PortalTarget change event will actually contain two distinct arrays\n          var newTransports = this.transports[to].slice(0);\n          newTransports.splice(index, 1);\n          this.transports[to] = newTransports;\n        }\n      }\n    },\n    registerTarget: function registerTarget(target, vm, force) {\n      if (!inBrowser) return;\n\n      if (this.trackInstances && !force && this.targets[target]) {\n        console.warn(\"[portal-vue]: Target \".concat(target, \" already exists\"));\n      }\n\n      this.$set(this.targets, target, Object.freeze([vm]));\n    },\n    unregisterTarget: function unregisterTarget(target) {\n      this.$delete(this.targets, target);\n    },\n    registerSource: function registerSource(source, vm, force) {\n      if (!inBrowser) return;\n\n      if (this.trackInstances && !force && this.sources[source]) {\n        console.warn(\"[portal-vue]: source \".concat(source, \" already exists\"));\n      }\n\n      this.$set(this.sources, source, Object.freeze([vm]));\n    },\n    unregisterSource: function unregisterSource(source) {\n      this.$delete(this.sources, source);\n    },\n    hasTarget: function hasTarget(to) {\n      return !!(this.targets[to] && this.targets[to][0]);\n    },\n    hasSource: function hasSource(to) {\n      return !!(this.sources[to] && this.sources[to][0]);\n    },\n    hasContentFor: function hasContentFor(to) {\n      return !!this.transports[to] && !!this.transports[to].length;\n    },\n    // Internal\n    $_getTransportIndex: function $_getTransportIndex(_ref) {\n      var to = _ref.to,\n          from = _ref.from;\n\n      for (var i in this.transports[to]) {\n        if (this.transports[to][i].from === from) {\n          return +i;\n        }\n      }\n\n      return -1;\n    }\n  }\n});\nvar wormhole = new Wormhole(transports);\n\nvar _id = 1;\nvar Portal = Vue.extend({\n  name: 'portal',\n  props: {\n    disabled: {\n      type: Boolean\n    },\n    name: {\n      type: String,\n      default: function _default() {\n        return String(_id++);\n      }\n    },\n    order: {\n      type: Number,\n      default: 0\n    },\n    slim: {\n      type: Boolean\n    },\n    slotProps: {\n      type: Object,\n      default: function _default() {\n        return {};\n      }\n    },\n    tag: {\n      type: String,\n      default: 'DIV'\n    },\n    to: {\n      type: String,\n      default: function _default() {\n        return String(Math.round(Math.random() * 10000000));\n      }\n    }\n  },\n  created: function created() {\n    var _this = this;\n\n    this.$nextTick(function () {\n      wormhole.registerSource(_this.name, _this);\n    });\n  },\n  mounted: function mounted() {\n    if (!this.disabled) {\n      this.sendUpdate();\n    }\n  },\n  updated: function updated() {\n    if (this.disabled) {\n      this.clear();\n    } else {\n      this.sendUpdate();\n    }\n  },\n  beforeDestroy: function beforeDestroy() {\n    wormhole.unregisterSource(this.name);\n    this.clear();\n  },\n  watch: {\n    to: function to(newValue, oldValue) {\n      oldValue && oldValue !== newValue && this.clear(oldValue);\n      this.sendUpdate();\n    }\n  },\n  methods: {\n    clear: function clear(target) {\n      var closer = {\n        from: this.name,\n        to: target || this.to\n      };\n      wormhole.close(closer);\n    },\n    normalizeSlots: function normalizeSlots() {\n      return this.$scopedSlots.default ? [this.$scopedSlots.default] : this.$slots.default;\n    },\n    normalizeOwnChildren: function normalizeOwnChildren(children) {\n      return typeof children === 'function' ? children(this.slotProps) : children;\n    },\n    sendUpdate: function sendUpdate() {\n      var slotContent = this.normalizeSlots();\n\n      if (slotContent) {\n        var transport = {\n          from: this.name,\n          to: this.to,\n          passengers: _toConsumableArray(slotContent),\n          order: this.order\n        };\n        wormhole.open(transport);\n      } else {\n        this.clear();\n      }\n    }\n  },\n  render: function render(h) {\n    var children = this.$slots.default || this.$scopedSlots.default || [];\n    var Tag = this.tag;\n\n    if (children && this.disabled) {\n      return children.length <= 1 && this.slim ? this.normalizeOwnChildren(children)[0] : h(Tag, [this.normalizeOwnChildren(children)]);\n    } else {\n      return this.slim ? h() : h(Tag, {\n        class: {\n          'v-portal': true\n        },\n        style: {\n          display: 'none'\n        },\n        key: 'v-portal-placeholder'\n      });\n    }\n  }\n});\n\nvar PortalTarget = Vue.extend({\n  name: 'portalTarget',\n  props: {\n    multiple: {\n      type: Boolean,\n      default: false\n    },\n    name: {\n      type: String,\n      required: true\n    },\n    slim: {\n      type: Boolean,\n      default: false\n    },\n    slotProps: {\n      type: Object,\n      default: function _default() {\n        return {};\n      }\n    },\n    tag: {\n      type: String,\n      default: 'div'\n    },\n    transition: {\n      type: [String, Object, Function]\n    }\n  },\n  data: function data() {\n    return {\n      transports: wormhole.transports,\n      firstRender: true\n    };\n  },\n  created: function created() {\n    var _this = this;\n\n    this.$nextTick(function () {\n      wormhole.registerTarget(_this.name, _this);\n    });\n  },\n  watch: {\n    ownTransports: function ownTransports() {\n      this.$emit('change', this.children().length > 0);\n    },\n    name: function name(newVal, oldVal) {\n      /**\r\n       * TODO\r\n       * This should warn as well ...\r\n       */\n      wormhole.unregisterTarget(oldVal);\n      wormhole.registerTarget(newVal, this);\n    }\n  },\n  mounted: function mounted() {\n    var _this2 = this;\n\n    if (this.transition) {\n      this.$nextTick(function () {\n        // only when we have a transition, because it causes a re-render\n        _this2.firstRender = false;\n      });\n    }\n  },\n  beforeDestroy: function beforeDestroy() {\n    wormhole.unregisterTarget(this.name);\n  },\n  computed: {\n    ownTransports: function ownTransports() {\n      var transports = this.transports[this.name] || [];\n\n      if (this.multiple) {\n        return transports;\n      }\n\n      return transports.length === 0 ? [] : [transports[transports.length - 1]];\n    },\n    passengers: function passengers() {\n      return combinePassengers(this.ownTransports, this.slotProps);\n    }\n  },\n  methods: {\n    // can't be a computed prop because it has to \"react\" to $slot changes.\n    children: function children() {\n      return this.passengers.length !== 0 ? this.passengers : this.$scopedSlots.default ? this.$scopedSlots.default(this.slotProps) : this.$slots.default || [];\n    },\n    // can't be a computed prop because it has to \"react\" to this.children().\n    noWrapper: function noWrapper() {\n      var noWrapper = this.slim && !this.transition;\n\n      if (noWrapper && this.children().length > 1) {\n        console.warn('[portal-vue]: PortalTarget with `slim` option received more than one child element.');\n      }\n\n      return noWrapper;\n    }\n  },\n  render: function render(h) {\n    var noWrapper = this.noWrapper();\n    var children = this.children();\n    var Tag = this.transition || this.tag;\n    return noWrapper ? children[0] : this.slim && !Tag ? h() : h(Tag, {\n      props: {\n        // if we have a transition component, pass the tag if it exists\n        tag: this.transition && this.tag ? this.tag : undefined\n      },\n      class: {\n        'vue-portal-target': true\n      }\n    }, children);\n  }\n});\n\nvar _id$1 = 0;\nvar portalProps = ['disabled', 'name', 'order', 'slim', 'slotProps', 'tag', 'to'];\nvar targetProps = ['multiple', 'transition'];\nvar MountingPortal = Vue.extend({\n  name: 'MountingPortal',\n  inheritAttrs: false,\n  props: {\n    append: {\n      type: [Boolean, String]\n    },\n    bail: {\n      type: Boolean\n    },\n    mountTo: {\n      type: String,\n      required: true\n    },\n    // Portal\n    disabled: {\n      type: Boolean\n    },\n    // name for the portal\n    name: {\n      type: String,\n      default: function _default() {\n        return 'mounted_' + String(_id$1++);\n      }\n    },\n    order: {\n      type: Number,\n      default: 0\n    },\n    slim: {\n      type: Boolean\n    },\n    slotProps: {\n      type: Object,\n      default: function _default() {\n        return {};\n      }\n    },\n    tag: {\n      type: String,\n      default: 'DIV'\n    },\n    // name for the target\n    to: {\n      type: String,\n      default: function _default() {\n        return String(Math.round(Math.random() * 10000000));\n      }\n    },\n    // Target\n    multiple: {\n      type: Boolean,\n      default: false\n    },\n    targetSlim: {\n      type: Boolean\n    },\n    targetSlotProps: {\n      type: Object,\n      default: function _default() {\n        return {};\n      }\n    },\n    targetTag: {\n      type: String,\n      default: 'div'\n    },\n    transition: {\n      type: [String, Object, Function]\n    }\n  },\n  created: function created() {\n    if (typeof document === 'undefined') return;\n    var el = document.querySelector(this.mountTo);\n\n    if (!el) {\n      console.error(\"[portal-vue]: Mount Point '\".concat(this.mountTo, \"' not found in document\"));\n      return;\n    }\n\n    var props = this.$props; // Target already exists\n\n    if (wormhole.targets[props.name]) {\n      if (props.bail) {\n        console.warn(\"[portal-vue]: Target \".concat(props.name, \" is already mounted.\\n        Aborting because 'bail: true' is set\"));\n      } else {\n        this.portalTarget = wormhole.targets[props.name];\n      }\n\n      return;\n    }\n\n    var append = props.append;\n\n    if (append) {\n      var type = typeof append === 'string' ? append : 'DIV';\n      var mountEl = document.createElement(type);\n      el.appendChild(mountEl);\n      el = mountEl;\n    } // get props for target from $props\n    // we have to rename a few of them\n\n\n    var _props = pick(this.$props, targetProps);\n\n    _props.slim = this.targetSlim;\n    _props.tag = this.targetTag;\n    _props.slotProps = this.targetSlotProps;\n    _props.name = this.to;\n    this.portalTarget = new PortalTarget({\n      el: el,\n      parent: this.$parent || this,\n      propsData: _props\n    });\n  },\n  beforeDestroy: function beforeDestroy() {\n    var target = this.portalTarget;\n\n    if (this.append) {\n      var el = target.$el;\n      el.parentNode.removeChild(el);\n    }\n\n    target.$destroy();\n  },\n  render: function render(h) {\n    if (!this.portalTarget) {\n      console.warn(\"[portal-vue] Target wasn't mounted\");\n      return h();\n    } // if there's no \"manual\" scoped slot, so we create a <Portal> ourselves\n\n\n    if (!this.$scopedSlots.manual) {\n      var props = pick(this.$props, portalProps);\n      return h(Portal, {\n        props: props,\n        attrs: this.$attrs,\n        on: this.$listeners,\n        scopedSlots: this.$scopedSlots\n      }, this.$slots.default);\n    } // else, we render the scoped slot\n\n\n    var content = this.$scopedSlots.manual({\n      to: this.to\n    }); // if user used <template> for the scoped slot\n    // content will be an array\n\n    if (Array.isArray(content)) {\n      content = content[0];\n    }\n\n    if (!content) return h();\n    return content;\n  }\n});\n\nfunction install(Vue$$1) {\n  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n  Vue$$1.component(options.portalName || 'Portal', Portal);\n  Vue$$1.component(options.portalTargetName || 'PortalTarget', PortalTarget);\n  Vue$$1.component(options.MountingPortalName || 'MountingPortal', MountingPortal);\n}\n\nvar index = {\n  install: install\n};\n\nexport default index;\nexport { Portal, PortalTarget, MountingPortal, wormhole as Wormhole };\n//# sourceMappingURL=portal-vue.esm.js.map\n","import { PortalTarget, Wormhole } from 'portal-vue'\nimport { Vue } from '../../vue'\nimport { NAME_TOASTER } from '../../constants/components'\nimport { EVENT_NAME_DESTROYED, HOOK_EVENT_NAME_BEFORE_DESTROY } from '../../constants/events'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { removeClass, requestAF } from '../../utils/dom'\nimport { getRootEventName } from '../../utils/events'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { warn } from '../../utils/warn'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Helper components ---\n\n// @vue/component\nexport const DefaultTransition = /*#__PURE__*/ Vue.extend({\n  mixins: [normalizeSlotMixin],\n  data() {\n    return {\n      // Transition classes base name\n      name: 'b-toaster'\n    }\n  },\n  methods: {\n    onAfterEnter(el) {\n      // Work around a Vue.js bug where `*-enter-to` class is not removed\n      // See: https://github.com/vuejs/vue/pull/7901\n      // The `*-move` class is also stuck on elements that moved,\n      // but there are no JavaScript hooks to handle after move\n      // See: https://github.com/vuejs/vue/pull/7906\n      requestAF(() => {\n        removeClass(el, `${this.name}-enter-to`)\n      })\n    }\n  },\n  render(h) {\n    return h(\n      'transition-group',\n      {\n        props: { tag: 'div', name: this.name },\n        on: { afterEnter: this.onAfterEnter }\n      },\n      this.normalizeSlot()\n    )\n  }\n})\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n  {\n    // Allowed: 'true' or 'false' or `null`\n    ariaAtomic: makeProp(PROP_TYPE_STRING),\n    ariaLive: makeProp(PROP_TYPE_STRING),\n    name: makeProp(PROP_TYPE_STRING, undefined, true), // Required\n    // Aria role\n    role: makeProp(PROP_TYPE_STRING)\n  },\n  NAME_TOASTER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BToaster = /*#__PURE__*/ Vue.extend({\n  name: NAME_TOASTER,\n  mixins: [listenOnRootMixin],\n  props,\n  data() {\n    return {\n      // We don't render on SSR or if a an existing target found\n      doRender: false,\n      dead: false,\n      // Toaster names cannot change once created\n      staticName: this.name\n    }\n  },\n  beforeMount() {\n    const { name } = this\n    this.staticName = name\n\n    /* istanbul ignore if */\n    if (Wormhole.hasTarget(name)) {\n      warn(`A \"<portal-target>\" with name \"${name}\" already exists in the document.`, NAME_TOASTER)\n      this.dead = true\n    } else {\n      this.doRender = true\n      this.$once(HOOK_EVENT_NAME_BEFORE_DESTROY, () => {\n        // Let toasts made with `this.$bvToast.toast()` know that this toaster\n        // is being destroyed and should should also destroy/hide themselves\n        this.emitOnRoot(getRootEventName(NAME_TOASTER, EVENT_NAME_DESTROYED), name)\n      })\n    }\n  },\n  destroyed() {\n    // Remove from DOM if needed\n    const { $el } = this\n    /* istanbul ignore next: difficult to test */\n    if ($el && $el.parentNode) {\n      $el.parentNode.removeChild($el)\n    }\n  },\n  render(h) {\n    let $toaster = h('div', { class: ['d-none', { 'b-dead-toaster': this.dead }] })\n    if (this.doRender) {\n      const $target = h(PortalTarget, {\n        staticClass: 'b-toaster-slot',\n        props: {\n          name: this.staticName,\n          multiple: true,\n          tag: 'div',\n          slim: false,\n          // transition: this.transition || DefaultTransition\n          transition: DefaultTransition\n        }\n      })\n\n      $toaster = h(\n        'div',\n        {\n          staticClass: 'b-toaster',\n          class: [this.staticName],\n          attrs: {\n            id: this.staticName,\n            // Fallback to null to make sure attribute doesn't exist\n            role: this.role || null,\n            'aria-live': this.ariaLive,\n            'aria-atomic': this.ariaAtomic\n          }\n        },\n        [$target]\n      )\n    }\n\n    return $toaster\n  }\n})\n","import { Portal, Wormhole } from 'portal-vue'\nimport { COMPONENT_UID_KEY, Vue } from '../../vue'\nimport { NAME_TOAST, NAME_TOASTER } from '../../constants/components'\nimport {\n  EVENT_NAME_CHANGE,\n  EVENT_NAME_DESTROYED,\n  EVENT_NAME_HIDDEN,\n  EVENT_NAME_HIDE,\n  EVENT_NAME_SHOW,\n  EVENT_NAME_SHOWN,\n  EVENT_OPTIONS_NO_CAPTURE\n} from '../../constants/events'\nimport {\n  PROP_TYPE_ARRAY_OBJECT_STRING,\n  PROP_TYPE_BOOLEAN,\n  PROP_TYPE_NUMBER_STRING,\n  PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_TOAST_TITLE } from '../../constants/slots'\nimport { BvEvent } from '../../utils/bv-event.class'\nimport { requestAF } from '../../utils/dom'\nimport { getRootActionEventName, getRootEventName, eventOnOff } from '../../utils/events'\nimport { mathMax } from '../../utils/math'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { pick, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { scopedStyleMixin } from '../../mixins/scoped-style'\nimport { BButtonClose } from '../button/button-close'\nimport { BLink, props as BLinkProps } from '../link/link'\nimport { BVTransition } from '../transition/bv-transition'\nimport { BToaster } from './toaster'\n\n// --- Constants ---\n\nconst {\n  mixin: modelMixin,\n  props: modelProps,\n  prop: MODEL_PROP_NAME,\n  event: MODEL_EVENT_NAME\n} = makeModelMixin('visible', {\n  type: PROP_TYPE_BOOLEAN,\n  defaultValue: false,\n  event: EVENT_NAME_CHANGE\n})\n\nconst MIN_DURATION = 1000\n\n// --- Props ---\n\nconst linkProps = pick(BLinkProps, ['href', 'to'])\n\nexport const props = makePropsConfigurable(\n  sortKeys({\n    ...idProps,\n    ...modelProps,\n    ...linkProps,\n    appendToast: makeProp(PROP_TYPE_BOOLEAN, false),\n    autoHideDelay: makeProp(PROP_TYPE_NUMBER_STRING, 5000),\n    bodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    headerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    // Switches role to 'status' and aria-live to 'polite'\n    isStatus: makeProp(PROP_TYPE_BOOLEAN, false),\n    noAutoHide: makeProp(PROP_TYPE_BOOLEAN, false),\n    noCloseButton: makeProp(PROP_TYPE_BOOLEAN, false),\n    noFade: makeProp(PROP_TYPE_BOOLEAN, false),\n    noHoverPause: makeProp(PROP_TYPE_BOOLEAN, false),\n    solid: makeProp(PROP_TYPE_BOOLEAN, false),\n    // Render the toast in place, rather than in a portal-target\n    static: makeProp(PROP_TYPE_BOOLEAN, false),\n    title: makeProp(PROP_TYPE_STRING),\n    toastClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n    toaster: makeProp(PROP_TYPE_STRING, 'b-toaster-top-right'),\n    variant: makeProp(PROP_TYPE_STRING)\n  }),\n  NAME_TOAST\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BToast = /*#__PURE__*/ Vue.extend({\n  name: NAME_TOAST,\n  mixins: [\n    attrsMixin,\n    idMixin,\n    modelMixin,\n    listenOnRootMixin,\n    normalizeSlotMixin,\n    scopedStyleMixin\n  ],\n  inheritAttrs: false,\n  props,\n  data() {\n    return {\n      isMounted: false,\n      doRender: false,\n      localShow: false,\n      isTransitioning: false,\n      isHiding: false,\n      order: 0,\n      dismissStarted: 0,\n      resumeDismiss: 0\n    }\n  },\n  computed: {\n    toastClasses() {\n      const { appendToast, variant } = this\n\n      return {\n        'b-toast-solid': this.solid,\n        'b-toast-append': appendToast,\n        'b-toast-prepend': !appendToast,\n        [`b-toast-${variant}`]: variant\n      }\n    },\n    slotScope() {\n      const { hide } = this\n      return { hide }\n    },\n    computedDuration() {\n      // Minimum supported duration is 1 second\n      return mathMax(toInteger(this.autoHideDelay, 0), MIN_DURATION)\n    },\n    computedToaster() {\n      return String(this.toaster)\n    },\n    transitionHandlers() {\n      return {\n        beforeEnter: this.onBeforeEnter,\n        afterEnter: this.onAfterEnter,\n        beforeLeave: this.onBeforeLeave,\n        afterLeave: this.onAfterLeave\n      }\n    },\n    computedAttrs() {\n      return {\n        ...this.bvAttrs,\n        id: this.safeId(),\n        tabindex: '0'\n      }\n    }\n  },\n  watch: {\n    [MODEL_PROP_NAME](newValue) {\n      this[newValue ? 'show' : 'hide']()\n    },\n    localShow(newValue) {\n      if (newValue !== this[MODEL_PROP_NAME]) {\n        this.$emit(MODEL_EVENT_NAME, newValue)\n      }\n    },\n    /* istanbul ignore next */\n    toaster() {\n      // If toaster target changed, make sure toaster exists\n      this.$nextTick(this.ensureToaster)\n    },\n    /* istanbul ignore next */\n    static(newValue) {\n      // If static changes to true, and the toast is showing,\n      // ensure the toaster target exists\n      if (newValue && this.localShow) {\n        this.ensureToaster()\n      }\n    }\n  },\n  created() {\n    // Create private non-reactive props\n    this.$_dismissTimer = null\n  },\n  mounted() {\n    this.isMounted = true\n    this.$nextTick(() => {\n      if (this[MODEL_PROP_NAME]) {\n        requestAF(() => {\n          this.show()\n        })\n      }\n    })\n    // Listen for global $root show events\n    this.listenOnRoot(getRootActionEventName(NAME_TOAST, EVENT_NAME_SHOW), id => {\n      if (id === this.safeId()) {\n        this.show()\n      }\n    })\n    // Listen for global $root hide events\n    this.listenOnRoot(getRootActionEventName(NAME_TOAST, EVENT_NAME_HIDE), id => {\n      if (!id || id === this.safeId()) {\n        this.hide()\n      }\n    })\n    // Make sure we hide when toaster is destroyed\n    /* istanbul ignore next: difficult to test */\n    this.listenOnRoot(getRootEventName(NAME_TOASTER, EVENT_NAME_DESTROYED), toaster => {\n      /* istanbul ignore next */\n      if (toaster === this.computedToaster) {\n        this.hide()\n      }\n    })\n  },\n  beforeDestroy() {\n    this.clearDismissTimer()\n  },\n  methods: {\n    show() {\n      if (!this.localShow) {\n        this.ensureToaster()\n        const showEvt = this.buildEvent(EVENT_NAME_SHOW)\n        this.emitEvent(showEvt)\n        this.dismissStarted = this.resumeDismiss = 0\n        this.order = Date.now() * (this.appendToast ? 1 : -1)\n        this.isHiding = false\n        this.doRender = true\n        this.$nextTick(() => {\n          // We show the toast after we have rendered the portal and b-toast wrapper\n          // so that screen readers will properly announce the toast\n          requestAF(() => {\n            this.localShow = true\n          })\n        })\n      }\n    },\n    hide() {\n      if (this.localShow) {\n        const hideEvt = this.buildEvent(EVENT_NAME_HIDE)\n        this.emitEvent(hideEvt)\n        this.setHoverHandler(false)\n        this.dismissStarted = this.resumeDismiss = 0\n        this.clearDismissTimer()\n        this.isHiding = true\n        requestAF(() => {\n          this.localShow = false\n        })\n      }\n    },\n    buildEvent(type, options = {}) {\n      return new BvEvent(type, {\n        cancelable: false,\n        target: this.$el || null,\n        relatedTarget: null,\n        ...options,\n        vueTarget: this,\n        componentId: this.safeId()\n      })\n    },\n    emitEvent(bvEvent) {\n      const { type } = bvEvent\n      this.emitOnRoot(getRootEventName(NAME_TOAST, type), bvEvent)\n      this.$emit(type, bvEvent)\n    },\n    ensureToaster() {\n      if (this.static) {\n        return\n      }\n\n      const { computedToaster } = this\n      if (!Wormhole.hasTarget(computedToaster)) {\n        const div = document.createElement('div')\n        document.body.appendChild(div)\n\n        const toaster = new BToaster({\n          parent: this.$root,\n          propsData: { name: computedToaster }\n        })\n\n        toaster.$mount(div)\n      }\n    },\n    startDismissTimer() {\n      this.clearDismissTimer()\n      if (!this.noAutoHide) {\n        this.$_dismissTimer = setTimeout(this.hide, this.resumeDismiss || this.computedDuration)\n        this.dismissStarted = Date.now()\n        this.resumeDismiss = 0\n      }\n    },\n    clearDismissTimer() {\n      clearTimeout(this.$_dismissTimer)\n      this.$_dismissTimer = null\n    },\n    setHoverHandler(on) {\n      const el = this.$refs['b-toast']\n      eventOnOff(on, el, 'mouseenter', this.onPause, EVENT_OPTIONS_NO_CAPTURE)\n      eventOnOff(on, el, 'mouseleave', this.onUnPause, EVENT_OPTIONS_NO_CAPTURE)\n    },\n    onPause() {\n      // Determine time remaining, and then pause timer\n      if (this.noAutoHide || this.noHoverPause || !this.$_dismissTimer || this.resumeDismiss) {\n        return\n      }\n      const passed = Date.now() - this.dismissStarted\n      if (passed > 0) {\n        this.clearDismissTimer()\n        this.resumeDismiss = mathMax(this.computedDuration - passed, MIN_DURATION)\n      }\n    },\n    onUnPause() {\n      // Restart timer with max of time remaining or 1 second\n      if (this.noAutoHide || this.noHoverPause || !this.resumeDismiss) {\n        this.resumeDismiss = this.dismissStarted = 0\n        return\n      }\n      this.startDismissTimer()\n    },\n    onLinkClick() {\n      // We delay the close to allow time for the\n      // browser to process the link click\n      this.$nextTick(() => {\n        requestAF(() => {\n          this.hide()\n        })\n      })\n    },\n    onBeforeEnter() {\n      this.isTransitioning = true\n    },\n    onAfterEnter() {\n      this.isTransitioning = false\n      const hiddenEvt = this.buildEvent(EVENT_NAME_SHOWN)\n      this.emitEvent(hiddenEvt)\n      this.startDismissTimer()\n      this.setHoverHandler(true)\n    },\n    onBeforeLeave() {\n      this.isTransitioning = true\n    },\n    onAfterLeave() {\n      this.isTransitioning = false\n      this.order = 0\n      this.resumeDismiss = this.dismissStarted = 0\n      const hiddenEvt = this.buildEvent(EVENT_NAME_HIDDEN)\n      this.emitEvent(hiddenEvt)\n      this.doRender = false\n    },\n    // Render helper for generating the toast\n    makeToast(h) {\n      const { title, slotScope } = this\n      const link = isLink(this)\n      const $headerContent = []\n\n      const $title = this.normalizeSlot(SLOT_NAME_TOAST_TITLE, slotScope)\n      if ($title) {\n        $headerContent.push($title)\n      } else if (title) {\n        $headerContent.push(h('strong', { staticClass: 'mr-2' }, title))\n      }\n\n      if (!this.noCloseButton) {\n        $headerContent.push(\n          h(BButtonClose, {\n            staticClass: 'ml-auto mb-1',\n            on: {\n              click: () => {\n                this.hide()\n              }\n            }\n          })\n        )\n      }\n\n      let $header = h()\n      if ($headerContent.length > 0) {\n        $header = h(\n          'header',\n          { staticClass: 'toast-header', class: this.headerClass },\n          $headerContent\n        )\n      }\n\n      const $body = h(\n        link ? BLink : 'div',\n        {\n          staticClass: 'toast-body',\n          class: this.bodyClass,\n          props: link ? pluckProps(linkProps, this) : {},\n          on: link ? { click: this.onLinkClick } : {}\n        },\n        this.normalizeSlot(SLOT_NAME_DEFAULT, slotScope)\n      )\n\n      return h(\n        'div',\n        {\n          staticClass: 'toast',\n          class: this.toastClass,\n          attrs: this.computedAttrs,\n          key: `toast-${this[COMPONENT_UID_KEY]}`,\n          ref: 'toast'\n        },\n        [$header, $body]\n      )\n    }\n  },\n  render(h) {\n    if (!this.doRender || !this.isMounted) {\n      return h()\n    }\n\n    const { order, static: isStatic, isHiding, isStatus } = this\n    const name = `b-toast-${this[COMPONENT_UID_KEY]}`\n\n    const $toast = h(\n      'div',\n      {\n        staticClass: 'b-toast',\n        class: this.toastClasses,\n        attrs: {\n          // If scoped styles are applied and the toast is not static,\n          // make sure the scoped style data attribute is applied\n          ...(isStatic ? {} : this.scopedStyleAttrs),\n          id: this.safeId('_toast_outer'),\n          role: isHiding ? null : isStatus ? 'status' : 'alert',\n          'aria-live': isHiding ? null : isStatus ? 'polite' : 'assertive',\n          'aria-atomic': isHiding ? null : 'true'\n        },\n        key: name,\n        ref: 'b-toast'\n      },\n      [\n        h(\n          BVTransition,\n          {\n            props: { noFade: this.noFade },\n            on: this.transitionHandlers\n          },\n          [this.localShow ? this.makeToast(h) : h()]\n        )\n      ]\n    )\n\n    return h(\n      Portal,\n      {\n        props: {\n          name,\n          to: this.computedToaster,\n          order,\n          slim: true,\n          disabled: isStatic\n        }\n      },\n      [$toast]\n    )\n  }\n})\n","/**\n * Plugin for adding `$bvToast` property to all Vue instances\n */\n\nimport { NAME_TOAST, NAME_TOASTER, NAME_TOAST_POP } from '../../../constants/components'\nimport {\n  EVENT_NAME_DESTROYED,\n  EVENT_NAME_HIDDEN,\n  EVENT_NAME_HIDE,\n  EVENT_NAME_SHOW,\n  HOOK_EVENT_NAME_DESTROYED\n} from '../../../constants/events'\nimport { concat } from '../../../utils/array'\nimport { getComponentConfig } from '../../../utils/config'\nimport { requestAF } from '../../../utils/dom'\nimport { getRootEventName, getRootActionEventName } from '../../../utils/events'\nimport { isUndefined, isString } from '../../../utils/inspect'\nimport {\n  assign,\n  defineProperties,\n  defineProperty,\n  hasOwnProperty,\n  keys,\n  omit,\n  readonlyDescriptor\n} from '../../../utils/object'\nimport { pluginFactory } from '../../../utils/plugins'\nimport { warn, warnNotClient } from '../../../utils/warn'\nimport { BToast, props as toastProps } from '../toast'\n\n// --- Constants ---\n\nconst PROP_NAME = '$bvToast'\nconst PROP_NAME_PRIV = '_bv__toast'\n\n// Base toast props that are allowed\n// Some may be ignored or overridden on some message boxes\n// Prop ID is allowed, but really only should be used for testing\n// We need to add it in explicitly as it comes from the `idMixin`\nconst BASE_PROPS = ['id', ...keys(omit(toastProps, ['static', 'visible']))]\n\n// Map prop names to toast slot names\nconst propsToSlots = {\n  toastContent: 'default',\n  title: 'toast-title'\n}\n\n// --- Helper methods ---\n\n// Method to filter only recognized props that are not undefined\nconst filterOptions = options => {\n  return BASE_PROPS.reduce((memo, key) => {\n    if (!isUndefined(options[key])) {\n      memo[key] = options[key]\n    }\n    return memo\n  }, {})\n}\n\n// Method to install `$bvToast` VM injection\nconst plugin = Vue => {\n  // Create a private sub-component constructor that\n  // extends BToast and self-destructs after hidden\n  // @vue/component\n  const BVToastPop = Vue.extend({\n    name: NAME_TOAST_POP,\n    extends: BToast,\n    destroyed() {\n      // Make sure we not in document any more\n      const { $el } = this\n      if ($el && $el.parentNode) {\n        $el.parentNode.removeChild($el)\n      }\n    },\n    mounted() {\n      // Self destruct handler\n      const handleDestroy = () => {\n        // Ensure the toast has been force hidden\n        this.localShow = false\n        this.doRender = false\n        this.$nextTick(() => {\n          this.$nextTick(() => {\n            // In a `requestAF()` to release control back to application\n            // and to allow the portal-target time to remove the content\n            requestAF(() => {\n              this.$destroy()\n            })\n          })\n        })\n      }\n      // Self destruct if parent destroyed\n      this.$parent.$once(HOOK_EVENT_NAME_DESTROYED, handleDestroy)\n      // Self destruct after hidden\n      this.$once(EVENT_NAME_HIDDEN, handleDestroy)\n      // Self destruct when toaster is destroyed\n      this.listenOnRoot(getRootEventName(NAME_TOASTER, EVENT_NAME_DESTROYED), toaster => {\n        /* istanbul ignore next: hard to test */\n        if (toaster === this.toaster) {\n          handleDestroy()\n        }\n      })\n    }\n  })\n\n  // Private method to generate the on-demand toast\n  const makeToast = (props, $parent) => {\n    if (warnNotClient(PROP_NAME)) {\n      /* istanbul ignore next */\n      return\n    }\n    // Create an instance of `BVToastPop` component\n    const toast = new BVToastPop({\n      // We set parent as the local VM so these toasts can emit events on the\n      // app `$root`, and it ensures `BToast` is destroyed when parent is destroyed\n      parent: $parent,\n      propsData: {\n        ...filterOptions(getComponentConfig(NAME_TOAST)),\n        // Add in (filtered) user supplied props\n        ...omit(props, keys(propsToSlots)),\n        // Props that can't be overridden\n        static: false,\n        visible: true\n      }\n    })\n    // Convert certain props to slots\n    keys(propsToSlots).forEach(prop => {\n      let value = props[prop]\n      if (!isUndefined(value)) {\n        // Can be a string, or array of VNodes\n        if (prop === 'title' && isString(value)) {\n          // Special case for title if it is a string, we wrap in a <strong>\n          value = [$parent.$createElement('strong', { class: 'mr-2' }, value)]\n        }\n        toast.$slots[propsToSlots[prop]] = concat(value)\n      }\n    })\n    // Create a mount point (a DIV) and mount it (which triggers the show)\n    const div = document.createElement('div')\n    document.body.appendChild(div)\n    toast.$mount(div)\n  }\n\n  // Declare BvToast instance property class\n  class BvToast {\n    constructor(vm) {\n      // Assign the new properties to this instance\n      assign(this, { _vm: vm, _root: vm.$root })\n      // Set these properties as read-only and non-enumerable\n      defineProperties(this, {\n        _vm: readonlyDescriptor(),\n        _root: readonlyDescriptor()\n      })\n    }\n\n    // --- Public Instance methods ---\n\n    // Opens a user defined toast and returns immediately\n    toast(content, options = {}) {\n      if (!content || warnNotClient(PROP_NAME)) {\n        /* istanbul ignore next */\n        return\n      }\n      makeToast({ ...filterOptions(options), toastContent: content }, this._vm)\n    }\n\n    // shows a `<b-toast>` component with the specified ID\n    show(id) {\n      if (id) {\n        this._root.$emit(getRootActionEventName(NAME_TOAST, EVENT_NAME_SHOW), id)\n      }\n    }\n\n    // Hide a toast with specified ID, or if not ID all toasts\n    hide(id = null) {\n      this._root.$emit(getRootActionEventName(NAME_TOAST, EVENT_NAME_HIDE), id)\n    }\n  }\n\n  // Add our instance mixin\n  Vue.mixin({\n    beforeCreate() {\n      // Because we need access to `$root` for `$emits`, and VM for parenting,\n      // we have to create a fresh instance of `BvToast` for each VM\n      this[PROP_NAME_PRIV] = new BvToast(this)\n    }\n  })\n\n  // Define our read-only `$bvToast` instance property\n  // Placed in an if just in case in HMR mode\n  if (!hasOwnProperty(Vue.prototype, PROP_NAME)) {\n    defineProperty(Vue.prototype, PROP_NAME, {\n      get() {\n        /* istanbul ignore next */\n        if (!this || !this[PROP_NAME_PRIV]) {\n          warn(`\"${PROP_NAME}\" must be accessed from a Vue instance \"this\" context.`, NAME_TOAST)\n        }\n        return this[PROP_NAME_PRIV]\n      }\n    })\n  }\n}\n\nexport const BVToastPlugin = /*#__PURE__*/ pluginFactory({\n  plugins: { plugin }\n})\n","import { BVToastPlugin } from './helpers/bv-toast'\nimport { BToast } from './toast'\nimport { BToaster } from './toaster'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ToastPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BToast, BToaster },\n  // $bvToast injection\n  plugins: { BVToastPlugin }\n})\n\nexport { ToastPlugin, BToast, BToaster }\n","import { NAME_TOOLTIP } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport { EVENT_NAME_SHOW } from '../../constants/events'\nimport { concat } from '../../utils/array'\nimport { getComponentConfig } from '../../utils/config'\nimport { getScopeId } from '../../utils/get-scope-id'\nimport { identity } from '../../utils/identity'\nimport {\n  isFunction,\n  isNumber,\n  isPlainObject,\n  isString,\n  isUndefined,\n  isUndefinedOrNull\n} from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { toInteger } from '../../utils/number'\nimport { keys } from '../../utils/object'\nimport { BVTooltip } from '../../components/tooltip/helpers/bv-tooltip'\n\n// Key which we use to store tooltip object on element\nconst BV_TOOLTIP = '__BV_Tooltip__'\n\n// Default trigger\nconst DefaultTrigger = 'hover focus'\n\n// Valid event triggers\nconst validTriggers = {\n  focus: true,\n  hover: true,\n  click: true,\n  blur: true,\n  manual: true\n}\n\n// Directive modifier test regular expressions. Pre-compile for performance\nconst htmlRE = /^html$/i\nconst noninteractiveRE = /^noninteractive$/i\nconst noFadeRE = /^nofade$/i\nconst placementRE = /^(auto|top(left|right)?|bottom(left|right)?|left(top|bottom)?|right(top|bottom)?)$/i\nconst boundaryRE = /^(window|viewport|scrollParent)$/i\nconst delayRE = /^d\\d+$/i\nconst delayShowRE = /^ds\\d+$/i\nconst delayHideRE = /^dh\\d+$/i\nconst offsetRE = /^o-?\\d+$/i\nconst variantRE = /^v-.+$/i\nconst spacesRE = /\\s+/\n\n// Build a Tooltip config based on bindings (if any)\n// Arguments and modifiers take precedence over passed value config object\nconst parseBindings = (bindings, vnode) => /* istanbul ignore next: not easy to test */ {\n  // We start out with a basic config\n  let config = {\n    title: undefined,\n    trigger: '', // Default set below if needed\n    placement: 'top',\n    fallbackPlacement: 'flip',\n    container: false, // Default of body\n    animation: true,\n    offset: 0,\n    id: null,\n    html: false,\n    interactive: true,\n    disabled: false,\n    delay: getComponentConfig(NAME_TOOLTIP, 'delay', 50),\n    boundary: String(getComponentConfig(NAME_TOOLTIP, 'boundary', 'scrollParent')),\n    boundaryPadding: toInteger(getComponentConfig(NAME_TOOLTIP, 'boundaryPadding', 5), 0),\n    variant: getComponentConfig(NAME_TOOLTIP, 'variant'),\n    customClass: getComponentConfig(NAME_TOOLTIP, 'customClass')\n  }\n\n  // Process `bindings.value`\n  if (isString(bindings.value) || isNumber(bindings.value)) {\n    // Value is tooltip content (HTML optionally supported)\n    config.title = bindings.value\n  } else if (isFunction(bindings.value)) {\n    // Title generator function\n    config.title = bindings.value\n  } else if (isPlainObject(bindings.value)) {\n    // Value is config object, so merge\n    config = { ...config, ...bindings.value }\n  }\n\n  // If title is not provided, try title attribute\n  if (isUndefined(config.title)) {\n    // Try attribute\n    const data = vnode.data || {}\n    config.title = data.attrs && !isUndefinedOrNull(data.attrs.title) ? data.attrs.title : undefined\n  }\n\n  // Normalize delay\n  if (!isPlainObject(config.delay)) {\n    config.delay = {\n      show: toInteger(config.delay, 0),\n      hide: toInteger(config.delay, 0)\n    }\n  }\n\n  // If argument, assume element ID of container element\n  if (bindings.arg) {\n    // Element ID specified as arg\n    // We must prepend '#' to become a CSS selector\n    config.container = `#${bindings.arg}`\n  }\n\n  // Process modifiers\n  keys(bindings.modifiers).forEach(mod => {\n    if (htmlRE.test(mod)) {\n      // Title allows HTML\n      config.html = true\n    } else if (noninteractiveRE.test(mod)) {\n      // Noninteractive\n      config.interactive = false\n    } else if (noFadeRE.test(mod)) {\n      // No animation\n      config.animation = false\n    } else if (placementRE.test(mod)) {\n      // Placement of tooltip\n      config.placement = mod\n    } else if (boundaryRE.test(mod)) {\n      // Boundary of tooltip\n      mod = mod === 'scrollparent' ? 'scrollParent' : mod\n      config.boundary = mod\n    } else if (delayRE.test(mod)) {\n      // Delay value\n      const delay = toInteger(mod.slice(1), 0)\n      config.delay.show = delay\n      config.delay.hide = delay\n    } else if (delayShowRE.test(mod)) {\n      // Delay show value\n      config.delay.show = toInteger(mod.slice(2), 0)\n    } else if (delayHideRE.test(mod)) {\n      // Delay hide value\n      config.delay.hide = toInteger(mod.slice(2), 0)\n    } else if (offsetRE.test(mod)) {\n      // Offset value, negative allowed\n      config.offset = toInteger(mod.slice(1), 0)\n    } else if (variantRE.test(mod)) {\n      // Variant\n      config.variant = mod.slice(2) || null\n    }\n  })\n\n  // Special handling of event trigger modifiers trigger is\n  // a space separated list\n  const selectedTriggers = {}\n\n  // Parse current config object trigger\n  concat(config.trigger || '')\n    .filter(identity)\n    .join(' ')\n    .trim()\n    .toLowerCase()\n    .split(spacesRE)\n    .forEach(trigger => {\n      if (validTriggers[trigger]) {\n        selectedTriggers[trigger] = true\n      }\n    })\n\n  // Parse modifiers for triggers\n  keys(bindings.modifiers).forEach(mod => {\n    mod = mod.toLowerCase()\n    if (validTriggers[mod]) {\n      // If modifier is a valid trigger\n      selectedTriggers[mod] = true\n    }\n  })\n\n  // Sanitize triggers\n  config.trigger = keys(selectedTriggers).join(' ')\n  if (config.trigger === 'blur') {\n    // Blur by itself is useless, so convert it to 'focus'\n    config.trigger = 'focus'\n  }\n  if (!config.trigger) {\n    // Use default trigger\n    config.trigger = DefaultTrigger\n  }\n\n  // Return the config\n  return config\n}\n\n// Add/update Tooltip on our element\nconst applyTooltip = (el, bindings, vnode) => {\n  if (!IS_BROWSER) {\n    /* istanbul ignore next */\n    return\n  }\n  const config = parseBindings(bindings, vnode)\n  if (!el[BV_TOOLTIP]) {\n    const $parent = vnode.context\n    el[BV_TOOLTIP] = new BVTooltip({\n      parent: $parent,\n      // Add the parent's scoped style attribute data\n      _scopeId: getScopeId($parent, undefined)\n    })\n    el[BV_TOOLTIP].__bv_prev_data__ = {}\n    el[BV_TOOLTIP].$on(EVENT_NAME_SHOW, () => /* istanbul ignore next: for now */ {\n      // Before showing the tooltip, we update the title if it is a function\n      if (isFunction(config.title)) {\n        el[BV_TOOLTIP].updateData({\n          title: config.title(el)\n        })\n      }\n    })\n  }\n  const data = {\n    title: config.title,\n    triggers: config.trigger,\n    placement: config.placement,\n    fallbackPlacement: config.fallbackPlacement,\n    variant: config.variant,\n    customClass: config.customClass,\n    container: config.container,\n    boundary: config.boundary,\n    delay: config.delay,\n    offset: config.offset,\n    noFade: !config.animation,\n    id: config.id,\n    interactive: config.interactive,\n    disabled: config.disabled,\n    html: config.html\n  }\n  const oldData = el[BV_TOOLTIP].__bv_prev_data__\n  el[BV_TOOLTIP].__bv_prev_data__ = data\n  if (!looseEqual(data, oldData)) {\n    // We only update the instance if data has changed\n    const newData = {\n      target: el\n    }\n    keys(data).forEach(prop => {\n      // We only pass data properties that have changed\n      if (data[prop] !== oldData[prop]) {\n        // if title is a function, we execute it here\n        newData[prop] = prop === 'title' && isFunction(data[prop]) ? data[prop](el) : data[prop]\n      }\n    })\n    el[BV_TOOLTIP].updateData(newData)\n  }\n}\n\n// Remove Tooltip on our element\nconst removeTooltip = el => {\n  if (el[BV_TOOLTIP]) {\n    el[BV_TOOLTIP].$destroy()\n    el[BV_TOOLTIP] = null\n  }\n  delete el[BV_TOOLTIP]\n}\n\n// Export our directive\nexport const VBTooltip = {\n  bind(el, bindings, vnode) {\n    applyTooltip(el, bindings, vnode)\n  },\n  // We use `componentUpdated` here instead of `update`, as the former\n  // waits until the containing component and children have finished updating\n  componentUpdated(el, bindings, vnode) {\n    // Performed in a `$nextTick()` to prevent render update loops\n    vnode.context.$nextTick(() => {\n      applyTooltip(el, bindings, vnode)\n    })\n  },\n  unbind(el) {\n    removeTooltip(el)\n  }\n}\n","import { VBTooltip } from './tooltip'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBTooltipPlugin = /*#__PURE__*/ pluginFactory({\n  directives: { VBTooltip }\n})\n\nexport { VBTooltipPlugin, VBTooltip }\n","import { pluginFactory } from '../utils/plugins'\n\n// Component group plugins\nimport { AlertPlugin } from './alert'\nimport { AspectPlugin } from './aspect'\nimport { AvatarPlugin } from './avatar'\nimport { BadgePlugin } from './badge'\nimport { BreadcrumbPlugin } from './breadcrumb'\nimport { ButtonPlugin } from './button'\nimport { ButtonGroupPlugin } from './button-group'\nimport { ButtonToolbarPlugin } from './button-toolbar'\nimport { CalendarPlugin } from './calendar'\nimport { CardPlugin } from './card'\nimport { CarouselPlugin } from './carousel'\nimport { CollapsePlugin } from './collapse'\nimport { DropdownPlugin } from './dropdown'\nimport { EmbedPlugin } from './embed'\nimport { FormPlugin } from './form'\nimport { FormCheckboxPlugin } from './form-checkbox'\nimport { FormDatepickerPlugin } from './form-datepicker'\nimport { FormFilePlugin } from './form-file'\nimport { FormGroupPlugin } from './form-group'\nimport { FormInputPlugin } from './form-input'\nimport { FormRadioPlugin } from './form-radio'\nimport { FormRatingPlugin } from './form-rating'\nimport { FormSelectPlugin } from './form-select'\nimport { FormSpinbuttonPlugin } from './form-spinbutton'\nimport { FormTagsPlugin } from './form-tags'\nimport { FormTextareaPlugin } from './form-textarea'\nimport { FormTimepickerPlugin } from './form-timepicker'\nimport { ImagePlugin } from './image'\nimport { InputGroupPlugin } from './input-group'\nimport { JumbotronPlugin } from './jumbotron'\nimport { LayoutPlugin } from './layout'\nimport { LinkPlugin } from './link'\nimport { ListGroupPlugin } from './list-group'\nimport { MediaPlugin } from './media'\nimport { ModalPlugin } from './modal'\nimport { NavPlugin } from './nav'\nimport { NavbarPlugin } from './navbar'\nimport { OverlayPlugin } from './overlay'\nimport { PaginationPlugin } from './pagination'\nimport { PaginationNavPlugin } from './pagination-nav'\nimport { PopoverPlugin } from './popover'\nimport { ProgressPlugin } from './progress'\nimport { SidebarPlugin } from './sidebar'\nimport { SkeletonPlugin } from './skeleton'\nimport { SpinnerPlugin } from './spinner'\n// Table plugin includes TableLitePlugin and TableSimplePlugin\nimport { TablePlugin } from './table'\nimport { TabsPlugin } from './tabs'\nimport { TimePlugin } from './time'\nimport { ToastPlugin } from './toast'\nimport { TooltipPlugin } from './tooltip'\n\n// Main plugin to install all component group plugins\nexport const componentsPlugin = /*#__PURE__*/ pluginFactory({\n  plugins: {\n    AlertPlugin,\n    AspectPlugin,\n    AvatarPlugin,\n    BadgePlugin,\n    BreadcrumbPlugin,\n    ButtonPlugin,\n    ButtonGroupPlugin,\n    ButtonToolbarPlugin,\n    CalendarPlugin,\n    CardPlugin,\n    CarouselPlugin,\n    CollapsePlugin,\n    DropdownPlugin,\n    EmbedPlugin,\n    FormPlugin,\n    FormCheckboxPlugin,\n    FormDatepickerPlugin,\n    FormFilePlugin,\n    FormGroupPlugin,\n    FormInputPlugin,\n    FormRadioPlugin,\n    FormRatingPlugin,\n    FormSelectPlugin,\n    FormSpinbuttonPlugin,\n    FormTagsPlugin,\n    FormTextareaPlugin,\n    FormTimepickerPlugin,\n    ImagePlugin,\n    InputGroupPlugin,\n    JumbotronPlugin,\n    LayoutPlugin,\n    LinkPlugin,\n    ListGroupPlugin,\n    MediaPlugin,\n    ModalPlugin,\n    NavPlugin,\n    NavbarPlugin,\n    OverlayPlugin,\n    PaginationPlugin,\n    PaginationNavPlugin,\n    PopoverPlugin,\n    ProgressPlugin,\n    SidebarPlugin,\n    SkeletonPlugin,\n    SpinnerPlugin,\n    TablePlugin,\n    TabsPlugin,\n    TimePlugin,\n    ToastPlugin,\n    TooltipPlugin\n  }\n})\n","import { BTooltip } from './tooltip'\nimport { VBTooltipPlugin } from '../../directives/tooltip'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst TooltipPlugin = /*#__PURE__*/ pluginFactory({\n  components: { BTooltip },\n  plugins: { VBTooltipPlugin }\n})\n\nexport { TooltipPlugin, BTooltip }\n","import { VBHover } from './hover'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBHoverPlugin = /*#__PURE__*/ pluginFactory({\n  directives: { VBHover }\n})\n\nexport { VBHoverPlugin, VBHover }\n","import { VBModal } from './modal'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBModalPlugin = /*#__PURE__*/ pluginFactory({\n  directives: { VBModal }\n})\n\nexport { VBModalPlugin, VBModal }\n","/*\n * ScrollSpy class definition\n */\n\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../../../constants/events'\nimport { RX_HREF } from '../../../constants/regex'\nimport {\n  addClass,\n  closest,\n  getAttr,\n  getBCR,\n  hasClass,\n  isElement,\n  isVisible,\n  matches,\n  offset,\n  position,\n  removeClass,\n  select,\n  selectAll\n} from '../../../utils/dom'\nimport { getRootEventName, eventOn, eventOff } from '../../../utils/events'\nimport { identity } from '../../../utils/identity'\nimport { isString, isUndefined } from '../../../utils/inspect'\nimport { mathMax } from '../../../utils/math'\nimport { toInteger } from '../../../utils/number'\nimport { hasOwnProperty, toString as objectToString } from '../../../utils/object'\nimport { observeDom } from '../../../utils/observe-dom'\nimport { warn } from '../../../utils/warn'\n\n/*\n * Constants / Defaults\n */\n\nconst NAME = 'v-b-scrollspy'\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown, .dropup'\nconst SELECTOR_DROPDOWN_ITEMS = '.dropdown-item'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst ROOT_EVENT_NAME_ACTIVATE = getRootEventName('BVScrollspy', 'activate')\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\nconst Default = {\n  element: 'body',\n  offset: 10,\n  method: 'auto',\n  throttle: 75\n}\n\nconst DefaultType = {\n  element: '(string|element|component)',\n  offset: 'number',\n  method: 'string',\n  throttle: 'number'\n}\n\n// Transition Events\nconst TransitionEndEvents = [\n  'webkitTransitionEnd',\n  'transitionend',\n  'otransitionend',\n  'oTransitionEnd'\n]\n\n/*\n * Utility Methods\n */\n\n// Better var type detection\nconst toType = obj => /* istanbul ignore next: not easy to test */ {\n  return objectToString(obj)\n    .match(/\\s([a-zA-Z]+)/)[1]\n    .toLowerCase()\n}\n\n// Check config properties for expected types\n/* istanbul ignore next */\nconst typeCheckConfig = (\n  componentName,\n  config,\n  configTypes\n) => /* istanbul ignore next: not easy to test */ {\n  for (const property in configTypes) {\n    if (hasOwnProperty(configTypes, property)) {\n      const expectedTypes = configTypes[property]\n      const value = config[property]\n      let valueType = value && isElement(value) ? 'element' : toType(value)\n      // handle Vue instances\n      valueType = value && value._isVue ? 'component' : valueType\n\n      if (!new RegExp(expectedTypes).test(valueType)) {\n        /* istanbul ignore next */\n        warn(\n          `${componentName}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\"`\n        )\n      }\n    }\n  }\n}\n\n/*\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n/* istanbul ignore next: not easy to test */\nexport class BVScrollSpy /* istanbul ignore next: not easy to test */ {\n  constructor(element, config, $root) {\n    // The element we activate links in\n    this.$el = element\n    this.$scroller = null\n    this.$selector = [SELECTOR_NAV_LINKS, SELECTOR_LIST_ITEMS, SELECTOR_DROPDOWN_ITEMS].join(',')\n    this.$offsets = []\n    this.$targets = []\n    this.$activeTarget = null\n    this.$scrollHeight = 0\n    this.$resizeTimeout = null\n    this.$scrollerObserver = null\n    this.$targetsObserver = null\n    this.$root = $root || null\n    this.$config = null\n\n    this.updateConfig(config)\n  }\n\n  static get Name() {\n    return NAME\n  }\n\n  static get Default() {\n    return Default\n  }\n\n  static get DefaultType() {\n    return DefaultType\n  }\n\n  updateConfig(config, $root) {\n    if (this.$scroller) {\n      // Just in case out scroll element has changed\n      this.unlisten()\n      this.$scroller = null\n    }\n    const cfg = { ...this.constructor.Default, ...config }\n    if ($root) {\n      this.$root = $root\n    }\n    typeCheckConfig(this.constructor.Name, cfg, this.constructor.DefaultType)\n    this.$config = cfg\n\n    if (this.$root) {\n      const self = this\n      this.$root.$nextTick(() => {\n        self.listen()\n      })\n    } else {\n      this.listen()\n    }\n  }\n\n  dispose() {\n    this.unlisten()\n    clearTimeout(this.$resizeTimeout)\n    this.$resizeTimeout = null\n    this.$el = null\n    this.$config = null\n    this.$scroller = null\n    this.$selector = null\n    this.$offsets = null\n    this.$targets = null\n    this.$activeTarget = null\n    this.$scrollHeight = null\n  }\n\n  listen() {\n    const scroller = this.getScroller()\n    if (scroller && scroller.tagName !== 'BODY') {\n      eventOn(scroller, 'scroll', this, EVENT_OPTIONS_NO_CAPTURE)\n    }\n    eventOn(window, 'scroll', this, EVENT_OPTIONS_NO_CAPTURE)\n    eventOn(window, 'resize', this, EVENT_OPTIONS_NO_CAPTURE)\n    eventOn(window, 'orientationchange', this, EVENT_OPTIONS_NO_CAPTURE)\n    TransitionEndEvents.forEach(eventName => {\n      eventOn(window, eventName, this, EVENT_OPTIONS_NO_CAPTURE)\n    })\n    this.setObservers(true)\n    // Schedule a refresh\n    this.handleEvent('refresh')\n  }\n\n  unlisten() {\n    const scroller = this.getScroller()\n    this.setObservers(false)\n    if (scroller && scroller.tagName !== 'BODY') {\n      eventOff(scroller, 'scroll', this, EVENT_OPTIONS_NO_CAPTURE)\n    }\n    eventOff(window, 'scroll', this, EVENT_OPTIONS_NO_CAPTURE)\n    eventOff(window, 'resize', this, EVENT_OPTIONS_NO_CAPTURE)\n    eventOff(window, 'orientationchange', this, EVENT_OPTIONS_NO_CAPTURE)\n    TransitionEndEvents.forEach(eventName => {\n      eventOff(window, eventName, this, EVENT_OPTIONS_NO_CAPTURE)\n    })\n  }\n\n  setObservers(on) {\n    // We observe both the scroller for content changes, and the target links\n    this.$scrollerObserver && this.$scrollerObserver.disconnect()\n    this.$targetsObserver && this.$targetsObserver.disconnect()\n    this.$scrollerObserver = null\n    this.$targetsObserver = null\n    if (on) {\n      this.$targetsObserver = observeDom(\n        this.$el,\n        () => {\n          this.handleEvent('mutation')\n        },\n        {\n          subtree: true,\n          childList: true,\n          attributes: true,\n          attributeFilter: ['href']\n        }\n      )\n      this.$scrollerObserver = observeDom(\n        this.getScroller(),\n        () => {\n          this.handleEvent('mutation')\n        },\n        {\n          subtree: true,\n          childList: true,\n          characterData: true,\n          attributes: true,\n          attributeFilter: ['id', 'style', 'class']\n        }\n      )\n    }\n  }\n\n  // General event handler\n  handleEvent(event) {\n    const type = isString(event) ? event : event.type\n\n    const self = this\n    const resizeThrottle = () => {\n      if (!self.$resizeTimeout) {\n        self.$resizeTimeout = setTimeout(() => {\n          self.refresh()\n          self.process()\n          self.$resizeTimeout = null\n        }, self.$config.throttle)\n      }\n    }\n\n    if (type === 'scroll') {\n      if (!this.$scrollerObserver) {\n        // Just in case we are added to the DOM before the scroll target is\n        // We re-instantiate our listeners, just in case\n        this.listen()\n      }\n      this.process()\n    } else if (/(resize|orientationchange|mutation|refresh)/.test(type)) {\n      // Postpone these events by throttle time\n      resizeThrottle()\n    }\n  }\n\n  // Refresh the list of target links on the element we are applied to\n  refresh() {\n    const scroller = this.getScroller()\n    if (!scroller) {\n      return\n    }\n    const autoMethod = scroller !== scroller.window ? METHOD_POSITION : METHOD_OFFSET\n    const method = this.$config.method === 'auto' ? autoMethod : this.$config.method\n    const methodFn = method === METHOD_POSITION ? position : offset\n    const offsetBase = method === METHOD_POSITION ? this.getScrollTop() : 0\n\n    this.$offsets = []\n    this.$targets = []\n\n    this.$scrollHeight = this.getScrollHeight()\n\n    // Find all the unique link HREFs that we will control\n    selectAll(this.$selector, this.$el)\n      // Get HREF value\n      .map(link => getAttr(link, 'href'))\n      // Filter out HREFs that do not match our RegExp\n      .filter(href => href && RX_HREF.test(href || ''))\n      // Find all elements with ID that match HREF hash\n      .map(href => {\n        // Convert HREF into an ID (including # at beginning)\n        const id = href.replace(RX_HREF, '$1').trim()\n        if (!id) {\n          return null\n        }\n        // Find the element with the ID specified by id\n        const el = select(id, scroller)\n        if (el && isVisible(el)) {\n          return {\n            offset: toInteger(methodFn(el).top, 0) + offsetBase,\n            target: id\n          }\n        }\n        return null\n      })\n      .filter(identity)\n      // Sort them by their offsets (smallest first)\n      .sort((a, b) => a.offset - b.offset)\n      // record only unique targets/offsets\n      .reduce((memo, item) => {\n        if (!memo[item.target]) {\n          this.$offsets.push(item.offset)\n          this.$targets.push(item.target)\n          memo[item.target] = true\n        }\n        return memo\n      }, {})\n\n    // Return this for easy chaining\n    return this\n  }\n\n  // Handle activating/clearing\n  process() {\n    const scrollTop = this.getScrollTop() + this.$config.offset\n    const scrollHeight = this.getScrollHeight()\n    const maxScroll = this.$config.offset + scrollHeight - this.getOffsetHeight()\n\n    if (this.$scrollHeight !== scrollHeight) {\n      this.refresh()\n    }\n\n    if (scrollTop >= maxScroll) {\n      const target = this.$targets[this.$targets.length - 1]\n      if (this.$activeTarget !== target) {\n        this.activate(target)\n      }\n      return\n    }\n\n    if (this.$activeTarget && scrollTop < this.$offsets[0] && this.$offsets[0] > 0) {\n      this.$activeTarget = null\n      this.clear()\n      return\n    }\n\n    for (let i = this.$offsets.length; i--; ) {\n      const isActiveTarget =\n        this.$activeTarget !== this.$targets[i] &&\n        scrollTop >= this.$offsets[i] &&\n        (isUndefined(this.$offsets[i + 1]) || scrollTop < this.$offsets[i + 1])\n\n      if (isActiveTarget) {\n        this.activate(this.$targets[i])\n      }\n    }\n  }\n\n  getScroller() {\n    if (this.$scroller) {\n      return this.$scroller\n    }\n    let scroller = this.$config.element\n    if (!scroller) {\n      return null\n    } else if (isElement(scroller.$el)) {\n      scroller = scroller.$el\n    } else if (isString(scroller)) {\n      scroller = select(scroller)\n    }\n    if (!scroller) {\n      return null\n    }\n    this.$scroller = scroller.tagName === 'BODY' ? window : scroller\n    return this.$scroller\n  }\n\n  getScrollTop() {\n    const scroller = this.getScroller()\n    return scroller === window ? scroller.pageYOffset : scroller.scrollTop\n  }\n\n  getScrollHeight() {\n    return (\n      this.getScroller().scrollHeight ||\n      mathMax(document.body.scrollHeight, document.documentElement.scrollHeight)\n    )\n  }\n\n  getOffsetHeight() {\n    const scroller = this.getScroller()\n    return scroller === window ? window.innerHeight : getBCR(scroller).height\n  }\n\n  activate(target) {\n    this.$activeTarget = target\n    this.clear()\n\n    // Grab the list of target links (<a href=\"{$target}\">)\n    const links = selectAll(\n      this.$selector\n        // Split out the base selectors\n        .split(',')\n        // Map to a selector that matches links with HREF ending in the ID (including '#')\n        .map(selector => `${selector}[href$=\"${target}\"]`)\n        // Join back into a single selector string\n        .join(','),\n      this.$el\n    )\n\n    links.forEach(link => {\n      if (hasClass(link, CLASS_NAME_DROPDOWN_ITEM)) {\n        // This is a dropdown item, so find the .dropdown-toggle and set its state\n        const dropdown = closest(SELECTOR_DROPDOWN, link)\n        if (dropdown) {\n          this.setActiveState(select(SELECTOR_DROPDOWN_TOGGLE, dropdown), true)\n        }\n        // Also set this link's state\n        this.setActiveState(link, true)\n      } else {\n        // Set triggered link as active\n        this.setActiveState(link, true)\n        if (matches(link.parentElement, SELECTOR_NAV_ITEMS)) {\n          // Handle nav-link inside nav-item, and set nav-item active\n          this.setActiveState(link.parentElement, true)\n        }\n        // Set triggered links parents as active\n        // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n        let el = link\n        while (el) {\n          el = closest(SELECTOR_NAV_LIST_GROUP, el)\n          const sibling = el ? el.previousElementSibling : null\n          if (sibling && matches(sibling, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)) {\n            this.setActiveState(sibling, true)\n          }\n          // Handle special case where nav-link is inside a nav-item\n          if (sibling && matches(sibling, SELECTOR_NAV_ITEMS)) {\n            this.setActiveState(select(SELECTOR_NAV_LINKS, sibling), true)\n            // Add active state to nav-item as well\n            this.setActiveState(sibling, true)\n          }\n        }\n      }\n    })\n\n    // Signal event to via $root, passing ID of activated target and reference to array of links\n    if (links && links.length > 0 && this.$root) {\n      this.$root.$emit(ROOT_EVENT_NAME_ACTIVATE, target, links)\n    }\n  }\n\n  clear() {\n    selectAll(`${this.$selector}, ${SELECTOR_NAV_ITEMS}`, this.$el)\n      .filter(el => hasClass(el, CLASS_NAME_ACTIVE))\n      .forEach(el => this.setActiveState(el, false))\n  }\n\n  setActiveState(el, active) {\n    if (!el) {\n      return\n    }\n    if (active) {\n      addClass(el, CLASS_NAME_ACTIVE)\n    } else {\n      removeClass(el, CLASS_NAME_ACTIVE)\n    }\n  }\n}\n","import { IS_BROWSER } from '../../constants/env'\nimport { isNumber, isObject, isString } from '../../utils/inspect'\nimport { mathRound } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport { keys } from '../../utils/object'\nimport { BVScrollSpy } from './helpers/bv-scrollspy.class'\n\n// Key we use to store our instance\nconst BV_SCROLLSPY = '__BV_ScrollSpy__'\n\n// Pre-compiled regular expressions\nconst onlyDigitsRE = /^\\d+$/\nconst offsetRE = /^(auto|position|offset)$/\n\n// Build a ScrollSpy config based on bindings (if any)\n// Arguments and modifiers take precedence over passed value config object\n/* istanbul ignore next: not easy to test */\nconst parseBindings = bindings => /* istanbul ignore next: not easy to test */ {\n  const config = {}\n\n  // If argument, assume element ID\n  if (bindings.arg) {\n    // Element ID specified as arg\n    // We must prepend '#' to become a CSS selector\n    config.element = `#${bindings.arg}`\n  }\n\n  // Process modifiers\n  keys(bindings.modifiers).forEach(mod => {\n    if (onlyDigitsRE.test(mod)) {\n      // Offset value\n      config.offset = toInteger(mod, 0)\n    } else if (offsetRE.test(mod)) {\n      // Offset method\n      config.method = mod\n    }\n  })\n\n  // Process value\n  if (isString(bindings.value)) {\n    // Value is a CSS ID or selector\n    config.element = bindings.value\n  } else if (isNumber(bindings.value)) {\n    // Value is offset\n    config.offset = mathRound(bindings.value)\n  } else if (isObject(bindings.value)) {\n    // Value is config object\n    // Filter the object based on our supported config options\n    keys(bindings.value)\n      .filter(k => !!BVScrollSpy.DefaultType[k])\n      .forEach(k => {\n        config[k] = bindings.value[k]\n      })\n  }\n\n  return config\n}\n\n// Add or update ScrollSpy on our element\nconst applyScrollspy = (el, bindings, vnode) => /* istanbul ignore next: not easy to test */ {\n  if (!IS_BROWSER) {\n    /* istanbul ignore next */\n    return\n  }\n  const config = parseBindings(bindings)\n  if (el[BV_SCROLLSPY]) {\n    el[BV_SCROLLSPY].updateConfig(config, vnode.context.$root)\n  } else {\n    el[BV_SCROLLSPY] = new BVScrollSpy(el, config, vnode.context.$root)\n  }\n}\n\n// Remove ScrollSpy on our element\n/* istanbul ignore next: not easy to test */\nconst removeScrollspy = el => /* istanbul ignore next: not easy to test */ {\n  if (el[BV_SCROLLSPY]) {\n    el[BV_SCROLLSPY].dispose()\n    el[BV_SCROLLSPY] = null\n    delete el[BV_SCROLLSPY]\n  }\n}\n\n/*\n * Export our directive\n */\nexport const VBScrollspy = {\n  /* istanbul ignore next: not easy to test */\n  bind(el, bindings, vnode) {\n    applyScrollspy(el, bindings, vnode)\n  },\n  /* istanbul ignore next: not easy to test */\n  inserted(el, bindings, vnode) {\n    applyScrollspy(el, bindings, vnode)\n  },\n  /* istanbul ignore next: not easy to test */\n  update(el, bindings, vnode) {\n    if (bindings.value !== bindings.oldValue) {\n      applyScrollspy(el, bindings, vnode)\n    }\n  },\n  /* istanbul ignore next: not easy to test */\n  componentUpdated(el, bindings, vnode) {\n    if (bindings.value !== bindings.oldValue) {\n      applyScrollspy(el, bindings, vnode)\n    }\n  },\n  /* istanbul ignore next: not easy to test */\n  unbind(el) {\n    removeScrollspy(el)\n  }\n}\n","import { installFactory } from './utils/plugins'\nimport { componentsPlugin } from './components'\nimport { directivesPlugin } from './directives'\nimport { BVConfigPlugin } from './bv-config'\n\nconst NAME = 'BootstrapVue'\n\n// --- BootstrapVue installer ---\nconst install = /*#__PURE__*/ installFactory({\n  plugins: {\n    componentsPlugin,\n    directivesPlugin\n  }\n})\n\n// --- BootstrapVue plugin ---\nconst BootstrapVue = /*#__PURE__*/ {\n  install,\n  NAME\n}\n\n// --- Named exports for BvConfigPlugin ---\nexport {\n  // Installer exported in case the consumer does not import `default`\n  // as the plugin in CommonJS build (or does not have interop enabled for CommonJS)\n  // Both the following will work:\n  //   BootstrapVue = require('bootstrap-vue')\n  //   BootstrapVue = require('bootstrap-vue').default\n  //   Vue.use(BootstrapVue)\n  install,\n  NAME,\n  // BootstrapVue config plugin\n  BVConfigPlugin,\n  // `BVConfigPlugin` has been documented as `BVConfig` as well,\n  // so we add an alias to the shorter name for backwards compat\n  BVConfigPlugin as BVConfig,\n  // Main BootstrapVue plugin\n  BootstrapVue\n}\n\n// --- Export named injection plugins ---\n// TODO:\n//   We should probably move injections into their own\n//   parent directory (i.e. `/src/injections`)\nexport { BVModalPlugin } from './components/modal/helpers/bv-modal'\nexport { BVToastPlugin } from './components/toast/helpers/bv-toast'\n\n// Webpack 4 has optimization difficulties with re-export of re-exports,\n// so we import the components individually here for better tree shaking\n//\n// Webpack v5 fixes the optimizations with re-export of re-exports so this\n// can be reverted back to `export * from './table'` when Webpack v5 is released\n// See: https://github.com/webpack/webpack/pull/9203 (available in Webpack v5.0.0-alpha.15)\n\n// -- Export Icon components and IconPlugin/BootstrapVueIcons ---\n// export * from './icons'\nexport { IconsPlugin, BootstrapVueIcons } from './icons/plugin'\nexport { BIcon } from './icons/icon'\nexport { BIconstack } from './icons/iconstack'\n// This re-export is only a single level deep, which\n// Webpack 4 (usually) handles correctly when tree shaking\nexport * from './icons/icons'\n\n// --- Export all individual components and component group plugins as named exports ---\n\n// export * from './components/alert'\nexport { AlertPlugin } from './components/alert'\nexport { BAlert } from './components/alert/alert'\n\n// export * from './components/aspect'\nexport { AspectPlugin } from './components/aspect'\nexport { BAspect } from './components/aspect/aspect'\n\n// export * from './components/avatar'\nexport { AvatarPlugin } from './components/avatar'\nexport { BAvatar } from './components/avatar/avatar'\nexport { BAvatarGroup } from './components/avatar/avatar-group'\n\n// export * from './components/badge'\nexport { BadgePlugin } from './components/badge'\nexport { BBadge } from './components/badge/badge'\n\n// export * from './components/breadcrumb'\nexport { BreadcrumbPlugin } from './components/breadcrumb'\nexport { BBreadcrumb } from './components/breadcrumb/breadcrumb'\nexport { BBreadcrumbItem } from './components/breadcrumb/breadcrumb-item'\n\n// export * from './components/button'\nexport { ButtonPlugin } from './components/button'\nexport { BButton } from './components/button/button'\nexport { BButtonClose } from './components/button/button-close'\n\n// export * from './components/button-group'\nexport { ButtonGroupPlugin } from './components/button-group'\nexport { BButtonGroup } from './components/button-group/button-group'\n\n// export * from './components/button-toolbar'\nexport { ButtonToolbarPlugin } from './components/button-toolbar'\nexport { BButtonToolbar } from './components/button-toolbar/button-toolbar'\n\n// export * from './components/calendar'\nexport { CalendarPlugin } from './components/calendar'\nexport { BCalendar } from './components/calendar/calendar'\n\n// export * from './components/card'\nexport { CardPlugin } from './components/card'\nexport { BCard } from './components/card/card'\nexport { BCardBody } from './components/card/card-body'\nexport { BCardFooter } from './components/card/card-footer'\nexport { BCardGroup } from './components/card/card-group'\nexport { BCardHeader } from './components/card/card-header'\nexport { BCardImg } from './components/card/card-img'\nexport { BCardImgLazy } from './components/card/card-img-lazy'\nexport { BCardSubTitle } from './components/card/card-sub-title'\nexport { BCardText } from './components/card/card-text'\nexport { BCardTitle } from './components/card/card-title'\n\n// export * from './components/carousel'\nexport { CarouselPlugin } from './components/carousel'\nexport { BCarousel } from './components/carousel/carousel'\nexport { BCarouselSlide } from './components/carousel/carousel-slide'\n\n// export * from './components/collapse'\nexport { CollapsePlugin } from './components/collapse'\nexport { BCollapse } from './components/collapse/collapse'\n\n// export * from './components/dropdown'\nexport { DropdownPlugin } from './components/dropdown'\nexport { BDropdown } from './components/dropdown/dropdown'\nexport { BDropdownItem } from './components/dropdown/dropdown-item'\nexport { BDropdownItemButton } from './components/dropdown/dropdown-item-button'\nexport { BDropdownDivider } from './components/dropdown/dropdown-divider'\nexport { BDropdownForm } from './components/dropdown/dropdown-form'\nexport { BDropdownGroup } from './components/dropdown/dropdown-group'\nexport { BDropdownHeader } from './components/dropdown/dropdown-header'\nexport { BDropdownText } from './components/dropdown/dropdown-text'\n\n// export * from './components/embed'\nexport { EmbedPlugin } from './components/embed'\nexport { BEmbed } from './components/embed/embed'\n\n// export * from './components/form'\nexport { FormPlugin } from './components/form'\nexport { BForm } from './components/form/form'\nexport { BFormDatalist } from './components/form/form-datalist'\nexport { BFormText } from './components/form/form-text'\nexport { BFormInvalidFeedback } from './components/form/form-invalid-feedback'\nexport { BFormValidFeedback } from './components/form/form-valid-feedback'\n\n// export * from './components/form-checkbox'\nexport { FormCheckboxPlugin } from './components/form-checkbox'\nexport { BFormCheckbox } from './components/form-checkbox/form-checkbox'\nexport { BFormCheckboxGroup } from './components/form-checkbox/form-checkbox-group'\n\n// export * from './components/form-datepicker'\nexport { FormDatepickerPlugin } from './components/form-datepicker'\nexport { BFormDatepicker } from './components/form-datepicker/form-datepicker'\n\n// export * from './components/form-file'\nexport { FormFilePlugin } from './components/form-file'\nexport { BFormFile } from './components/form-file/form-file'\n\n// export * from './components/form-group'\nexport { FormGroupPlugin } from './components/form-group'\nexport { BFormGroup } from './components/form-group/form-group'\n\n// export * from './components/form-input'\nexport { FormInputPlugin } from './components/form-input'\nexport { BFormInput } from './components/form-input/form-input'\n\n// export * from './components/form-radio'\nexport { FormRadioPlugin } from './components/form-radio'\nexport { BFormRadio } from './components/form-radio/form-radio'\nexport { BFormRadioGroup } from './components/form-radio/form-radio-group'\n\n// export * from './components/form-rating'\nexport { FormRatingPlugin } from './components/form-rating'\nexport { BFormRating } from './components/form-rating/form-rating'\n\n// export * from './components/form-tags'\nexport { FormTagsPlugin } from './components/form-tags'\nexport { BFormTags } from './components/form-tags/form-tags'\nexport { BFormTag } from './components/form-tags/form-tag'\n\n// export * from './components/form-select'\nexport { FormSelectPlugin } from './components/form-select'\nexport { BFormSelect } from './components/form-select/form-select'\nexport { BFormSelectOption } from './components/form-select/form-select-option'\nexport { BFormSelectOptionGroup } from './components/form-select/form-select-option-group'\n\n// export * from './components/form-spinbutton'\nexport { FormSpinbuttonPlugin } from './components/form-spinbutton'\nexport { BFormSpinbutton } from './components/form-spinbutton/form-spinbutton'\n\n// export * from './components/form-textarea'\nexport { FormTextareaPlugin } from './components/form-textarea'\nexport { BFormTextarea } from './components/form-textarea/form-textarea'\n\n// export * from './components/form-timepicker'\nexport { FormTimepickerPlugin } from './components/form-timepicker'\nexport { BFormTimepicker } from './components/form-timepicker/form-timepicker'\n\n// export * from './components/image'\nexport { ImagePlugin } from './components/image'\nexport { BImg } from './components/image/img'\nexport { BImgLazy } from './components/image/img-lazy'\n\n// export * from './components/input-group'\nexport { InputGroupPlugin } from './components/input-group'\nexport { BInputGroup } from './components/input-group/input-group'\nexport { BInputGroupAddon } from './components/input-group/input-group-addon'\nexport { BInputGroupAppend } from './components/input-group/input-group-append'\nexport { BInputGroupPrepend } from './components/input-group/input-group-prepend'\nexport { BInputGroupText } from './components/input-group/input-group-text'\n\n// export * from './components/jumbotron'\nexport { JumbotronPlugin } from './components/jumbotron'\nexport { BJumbotron } from './components/jumbotron/jumbotron'\n\n// export * from './components/layout'\nexport { LayoutPlugin } from './components/layout'\nexport { BContainer } from './components/layout/container'\nexport { BRow } from './components/layout/row'\nexport { BCol } from './components/layout/col'\nexport { BFormRow } from './components/layout/form-row'\n\n// export * from './components/link'\nexport { LinkPlugin } from './components/link'\nexport { BLink } from './components/link/link'\n\n// export * from './components/list-group'\nexport { ListGroupPlugin } from './components/list-group'\nexport { BListGroup } from './components/list-group/list-group'\nexport { BListGroupItem } from './components/list-group/list-group-item'\n\n// export * from './components/media'\nexport { MediaPlugin } from './components/media'\nexport { BMedia } from './components/media/media'\nexport { BMediaAside } from './components/media/media-aside'\nexport { BMediaBody } from './components/media/media-body'\n\n// export * from './components/modal'\nexport { ModalPlugin } from './components/modal'\nexport { BModal } from './components/modal/modal'\n\n// export * from './components/nav'\nexport { NavPlugin } from './components/nav'\nexport { BNav } from './components/nav/nav'\nexport { BNavForm } from './components/nav/nav-form'\nexport { BNavItem } from './components/nav/nav-item'\nexport { BNavItemDropdown } from './components/nav/nav-item-dropdown'\nexport { BNavText } from './components/nav/nav-text'\n\n// export * from './components/navbar'\nexport { NavbarPlugin } from './components/navbar'\nexport { BNavbar } from './components/navbar/navbar'\nexport { BNavbarBrand } from './components/navbar/navbar-brand'\nexport { BNavbarNav } from './components/navbar/navbar-nav'\nexport { BNavbarToggle } from './components/navbar/navbar-toggle'\n\n// export * from './components/overlay'\nexport { OverlayPlugin } from './components/overlay'\nexport { BOverlay } from './components/overlay/overlay'\n\n// export * from './components/pagination'\nexport { PaginationPlugin } from './components/pagination'\nexport { BPagination } from './components/pagination/pagination'\n\n// export * from './components/pagination-nav'\nexport { PaginationNavPlugin } from './components/pagination-nav'\nexport { BPaginationNav } from './components/pagination-nav/pagination-nav'\n\n// export * from './components/popover'\nexport { PopoverPlugin } from './components/popover'\nexport { BPopover } from './components/popover/popover'\n\n// export * from './components/progress'\nexport { ProgressPlugin } from './components/progress'\nexport { BProgress } from './components/progress/progress'\nexport { BProgressBar } from './components/progress/progress-bar'\n\n// export * from './components/sidebar'\nexport { SidebarPlugin } from './components/sidebar'\nexport { BSidebar } from './components/sidebar/sidebar'\n\n// export * from './components/skeleton'\nexport { SkeletonPlugin } from './components/skeleton'\nexport { BSkeleton } from './components/skeleton/skeleton'\nexport { BSkeletonIcon } from './components/skeleton/skeleton-icon'\nexport { BSkeletonImg } from './components/skeleton/skeleton-img'\nexport { BSkeletonTable } from './components/skeleton/skeleton-table'\nexport { BSkeletonWrapper } from './components/skeleton/skeleton-wrapper'\n\n// export * from './components/spinner'\nexport { SpinnerPlugin } from './components/spinner'\nexport { BSpinner } from './components/spinner/spinner'\n\n// export * from './components/table'\nexport { TablePlugin, TableLitePlugin, TableSimplePlugin } from './components/table'\nexport { BTable } from './components/table/table'\nexport { BTableLite } from './components/table/table-lite'\nexport { BTableSimple } from './components/table/table-simple'\nexport { BTbody } from './components/table/tbody'\nexport { BThead } from './components/table/thead'\nexport { BTfoot } from './components/table/tfoot'\nexport { BTr } from './components/table/tr'\nexport { BTh } from './components/table/th'\nexport { BTd } from './components/table/td'\n\n// export * from './components/tabs'\nexport { TabsPlugin } from './components/tabs'\nexport { BTabs } from './components/tabs/tabs'\nexport { BTab } from './components/tabs/tab'\n\n// export * from './components/time'\nexport { TimePlugin } from './components/time'\nexport { BTime } from './components/time/time'\n\n// export * from './components/toast'\nexport { ToastPlugin } from './components/toast'\nexport { BToast } from './components/toast/toast'\nexport { BToaster } from './components/toast/toaster'\n\n// export * from './components/tooltip'\nexport { TooltipPlugin } from './components/tooltip'\nexport { BTooltip } from './components/tooltip/tooltip'\n\n// --- Named exports of all directives (VB<Name>) and plugins (VB<Name>Plugin) ---\n\n// Webpack 4 has optimization difficulties with re-export of re-exports,\n// so we import the directives individually here for better tree shaking\n//\n// Webpack v5 fixes the optimizations with re-export of re-exports so this\n// can be reverted back to `export * from './scrollspy'` when Webpack v5 is released\n// https://github.com/webpack/webpack/pull/9203 (available in Webpack v5.0.0-alpha.15)\n\n// export * from './directives/hover'\nexport { VBHoverPlugin } from './directives/hover'\nexport { VBHover } from './directives/hover/hover'\n\n// export * from './directives/modal'\nexport { VBModalPlugin } from './directives/modal'\nexport { VBModal } from './directives/modal/modal'\n\n// export * from './directives/popover'\nexport { VBPopoverPlugin } from './directives/popover'\nexport { VBPopover } from './directives/popover/popover'\n\n// export * from './directives/scrollspy'\nexport { VBScrollspyPlugin } from './directives/scrollspy'\nexport { VBScrollspy } from './directives/scrollspy/scrollspy'\n\n// export * from './directives/toggle'\nexport { VBTogglePlugin } from './directives/toggle'\nexport { VBToggle } from './directives/toggle/toggle'\n\n// export * from './directives/tooltip'\nexport { VBTooltipPlugin } from './directives/tooltip'\nexport { VBTooltip } from './directives/tooltip/tooltip'\n\n// export * from './directives/tooltip'\nexport { VBVisiblePlugin } from './directives/visible'\nexport { VBVisible } from './directives/visible/visible'\n\n// Default export is the BootstrapVue plugin\nexport default BootstrapVue\n","import { pluginFactory } from '../utils/plugins'\n\nimport { VBHoverPlugin } from './hover'\nimport { VBModalPlugin } from './modal'\nimport { VBPopoverPlugin } from './popover'\nimport { VBScrollspyPlugin } from './scrollspy'\nimport { VBTogglePlugin } from './toggle'\nimport { VBTooltipPlugin } from './tooltip'\nimport { VBVisiblePlugin } from './visible'\n\n// Main plugin for installing all directive plugins\nexport const directivesPlugin = /*#__PURE__*/ pluginFactory({\n  plugins: {\n    VBHoverPlugin,\n    VBModalPlugin,\n    VBPopoverPlugin,\n    VBScrollspyPlugin,\n    VBTogglePlugin,\n    VBTooltipPlugin,\n    VBVisiblePlugin\n  }\n})\n","import { VBScrollspy } from './scrollspy'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBScrollspyPlugin = /*#__PURE__*/ pluginFactory({\n  directives: { VBScrollspy }\n})\n\nexport { VBScrollspyPlugin, VBScrollspy }\n","import { VBVisible } from './visible'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBVisiblePlugin = /*#__PURE__*/ pluginFactory({\n  directives: { VBVisible }\n})\n\nexport { VBVisiblePlugin, VBVisible }\n","// Main entry point for the browser build\nimport { vueUse } from './utils/plugins'\n\nimport { BootstrapVue } from './index'\n\n// Auto installation only occurs if window.Vue exists\nvueUse(BootstrapVue)\n\nexport default BootstrapVue\n"]}