Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

1 lines
2.1 MiB

{"version":3,"sources":["../node_modules/vue-functional-data-merge/dist/lib.esm.js","../src/constants/config.js","../src/utils/plugins.js","../src/utils/env.js","../src/utils/safe-types.js","../src/utils/inspect.js","../src/utils/object.js","../src/utils/clone-deep.js","../src/constants/regex.js","../src/utils/identity.js","../src/utils/get.js","../src/utils/warn.js","../src/utils/config-set.js","../src/constants/components.js","../src/utils/memoize.js","../src/utils/config.js","../src/utils/array.js","../src/utils/number.js","../src/utils/string.js","../src/utils/dom.js","../src/utils/bv-transition.js","../src/constants/slot-names.js","../src/utils/normalize-slot.js","../src/mixins/normalize-slot.js","../src/utils/events.js","../src/components/button/button-close.js","../src/components/alert/alert.js","../src/components/alert/index.js","../src/utils/math.js","../src/components/aspect/aspect.js","../src/components/aspect/index.js","../src/utils/props.js","../src/utils/router.js","../src/constants/key-codes.js","../src/utils/loose-equal.js","../src/utils/cache.js","../src/mixins/attrs.js","../src/mixins/listeners.js","../src/components/link/link.js","../src/components/button/button.js","../src/icons/helpers/icon-base.js","../src/icons/helpers/make-icon.js","../src/icons/icons.js","../src/icons/icon.js","../src/components/avatar/avatar.js","../src/components/avatar/index.js","../src/components/avatar/avatar-group.js","../src/components/badge/badge.js","../src/components/badge/index.js","../src/utils/html.js","../src/components/breadcrumb/breadcrumb-link.js","../src/components/breadcrumb/breadcrumb-item.js","../src/components/breadcrumb/breadcrumb.js","../src/components/breadcrumb/index.js","../src/components/button/index.js","../src/components/button-group/button-group.js","../src/components/button-group/index.js","../src/components/button-toolbar/button-toolbar.js","../src/components/button-toolbar/index.js","../src/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/card/card-img.js","../src/components/card/card.js","../src/directives/visible/visible.js","../src/components/image/img.js","../src/components/image/img-lazy.js","../src/components/card/card-img-lazy.js","../src/components/card/card-text.js","../src/components/card/card-group.js","../src/components/card/index.js","../src/constants/events.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/utils/bv-collapse.js","../src/mixins/listen-on-root.js","../src/directives/toggle/toggle.js","../src/components/collapse/collapse.js","../src/directives/toggle/index.js","../src/components/collapse/index.js","../node_modules/popper.js/dist/esm/popper.js","../src/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-radio-check.js","../src/mixins/form-size.js","../src/mixins/form-state.js","../src/components/form-checkbox/form-checkbox.js","../src/components/form-radio/form-radio.js","../src/mixins/form-radio-check-group.js","../src/components/form-checkbox/form-checkbox-group.js","../src/components/form-checkbox/index.js","../src/directives/hover/hover.js","../src/utils/bv-form-btn-label-control.js","../src/components/form-datepicker/form-datepicker.js","../src/components/form-datepicker/index.js","../src/components/form-file/form-file.js","../src/components/form-file/index.js","../src/utils/css-escape.js","../src/components/layout/col.js","../src/components/form-group/form-group.js","../src/components/form-group/index.js","../src/mixins/form-selection.js","../src/mixins/form-text.js","../src/mixins/form-validity.js","../src/components/form-input/form-input.js","../src/components/form-input/index.js","../src/components/form-radio/form-radio-group.js","../src/components/form-radio/index.js","../src/components/form-rating/form-rating.js","../src/components/form-rating/index.js","../src/components/form-select/helpers/mixin-options.js","../src/components/form-select/form-select-option.js","../src/components/form-select/form-select-option-group.js","../src/components/form-select/form-select.js","../src/components/form-select/index.js","../src/components/form-spinbutton/form-spinbutton.js","../src/components/form-spinbutton/index.js","../src/components/form-tags/form-tag.js","../src/components/form-tags/form-tags.js","../src/components/form-tags/index.js","../src/components/form-textarea/form-textarea.js","../src/components/form-textarea/index.js","../src/components/time/time.js","../src/components/form-timepicker/form-timepicker.js","../src/components/form-timepicker/index.js","../src/components/image/index.js","../src/components/input-group/input-group-text.js","../src/components/input-group/input-group-addon.js","../src/components/input-group/input-group-append.js","../src/components/input-group/input-group-prepend.js","../src/components/input-group/input-group.js","../src/components/input-group/index.js","../src/components/layout/container.js","../src/components/jumbotron/jumbotron.js","../src/components/jumbotron/index.js","../src/components/layout/row.js","../src/components/layout/index.js","../src/components/link/index.js","../src/components/list-group/list-group.js","../src/components/list-group/list-group-item.js","../src/components/list-group/index.js","../src/components/media/media-aside.js","../src/components/media/media-body.js","../src/components/media/media.js","../src/components/media/index.js","../src/utils/transporter.js","../src/mixins/listen-on-document.js","../src/mixins/listen-on-window.js","../src/utils/get-scope-id.js","../src/mixins/scoped-style-attrs.js","../src/components/modal/helpers/modal-manager.js","../src/components/modal/helpers/bv-modal-event.class.js","../src/components/modal/modal.js","../src/directives/modal/modal.js","../src/components/modal/helpers/bv-modal.js","../src/components/modal/index.js","../src/components/nav/nav.js","../src/components/nav/nav-item.js","../src/components/nav/nav-text.js","../src/components/nav/nav-form.js","../src/components/nav/nav-item-dropdown.js","../src/components/nav/index.js","../src/components/navbar/navbar.js","../src/components/navbar/navbar-nav.js","../src/components/navbar/navbar-brand.js","../src/components/navbar/navbar-toggle.js","../src/components/navbar/index.js","../src/components/spinner/spinner.js","../src/components/overlay/overlay.js","../src/components/overlay/index.js","../src/utils/range.js","../src/mixins/pagination.js","../src/components/pagination/pagination.js","../src/components/pagination/index.js","../src/components/pagination-nav/pagination-nav.js","../src/components/pagination-nav/index.js","../src/components/tooltip/helpers/bv-popper.js","../src/components/tooltip/helpers/bv-tooltip-template.js","../src/components/tooltip/helpers/bv-tooltip.js","../src/components/tooltip/tooltip.js","../src/components/popover/helpers/bv-popover-template.js","../src/components/popover/helpers/bv-popover.js","../src/components/popover/popover.js","../src/directives/popover/popover.js","../src/directives/popover/index.js","../src/components/popover/index.js","../src/components/progress/progress-bar.js","../src/components/progress/index.js","../src/components/progress/progress.js","../src/components/sidebar/sidebar.js","../src/components/sidebar/index.js","../src/components/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/components/table/helpers/constants.js","../src/components/table/helpers/sanitize-row.js","../src/components/table/helpers/stringify-object-values.js","../src/components/table/helpers/mixin-filtering.js","../src/components/table/helpers/stringify-record-values.js","../src/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/mixin-sorting.js","../src/components/table/helpers/default-sort-compare.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/index.js","../src/components/tabs/tab.js","../src/components/time/index.js","../node_modules/portal-vue/dist/portal-vue.esm.js","../src/components/toast/toaster.js","../src/components/toast/toast.js","../src/components/toast/helpers/bv-toast.js","../src/components/toast/index.js","../src/directives/tooltip/tooltip.js","../src/directives/tooltip/index.js","../src/components/index.js","../src/components/tooltip/index.js","../src/directives/hover/index.js","../src/directives/modal/index.js","../src/directives/scrollspy/scrollspy.class.js","../src/directives/scrollspy/scrollspy.js","../src/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","NAME","DEFAULT_BREAKPOINT","hasWindowSupport","window","hasDocumentSupport","document","hasNavigatorSupport","navigator","hasPromiseSupport","Promise","hasMutationObserverSupport","MutationObserver","WebKitMutationObserver","MozMutationObserver","isBrowser","userAgent","toLowerCase","isJSDOM","indexOf","hasPassiveEventSupport","test","passiveEventSupported","options","passive","addEventListener","removeEventListener","err","hasTouchSupport","documentElement","maxTouchPoints","hasPointerEventSupport","Boolean","PointerEvent","MSPointerEvent","hasIntersectionObserverSupport","IntersectionObserverEntry","getEnv","key","fallback","undefined","env","process","getNoWarn","w","Element","_Object","_inherits","_super","_createSuper","_classCallCheck","_wrapNativeSuper","HTMLElement","_Element","_super2","SVGElement","_Element2","_super3","File","_Object2","_super4","toType","val","_typeof","isUndefined","isNull","isUndefinedOrNull","isFunction","isBoolean","isString","isNumber","isNumeric","value","isNaN","parseInt","isObject","obj","isPlainObject","toString","isDate","Date","isEvent","Event","isRegExp","slice","toRawType","create","proto","optionalProps","defineProperties","props","defineProperty","prop","descriptor","getOwnPropertyNames","clone","_objectSpread2","pick","filter","reduce","result","_defineProperty","omit","mergeDeep","target","source","forEach","cloneDeep","defaultValue","_toConsumableArray","RX_ARRAY_NOTATION","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","identity","x","getRaw","path","join","steps","String","every","step","get","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_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_ICONSTACK","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_TABS","NAME_TBODY","NAME_TFOOT","NAME_THEAD","NAME_TIME","NAME_TOAST","NAME_TOASTER","NAME_TOOLTIP","memoize","fn","cache","_len","args","_key","argsKey","JSON","stringify","VueProto","getConfigValue","bvConfig","getComponentConfig","propKey","getBreakpoints","_getBreakpointsCached","getBreakpointsUpCached","breakpoints","makePropsConfigurable","componentKey","currentProp","default","from","arrayIncludes","array","createAndFillArray","size","fill","flatten","item","flattenDeep","toInteger","NaN","integer","toFloat","float","parseFloat","toFixed","precision","kebabCase","str","pascalCase","_","charAt","startCase","$1","$2","upperFirst","escapeRegExp","spaces","lowerCase","TABABLE_SELECTOR","map","d","elProto","matchesEl","matches","msMatchesSelector","webkitMatchesSelector","closestEl","closest","sel","el","parentElement","parentNode","nodeType","Node","ELEMENT_NODE","requestAF","requestAnimationFrame","webkitRequestAnimationFrame","mozRequestAnimationFrame","msRequestAnimationFrame","oRequestAnimationFrame","cb","setTimeout","MutationObs","isElement","getActiveElement","excludes","activeElement","isTag","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","_unused","attemptBlur","blur","_unused2","NO_FADE_PROPS","enterClass","enterActiveClass","enterToClass","leaveClass","leaveActiveClass","leaveToClass","FADE_PROPS","BVTransition","functional","noFade","type","appear","mode","transProps","render","h","children","data","appearClass","appearActiveClass","appearToClass","mergeData","css","SLOT_NAME_APPEND","SLOT_NAME_BUTTON_CONTENT","SLOT_NAME_DEFAULT","SLOT_NAME_FIRST","SLOT_NAME_FOOTER","SLOT_NAME_HEADER","SLOT_NAME_LABEL","SLOT_NAME_LEAD","SLOT_NAME_PREPEND","SLOT_NAME_TITLE","hasNormalizedSlot","names","$scopedSlots","$slots","normalizeSlot","slot","scope","normalizeSlotMixin","methods","vNodes","parseEventOptions","capture","eventOn","evtName","handler","eventOff","eventOnOff","on","method","stopEvent","evt","_ref$preventDefault","preventDefault","_ref$propagation","propagation","_ref$immediatePropaga","immediatePropagation","stopPropagation","stopImmediatePropagation","content","ariaLabel","textVariant","BButtonClose","slots","scopedSlots","componentData","staticClass","class","attrs","aria-label","click","domProps","innerHTML","parseCountDown","show","parseShow","AlertPlugin","BAlert","mixins","model","event","variant","dismissible","dismissLabel","Number","fade","countDown","localShow","watch","newVal","clearCountDownInterval","$emit","$_countDownTimeout","$nextTick","created","$_filterTimer","mounted","beforeDestroy","dismiss","clearTimeout","$alert","$dismissBtn","_uid","alert-dismissible","role","aria-live","aria-atomic","mathMin","Math","min","mathMax","max","mathAbs","abs","mathCeil","ceil","mathFloor","floor","mathPow","pow","mathRound","round","CLASS_NAME","BAspect","aspect","computed","padding","ratio","_aspect$split$map2","_slicedToArray","v","$sizer","paddingBottom","$content","AspectPlugin","prefixPropName","prefix","unprefixPropName","suffixPropName","suffix","copyProps","transformFn","copied","pluckProps","keysToPluck","objToPluck","memo","encodeReserveReplacer","charCodeAt","encode","encodeURIComponent","decode","decodeURIComponent","stringifyQueryObj","query","results","val2","push","parseQuery","parsed","param","parts","shift","isLink","href","to","isRouterLink","computeHref","_ref3","toFallback","hash","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","newValue","oldValue","$delete","$data","$set","makePropCacheMixin","proxyPropName","attrsMixin","listenersMixin","routerLinkProps","append","activeClass","exact","exactActiveClass","routerTag","nuxtLinkProps","prefetch","noPrefetch","rel","active","routerComponentName","BLink","inheritAttrs","computedTag","thisOrParent","hasRouter","$router","$nuxt","computeTag","computedRel","_ref2","computeRel","computedHref","computedProps","computedAttrs","bvAttrs","tabindex","aria-disabled","computedListeners","bvListeners","onClick","_arguments","evtIsEvent","suppliedHandler","currentTarget","__vue__","$root","$el","linkProps","BLinkProps","block","pill","squared","pressed","handleFocus","isLinkStrict","isToggle","isButton","isNonStandardTag","computeClass","computeLinkProps","computeAttrs","button","link","toggle","nonStandardTag","hashLink","aria-pressed","autocomplete","BButton","listeners","keydown","keyCode","focusin","focusout","commonIconProps","title","fontScale","scale","rotate","flipH","flipV","shiftH","shiftV","animation","baseAttrs","viewBox","focusable","stackedAttrs","BVIconBase","stacked","_class","hasScale","hasTransforms","hasShift","transforms","isStacked","hasContent","$inner","transform","$title","fontSize","xmlns","makeIcon","kebabName","iconName","iconNameClass","iconTitle","svgContent","BIconBlank","BIconCalendar","BIconCalendarFill","BIconChevronBarLeft","BIconChevronDoubleLeft","BIconChevronDown","BIconChevronLeft","BIconChevronUp","BIconCircleFill","BIconClock","BIconClockFill","BIconDash","BIconPersonFill","BIconPlus","BIconStar","BIconStarFill","BIconStarHalf","BIconX","findIconComponent","ctx","$options","$parent","BIcon","icon","SIZES","computeSize","AvatarPlugin","BAvatar","inject","bvAvatarGroup","src","text","alt","square","rounded","buttonType","badge","badgeVariant","badgeTop","badgeLeft","badgeOffset","localSrc","computedSize","computedVariant","computedRounded","fontStyle","marginStyle","overlapScale","marginRight","badgeStyle","FONT_SIZE_SCALE","bottom","right","newSrc","oldSrc","onImgError","_class2","error","aria-hidden","$badge","hasBadgeSlot","badgeText","BAvatarGroup","provide","overlap","paddingStyle","paddingLeft","paddingRight","BBadge","badge-pill","BadgePlugin","stripTags","htmlOrText","textContent","html","ariaCurrent","BBreadcrumbLink","suppliedProps","aria-current","BBreadcrumbItem","items","BreadcrumbPlugin","BBreadcrumb","childNodes","activeDefined","idx","ButtonPlugin","BBtn","BBtnClose","vertical","ariaRole","buttonProps","BButtonGroup","btn-group","btn-group-vertical","ButtonGroupPlugin","BBtnGroup","ITEM_SELECTOR","BButtonToolbar","justify","keyNav","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","valueAsDate","initialDate","readonly","dateDisabledFn","Function","startWeekday","direction","selectedVariant","todayVariant","navButtonVariant","noHighlightToday","dateInfoFn","hideHeader","showDecadeNav","hidden","ariaControls","noKeyNav","roleDescription","labelPrevDecade","labelPrevYear","labelPrevMonth","labelCurrentMonth","labelNextMonth","labelNextYear","labelNextDecade","labelToday","labelSelected","labelNoDateSelected","labelCalendar","labelNav","labelHelp","dateFormatOptions","weekday","weekdayHeaderFormat","validator","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","_this2","oldVal","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","ref","data-month","aria-roledescription","aria-labelledby","aria-describedby","aria-activedescendant","$slot","$widget","lang","d-block","CalendarPlugin","bgVariant","borderVariant","titleTag","BCardTitle","subTitle","subTitleTag","subTitleTextVariant","BCardSubTitle","cardProps","bind","bodyClass","titleProps","subTitleProps","overlay","BCardBody","cardTitle","cardSubTitle","cardContent","bodyTag","card-img-overlay","bodyBgVariant","bodyBorderVariant","bodyTextVariant","header","headerHtml","headerClass","BCardHeader","headerBgVariant","headerBorderVariant","headerTextVariant","headerTag","footer","footerHtml","footerClass","BCardFooter","footerBgVariant","footerBorderVariant","footerTextVariant","footerTag","required","start","end","BCardImg","baseClass","cardImgProps","imgProps","imgSrc","bodyProps","headerProps","footerProps","align","noBody","BCard","imgLeft","imgRight","imgStart","imgEnd","imgBottom","slotScope","$imgFirst","$imgLast","$img","hasHeaderSlot","$footer","flex-row","flex-row-reverse","OBSERVER_PROP_NAME","VisibilityObserver","vnode","callback","margin","once","observer","visible","doneOnce","createObserver","stop","IntersectionObserver","rootMargin","threshold","observe","entries","entry","isIntersecting","intersectionRatio","disconnect","destroy","modifiers","mod","_prevModifiers","VBVisible","componentUpdated","unbind","BLANK_TEMPLATE","srcset","sizes","fluid","fluidGrow","thumbnail","center","blank","blankColor","BImg","color","makeBlankImgSrc","img-thumbnail","img-fluid","w-100","BImgProps","blankSrc","blankWidth","blankHeight","BImgLazy","bVisible","isShown","computedSrc","computedBlank","computedWidth","computedHeight","computedSrcset","computedSizes","updateShowProp","doShow","_modifiers","lazyProps","imgLazyProps","BCardImgLazy","textTag","BCardText","deck","columns","CardPlugin","BCardGroup","EVENT_OPTIONS_PASSIVE","EVENT_OPTIONS_NO_CAPTURE","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","BCarousel","bvCarousel","labelPrev","labelNext","labelGotoSlide","labelIndicators","interval","indicators","controls","noAnimation","noWrap","noTouch","noHoverPause","imgWidth","imgHeight","background","isSliding","transitionEndEvent","slides","isPaused","touchStartX","touchDeltaX","numSlides","setSlide","pause","doSlide","$_interval","$_animationTimeout","$_touchTimeout","$_observer","getTransitionEndEvent","updateSlides","setObserver","clearInterval","clearAnimationTimeout","clearTouchTimeout","_clearInterval","inner","attributes","attributeFilter","slide","visibilityState","$once","setInterval","restart","isCycling","calcDirection","currentSlide","nextSlide","called","onceTransEnd","curIndex","nextIndex","handleClick","handleSwipe","absDeltaX","touchStart","pointerType","clientX","touches","touchMove","touchEnd","prevHandler","nextHandler","rawName","expression","aria-owns","mouseenter","mouseleave","tagName","carousel-fade","pointer-event","aria-busy","imgAlt","imgBlank","imgBlankColor","contentVisibleUp","contentTag","caption","captionHtml","captionTag","textHtml","CarouselPlugin","BCarouselSlide","contentClasses","dragstart","$props","$contentChildren","$child","TRANSITION_PROPS","TRANSITION_HANDLERS","enter","scrollHeight","afterEnter","leave","afterLeave","BVCollapse","listenOnRootMixin","listenOnRoot","$on","$off","listenOnRootOnce","emitOnRoot","_this$$root","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","EVENT_TOGGLE","EVENT_STATE","EVENT_STATE_SYNC","EVENT_STATE_REQUEST","KEYDOWN_KEY_CODES","removeClickListener","removeRootListeners","setToggleState","state","resetProp","handleUpdate","binding","targets","arg","arr","getTargets","addClickListener","VBToggle","addRootListeners","updated","EVENT_ACCORDION","BCollapse","isNav","accordion","transitioning","classObject","navbar-collapse","collapse","emitState","handleToggleEvt","handleAccordionEvt","setWindowEvents","handleResize","emitSync","onEnter","onAfterEnter","onLeave","onAfterLeave","checkDisplayBlock","restore","isBlock","display","clickHandler","openedId","close","VBTogglePlugin","CollapsePlugin","timeoutDuration","longerTimeoutBrowsers","debounce","resolve","then","scheduled","functionToCheck","getStyleComputedProperty","element","property","getParentNode","nodeName","host","getScrollParent","_getStyleComputedProp","overflow","overflowX","overflowY","getReferenceNode","reference","referenceNode","isIE11","MSInputMethodContext","documentMode","isIE10","isIE","version","getOffsetParent","noOffsetParent","nextElementSibling","getRoot","node","findCommonOffsetParent","element1","element2","order","compareDocumentPosition","DOCUMENT_POSITION_FOLLOWING","range","createRange","setStart","setEnd","commonAncestorContainer","firstElementChild","element1root","getScroll","side","upperSide","scrollingElement","includeScroll","rect","subtract","scrollTop","scrollLeft","modifier","getBordersSize","styles","axis","sideA","sideB","getSize","computedStyle","getWindowSizes","classCallCheck","instance","Constructor","TypeError","createClass","enumerable","configurable","writable","protoProps","staticProps","_extends","getClientRect","offsets","clientWidth","clientHeight","horizScrollbar","offsetWidth","vertScrollbar","getOffsetRectRelativeToArbitraryNode","fixedPosition","isHTML","childrenRect","parentRect","scrollParent","getViewportOffsetRectRelativeToArtbitraryNode","excludeScroll","relativeOffset","innerWidth","innerHeight","isFixed","getFixedPositionOffsetParent","getBoundaries","popper","boundariesElement","boundaries","boundariesNode","_getWindowSizes","isPaddingNumber","getArea","computeAutoPlacement","placement","refRect","rects","sortedAreas","area","sort","filteredAreas","computedPlacement","variation","getReferenceOffsets","commonOffsetParent","getOuterSizes","marginBottom","getOppositePlacement","matched","getPopperOffsets","referenceOffsets","popperRect","popperOffsets","isHoriz","mainSide","secondarySide","measurement","secondaryMeasurement","find","check","runModifiers","ends","findIndex","cur","match","enabled","update","isDestroyed","arrowStyles","flipped","positionFixed","flip","originalPlacement","isCreated","onUpdate","onCreate","isModifierEnabled","modifierName","getSupportedPropertyName","prefixes","upperProp","toCheck","willChange","disableEventListeners","removeOnDestroy","removeChild","getWindow","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","clickOutMixin","listenForClickOut","clickOutElement","clickOutEventName","_clickOutHandler","beforeCreate","isClickOut","clickOutHandler","focusInMixin","listenForFocusIn","focusInElement","_focusInHandler","focusInHandler","ROOT_EVENT_PREFIX","ROOT_EVENT_SHOWN","ROOT_EVENT_HIDDEN","SELECTOR_ITEM","commonProps","dropup","dropright","dropleft","noFlip","popperOpts","boundary","dropdownMixin","bvDropdown","bvNavbar","visibleChangePrevented","inNavbar","toggler","directionClass","boundaryClass","bvEvt","menu","emitEvent","focusToggler","showMenu","hideMenu","$_popper","$_hideTimeout","whileOpenListen","destroyPopper","clearHideTimeout","createPopper","focusMenu","getPopperConfig","updatePopper","popperConfig","isOpen","rootCloseListener","vm","refocus","_evt","onMousedown","onEsc","onSplitClick","hideHandler","up","focusItem","dropdownProps","menuClass","toggleTag","toggleText","toggleClass","noCaret","splitHref","splitTo","splitVariant","splitClass","splitButtonType","lazy","BDropdown","dropdownClasses","d-flex","menuClasses","dropdown-menu-right","toggleClasses","dropdown-toggle-split","dropdown-toggle-no-caret","buttonContentSlotName","$buttonChildren","buttonContentDomProps","$split","btnProps","$toggle","aria-haspopup","aria-expanded","mousedown","$menu","BDropdownItem","linkClass","closeDropdown","buttonClass","BDropdownItemButton","BDropdownHeader","$attrs","BDropdownDivider","aria-orientation","inline","novalidate","validated","BForm","form-inline","was-validated","BDropdownForm","formControlProps","formClass","$listeners","BDropdownText","textClass","headerVariant","headerClasses","ariaDescribedby","BDropdownGroup","headerId","adb","ariaDescribedBy","DropdownPlugin","BDd","BDdItem","BDropdownItemBtn","BDdItemButton","BDdItemBtn","BDdHeader","BDdDivider","BDdForm","BDdText","BDdGroup","TYPES","EmbedPlugin","BEmbed","valueField","textField","htmlField","disabledField","formOptionsMixin","formOptions","normalizeOptions","normalizeOption","option","BFormDatalist","formOptionsProps","BFormText","form-text","tooltip","forceShow","ariaLive","BFormInvalidFeedback","invalid-feedback","invalid-tooltip","BFormValidFeedback","valid-feedback","valid-tooltip","BFormRow","FormPlugin","BDatalist","BFormFeedback","looseIndexOf","SELECTOR","form","autofocus","formControlMixin","handleAutofocus","plain","formCustomMixin","custom","formCustomProps","checked","buttonVariant","ariaLabelledby","formRadioCheckMixin","localChecked","isGroup","bvGroup","hasFocus","computedLocalChecked","set","isBtnMode","buttons","isPlain","isCustom","isSwitch","isRadio","switches","switch","isInline","getName","groupName","getForm","getState","computedState","getButtonVariant","buttonClasses","isChecked","aria-required","input","defaultSlot","change","handleChange","form-check-input","custom-control-input","is-valid","is-invalid","position-static","form-check-label","custom-control-label","form-check","form-check-inline","custom-control","custom-control-inline","custom-checkbox","isCheck","custom-switch","custom-radio","formSizeMixin","sizeFormClass","formStateMixin","stateClass","BFormCheckbox","formRadioCheckProps","formSizeProps","formStateProps","uncheckedValue","indeterminate","$input","setIndeterminate","_ref$target","BFormRadio","ariaInvalid","formRadioCheckGroupMixin","groupClasses","computedAriaInvalid","$inputs","isRadioGroup","aria-invalid","formRadioCheckGroupProps","BFormCheckboxGroup","bvCheckGroup","FormCheckboxPlugin","BCheckbox","BCheck","BCheckboxGroup","BCheckGroup","PROP","MOUSEENTER","updateListeners","listener","_ref$value","hasListener","handlerChanged","createListener","VBHover","formattedValue","placeholder","buttonOnly","BVFormBtnLabelControl","BHover","isHovered","idButton","idLabel","idMenu","idWrapper","computedDir","setFocus","handleHover","hovered","invalid","btnScope","opened","$button","!focus","!blur","$hidden","aria-modal","$label","!click","form-control","h-auto","align-items-stretch","aria-readonly","BFormDatepicker","BCalendarProps","BVFormBtnLabelControlProps","resetValue","noCloseOnSelect","calendarWidth","todayButton","labelTodayButton","todayButtonVariant","resetButton","labelResetButton","resetButtonVariant","closeButton","labelCloseButton","closeButtonVariant","dark","localYMD","localLocale","calendarYM","computedLang","computedResetValue","control","setAndClose","onSelected","onInput","onContext","onTodayButton","onResetButton","onCloseButton","onShow","onShown","onHidden","defaultButtonFn","$createElement","justify-content-end","$calendar","bg-dark","text-light","shown","button-content","FormDatepickerPlugin","BDatepicker","isValidValue","getDataTransferItemEntry","getAsEntry","webkitGetAsEntry","getAllFileEntriesInDirectory","directoryReader","entryPromises","readDirectoryEntries","readEntries","all","isDirectory","createReader","isFile","file","$path","BFormFile","accept","browseText","dropPlaceholder","noDropPlaceholder","multiple","directory","noTraverse","noDrop","fileNameFormatter","files","dragging","dropAllowed","computedAccept","extOrType","startMatch","endMatch","rx","RegExp","computedCapture","webkitdirectory","computedFileNameFormatter","defaultFileNameFormatter","clonedFiles","flattenedFiles","fileNames","labelContent","allowed","filesTraversed","reset","$form","isFileValid","isFilesArrayValid","setFiles","setInputFiles","dataTransfer","ClipboardEvent","clipboardData","DataTransfer","_unused3","handleFiles","isDrop","filteredFiles","focusHandler","onChange","_evt$dataTransfer","dataTransferItemList","traverseDirectories","kind","getAllFileEntries","webkitRelativePath","onDragenter","_evt$dataTransfer2","dropEffect","onDragover","_evt$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","strNum","computeBreakpointClass","breakpoint","breakpointPropMap","generateProps","breakpointCol","propMap","breakpointOffset","breakpointOrder","col","cols","alignSelf","BCol","_classList$push","hasColClasses","LEGEND_INTERACTIVE_ELEMENTS","makePropName","BFormGroup","CODE_BREAKPOINTS","bpLabelColProps","bpLabelAlignProps","labelFor","labelSize","labelSrOnly","labelClass","description","invalidFeedback","validFeedback","feedbackAriaLive","describedByIds","labelColProps","propVal","labelAlignClasses","classes","isHorizontal","setInputDescribedBy","legendClick","inputs","ids","isFieldset","labelId","isLegend","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","plaintext","formatter","lazyFormatter","number","formTextMixin","localValue","vModelValue","computedClass","custom-range","form-control-plaintext","computedDebounce","hasFormatter","stringifyValue","clearDebounce","$_inputDebounceTimer","formatValue","force","modifyValue","updateValue","doUpdate","composing","onBlur","formValidityMixin","validity","validationMessage","willValidate","setCustomValidity","checkValidity","reportValidity","BFormInput","formTextProps","noWheel","list","localType","setWheelStopper","onWheelFocus","onWheelBlur","stopWheel","FormInputPlugin","BInput","BFormRadioGroup","bvRadioGroup","FormRadioPlugin","BRadio","BRadioGroup","computeStars","stars","clampValue","BVFormRatingStar","rating","star","focused","hasClear","minStar","b-rating-star-empty","b-rating-star-half","b-rating-star-full","BFormRating","showValue","showValueMax","noBorder","iconEmpty","iconHalf","iconFull","iconClear","showClear","computedStars","computedRating","isInteractive","formattedRating","formatOptions","toLocaleString","amountRtl","onFocus","renderIcon","iconEmptyFn","iconHalfFn","iconFullFn","iconClearFn","$icon","empty","half","full","d-inline-flex","border-0","aria-valuemin","aria-valuemax","aria-valuenow","FormRatingPlugin","BRating","optionsMixin","labelField","optionsField","BFormSelectOption","BFormSelectOptionGroup","BFormSelect","selectSize","computedSelectSize","inputClass","selectedVal","_value","FormSelectPlugin","BSelect","BSelectOption","BSelectOptionGroup","KEY_CODES","wrap","formatterFn","labelDecrement","labelIncrement","repeatDelay","repeatInterval","repeatThreshold","repeatStepMultiplier","BFormSpinbutton","spinId","computedInline","computedReadonly","computedRequired","computedStep","computedDelay","delay","computedInterval","computedThreshold","computedStepMultiplier","computedPrecision","computedMultiplier","valueAsFixed","computedRTL","defaultFormatter","useGrouping","computedFormatter","computedSpinAttrs","hasValue","aria-valuetext","clearRepeat","$_autoDelayTimer","$_autoRepeatTimer","$_keyIsDown","spinner","emitChange","stepValue","multiplier","onFocusBlur","stepUp","stepDown","metaKey","resetTimers","handleStepRepeat","onKeyup","stepper","count","onMouseup","setMouseup","makeButton","IconCmp","keyRef","slotName","py-0","touchstart","$increment","$decrement","$spin","align-self-center","align-items-center","border-top","border-bottom","border-left","border-right","flex-column","keyup","FormSpinbuttonPlugin","BSpinbutton","BFormTag","removeLabel","onDelete","tagId","tagLabelId","$remove","$tag","cleanTags","tags","processEventValue","BFormTags","inputId","inputType","inputAttrs","addButtonText","addButtonVariant","tagVariant","tagClass","tagPills","tagRemoveLabel","tagRemovedLabel","tagValidator","duplicateTagText","invalidTagText","limitTagsText","limit","separator","removeOnDelete","addOnChange","noAddOnEnter","noOuterFocus","ignoreInputFocusSelector","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","addTag","parseTags","getInput","invalidAndDuplicates","removeTag","separatorRe","ignoreFocusSelector","onFocusout","defaultRender","inputHandlers","isInvalid","isDuplicate","$tags","duplicateFeedbackId","limitFeedbackId","outline","minWidth","invisible","tagListId","$field","$ul","$feedback","$invalid","$duplicate","$limit","$output","aria-relevant","$removed","FormTagsPlugin","BTags","BTag","BFormTextarea","b-visible","rows","maxRows","noResize","noAutoShrink","heightInPx","resize","computedRows","computedMinRows","computedMaxRows","setHeight","visibleCallback","computeHeight","$isServer","lineHeight","border","borderBottomWidth","paddingTop","minHeight","oldHeight","contentRows","640","FormTextareaPlugin","BTextarea","NUMERIC","padLeftZeros","num","parseHMS","hms","hh","mm","ss","_hms$split$map2","hours","minutes","seconds","ampm","showSeconds","hour12","secondsStep","minutesStep","labelNoTimeSelected","labelHours","labelMinutes","labelSeconds","labelAmpm","labelAm","labelPm","formSpinbuttonProps","BTime","modelHours","modelMinutes","modelSeconds","modelAmpm","computedHMS","requireSeconds","formatHMS","resolved","hourCycle","computedHourCycle","is12Hour","formatted","formattedTimeString","computedAriaLabelledby","timeFormatter","timeZone","numberFormatter","UTC","spinScopedSlots","increment","decrement","_parseHMS","newHours","oldHours","spinners","formatHours","formatMinutes","formatSeconds","formatAmpm","setHours","setMinutes","setSeconds","setAmpm","onSpinLeftRight","cmp","spinIds","makeSpinbutton","spinbuttonProps","refInFor","makeColon","$spinners","$value","BFormTimepicker","BTimeProps","nowButton","labelNowButton","nowButtonVariant","noCloseButton","localHMS","onNowButton","now","getHours","getMinutes","getSeconds","time","$time","FormTimepickerPlugin","BTimepicker","ImagePlugin","BInputGroupText","isText","BInputGroupAddon","input-group-append","input-group-prepend","BInputGroupAppend","BInputGroupPrepend","prepend","prependHtml","appendHtml","InputGroupPlugin","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","rowColsProps","noGutters","alignV","alignH","alignContent","LayoutPlugin","BRow","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","BTransporterTargetSingle","abstract","nodes","updatedNodes","destroyed","BTransporterSingle","immediate","unmountTarget","mountTarget","$_defaultFn","$_target","beforeMount","updateTarget","getContainer","createElement","appendChild","propsData","defaultFn","$destroy","listenOnDocumentMixin","listenDocument","listenOnDocument","listenOffDocument","listenOnWindowMixin","listenWindow","listenOnWindow","listenOffWindow","getScopeId","_scopeId","scopedStyleAttrsMixin","scopedStyleAttrs","scopeId","Selector","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","BvModalEvent","_assertThisInitialized","trigger","_get","_getPrototypeOf","OBSERVER_CONFIG","characterData","centered","scrollable","buttonSize","noStacking","noCloseOnBackdrop","noCloseOnEsc","noEnforceFocus","ignoreEnforceFocusSelector","titleHtml","titleClass","titleSrOnly","headerCloseVariant","modalClass","dialogClass","contentClass","hideFooter","hideHeaderClose","hideBackdrop","okOnly","okDisabled","cancelDisabled","returnFocus","headerCloseContent","headerCloseLabel","cancelTitle","cancelTitleHtml","okTitle","okTitleHtml","cancelVariant","okVariant","busy","static","autoFocusButton","BModal","isHidden","isTransitioning","isShow","isOpening","isClosing","ignoreBackdropClick","isModalOverflowing","return_focus","modalId","modalOuterId","modalHeaderId","modalBodyId","modalTitleId","modalContentId","modalFooterId","modalBackdropId","modalClasses","modalStyles","sbWidth","dialogClasses","titleClasses","bodyClasses","footerClasses","_ref4","modalOuterStyle","ok","onOk","cancel","onCancel","onClose","computeIgnoreEnforceFocusSelector","computedModalAttrs","showHandler","toggleHandler","modalListener","checkModalOverflow","updateModel","buildEvent","showEvt","hideEvt","triggerEl","onBeforeEnter","setResizeEvent","setEnforceFocus","onBeforeLeave","returnFocusTo","bvModalEvt","onDialogMousedown","onceModalMouseup","onClickOut","tabables","_this$$refs","bottomTrap","topTrap","preventScroll","autoFocus","makeModal","$modalHeader","$closeButton","$body","$modalFooter","$cancelButton","$modalContent","$tabTrapTop","$tabTrapBottom","$modalDialog","$modal","beforeEnter","beforeLeave","$backdrop","PROPERTY","getTarget","_ref$modifiers","getTriggerElement","setRole","oldProp","VBModal","inserted","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","_createClass","_this$_root","_this$_root2","_len2","_key2","mixin","justified","tabs","pills","small","cardHeader","BNav","nav-tabs","nav-pills","card-header-tabs","card-header-pills","nav-fill","nav-justified","linkAttrs","linkClasses","BNavItem","BNavText","BFormProps","BNavForm","_ref$listeners","BDropdownProps","BNavItemDropdown","toggleId","NavPlugin","BNavItemDd","BNavDropdown","BNavDd","toggleable","fixed","sticky","print","BNavbar","breakpointClass","xs","d-print","sticky-top","BNavProps","BNavbarNav","BNavbarBrand","BNavbarToggle","toggleState","handleStateEvt","expanded","NavbarPlugin","BNavToggle","BSpinner","positionCover","OverlayPlugin","BOverlay","bgColor","opacity","noCenter","spinnerType","spinnerVariant","spinnerSmall","overlayTag","wrapTag","overlayScope","defaultOverlayFn","$overlay","$background","backgroundColor","backdropFilter","position-absolute","position-fixed","after-enter","after-leave","sanitizeLimit","sanitizeCurrentPage","numberOfPages","page","onSpaceKey","hideGotoEndButtons","labelFirstPage","firstText","firstNumber","firstClass","labelPrevPage","prevText","prevClass","labelNextPage","nextText","nextClass","labelLastPage","lastText","lastNumber","lastClass","labelPage","pageClass","hideEllipsis","ellipsisText","ellipsisClass","paginationMixin","currentPage","localNumberOfPages","localLimit","btnSize","alignment","styleClass","computedCurrentPage","paginationParams","showFirstDots","showLastDots","numberOfLinks","startNumber","lastPageNumber","pageList","_this$paginationParam","pages","makePageArray","handleKeyNav","getButtons","btn","focusCurrent","_this7","pageNumbers","_this$paginationParam2","isActivePage","pageNumber","noCurrentPage","makeEndBtn","linkTo","btnSlot","btnText","btnClass","pageTest","$btnContent","flex-grow-1","flex-fill","makeEllipsis","isLast","makePageButton","aria-checked","aria-posinset","aria-setsize","btnContent","makePage","$firstPageBtn","$lastPageBtn","$pagination","sanitizePerPage","sanitizeTotalRows","PaginationPlugin","BPagination","perPage","totalRows","pageSizeNumberOfPages","clickEvt","pageNum","PaginationNavPlugin","BPaginationNav","paginationProps","baseUrl","useRouter","linkGen","pageGen","noPageDetect","computedValue","setNumberOfPages","guessCurrentPage","getPageInfo","makeLink","resolveLink","_link2","pathname","resolveRoute","route","guess","currRoute","loc","location","currLink","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","TOPLEFT","TOPRIGHT","RIGHTTOP","RIGHTBOTTOM","BOTTOMLEFT","BOTTOMRIGHT","LEFTTOP","LEFTBOTTOM","OffsetMap","BVPopper","fallbackPlacement","boundaryPadding","arrowPadding","attachment","getAttachment","templateType","getOffset","popperPlacementChange","popperCreate","arrowOffset","renderTemplate","BVTooltipTemplate","customClass","interactive","templateClasses","noninteractive","templateAttributes","templateListeners","MODAL_SELECTOR","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","getScopId","forceHide","setWhileOpenListeners","clearHoverTimeout","clearVisibilityInterval","destroyTemplate","getTemplate","updateData","titleUpdated","fixTitle","createTemplateAndShow","Template","$tip","getPlacementTarget","getBoundary","onTemplateShow","onTemplateShown","onTemplateHide","onTemplateHidden","handleEvent","hideTemplate","clearActiveTriggers","localPlacementTarget","removeAriaDescribedby","restoreTitle","getTemplateElement","dropdownOpen","addAriaDescribedby","tip","prevHoverState","getTargetId","isInModal","isDropdown","desc","setRootListener","doHide","doDisable","doEnable","setModalListener","setDropdownListener","visibleCheck","setOnTouchStartListener","_this8","_this9","evtTarget","_this10","_this11","BTooltip","localTitle","localContent","templateTitleContent","$_toolpop","updateContent","doOpen","doClose","Component","getComponent","$toolpop","onHide","onDisabled","onEnabled","setTitle","setContent","BVPopoverTemplate","titleDomProps","contentDomProps","BVPopover","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","BProgressBar","bvProgress","labelHtml","striped","animated","showProgress","progressBarClasses","computedStriped","computedAnimated","progressBarStyles","computedProgress","computedShowProgress","computedShowValue","ProgressPlugin","BProgress","progressHeight","renderHeader","noHeader","computedTile","renderHeaderTitle","$close","noHeaderClose","closeLabel","renderHeaderClose","renderBody","renderFooter","renderContent","renderBackdrop","backdrop","backdropVariant","onBackdropClick","SidebarPlugin","BSidebar","shadow","sidebarClass","noSlide","noCloseOnRouteChange","transitionProps","titleId","fullPath","$_returnFocusEl","handleToggle","handleSync","onTopTrapFocus","enforceFocus","onBottomTrapFocus","$sidebar","BSkeleton","BSkeletonIcon","iconProps","BSkeletonImg","noAspect","cardImg","hasListenerMixin","$events","_events","LIGHT","DARK","BTr","bvTableTr","bvTableRowGroup","inTbody","isTbody","inThead","isThead","inTfoot","isTfoot","isDark","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","busySlotName","busyMixin","localBusy","computedBusy","stopIfBusy","renderBusy","captionMixin","captionId","renderCaption","$caption","hasCaptionSlot","colgroupMixin","renderColgroup","$colgroup","emptyMixin","showEmpty","emptyText","emptyHtml","emptyFilteredText","emptyFilteredHtml","renderEmpty","computedItems","$empty","isFiltered","IGNORED_FIELD_KEYS","_rowVariant","_cellVariants","_showDetails","EVENT_FILTER","sanitizeRow","row","ignoreFields","includeFields","fieldsObj","formattedRow","field","filterByFormatted","allowedKeys","stringifyObjectValues","k","DEBOUNCE_DEPRECATED_MSG","filteringMixin","filterFunction","filterIgnoredFields","filterIncludedFields","filterDebounce","deprecated","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","itemsMixin","primaryKey","paginatedItems","sortedItems","sortBy","localSortBy","sortDesc","localSortDesc","apiUrl","newItems","getFieldFormatter","paginationMixin$1","localPaging","noProviderPaging","providerMixin","noProviderSorting","providerTriggerContext","_providerUpdate","refresh","clearSelected","_providerSetLocal","catch","SELECT_MODES","selectableMixin","selectable","selectMode","noSelectOnClick","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","SORT_DIRECTIONS","sortingMixin","sortDirection","sortCompare","sortCompareOptions","numeric","sortCompareLocale","sortNullLast","noSortReset","labelSortAsc","labelSortDesc","labelSortClear","noLocalSorting","noFooterSorting","sortIconLeft","localSorting","isSortable","sortable","sortOptions","usage","sortLocale","nullLast","sortByFormatted","localeOpts","aa","bb","localeCompare","defaultSortCompare","handleSort","isFoot","sortChanged","toggleLocalSortDesc","sortKey","sortTheadThClasses","b-table-sort-icon-left","sortTheadThAttrs","aria-sort","sortTheadThLabel","labelSorting","stackedMixin","isStackedAlways","stackedTableClasses","b-table-stacked","tableRendererMixin","bvTable","bordered","borderless","outlined","responsive","stickyHeader","noBorderCollapse","captionTop","tableClass","wrapperClasses","wrapperStyles","maxHeight","tableClasses","isTableSimple","table-striped","table-hover","table-dark","table-bordered","table-borderless","table-sm","b-table-fixed","b-table-caption-top","b-table-no-border-collapse","tableAttrs","selectableAttrs","ariaAttrs","aria-colcount","aria-rowcount","renderThead","renderTbody","renderTfoot","$table","tbodyTransitionProps","tbodyTransitionHandlers","BTbody","isTransitionGroup","tbodyAttrs","tbodyProps","nativeOn","TABLE_TAG_NAMES","filterEvent","textSelectionActive","containsNode","BTh","detailsSlotName","tbodyMixin","detailsTdClass","getTdValues","tdValue","defValue","getThValues","thValue","getFormattedValue","toggleDetailsFactory","hasDetailsSlot","rowHovered","tbodyRowEvtStopped","emitTbodyRowEvent","rowUnhovered","renderTbodyRowCell","colIndex","rowIndex","cellTag","isRowHeader","cellVariant","tdClass","aria-colindex","thAttr","tdAttr","unformatted","toggleDetails","detailsShowing","rowSelected","$_bodyFieldSlotNameCache","$childNodes","renderTbodyRow","tableStriped","rowShowDetails","hasRowClickHandler","$rows","detailsId","$tds","ariaRowIndex","primaryKeyValue","rowKey","rowId","selectableClasses","userTrClasses","userTrAttrs","data-pk","aria-details","aria-rowindex","detailsScope","$details","userDetailsTrClasses","userDetailsTrAttrs","tbodyClass","getTbodyTrs","refs","tbody","trs","itemRows","tr","getTbodyTrIndex","onTbodyRowKeydown","onTBodyRowClicked","onTbodyRowMiddleMouseRowClicked","which","onTbodyRowContextmenu","onTbodyRowDblClicked","$busy","defaultSlotName","fullName","lowerName","renderTopRow","handlers","auxclick","contextmenu","dblclick","BTfoot","tfootClasses","tfootAttrs","tfootMixin","footClone","footRowVariant","tfootClass","tfootTrClass","renderTFootCustom","BThead","theadClasses","theadAttrs","theadMixin","headRowVariant","theadClass","theadTrClass","fieldClasses","thClass","headClicked","hasHeadClickListener","makeCell","headerTitle","sortAttrs","sortClass","sortLabel","thStyle","abbr","headerAbbr","slotNames","column","$srLabel","$trs","topRowMixin","BTable","BTableLite","BTableSimple","TablePlugin","TableLitePlugin","TableSimplePlugin","BSkeletonTable","showFooter","tableProps","$th","$thTr","$td","$tdTr","$tbody","$thead","$tfoot","BSkeletonWrapper","loading","SkeletonPlugin","SpinnerPlugin","notDisabled","tab","BVTabButton","bvTabs","posInSet","setSize","handleEvt","_this$tab","localActive","titleItemClass","titleLinkClass","titleLinkAttributes","$link","activeNavItemClass","TabsPlugin","BTabs","card","noNavStyle","navClass","navWrapperClass","activeTabClass","currentTab","registeredTabs","isMounted","localNavClass","activateTab","previousTab","nextTab","updateTabs","registerTab","unregisterTab","self","tabsContainer","getTabs","_isTab","getButtonForTab","updateButton","$forceUpdate","tabEvt","deactivateTab","focusButton","emitTabClick","clickTab","firstTab","currentIndex","lastTab","activeTab","fallbackTab","controlledBy","first","last","nav","card-header","card-footer","col-auto","card-body","BTab","buttonId","tabClasses","computedNoFade","computedLazy","activate","deactivate","TimePlugin","Symbol","iterator","arr2","_arrayWithoutHoles","iter","_iterableToArray","_nonIterableSpread","inBrowser","acc","VuePlugin","transports","sources","wormhole","trackInstances","open","transport","passengers","_transport$order","Infinity","newTransport","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","temp","newPassengers","combinePassengers","noWrapper","vue-portal-target","_id$1","portalProps","targetProps","bail","mountTo","targetSlim","targetSlotProps","targetTag","portalTarget","mountEl","_props","ariaAtomic","DefaultTransition","BToaster","doRender","dead","staticName","Wormhole","$toaster","b-dead-toaster","$target","toaster","isStatus","appendToast","noAutoHide","autoHideDelay","solid","toastClass","BToast","isHiding","dismissStarted","resumeDismiss","bToastClasses","b-toast-solid","b-toast-append","b-toast-prepend","computedDuration","computedToaster","transitionHandlers","ensureToaster","$_dismissTimer","clearDismissTimer","setHoverHandler","startDismissTimer","onPause","onUnPause","passed","onLinkClick","hiddenEvt","makeToast","$headerContent","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","METHOD_POSITION","Default","throttle","DefaultType","objectToString","ScrollSpy","$scroller","$selector","$offsets","$targets","$activeTarget","$scrollHeight","$resizeTimeout","$scrollerObserver","$targetsObserver","$config","updateConfig","unlisten","cfg","componentName","configTypes","expectedTypes","valueType","_isVue","typeCheckConfig","Name","scroller","getScroller","setObservers","autoMethod","methodFn","offsetBase","getScrollTop","getScrollHeight","maxScroll","getOffsetHeight","links","dropdown","setActiveState","sibling","previousElementSibling","BV_SCROLLSPY","onlyDigitsRE","applyScrollspy","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","export const NAME = 'BvConfig'\nexport const PROP_NAME = '$bvConfig'\n\nexport const DEFAULT_BREAKPOINT = ['xs', 'sm', 'md', 'lg', 'xl']\n","import OurVue from '../vue'\nimport { setConfig } from './config-set'\nimport { hasWindowSupport, isJSDOM } from './env'\nimport { warn } from './warn'\n\n/**\n * Checks if there are multiple instances of Vue, and warns (once) about possible issues.\n * @param {object} Vue\n */\nexport const checkMultipleVue = (() => {\n let checkMultipleVueWarned = false\n\n const MULTIPLE_VUE_WARNING = [\n 'Multiple instances of Vue detected!',\n 'You may need to set up an alias for Vue in your bundler config.',\n 'See: https://bootstrap-vue.org/docs#using-module-bundlers'\n ].join('\\n')\n\n return Vue => {\n /* istanbul ignore next */\n if (!checkMultipleVueWarned && OurVue !== Vue && !isJSDOM) {\n warn(MULTIPLE_VUE_WARNING)\n }\n checkMultipleVueWarned = true\n }\n})()\n\n/**\n * Plugin install factory function.\n * @param {object} { components, directives }\n * @returns {function} plugin install function\n */\nexport const installFactory = ({ components, directives, plugins } = {}) => {\n const install = (Vue, config = {}) => {\n if (install.installed) {\n /* istanbul ignore next */\n return\n }\n install.installed = true\n checkMultipleVue(Vue)\n setConfig(config, Vue)\n registerComponents(Vue, components)\n registerDirectives(Vue, directives)\n registerPlugins(Vue, plugins)\n }\n\n install.installed = false\n\n return install\n}\n\n/**\n * Plugin install factory function (no plugin config option).\n * @param {object} { components, directives }\n * @returns {function} plugin install function\n */\nexport const installFactoryNoConfig = ({ components, directives, plugins } = {}) => {\n const install = Vue => {\n if (install.installed) {\n /* istanbul ignore next */\n return\n }\n install.installed = true\n checkMultipleVue(Vue)\n registerComponents(Vue, components)\n registerDirectives(Vue, directives)\n registerPlugins(Vue, plugins)\n }\n\n install.installed = false\n\n return install\n}\n\n/**\n * Plugin object factory function.\n * @param {object} { components, directives, plugins }\n * @returns {object} plugin install object\n */\nexport const pluginFactory = (options = {}, extend = {}) => ({\n ...extend,\n install: installFactory(options)\n})\n\n/**\n * Plugin object factory function (no config option).\n * @param {object} { components, directives, plugins }\n * @returns {object} plugin install object\n */\nexport const pluginFactoryNoConfig = (options = {}, extend = {}) => ({\n ...extend,\n install: installFactoryNoConfig(options)\n})\n\n/**\n * Load a group of plugins.\n * @param {object} Vue\n * @param {object} Plugin definitions\n */\nexport const registerPlugins = (Vue, plugins = {}) => {\n for (const plugin in plugins) {\n if (plugin && plugins[plugin]) {\n Vue.use(plugins[plugin])\n }\n }\n}\n\n/**\n * Load a component.\n * @param {object} Vue\n * @param {string} Component name\n * @param {object} Component definition\n */\nexport const registerComponent = (Vue, name, def) => {\n if (Vue && name && def) {\n Vue.component(name, def)\n }\n}\n\n/**\n * Load a group of components.\n * @param {object} Vue\n * @param {object} Object of component definitions\n */\nexport const registerComponents = (Vue, components = {}) => {\n for (const component in components) {\n registerComponent(Vue, component, components[component])\n }\n}\n\n/**\n * Load a directive.\n * @param {object} Vue\n * @param {string} Directive name\n * @param {object} Directive definition\n */\nexport const registerDirective = (Vue, name, def) => {\n if (Vue && name && def) {\n // Ensure that any leading V is removed from the\n // name, as Vue adds it automatically\n Vue.directive(name.replace(/^VB/, 'B'), def)\n }\n}\n\n/**\n * Load a group of directives.\n * @param {object} Vue\n * @param {object} Object of directive definitions\n */\nexport const registerDirectives = (Vue, directives = {}) => {\n for (const directive in directives) {\n registerDirective(Vue, directive, directives[directive])\n }\n}\n\n/**\n * Install plugin if window.Vue available\n * @param {object} Plugin definition\n */\nexport const vueUse = VuePlugin => {\n /* istanbul ignore next */\n if (hasWindowSupport && window.Vue) {\n window.Vue.use(VuePlugin)\n }\n /* istanbul ignore next */\n if (hasWindowSupport && VuePlugin.NAME) {\n window[VuePlugin.NAME] = VuePlugin\n }\n}\n","/**\n * Utilities to get information about the current environment\n */\n\n// --- Constants ---\n\nexport const hasWindowSupport = typeof window !== 'undefined'\nexport const hasDocumentSupport = typeof document !== 'undefined'\nexport const hasNavigatorSupport = typeof navigator !== 'undefined'\nexport const hasPromiseSupport = typeof Promise !== 'undefined'\n/* istanbul ignore next: JSDOM always returns false */\nexport const hasMutationObserverSupport =\n typeof MutationObserver !== 'undefined' ||\n typeof WebKitMutationObserver !== 'undefined' ||\n typeof MozMutationObserver !== 'undefined'\n\nexport const isBrowser = hasWindowSupport && hasDocumentSupport && hasNavigatorSupport\n\n// Browser type sniffing\nexport const userAgent = isBrowser ? window.navigator.userAgent.toLowerCase() : ''\n\nexport const isJSDOM = userAgent.indexOf('jsdom') > 0\nexport const isIE = /msie|trident/.test(userAgent)\n\n// Determine if the browser supports the option passive for events\nexport const hasPassiveEventSupport = (() => {\n let passiveEventSupported = false\n if (isBrowser) {\n try {\n const options = {\n get passive() {\n // This function will be called when the browser\n // attempts to access the passive property.\n /* istanbul ignore next: will never be called in JSDOM */\n passiveEventSupported = true\n }\n }\n window.addEventListener('test', options, options)\n window.removeEventListener('test', options, options)\n } catch (err) {\n /* istanbul ignore next: will never be called in JSDOM */\n passiveEventSupported = false\n }\n }\n return passiveEventSupported\n})()\n\nexport const hasTouchSupport =\n isBrowser && ('ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0)\n\nexport const hasPointerEventSupport =\n isBrowser && Boolean(window.PointerEvent || window.MSPointerEvent)\n\n/* istanbul ignore next: JSDOM only checks for 'IntersectionObserver' */\nexport const hasIntersectionObserverSupport =\n isBrowser &&\n 'IntersectionObserver' in window &&\n 'IntersectionObserverEntry' in window &&\n // Edge 15 and UC Browser lack support for `isIntersecting`\n // but we an use intersectionRatio > 0 instead\n // 'isIntersecting' in window.IntersectionObserverEntry.prototype &&\n 'intersectionRatio' in window.IntersectionObserverEntry.prototype\n\n// --- Getters ---\n\nexport const getEnv = (key, fallback = null) => {\n const env = typeof process !== 'undefined' && process ? process.env || {} : {}\n if (!key) {\n /* istanbul ignore next */\n return env\n }\n return env[key] || fallback\n}\n\nexport const getNoWarn = () =>\n getEnv('BOOTSTRAP_VUE_NO_WARN') || getEnv('NODE_ENV') === 'production'\n","/**\n * SSR safe types\n */\n\nimport { hasWindowSupport } from './env'\n\nconst w = hasWindowSupport ? window : {}\n\nexport const Element = hasWindowSupport ? w.Element : class Element extends Object {}\n\nexport const HTMLElement = hasWindowSupport ? w.HTMLElement : class HTMLElement extends Element {}\n\nexport const SVGElement = hasWindowSupport ? w.SVGElement : class SVGElement extends Element {}\n\nexport const File = hasWindowSupport ? w.File : class File extends Object {}\n","import { File } from './safe-types'\n\n// --- Convenience inspection utilities ---\n\nexport const toType = val => typeof val\n\nexport const toRawType = val => Object.prototype.toString.call(val).slice(8, -1)\n\nexport const toRawTypeLC = val => toRawType(val).toLowerCase()\n\nexport const isUndefined = val => val === undefined\n\nexport const isNull = val => val === null\n\nexport const isEmptyString = val => val === ''\n\nexport const isUndefinedOrNull = val => isUndefined(val) || isNull(val)\n\nexport const isUndefinedOrNullOrEmpty = val => isUndefinedOrNull(val) || isEmptyString(val)\n\nexport const isFunction = val => toType(val) === 'function'\n\nexport const isBoolean = val => toType(val) === 'boolean'\n\nexport const isString = val => toType(val) === 'string'\n\nexport const isNumber = val => toType(val) === 'number'\n\n// Is a value number like (i.e. a number or a number as string)\nexport const isNumeric = value => !isNaN(parseInt(value, 10))\n\nexport const isPrimitive = val => isBoolean(val) || isString(val) || isNumber(val)\n\nexport const isArray = val => Array.isArray(val)\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 = val => val instanceof Date\n\nexport const isEvent = val => val instanceof Event\n\nexport const isFile = val => val instanceof File\n\nexport const isRegExp = val => toRawType(val) === 'RegExp'\n\nexport const isPromise = val =>\n !isUndefinedOrNull(val) && isFunction(val.then) && isFunction(val.catch)\n","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/**\n * Shallow copy an object. If the passed in object\n * is null or undefined, returns an empty object\n */\nexport const clone = obj => ({ ...obj })\n\n/**\n * Return a shallow copy of object with the specified properties only\n * @link https://gist.github.com/bisubus/2da8af7e801ffd813fab7ac221aa7afc\n */\nexport const pick = (obj, props) =>\n keys(obj)\n .filter(key => props.indexOf(key) !== -1)\n .reduce((result, key) => ({ ...result, [key]: obj[key] }), {})\n\n/**\n * Return a shallow copy of object with the specified properties omitted\n * @link https://gist.github.com/bisubus/2da8af7e801ffd813fab7ac221aa7afc\n */\nexport const omit = (obj, props) =>\n keys(obj)\n .filter(key => props.indexOf(key) === -1)\n .reduce((result, key) => ({ ...result, [key]: obj[key] }), {})\n\n/**\n * Merges two object deeply together\n * @link https://gist.github.com/Salakar/1d7137de9cb8b704e48a\n */\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/**\n * Convenience method to create a read-only descriptor\n */\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\nexport default cloneDeep\n","// --- General ---\n\nexport const RX_ARRAY_NOTATION = /\\[(\\d+)]/g\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","const identity = x => x\n\nexport default identity\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 val = getRaw(obj, path)\n return isUndefinedOrNull(val) ? defaultValue : val\n}\n\nexport default get\n","import { isBrowser, hasPromiseSupport, hasMutationObserverSupport, getNoWarn } from './env'\n\n/**\n * Log a warning message to the console with BootstrapVue formatting\n * @param {string} message\n */\nexport const warn = (message, source = null) => /* istanbul ignore next */ {\n if (!getNoWarn()) {\n console.warn(`[BootstrapVue warn]: ${source ? `${source} - ` : ''}${message}`)\n }\n}\n\n/**\n * Warn when no Promise support is given\n * @param {string} source\n * @returns {boolean} warned\n */\nexport const warnNotClient = source => {\n /* istanbul ignore else */\n if (isBrowser) {\n return false\n } else {\n warn(`${source}: Can not be called during SSR.`)\n return true\n }\n}\n\n/**\n * Warn when no Promise support is given\n * @param {string} source\n * @returns {boolean} warned\n */\nexport const warnNoPromiseSupport = source => {\n /* istanbul ignore else */\n if (hasPromiseSupport) {\n return false\n } else {\n warn(`${source}: Requires Promise support.`)\n return true\n }\n}\n\n/**\n * Warn when no MutationObserver support is given\n * @param {string} source\n * @returns {boolean} warned\n */\nexport const warnNoMutationObserverSupport = source => {\n /* istanbul ignore else */\n if (hasMutationObserverSupport) {\n return false\n } else {\n warn(`${source}: Requires MutationObserver support.`)\n return true\n }\n}\n","import 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","export 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_COLLAPSE_HELPER = 'BVCollapse'\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_BUTTON_LABEL_CONTROL = 'BVFormBtnLabelControl'\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_RATING_STAR = 'BVFormRatingStar'\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_POPOVER_HELPER = 'BVPopover'\nexport const NAME_POPOVER_TEMPLATE = 'BVPopoverTemplate'\nexport const NAME_POPPER = 'BVPopper'\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_TAB_BUTTON_HELPER = 'BVTabButton'\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_TOAST_POP = 'BVToastPop'\nexport const NAME_TOOLTIP = 'BTooltip'\nexport const NAME_TOOLTIP_HELPER = 'BVTooltip'\nexport const NAME_TOOLTIP_TEMPLATE = 'BVTooltipTemplate'\nexport const NAME_TR = 'BTr'\nexport const NAME_TRANSITION = 'BVTransition'\nexport const NAME_TRANSPORTER_SINGLE = 'BTransporterSingle'\nexport const NAME_TRANSPORTER_TARGET_SINGLE = 'BTransporterTargetSingle'\n","import { create } from './object'\n\nconst memoize = fn => {\n const cache = create(null)\n\n return (...args) => {\n const argsKey = JSON.stringify(args)\n return (cache[argsKey] = cache[argsKey] || fn.apply(null, args))\n }\n}\n\nexport default memoize\n","import Vue from '../vue'\nimport { DEFAULT_BREAKPOINT, PROP_NAME } from '../constants/config'\nimport cloneDeep from './clone-deep'\nimport memoize from './memoize'\nimport { isFunction } from './inspect'\nimport { keys } from './object'\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\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((result, prop) => {\n const currentProp = props[prop]\n const defaultValue = currentProp.default\n\n result[prop] = {\n ...cloneDeep(currentProp),\n default() {\n return getComponentConfig(\n componentKey,\n prop,\n isFunction(defaultValue) ? defaultValue() : defaultValue\n )\n }\n }\n\n return result\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 createAndFillArray = (size, value) => Array(size).fill(value)\n\nexport const flatten = array => array.reduce((result, item) => result.concat(item), [])\n\nexport const flattenDeep = array =>\n array.reduce((result, item) => result.concat(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 { from as arrayFrom } from './array'\nimport { hasWindowSupport, hasDocumentSupport } from './env'\nimport { isFunction, isNull } from './inspect'\nimport { toFloat } from './number'\nimport { toString } from './string'\n\n// --- Constants ---\n\nconst TABABLE_SELECTOR = [\n 'button',\n '[href]:not(.disabled)',\n 'input',\n 'select',\n 'textarea',\n '[tabindex]',\n '[contenteditable]'\n]\n .map(s => `${s}:not(:disabled):not([disabled])`)\n .join(', ')\n\nconst w = hasWindowSupport ? window : {}\nconst d = hasDocumentSupport ? document : {}\nconst elProto = typeof Element !== 'undefined' ? Element.prototype : {}\n\n// --- Normalization utils ---\n\n// See: https://developer.mozilla.org/en-US/docs/Web/API/Element/matches#Polyfill\n/* istanbul ignore next */\nexport const matchesEl =\n elProto.matches || elProto.msMatchesSelector || elProto.webkitMatchesSelector\n\n// See: https://developer.mozilla.org/en-US/docs/Web/API/Element/closest\n/* istanbul ignore next */\nexport const closestEl =\n elProto.closest ||\n function(sel) {\n let el = this\n do {\n // Use our \"patched\" matches function\n if (matches(el, sel)) {\n return el\n }\n el = el.parentElement || el.parentNode\n } while (!isNull(el) && el.nodeType === Node.ELEMENT_NODE)\n return null\n }\n\n// `requestAnimationFrame()` convenience method\n/* istanbul ignore next: JSDOM always returns the first option */\nexport const requestAF =\n w.requestAnimationFrame ||\n w.webkitRequestAnimationFrame ||\n w.mozRequestAnimationFrame ||\n w.msRequestAnimationFrame ||\n w.oRequestAnimationFrame ||\n // Fallback, but not a true polyfill\n // Only needed for Opera Mini\n /* istanbul ignore next */\n (cb => setTimeout(cb, 16))\n\nexport const MutationObs =\n w.MutationObserver || w.WebKitMutationObserver || w.MozMutationObserver || null\n\n// --- Utils ---\n\n// Remove a node from DOM\nexport const removeNode = el => el && el.parentNode && el.parentNode.removeChild(el)\n\n// Determine if an element is an HTML element\nexport const isElement = el => !!(el && el.nodeType === Node.ELEMENT_NODE)\n\n// Get the currently active HTML element\nexport const getActiveElement = (excludes = []) => {\n const activeElement = d.activeElement\n return activeElement && !excludes.some(el => el === activeElement) ? activeElement : null\n}\n\n// Returns `true` if a tag's name equals `name`\nexport const isTag = (tag, name) => toString(tag).toLowerCase() === toString(name).toLowerCase()\n\n// Determine if an HTML element is the currently active element\nexport const isActiveElement = el => isElement(el) && el === getActiveElement()\n\n// Determine if an HTML element is visible - Faster than CSS check\nexport const isVisible = el => {\n if (!isElement(el) || !el.parentNode || !contains(d.body, el)) {\n // Note this can fail for shadow dom elements since they\n // are not a direct descendant of document.body\n return false\n }\n if (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 : d).querySelectorAll(selector))\n\n// Select a single element, returns `null` if not found\nexport const select = (selector, root) =>\n (isElement(root) ? root : d).querySelector(selector) || null\n\n// Determine if an element matches a selector\nexport const matches = (el, selector) => (isElement(el) ? matchesEl.call(el, selector) : false)\n\n// Finds closest element matching selector. Returns `null` if not found\nexport const closest = (selector, root, includeRoot = false) => {\n if (!isElement(root)) {\n return null\n }\n const el = closestEl.call(root, selector)\n\n // Native closest behaviour when `includeRoot` is truthy,\n // else emulate jQuery closest and return `null` if match is\n // the passed in root element when `includeRoot` is falsey\n return includeRoot ? el : el === root ? null : el\n}\n\n// Returns true if the parent element contains the child element\nexport const contains = (parent, child) =>\n parent && isFunction(parent.contains) ? parent.contains(child) : false\n\n// Get an element given an ID\nexport const getById = id => d.getElementById(/^#/.test(id) ? id.slice(1) : id) || null\n\n// Add a class to an element\nexport const addClass = (el, className) => {\n // We are checking for `el.classList` existence here since IE 11\n // returns `undefined` for some elements (e.g. SVG elements)\n // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2713\n if (className && isElement(el) && el.classList) {\n el.classList.add(className)\n }\n}\n\n// Remove a class from an element\nexport const removeClass = (el, className) => {\n // We are checking for `el.classList` existence here since IE 11\n // returns `undefined` for some elements (e.g. SVG elements)\n // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2713\n if (className && isElement(el) && el.classList) {\n el.classList.remove(className)\n }\n}\n\n// Test if an element has a class\nexport const hasClass = (el, className) => {\n // We are checking for `el.classList` existence here since IE 11\n // returns `undefined` for some elements (e.g. SVG elements)\n // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2713\n if (className && isElement(el) && el.classList) {\n return el.classList.contains(className)\n }\n return false\n}\n\n// Set an attribute on an element\nexport const setAttr = (el, attr, 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 => (hasWindowSupport && isElement(el) ? w.getComputedStyle(el) : {})\n\n// Returns a `Selection` object representing the range of text selected\n// Returns `null` if no window support is given\n/* istanbul ignore next: getSelection() doesn't work in JSDOM */\nexport const getSel = () => (hasWindowSupport && w.getSelection ? w.getSelection() : null)\n\n// Return an element's offset with respect to document element\n// https://j11y.io/jquery/#v=git&fn=jQuery.fn.offset\nexport const offset = el => /* istanbul ignore next: getBoundingClientRect(), getClientRects() doesn't work in JSDOM */ {\n const _offset = { top: 0, left: 0 }\n if (!isElement(el) || el.getClientRects().length === 0) {\n return _offset\n }\n const bcr = getBCR(el)\n if (bcr) {\n const win = el.ownerDocument.defaultView\n _offset.top = bcr.top + win.pageYOffset\n _offset.left = bcr.left + win.pageXOffset\n }\n return _offset\n}\n\n// Return an element's offset with respect to to its offsetParent\n// https://j11y.io/jquery/#v=git&fn=jQuery.fn.position\nexport const position = el => /* istanbul ignore next: getBoundingClientRect() doesn't work in JSDOM */ {\n let _offset = { top: 0, left: 0 }\n if (!isElement(el)) {\n return _offset\n }\n let parentOffset = { top: 0, left: 0 }\n const elStyles = getCS(el)\n if (elStyles.position === 'fixed') {\n _offset = getBCR(el) || _offset\n } else {\n _offset = offset(el)\n const doc = el.ownerDocument\n let offsetParent = el.offsetParent || doc.documentElement\n while (\n offsetParent &&\n (offsetParent === doc.body || offsetParent === doc.documentElement) &&\n getCS(offsetParent).position === 'static'\n ) {\n offsetParent = offsetParent.parentNode\n }\n if (offsetParent && offsetParent !== el && offsetParent.nodeType === Node.ELEMENT_NODE) {\n parentOffset = offset(offsetParent)\n const offsetParentStyles = getCS(offsetParent)\n parentOffset.top += toFloat(offsetParentStyles.borderTopWidth, 0)\n parentOffset.left += toFloat(offsetParentStyles.borderLeftWidth, 0)\n }\n }\n return {\n top: _offset.top - parentOffset.top - toFloat(elStyles.marginTop, 0),\n left: _offset.left - parentOffset.left - toFloat(elStyles.marginLeft, 0)\n }\n}\n\n// Find all tabable elements in the given element\n// Assumes users have not used `tabindex` > `0` on elements\nexport const getTabables = (rootEl = document) =>\n selectAll(TABABLE_SELECTOR, rootEl)\n .filter(isVisible)\n .filter(el => el.tabIndex > -1 && !el.disabled)\n\n// Attempt to focus an element, and return `true` if successful\nexport const attemptFocus = (el, options = {}) => {\n try {\n el.focus(options)\n } catch {}\n return isActiveElement(el)\n}\n\n// Attempt to blur an element, and return `true` if successful\nexport const attemptBlur = el => {\n try {\n el.blur()\n } catch {}\n return !isActiveElement(el)\n}\n","// 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 { isPlainObject } from './inspect'\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// @vue/component\nexport const BVTransition = /*#__PURE__*/ Vue.extend({\n name: NAME_TRANSITION,\n functional: true,\n props: {\n noFade: {\n // Only applicable to the built in transition\n // Has no effect if `trans-props` provided\n type: Boolean,\n default: false\n },\n appear: {\n // Has no effect if `trans-props` provided\n type: Boolean,\n default: false\n },\n mode: {\n // Can be overridden by user supplied trans-props\n type: String\n // default: undefined\n },\n // For user supplied transitions (if needed)\n transProps: {\n type: Object,\n default: null\n }\n },\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\nexport default BVTransition\n","export const SLOT_NAME_APPEND = 'append'\nexport const SLOT_NAME_BUTTON_CONTENT = 'button-content'\nexport const SLOT_NAME_DEFAULT = 'default'\nexport const SLOT_NAME_DESCRIPTION = 'description'\nexport const SLOT_NAME_FIRST = 'first'\nexport const SLOT_NAME_FOOTER = 'footer'\nexport const SLOT_NAME_HEADER = 'header'\nexport const SLOT_NAME_LABEL = 'label'\nexport const SLOT_NAME_LEAD = 'lead'\nexport const SLOT_NAME_PREPEND = 'prepend'\nexport const SLOT_NAME_TEXT = 'text'\nexport const SLOT_NAME_TITLE = 'title'\n","import identity from './identity'\nimport { concat } from './array'\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 */\nconst 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 */\nconst normalizeSlot = (names, scope = {}, $scopedSlots = {}, $slots = {}) => {\n // Ensure names is an array\n names = concat(names).filter(identity)\n let slot\n for (let i = 0; i < names.length && !slot; i++) {\n const name = names[i]\n slot = $scopedSlots[name] || $slots[name]\n }\n // Note: in Vue 2.6.x, all named slots are also scoped slots\n return isFunction(slot) ? slot(scope) : slot\n}\n\n// Named exports\nexport { hasNormalizedSlot, normalizeSlot }\n\n// Default export (backwards compatibility)\nexport default normalizeSlot\n","import { SLOT_NAME_DEFAULT } from '../constants/slot-names'\nimport { hasNormalizedSlot, normalizeSlot } from '../utils/normalize-slot'\nimport { concat } from '../utils/array'\n\nexport default {\n methods: {\n hasNormalizedSlot(name = SLOT_NAME_DEFAULT) {\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 return hasNormalizedSlot(name, this.$scopedSlots, this.$slots)\n },\n normalizeSlot(name = SLOT_NAME_DEFAULT, scope = {}) {\n // Returns an array of rendered VNodes if slot found.\n // Returns undefined if not found.\n // `name` can be a string name or an array of names\n const vNodes = normalizeSlot(name, scope, this.$scopedSlots, this.$slots)\n return vNodes ? concat(vNodes) : vNodes\n }\n }\n}\n","import { hasPassiveEventSupport } from './env'\nimport { isObject } from './inspect'\n\n// --- Utils ---\n\n// Normalize event options based on support of passive option\n// Exported only for testing purposes\nexport const parseEventOptions = options => {\n /* istanbul ignore else: can't test in JSDOM, as it supports passive */\n if (hasPassiveEventSupport) {\n return isObject(options) ? options : { capture: !!options || false }\n } else {\n // Need to translate to actual Boolean value\n return !!(isObject(options) ? options.capture : options)\n }\n}\n\n// Attach an event listener to an element\nexport const eventOn = (el, evtName, handler, options) => {\n if (el && el.addEventListener) {\n el.addEventListener(evtName, handler, parseEventOptions(options))\n }\n}\n\n// Remove an event listener from an element\nexport const eventOff = (el, evtName, handler, options) => {\n if (el && el.removeEventListener) {\n el.removeEventListener(evtName, handler, parseEventOptions(options))\n }\n}\n\n// Utility method to add/remove a event listener based on first argument (boolean)\n// It passes all other arguments to the `eventOn()` or `eventOff` method\nexport const eventOnOff = (on, ...args) => {\n const method = on ? eventOn : eventOff\n method(...args)\n}\n\n// Utility method to prevent the default event handling and propagation\nexport const stopEvent = (\n evt,\n { preventDefault = true, propagation = true, immediatePropagation = false } = {}\n) => {\n if (preventDefault) {\n evt.preventDefault()\n }\n if (propagation) {\n evt.stopPropagation()\n }\n if (immediatePropagation) {\n evt.stopImmediatePropagation()\n }\n}\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_BUTTON_CLOSE } from '../../constants/components'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slot-names'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { stopEvent } from '../../utils/events'\nimport { isEvent } from '../../utils/inspect'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\n\nconst props = makePropsConfigurable(\n {\n content: {\n type: String,\n default: '&times;'\n },\n disabled: {\n type: Boolean,\n default: false\n },\n ariaLabel: {\n type: String,\n default: 'Close'\n },\n textVariant: {\n type: String\n // `textVariant` is `undefined` to inherit the current text color\n // default: undefined\n }\n },\n NAME_BUTTON_CLOSE\n)\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(evt) {\n // Ensure click on button HTML content is also disabled\n /* istanbul ignore if: bug in JSDOM still emits click on inner element */\n if (props.disabled && isEvent(evt)) {\n stopEvent(evt)\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 return h(\n 'button',\n mergeData(data, componentData),\n normalizeSlot(SLOT_NAME_DEFAULT, {}, $scopedSlots, $slots)\n )\n }\n})\n","import Vue from '../../vue'\nimport { NAME_ALERT } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { requestAF } from '../../utils/dom'\nimport { isBoolean, isNumeric } from '../../utils/inspect'\nimport { toInteger } from '../../utils/number'\nimport BVTransition from '../../utils/bv-transition'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { BButtonClose } from '../button/button-close'\n\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// @vue/component\nexport const BAlert = /*#__PURE__*/ Vue.extend({\n name: NAME_ALERT,\n mixins: [normalizeSlotMixin],\n model: {\n prop: 'show',\n event: 'input'\n },\n props: makePropsConfigurable(\n {\n variant: {\n type: String,\n default: 'info'\n },\n dismissible: {\n type: Boolean,\n default: false\n },\n dismissLabel: {\n type: String,\n default: 'Close'\n },\n show: {\n type: [Boolean, Number, String],\n default: false\n },\n fade: {\n type: Boolean,\n default: false\n }\n },\n NAME_ALERT\n ),\n data() {\n return {\n countDown: 0,\n // If initially shown, we need to set these for SSR\n localShow: parseShow(this.show)\n }\n },\n watch: {\n show(newVal) {\n this.countDown = parseCountDown(newVal)\n this.localShow = parseShow(newVal)\n },\n countDown(newVal) {\n this.clearCountDownInterval()\n if (isNumeric(this.show)) {\n // Ignore if this.show transitions to a boolean value.\n this.$emit('dismiss-count-down', newVal)\n if (this.show !== newVal) {\n // Update the v-model if needed\n this.$emit('input', newVal)\n }\n if (newVal > 0) {\n this.localShow = true\n this.$_countDownTimeout = setTimeout(() => {\n this.countDown--\n }, 1000)\n } else {\n // Slightly delay the hide to allow any UI updates\n this.$nextTick(() => {\n requestAF(() => {\n this.localShow = false\n })\n })\n }\n }\n },\n localShow(newVal) {\n if (!newVal && (this.dismissible || isNumeric(this.show))) {\n // Only emit dismissed events for dismissible or auto dismissing alerts\n this.$emit('dismissed')\n }\n if (!isNumeric(this.show) && this.show !== newVal) {\n // Only emit booleans if we weren't passed a number via `this.show`\n this.$emit('input', newVal)\n }\n }\n },\n created() {\n // Create private non-reactive props\n this.$_filterTimer = null\n\n this.countDown = parseCountDown(this.show)\n this.localShow = parseShow(this.show)\n },\n mounted() {\n this.countDown = parseCountDown(this.show)\n this.localShow = parseShow(this.show)\n },\n beforeDestroy() {\n this.clearCountDownInterval()\n },\n methods: {\n dismiss() {\n this.clearCountDownInterval()\n this.countDown = 0\n this.localShow = false\n },\n clearCountDownInterval() {\n clearTimeout(this.$_countDownTimeout)\n this.$_countDownTimeout = null\n }\n },\n render(h) {\n let $alert // undefined\n if (this.localShow) {\n let $dismissBtn = h()\n if (this.dismissible) {\n // Add dismiss button\n $dismissBtn = h(\n BButtonClose,\n { attrs: { 'aria-label': this.dismissLabel }, on: { click: this.dismiss } },\n [this.normalizeSlot('dismiss')]\n )\n }\n $alert = h(\n 'div',\n {\n key: this._uid,\n staticClass: 'alert',\n class: {\n 'alert-dismissible': this.dismissible,\n [`alert-${this.variant}`]: this.variant\n },\n attrs: { role: 'alert', 'aria-live': 'polite', 'aria-atomic': true }\n },\n [$dismissBtn, this.normalizeSlot()]\n )\n $alert = [$alert]\n }\n return h(BVTransition, { props: { noFade: !this.fade } }, $alert)\n }\n})\n","import { BAlert } from './alert'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst AlertPlugin = /*#__PURE__*/ pluginFactory({\n components: { BAlert }\n})\n\nexport { AlertPlugin, BAlert }\n","// Math utilty functions\n\nexport const mathMin = Math.min\n\nexport const mathMax = Math.max\n\nexport const mathAbs = Math.abs\n\nexport const mathCeil = Math.ceil\n\nexport const mathFloor = Math.floor\n\nexport const mathPow = Math.pow\n\nexport const mathRound = Math.round\n","import Vue from '../../vue'\nimport { NAME_ASPECT } from '../../constants/components'\nimport { RX_ASPECT, RX_ASPECT_SEPARATOR } from '../../constants/regex'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { mathAbs } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\n// --- Constants ---\nconst CLASS_NAME = 'b-aspect'\n\n// --- Main Component ---\nexport const BAspect = /*#__PURE__*/ Vue.extend({\n name: NAME_ASPECT,\n mixins: [normalizeSlotMixin],\n props: makePropsConfigurable(\n {\n aspect: {\n // Accepts a number (i.e. `16 / 9`, `1`, `4 / 3`)\n // Or a string (i.e. '16/9', '16:9', '4:3' '1:1')\n type: [Number, String],\n default: '1:1'\n },\n tag: {\n type: String,\n default: 'div'\n }\n },\n NAME_ASPECT\n ),\n computed: {\n padding() {\n const aspect = this.aspect\n let ratio = 1\n if (RX_ASPECT.test(aspect)) {\n // Width and/or Height can be a decimal value below `1`, so\n // we only fallback to `1` if the value is `0` or `NaN`\n const [width, height] = aspect.split(RX_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 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 return h(this.tag, { staticClass: `${CLASS_NAME} d-flex` }, [$sizer, $content])\n }\n})\n","import { BAspect } from './aspect'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst AspectPlugin = /*#__PURE__*/ pluginFactory({\n components: { BAspect }\n})\n\nexport { AspectPlugin, BAspect }\n","import identity from './identity'\nimport { isArray, isObject } from './inspect'\nimport { clone, hasOwnProperty, keys } from './object'\nimport { lowerFirst, upperFirst } from './string'\n\n// Prefix a property\nexport const prefixPropName = (prefix, value) => prefix + upperFirst(value)\n\n// Remove a prefix from a property\nexport const unprefixPropName = (prefix, value) => lowerFirst(value.replace(prefix, ''))\n\n// Suffix can be a falsey value so nothing is appended to string\n// (helps when looping over props & some shouldn't change)\n// Use data last parameters to allow for currying\nexport const suffixPropName = (suffix, str) => str + (suffix ? upperFirst(suffix) : '')\n\n// Copies props from one array/object to a new array/object\n// Prop values are also cloned as new references to prevent possible\n// mutation of original prop object values\n// Optionally accepts a function to transform the prop name\nexport const copyProps = (props, transformFn = identity) => {\n if (isArray(props)) {\n return props.map(transformFn)\n }\n const copied = {}\n for (const prop in props) {\n /* istanbul ignore else */\n if (hasOwnProperty(props, prop)) {\n // If the prop value is an object, do a shallow clone\n // to prevent potential mutations to the original object\n copied[transformFn(prop)] = isObject(props[prop]) ? clone(props[prop]) : props[prop]\n }\n }\n return copied\n}\n\n// Given an array of properties or an object of property keys,\n// plucks all the values off the target object, returning a new object\n// that has props that reference the original prop values\nexport const pluckProps = (keysToPluck, objToPluck, transformFn = identity) =>\n (isArray(keysToPluck) ? keysToPluck.slice() : keys(keysToPluck)).reduce((memo, prop) => {\n memo[transformFn(prop)] = objToPluck[prop]\n return memo\n }, {})\n","import { 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 val = obj[key]\n if (isUndefined(val)) {\n return ''\n } else if (isNull(val)) {\n return encode(key)\n } else if (isArray(val)) {\n return val\n .reduce((results, val2) => {\n if (isNull(val2)) {\n results.push(encode(key))\n } else if (!isUndefined(val2)) {\n // Faster than string interpolation\n results.push(encode(key) + '=' + encode(val2))\n }\n return results\n }, [])\n .join('&')\n }\n // Faster than string interpolation\n return encode(key) + '=' + encode(val)\n })\n /* must check for length, as we only want to filter empty strings, not things that look falsey! */\n .filter(x => x.length > 0)\n .join('&')\n\n return query ? `?${query}` : ''\n}\n\nexport const parseQuery = query => {\n const parsed = {}\n query = toString(query)\n .trim()\n .replace(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 val = parts.length > 0 ? decode(parts.join('=')) : null\n\n if (isUndefined(parsed[key])) {\n parsed[key] = val\n } else if (isArray(parsed[key])) {\n parsed[key].push(val)\n } else {\n parsed[key] = [parsed[key], val]\n }\n })\n\n return parsed\n}\n\nexport const isLink = props => !!(props.href || props.to)\n\nexport const isRouterLink = tag => !!(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","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 */\nconst looseEqual = (a, b) => {\n if (a === b) {\n return true\n }\n let aValidType = isDate(a)\n let bValidType = isDate(b)\n if (aValidType || bValidType) {\n return aValidType && bValidType ? a.getTime() === b.getTime() : false\n }\n aValidType = isArray(a)\n bValidType = isArray(b)\n if (aValidType || bValidType) {\n return aValidType && bValidType ? compareArrays(a, b) : false\n }\n aValidType = isObject(a)\n bValidType = isObject(b)\n if (aValidType || bValidType) {\n /* istanbul ignore if: this if will probably never be called */\n if (!aValidType || !bValidType) {\n return false\n }\n const aKeysCount = keys(a).length\n const bKeysCount = keys(b).length\n if (aKeysCount !== bKeysCount) {\n return false\n }\n for (const key in a) {\n const aHasKey = hasOwnProperty(a, key)\n const bHasKey = hasOwnProperty(b, key)\n if ((aHasKey && !bHasKey) || (!aHasKey && bHasKey) || !looseEqual(a[key], b[key])) {\n return false\n }\n }\n }\n return String(a) === String(b)\n}\n\nexport default looseEqual\n","import 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 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 default makePropCacheMixin('$attrs', 'bvAttrs')\n","import { makePropCacheMixin } from '../utils/cache'\n\nexport default makePropCacheMixin('$listeners', 'bvListeners')\n","import Vue from '../../vue'\nimport { NAME_LINK } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { concat } from '../../utils/array'\n\nimport { attemptBlur, attemptFocus, isTag } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { isBoolean, isEvent, isFunction, isUndefined } from '../../utils/inspect'\nimport { pluckProps } from '../../utils/props'\nimport { computeHref, computeRel, computeTag, isRouterLink } from '../../utils/router'\nimport attrsMixin from '../../mixins/attrs'\nimport listenersMixin from '../../mixins/listeners'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\n// --- Props ---\n\n// <router-link> specific props\nexport const routerLinkProps = {\n to: {\n type: [String, Object],\n default: null\n },\n append: {\n type: Boolean,\n default: false\n },\n replace: {\n type: Boolean,\n default: false\n },\n event: {\n type: [String, Array],\n default: 'click'\n },\n activeClass: {\n type: String\n // default: undefined\n },\n exact: {\n type: Boolean,\n default: false\n },\n exactActiveClass: {\n type: String\n // default: undefined\n },\n routerTag: {\n type: String,\n default: 'a'\n }\n}\n\n// <nuxt-link> specific props\nexport const nuxtLinkProps = {\n prefetch: {\n type: Boolean,\n // Must be `null` to fall back to the value defined in the\n // `nuxt.config.js` configuration file for `router.prefetchLinks`\n // We convert `null` to `undefined`, so that Nuxt.js will use the\n // compiled default. Vue treats `undefined` as default of `false`\n // for Boolean props, so we must set it as `null` here to be a\n // true tri-state prop\n default: null\n },\n noPrefetch: {\n type: Boolean,\n default: false\n }\n}\n\nexport const props = makePropsConfigurable(\n {\n href: {\n type: String,\n default: null\n },\n rel: {\n type: String,\n // Must be `null` if no value provided\n default: null\n },\n target: {\n type: String,\n default: '_self'\n },\n active: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n ...routerLinkProps,\n ...nuxtLinkProps,\n // To support 3rd party router links based on `<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: {\n type: String\n // default: undefined\n }\n },\n NAME_LINK\n)\n\n// --- Main component ---\n// @vue/component\nexport const BLink = /*#__PURE__*/ Vue.extend({\n name: NAME_LINK,\n // Mixin order is important!\n mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n inheritAttrs: false,\n props,\n computed: {\n computedTag() {\n // We don't pass `this` as the first arg as we need reactivity of the props\n const { to, disabled, routerComponentName } = this\n return computeTag({ to, disabled, routerComponentName }, this)\n },\n isRouterLink() {\n return isRouterLink(this.computedTag)\n },\n computedRel() {\n // We don't pass `this` as the first arg as we need reactivity of the props\n 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(evt) {\n const evtIsEvent = isEvent(evt)\n const isRouterLink = this.isRouterLink\n const suppliedHandler = this.bvListeners.click\n if (evtIsEvent && this.disabled) {\n // Stop event from bubbling up\n // Kill the event loop attached to this specific `EventTarget`\n // Needed to prevent `vue-router` for doing its thing\n stopEvent(evt, { immediatePropagation: true })\n } else {\n /* istanbul ignore next: difficult to test, but we know it works */\n if (isRouterLink && evt.currentTarget.__vue__) {\n // Router links do not emit instance `click` events, so we\n // add in an `$emit('click', evt)` on its Vue instance\n evt.currentTarget.__vue__.$emit('click', evt)\n }\n // Call the suppliedHandler(s), if any provided\n concat(suppliedHandler)\n .filter(h => isFunction(h))\n .forEach(handler => {\n handler(...arguments)\n })\n // Emit the global `$root` click event\n this.$root.$emit('clicked::link', evt)\n }\n // Stop scroll-to-top behavior or navigation on\n // regular links when href is just '#'\n if (evtIsEvent && !isRouterLink && this.computedHref === '#') {\n stopEvent(evt, { 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 { concat } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { addClass, isTag, removeClass } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { isBoolean, isEvent, isFunction } from '../../utils/inspect'\nimport { omit } from '../../utils/object'\nimport { pluckProps } from '../../utils/props'\nimport { isLink as isLinkStrict } from '../../utils/router'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\ndelete linkProps.href.default\ndelete linkProps.to.default\n\nexport const props = makePropsConfigurable(\n {\n block: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n size: {\n type: String\n // default: null\n },\n variant: {\n type: String,\n default: 'secondary'\n },\n type: {\n type: String,\n default: 'button'\n },\n tag: {\n type: String,\n default: 'button'\n },\n pill: {\n type: Boolean,\n default: false\n },\n squared: {\n type: Boolean,\n default: false\n },\n pressed: {\n // Tri-state: `true`, `false` or `null`\n // => On, off, not a toggle\n type: Boolean,\n default: null\n },\n ...linkProps\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 = evt => {\n if (evt.type === 'focusin') {\n addClass(evt.target, 'focus')\n } else if (evt.type === 'focusout') {\n removeClass(evt.target, 'focus')\n }\n}\n\n// Is the requested button a link?\n// If tag prop is set to `a`, we use a <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// @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(evt) {\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 } = evt\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 = evt.currentTarget || evt.target\n stopEvent(evt, { propagation: false })\n target.click()\n }\n },\n click(evt) {\n /* istanbul ignore if: blink/button disabled should handle this */\n if (props.disabled && isEvent(evt)) {\n stopEvent(evt)\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, { mergeData } from '../../vue'\nimport { NAME_ICON_BASE } from '../../constants/components'\nimport identity from '../../utils/identity'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { mathMax } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\n\n// Common icon props (should be cloned/spread before using)\nexport const commonIconProps = {\n title: {\n type: String\n // default: null\n },\n variant: {\n type: String,\n default: null\n },\n fontScale: {\n type: [Number, String],\n default: 1\n },\n scale: {\n type: [Number, String],\n default: 1\n },\n rotate: {\n type: [Number, String],\n default: 0\n },\n flipH: {\n type: Boolean,\n default: false\n },\n flipV: {\n type: Boolean,\n default: false\n },\n shiftH: {\n type: [Number, String],\n default: 0\n },\n shiftV: {\n type: [Number, String],\n default: 0\n },\n animation: {\n type: String,\n default: null\n }\n}\n\n// Base attributes needed on all icons\nconst baseAttrs = {\n viewBox: '0 0 16 16',\n width: '1em',\n height: '1em',\n focusable: 'false',\n role: 'img',\n 'aria-label': 'icon'\n}\n\n// Attributes that are nulled out when stacked\nconst stackedAttrs = {\n width: null,\n height: null,\n focusable: null,\n role: null,\n 'aria-label': null\n}\n\n// Shared private base component to reduce bundle/runtime size\n// @vue/component\nexport const BVIconBase = /*#__PURE__*/ Vue.extend({\n name: NAME_ICON_BASE,\n functional: true,\n props: {\n content: {\n type: String\n },\n stacked: {\n type: Boolean,\n default: false\n },\n ...commonIconProps\n },\n render(h, { data, props, children }) {\n const fontScale = mathMax(toFloat(props.fontScale, 1), 0) || 1\n const scale = mathMax(toFloat(props.scale, 1), 0) || 1\n const rotate = toFloat(props.rotate, 0)\n const shiftH = toFloat(props.shiftH, 0)\n const shiftV = toFloat(props.shiftV, 0)\n const flipH = props.flipH\n const flipV = props.flipV\n const animation = props.animation\n // Compute the transforms\n // Note that order is important as SVG transforms are applied in order from\n // left to right and we want flipping/scale to occur before rotation\n // Note shifting is applied separately\n // Assumes that the viewbox is `0 0 16 16` (`8 8` is the center)\n const hasScale = flipH || flipV || scale !== 1\n const hasTransforms = hasScale || rotate\n const hasShift = shiftH || shiftV\n const transforms = [\n hasTransforms ? 'translate(8 8)' : null,\n hasScale ? `scale(${(flipH ? -1 : 1) * scale} ${(flipV ? -1 : 1) * scale})` : null,\n rotate ? `rotate(${rotate})` : null,\n hasTransforms ? 'translate(-8 -8)' : null\n ].filter(identity)\n\n // Handling stacked icons\n const isStacked = props.stacked\n const hasContent = !isUndefinedOrNull(props.content)\n\n // We wrap the content in a `<g>` for handling the transforms (except shift)\n let $inner = h(\n 'g',\n {\n attrs: { transform: transforms.join(' ') || null },\n domProps: hasContent ? { innerHTML: props.content || '' } : {}\n },\n children\n )\n\n // If needed, we wrap in an additional `<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 (isStacked) {\n // Wrap in an additional `<g>` for proper\n // animation handling if stacked\n $inner = h('g', {}, [$inner])\n }\n\n const $title = props.title ? h('title', props.title) : null\n\n return h(\n 'svg',\n mergeData(\n {\n staticClass: 'b-icon bi',\n class: {\n [`text-${props.variant}`]: !!props.variant,\n [`b-icon-animation-${animation}`]: !!animation\n },\n attrs: baseAttrs,\n style: isStacked ? {} : { fontSize: fontScale === 1 ? null : `${fontScale * 100}%` }\n },\n // Merge in user supplied data\n data,\n // If icon is stacked, null out some attrs\n isStacked ? { attrs: stackedAttrs } : {},\n // These cannot be overridden by users\n {\n attrs: {\n xmlns: isStacked ? null : 'http://www.w3.org/2000/svg',\n fill: 'currentColor'\n }\n }\n ),\n [$title, $inner]\n )\n }\n})\n","import Vue, { mergeData } from '../../vue'\nimport { kebabCase, pascalCase, trim } from '../../utils/string'\nimport { commonIconProps, BVIconBase } from './icon-base'\n\n/**\n * Icon component generator function\n *\n * @param {string} icon name (minus the leading `BIcon`)\n * @param {string} raw `innerHTML` for SVG\n * @return {VueComponent}\n */\nexport const makeIcon = (name, content) => {\n // For performance reason we pre-compute some values, so that\n // they are not computed on each render of the icon component\n const kebabName = kebabCase(name)\n const iconName = `BIcon${pascalCase(name)}`\n const iconNameClass = `bi-${kebabName}`\n const iconTitle = kebabName.replace(/-/g, ' ')\n const svgContent = trim(content || '')\n // Return the icon component definition\n return /*#__PURE__*/ Vue.extend({\n name: iconName,\n functional: true,\n props: {\n ...commonIconProps,\n stacked: {\n type: Boolean,\n default: false\n }\n },\n render(h, { data, props }) {\n return h(\n BVIconBase,\n mergeData(\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.1.0\n// @Generated: 2020-11-08T17:01:24.619Z\n//\n// This file is generated on each build. Do not edit this file!\n\n/*!\n * BootstrapVue Icons, generated from Bootstrap Icons 1.1.0\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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 { RX_ICON_PREFIX } from '../constants/regex'\nimport { makePropsConfigurable } from '../utils/config'\nimport { pascalCase, trim } from '../utils/string'\nimport { BIconBlank } from './icons'\nimport { commonIconProps } from './helpers/icon-base'\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// Helper BIcon component\n// Requires the requested icon component to be installed\nexport const BIcon = /*#__PURE__*/ Vue.extend({\n name: NAME_ICON,\n functional: true,\n props: makePropsConfigurable(\n {\n icon: {\n type: String,\n default: null\n },\n ...commonIconProps,\n stacked: {\n type: Boolean,\n default: false\n }\n },\n NAME_ICON\n ),\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","import Vue from '../../vue'\nimport { NAME_AVATAR } from '../../constants/components'\nimport { RX_NUMBER } from '../../constants/regex'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { isNumber, isString } from '../../utils/inspect'\nimport { toFloat } from '../../utils/number'\nimport { omit } from '../../utils/object'\nimport { pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { BButton } from '../button/button'\nimport { BLink, props as BLinkProps } from '../link/link'\nimport { BIcon } from '../../icons/icon'\nimport { BIconPersonFill } from '../../icons/icons'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\n// --- Constants ---\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// --- Utility methods ---\n\nexport const computeSize = value => {\n // Parse to number when value is a float-like string\n value = isString(value) && RX_NUMBER.test(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\n// --- Main component ---\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: makePropsConfigurable(\n {\n src: {\n type: String\n // default: null\n },\n text: {\n type: String\n // default: null\n },\n icon: {\n type: String\n // default: null\n },\n alt: {\n type: String,\n default: 'avatar'\n },\n variant: {\n type: String,\n default: 'secondary'\n },\n size: {\n type: [Number, String]\n // default: null\n },\n square: {\n type: Boolean,\n default: false\n },\n rounded: {\n type: [Boolean, String],\n default: false\n },\n button: {\n type: Boolean,\n default: false\n },\n buttonType: {\n type: String,\n default: 'button'\n },\n badge: {\n type: [Boolean, String],\n default: false\n },\n badgeVariant: {\n type: String,\n default: 'primary'\n },\n badgeTop: {\n type: Boolean,\n default: false\n },\n badgeLeft: {\n type: Boolean,\n default: false\n },\n badgeOffset: {\n type: String,\n default: '0px'\n },\n ...linkProps,\n ariaLabel: {\n type: String\n // default: null\n }\n },\n NAME_AVATAR\n ),\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(newSrc, oldSrc) {\n if (newSrc !== oldSrc) {\n this.localSrc = newSrc || null\n }\n }\n },\n methods: {\n onImgError(evt) {\n this.localSrc = null\n this.$emit('img-error', evt)\n },\n onClick(evt) {\n this.$emit('click', evt)\n }\n },\n render(h) {\n const {\n computedVariant: variant,\n disabled,\n computedRounded: rounded,\n icon,\n localSrc: src,\n text,\n fontStyle,\n marginStyle,\n computedSize: size,\n button,\n buttonType: type,\n badge,\n badgeVariant,\n badgeStyle\n } = this\n const link = !button && isLink(this)\n const tag = button ? BButton : link ? BLink : 'span'\n const alt = this.alt\n const ariaLabel = this.ariaLabel || null\n\n let $content = null\n if (this.hasNormalizedSlot()) {\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('span', { staticClass: 'b-avatar-text', style: fontStyle }, [h('span', text)])\n } else {\n // Fallback default avatar content\n $content = h(BIconPersonFill, { attrs: { 'aria-hidden': 'true', alt } })\n }\n\n let $badge = h()\n const hasBadgeSlot = this.hasNormalizedSlot('badge')\n if (badge || badge === '' || hasBadgeSlot) {\n const badgeText = badge === true ? '' : badge\n $badge = h(\n 'span',\n {\n staticClass: 'b-avatar-badge',\n class: { [`badge-${badgeVariant}`]: !!badgeVariant },\n style: badgeStyle\n },\n [hasBadgeSlot ? this.normalizeSlot('badge') : badgeText]\n )\n }\n\n const componentData = {\n staticClass: CLASS_NAME,\n class: {\n // 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 { 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_AVATAR_GROUP } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { mathMax, mathMin } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { computeSize } from './avatar'\n\n// --- Main component ---\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: makePropsConfigurable(\n {\n variant: {\n // Child avatars will prefer this variant over their own\n type: String,\n default: null\n },\n size: {\n // Child avatars will always use this over their own size\n type: String\n // default: null\n },\n overlap: {\n type: [Number, String],\n default: 0.3\n },\n square: {\n // Child avatars will prefer this prop (if set) over their own\n type: Boolean,\n default: false\n },\n rounded: {\n // Child avatars will prefer this prop (if set) over their own\n type: [Boolean, String],\n default: false\n },\n tag: {\n type: String,\n default: 'div'\n }\n },\n NAME_AVATAR_GROUP\n ),\n computed: {\n computedSize() {\n return computeSize(this.size)\n },\n overlapScale() {\n return mathMin(mathMax(toFloat(this.overlap, 0), 0), 1) / 2\n },\n paddingStyle() {\n let value = this.computedSize\n value = value ? `calc(${value} * ${this.overlapScale})` : null\n return value ? { paddingLeft: value, paddingRight: value } : {}\n }\n },\n render(h) {\n const $inner = h('div', { staticClass: 'b-avatar-group-inner', style: this.paddingStyle }, [\n this.normalizeSlot()\n ])\n\n return h(this.tag, { staticClass: 'b-avatar-group', attrs: { role: 'group' } }, [$inner])\n }\n})\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_BADGE } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { omit } from '../../utils/object'\nimport { pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\ndelete linkProps.href.default\ndelete linkProps.to.default\n\nexport const props = makePropsConfigurable(\n {\n tag: {\n type: String,\n default: 'span'\n },\n variant: {\n type: String,\n default: 'secondary'\n },\n pill: {\n type: Boolean,\n default: false\n },\n ...linkProps\n },\n NAME_BADGE\n)\n\n// --- Main component ---\n// @vue/component\nexport const BBadge = /*#__PURE__*/ Vue.extend({\n name: NAME_BADGE,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const link = isLink(props)\n const tag = link ? BLink : props.tag\n\n const componentData = {\n staticClass: 'badge',\n class: [\n props.variant ? `badge-${props.variant}` : 'badge-secondary',\n {\n 'badge-pill': props.pill,\n active: props.active,\n disabled: props.disabled\n }\n ],\n props: link ? pluckProps(linkProps, props) : {}\n }\n\n return h(tag, mergeData(data, componentData), children)\n }\n})\n","import { BBadge } from './badge'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst BadgePlugin = /*#__PURE__*/ pluginFactory({\n components: { BBadge }\n})\n\nexport { BadgePlugin, BBadge }\n","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 { makePropsConfigurable } from '../../utils/config'\nimport { htmlOrText } from '../../utils/html'\nimport { omit } from '../../utils/object'\nimport { pluckProps } from '../../utils/props'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n text: {\n type: String,\n default: null\n },\n html: {\n type: String,\n default: null\n },\n ariaCurrent: {\n type: String,\n default: 'location'\n },\n ...omit(BLinkProps, ['event', 'routerTag'])\n },\n NAME_BREADCRUMB_LINK\n)\n\n// --- Main component ---\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/config'\nimport { BBreadcrumbLink, props } from './breadcrumb-link'\n\n// @vue/component\nexport const BBreadcrumbItem = /*#__PURE__*/ Vue.extend({\n name: NAME_BREADCRUMB_ITEM,\n functional: true,\n props: makePropsConfigurable(props, NAME_BREADCRUMB_ITEM),\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 { makePropsConfigurable } from '../../utils/config'\nimport { isArray, isObject } from '../../utils/inspect'\nimport { toString } from '../../utils/string'\nimport { BBreadcrumbItem } from './breadcrumb-item'\n\nexport const props = makePropsConfigurable(\n {\n items: {\n type: Array,\n default: null\n }\n },\n NAME_BREADCRUMB\n)\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 let childNodes = children\n // Build child nodes from items if given.\n if (isArray(props.items)) {\n let activeDefined = false\n childNodes = props.items.map((item, idx) => {\n if (!isObject(item)) {\n item = { text: toString(item) }\n }\n // Copy the value here so we can normalize it.\n let active = item.active\n if (active) {\n activeDefined = true\n }\n if (!active && !activeDefined) {\n // Auto-detect active by position in list.\n active = idx + 1 === props.items.length\n }\n\n return h(BBreadcrumbItem, { props: { ...item, active } })\n })\n }\n\n return h('ol', mergeData(data, { staticClass: 'breadcrumb' }), childNodes)\n }\n})\n","import { BBreadcrumb } from './breadcrumb'\nimport { BBreadcrumbItem } from './breadcrumb-item'\nimport { BBreadcrumbLink } from './breadcrumb-link'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst BreadcrumbPlugin = /*#__PURE__*/ pluginFactory({\n components: { BBreadcrumb, BBreadcrumbItem, BBreadcrumbLink }\n})\n\nexport { BreadcrumbPlugin, BBreadcrumb, BBreadcrumbItem, BBreadcrumbLink }\n","import { BButton } from './button'\nimport { BButtonClose } from './button-close'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ButtonPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BButton,\n BBtn: BButton,\n BButtonClose,\n BBtnClose: BButtonClose\n }\n})\n\nexport { ButtonPlugin, BButton, BButtonClose }\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_BUTTON_GROUP } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { pick } from '../../utils/object'\nimport { props as buttonProps } from '../button/button'\n\nexport const props = makePropsConfigurable(\n {\n vertical: {\n type: Boolean,\n default: false\n },\n size: {\n type: String\n // default: null\n },\n tag: {\n type: String,\n default: 'div'\n },\n ariaRole: {\n type: String,\n default: 'group'\n },\n ...pick(buttonProps, ['size'])\n },\n NAME_BUTTON_GROUP\n)\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 { CODE_DOWN, CODE_LEFT, CODE_RIGHT, CODE_UP } from '../../constants/key-codes'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { attemptFocus, contains, isVisible, selectAll } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\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// --- Main component ---\n\n// @vue/component\nexport const BButtonToolbar = /*#__PURE__*/ Vue.extend({\n name: NAME_BUTTON_TOOLBAR,\n mixins: [normalizeSlotMixin],\n props: makePropsConfigurable(\n {\n justify: {\n type: Boolean,\n default: false\n },\n keyNav: {\n type: Boolean,\n default: false\n }\n },\n NAME_BUTTON_TOOLBAR\n ),\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(evt) {\n let items = this.getItems()\n const index = items.indexOf(evt.target)\n if (index > -1) {\n items = items.slice(0, index).reverse()\n attemptFocus(items[0])\n }\n },\n focusNext(evt) {\n let items = this.getItems()\n const index = items.indexOf(evt.target)\n if (index > -1) {\n items = items.slice(index + 1)\n attemptFocus(items[0])\n }\n },\n focusLast() {\n const items = this.getItems().reverse()\n attemptFocus(items[0])\n },\n onFocusin(evt) {\n const { $el } = this\n if (evt.target === $el && !contains($el, evt.relatedTarget)) {\n stopEvent(evt)\n this.focusFirst(evt)\n }\n },\n onKeydown(evt) {\n const { keyCode, shiftKey } = evt\n if (keyCode === CODE_UP || keyCode === CODE_LEFT) {\n stopEvent(evt)\n shiftKey ? this.focusFirst(evt) : this.focusPrev(evt)\n } else if (keyCode === CODE_DOWN || keyCode === CODE_RIGHT) {\n stopEvent(evt)\n shiftKey ? this.focusLast(evt) : this.focusNext(evt)\n }\n }\n },\n render(h) {\n return h(\n 'div',\n {\n staticClass: 'btn-toolbar',\n class: { 'justify-content-between': this.justify },\n attrs: {\n role: 'toolbar',\n tabindex: this.keyNav ? '0' : null\n },\n on: this.keyNav\n ? {\n focusin: this.onFocusin,\n keydown: this.onKeydown\n }\n : {}\n },\n [this.normalizeSlot()]\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 identity from './identity'\nimport { concat } from './array'\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\n\n// @vue/component\nexport default {\n props: {\n id: {\n type: String\n // default: null\n }\n },\n data() {\n return {\n localId_: null\n }\n },\n computed: {\n safeId() {\n // Computed property that returns a dynamic function for creating the ID\n // Reacts to changes in both `.id` and `.localId_` and regenerates a new function\n const id = this.id || this.localId_\n\n // We return a function that accepts an optional suffix string\n // So this computed prop looks and works like a method\n // but benefits from Vue's computed prop caching\n const fn = suffix => {\n if (!id) {\n return null\n }\n suffix = String(suffix || '').replace(/\\s+/g, '_')\n return suffix ? id + '_' + suffix : id\n }\n return fn\n }\n },\n mounted() {\n // `mounted()` only occurs client-side\n this.$nextTick(() => {\n // Update DOM with auto-generated ID after mount\n // to prevent SSR hydration errors\n this.localId_ = `__BVID__${this._uid}`\n })\n }\n}\n","import Vue from '../../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 {\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 identity from '../../utils/identity'\nimport looseEqual from '../../utils/loose-equal'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport {\n createDate,\n createDateFormatter,\n constrainDate,\n datesEqual,\n firstDateOfMonth,\n formatYMD,\n lastDateOfMonth,\n oneMonthAgo,\n oneMonthAhead,\n oneYearAgo,\n oneYearAhead,\n oneDecadeAgo,\n oneDecadeAhead,\n parseYMD,\n resolveLocale\n} from '../../utils/date'\nimport { attemptBlur, attemptFocus, requestAF } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { isArray, isPlainObject, isString, isUndefined } from '../../utils/inspect'\nimport { isLocaleRTL } from '../../utils/locale'\nimport { mathMax } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport { toString } from '../../utils/string'\nimport attrsMixin from '../../mixins/attrs'\nimport idMixin from '../../mixins/id'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport {\n BIconChevronLeft,\n BIconChevronDoubleLeft,\n BIconChevronBarLeft,\n BIconCircleFill\n} from '../../icons/icons'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n value: {\n type: [String, Date]\n // default: null\n },\n valueAsDate: {\n // Always return the `v-model` value as a date object\n type: Boolean,\n default: false\n },\n initialDate: {\n // This specifies the calendar year/month/day that will be shown when\n // first opening the datepicker if no v-model value is provided\n // Default is the current date (or `min`/`max`)\n type: [String, Date]\n // default: null\n },\n disabled: {\n type: Boolean,\n default: false\n },\n readonly: {\n type: Boolean,\n default: false\n },\n min: {\n type: [String, Date]\n // default: null\n },\n max: {\n type: [String, Date]\n // default: null\n },\n dateDisabledFn: {\n type: Function\n // default: null\n },\n startWeekday: {\n // `0` (Sunday), `1` (Monday), ... `6` (Saturday)\n // Day of week to start calendar on\n type: [Number, String],\n default: 0\n },\n locale: {\n // Locale(s) to use\n // Default is to use page/browser default setting\n type: [String, Array]\n // default: null\n },\n direction: {\n // 'ltr', 'rtl', or `null` (for auto detect)\n type: String\n // default: null\n },\n selectedVariant: {\n // Variant color to use for the selected date\n type: String,\n default: 'primary'\n },\n todayVariant: {\n // Variant color to use for today's date (defaults to `selectedVariant`)\n type: String\n // default: null\n },\n navButtonVariant: {\n // Variant color to use for the navigation buttons\n type: String,\n default: 'secondary'\n },\n noHighlightToday: {\n // Disable highlighting today's date\n type: Boolean,\n default: false\n },\n dateInfoFn: {\n // Function to set a class of (classes) on the date cell\n // if passed a string or an array\n // TODO:\n // If the function returns an object, look for class prop for classes,\n // and other props for handling events/details/descriptions\n type: Function\n // default: null\n },\n width: {\n // Has no effect if prop `block` is set\n type: String,\n default: '270px'\n },\n block: {\n // Makes calendar the full width of its parent container\n type: Boolean,\n default: false\n },\n hideHeader: {\n // When true makes the selected date header `sr-only`\n type: Boolean,\n default: false\n },\n showDecadeNav: {\n // When `true` enables the decade navigation buttons\n type: Boolean,\n default: false\n },\n hidden: {\n // When `true`, renders a comment node, but keeps the component instance active\n // Mainly for <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 type: Boolean,\n default: false\n },\n ariaControls: {\n type: String\n // default: null\n },\n noKeyNav: {\n type: Boolean,\n default: false\n },\n roleDescription: {\n type: String\n // default: null\n },\n // Labels for buttons and keyboard shortcuts\n labelPrevDecade: {\n type: String,\n default: 'Previous decade'\n },\n labelPrevYear: {\n type: String,\n default: 'Previous year'\n },\n labelPrevMonth: {\n type: String,\n default: 'Previous month'\n },\n labelCurrentMonth: {\n type: String,\n default: 'Current month'\n },\n labelNextMonth: {\n type: String,\n default: 'Next month'\n },\n labelNextYear: {\n type: String,\n default: 'Next year'\n },\n labelNextDecade: {\n type: String,\n default: 'Next decade'\n },\n labelToday: {\n type: String,\n default: 'Today'\n },\n labelSelected: {\n type: String,\n default: 'Selected date'\n },\n labelNoDateSelected: {\n type: String,\n default: 'No date selected'\n },\n labelCalendar: {\n type: String,\n default: 'Calendar'\n },\n labelNav: {\n type: String,\n default: 'Calendar navigation'\n },\n labelHelp: {\n type: String,\n default: 'Use cursor keys to navigate calendar dates'\n },\n dateFormatOptions: {\n // `Intl.DateTimeFormat` object\n // Note: This value is *not* to be placed in the global config\n type: Object,\n default: () => ({\n year: DATE_FORMAT_NUMERIC,\n month: CALENDAR_LONG,\n day: DATE_FORMAT_NUMERIC,\n weekday: CALENDAR_LONG\n })\n },\n weekdayHeaderFormat: {\n // Format of the weekday names at the top of the calendar\n // Note: This value is *not* to be placed in the global config\n type: String,\n // `short` is typically a 3 letter abbreviation,\n // `narrow` is typically a single letter\n // `long` is the full week day name\n // Although some locales may override this (i.e `ar`, etc.)\n default: CALENDAR_SHORT,\n validator(value) {\n return arrayIncludes([CALENDAR_LONG, CALENDAR_SHORT, CALENDAR_NARROW], value)\n }\n }\n },\n NAME_CALENDAR\n)\n\n// --- Main component ---\n// @vue/component\nexport const BCalendar = Vue.extend({\n name: NAME_CALENDAR,\n // Mixin order is important!\n mixins: [attrsMixin, idMixin, normalizeSlotMixin],\n model: {\n // Even though this is the default that Vue assumes, we need\n // to add it for the docs to reflect that this is the model\n // And also for some validation libraries to work\n prop: 'value',\n event: 'input'\n },\n props,\n data() {\n const selected = formatYMD(this.value) || ''\n return {\n // Selected date\n selectedYMD: selected,\n // Date in calendar grid that has `tabindex` of `0`\n activeYMD:\n selected ||\n formatYMD(constrainDate(this.initialDate || this.getToday()), this.min, this.max),\n // Will be true if the calendar grid has/contains focus\n gridHasFocus: false,\n // Flag to enable the `aria-live` region(s) after mount\n // to prevent screen reader \"outbursts\" when mounting\n isLive: false\n }\n },\n computed: {\n valueId() {\n return this.safeId()\n },\n widgetId() {\n return this.safeId('_calendar-wrapper_')\n },\n navId() {\n return this.safeId('_calendar-nav_')\n },\n gridId() {\n return this.safeId('_calendar-grid_')\n },\n gridCaptionId() {\n return this.safeId('_calendar-grid-caption_')\n },\n gridHelpId() {\n return this.safeId('_calendar-grid-help_')\n },\n activeId() {\n return this.activeYMD ? this.safeId(`_cell-${this.activeYMD}_`) : null\n },\n // TODO: Use computed props to convert `YYYY-MM-DD` to `Date` object\n selectedDate() {\n // Selected as a `Date` object\n return parseYMD(this.selectedYMD)\n },\n activeDate() {\n // Active as a `Date` object\n return parseYMD(this.activeYMD)\n },\n computedMin() {\n return parseYMD(this.min)\n },\n computedMax() {\n return parseYMD(this.max)\n },\n computedWeekStarts() {\n // `startWeekday` is a prop (constrained to `0` through `6`)\n return mathMax(toInteger(this.startWeekday, 0), 0) % 7\n },\n computedLocale() {\n // Returns the resolved locale used by the calendar\n return resolveLocale(concat(this.locale).filter(identity), CALENDAR_GREGORY)\n },\n computedDateDisabledFn() {\n const { dateDisabledFn } = this\n let result = null\n try {\n result = dateDisabledFn()\n } catch {}\n return isUndefined(result) ? () => false : dateDisabledFn\n },\n // TODO: Change `dateInfoFn` to handle events and notes as well as classes\n computedDateInfoFn() {\n const { dateInfoFn } = this\n let result = null\n try {\n result = dateInfoFn()\n } catch {}\n return isUndefined(result) ? () => ({}) : 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 value(newVal, oldVal) {\n const selected = formatYMD(newVal) || ''\n const old = formatYMD(oldVal) || ''\n if (!datesEqual(selected, old)) {\n this.activeYMD = selected || this.activeYMD\n this.selectedYMD = selected\n }\n },\n selectedYMD(newYMD, oldYMD) {\n // TODO:\n // Should we compare to `formatYMD(this.value)` and emit\n // only if they are different?\n if (newYMD !== oldYMD) {\n this.$emit('input', this.valueAsDate ? parseYMD(newYMD) || null : newYMD || '')\n }\n },\n context(newVal, oldVal) {\n if (!looseEqual(newVal, oldVal)) {\n this.$emit('context', newVal)\n }\n },\n hidden(newVal) {\n // Reset the active focused day when hidden\n this.activeYMD =\n this.selectedYMD ||\n formatYMD(this.value || this.constrainDate(this.initialDate || this.getToday()))\n // Enable/disable the live regions\n this.setLive(!newVal)\n }\n },\n created() {\n this.$nextTick(() => {\n this.$emit('context', this.context)\n })\n },\n mounted() {\n this.setLive(true)\n },\n /* istanbul ignore next */\n activated() {\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('selected', formatYMD(date) || '', parseYMD(date) || null)\n })\n },\n // Event handlers\n setGridFocusFlag(evt) {\n // Sets the gridHasFocus flag to make date \"button\" look focused\n this.gridHasFocus = !this.disabled && evt.type === 'focus'\n },\n onKeydownWrapper(evt) {\n // Calendar keyboard navigation\n // Handles PAGEUP/PAGEDOWN/END/HOME/LEFT/UP/RIGHT/DOWN\n // Focuses grid after updating\n if (this.noKeyNav) {\n /* istanbul ignore next */\n return\n }\n const { altKey, ctrlKey, keyCode } = evt\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(evt)\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(evt) {\n // Pressing enter/space on grid to select active date\n const keyCode = evt.keyCode\n const activeDate = this.activeDate\n if (keyCode === CODE_ENTER || keyCode === CODE_SPACE) {\n stopEvent(evt)\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('nav-prev-decade', navScope) ||\n h(BIconChevronBarLeft, { props: navPrevProps })\n const $prevYearIcon =\n this.normalizeSlot('nav-prev-year', navScope) ||\n h(BIconChevronDoubleLeft, { props: navPrevProps })\n const $prevMonthIcon =\n this.normalizeSlot('nav-prev-month', navScope) || h(BIconChevronLeft, { props: navPrevProps })\n const $thisMonthIcon =\n this.normalizeSlot('nav-this-month', navScope) || h(BIconCircleFill, { props: navProps })\n const $nextMonthIcon =\n this.normalizeSlot('nav-next-month', navScope) || h(BIconChevronLeft, { props: navNextProps })\n const $nextYearIcon =\n this.normalizeSlot('nav-next-year', navScope) ||\n h(BIconChevronDoubleLeft, { props: navNextProps })\n const $nextDecadeIcon =\n this.normalizeSlot('nav-next-decade', navScope) ||\n h(BIconChevronBarLeft, { props: navNextProps })\n\n // Utility to create the date navigation buttons\n const makeNavBtn = (content, label, handler, btnDisabled, shortcut) => {\n return h(\n 'button',\n {\n staticClass: 'btn btn-sm 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 key: 'grid-caption',\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 },\n this.formatYearMonth(this.calendarFirstDay)\n )\n\n // Calendar weekday headings\n const $gridWeekDays = h(\n 'div',\n {\n staticClass: 'b-calendar-grid-weekdays row no-gutters border-bottom',\n attrs: { 'aria-hidden': 'true' }\n },\n this.calendarHeadings.map((d, idx) => {\n return h(\n 'small',\n {\n key: idx,\n staticClass: 'col text-truncate',\n class: { 'text-muted': disabled },\n attrs: {\n title: d.label === d.text ? null : d.label,\n 'aria-label': d.label\n }\n },\n d.text\n )\n })\n )\n\n // Calendar day grid\n let $gridBody = this.calendar.map(week => {\n const $cells = week.map((day, dIndex) => {\n const isSelected = day.ymd === selectedYMD\n const isActive = day.ymd === activeYMD\n const isToday = day.ymd === todayYMD\n const idCell = safeId(`_cell-${day.ymd}_`)\n // \"fake\" button\n const $btn = h(\n 'span',\n {\n staticClass: 'btn border-0 rounded-circle text-nowrap',\n // Should we add some classes to signify if today/selected/etc?\n class: {\n // Give the fake button a focus ring\n focus: isActive && this.gridHasFocus,\n // Styling\n disabled: day.isDisabled || disabled,\n active: isSelected, // makes the button look \"pressed\"\n // Selected date style (need to computed from variant)\n [this.computedVariant]: isSelected,\n // Today day style (if not selected), same variant color as selected date\n [this.computedTodayVariant]:\n isToday && highlightToday && !isSelected && day.isThisMonth,\n // Non selected/today styling\n 'btn-outline-light': !(isToday && highlightToday) && !isSelected && !isActive,\n 'btn-light': !(isToday && highlightToday) && !isSelected && isActive,\n // Text styling\n 'text-muted': !day.isThisMonth && !isSelected,\n 'text-dark':\n !(isToday && highlightToday) && !isSelected && !isActive && day.isThisMonth,\n 'font-weight-bold': (isSelected || day.isThisMonth) && !day.isDisabled\n },\n on: { click: () => this.onClickDay(day) }\n },\n day.day\n )\n return h(\n 'div', // Cell with button\n {\n key: dIndex,\n staticClass: 'col p-0',\n class: day.isDisabled ? 'bg-light' : day.info.class || '',\n attrs: {\n id: idCell,\n role: 'button',\n 'data-date': day.ymd, // Primarily for testing purposes\n // Only days in the month are presented as buttons to screen readers\n 'aria-hidden': day.isThisMonth ? null : 'true',\n 'aria-disabled': day.isDisabled || disabled ? 'true' : null,\n 'aria-label': [\n day.label,\n isSelected ? `(${this.labelSelected})` : null,\n isToday ? `(${this.labelToday})` : null\n ]\n .filter(identity)\n .join(' '),\n // NVDA doesn't convey `aria-selected`, but does `aria-current`,\n // ChromeVox doesn't convey `aria-current`, but does `aria-selected`,\n // so we set both attributes for robustness\n 'aria-selected': isSelected ? 'true' : null,\n 'aria-current': isSelected ? 'date' : null\n }\n },\n [$btn]\n )\n })\n // Return the week \"row\"\n // We use the first day of the weeks YMD value as a\n // key for efficient DOM patching / element re-use\n return h('div', { key: week[0].ymd, staticClass: 'row no-gutters' }, $cells)\n })\n $gridBody = h(\n 'div',\n {\n // A key is only required on the body if we add in transition support\n // key: this.activeYMD.slice(0, -3),\n staticClass: 'b-calendar-grid-body',\n style: disabled ? { pointerEvents: 'none' } : {}\n },\n $gridBody\n )\n\n const $gridHelp = h(\n 'footer',\n {\n staticClass: 'b-calendar-grid-help border-top small text-muted text-center bg-light',\n attrs: {\n id: gridHelpId\n }\n },\n [h('div', { staticClass: 'small' }, this.labelHelp)]\n )\n\n const $grid = h(\n 'div',\n {\n ref: 'grid',\n staticClass: 'b-calendar-grid form-control h-auto text-center',\n attrs: {\n id: gridId,\n role: 'application',\n tabindex: 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 },\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 { NAME_CARD } from '../constants/components'\nimport { makePropsConfigurable } from '../utils/config'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n tag: {\n type: String,\n default: 'div'\n },\n bgVariant: {\n type: String\n // default: null\n },\n borderVariant: {\n type: String\n // default: null\n },\n textVariant: {\n type: String\n // default: null\n }\n },\n NAME_CARD\n)\n\n// --- Mixin ---\n// @vue/component\nexport default {\n props\n}\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_CARD_TITLE } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { toString } from '../../utils/string'\n\nexport const props = makePropsConfigurable(\n {\n title: {\n type: String\n // default: null\n },\n titleTag: {\n type: String,\n default: 'h4'\n }\n },\n NAME_CARD_TITLE\n)\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 { makePropsConfigurable } from '../../utils/config'\nimport { toString } from '../../utils/string'\n\nexport const props = makePropsConfigurable(\n {\n subTitle: {\n type: String\n // default: null\n },\n subTitleTag: {\n type: String,\n default: 'h6'\n },\n subTitleTextVariant: {\n type: String,\n default: 'muted'\n }\n },\n NAME_CARD_SUB_TITLE\n)\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 { makePropsConfigurable } from '../../utils/config'\nimport { copyProps, pluckProps, prefixPropName } from '../../utils/props'\nimport { props as cardProps } from '../../mixins/card'\nimport { BCardTitle, props as titleProps } from './card-title'\nimport { BCardSubTitle, props as subTitleProps } from './card-sub-title'\n\nexport const props = makePropsConfigurable(\n {\n // Import common card props and prefix them with `body-`\n ...copyProps(cardProps, prefixPropName.bind(null, 'body')),\n bodyClass: {\n type: [String, Object, Array]\n // default: null\n },\n ...titleProps,\n ...subTitleProps,\n overlay: {\n type: Boolean,\n default: false\n }\n },\n NAME_CARD_BODY\n)\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 let cardTitle = h()\n let cardSubTitle = h()\n const cardContent = children || [h()]\n\n if (props.title) {\n cardTitle = h(BCardTitle, { props: pluckProps(titleProps, props) })\n }\n\n if (props.subTitle) {\n cardSubTitle = h(BCardSubTitle, {\n props: pluckProps(subTitleProps, props),\n class: ['mb-2']\n })\n }\n\n return h(\n props.bodyTag,\n mergeData(data, {\n staticClass: 'card-body',\n class: [\n {\n 'card-img-overlay': props.overlay,\n [`bg-${props.bodyBgVariant}`]: props.bodyBgVariant,\n [`border-${props.bodyBorderVariant}`]: props.bodyBorderVariant,\n [`text-${props.bodyTextVariant}`]: props.bodyTextVariant\n },\n props.bodyClass || {}\n ]\n }),\n [cardTitle, cardSubTitle, ...cardContent]\n )\n }\n})\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_CARD_HEADER } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { htmlOrText } from '../../utils/html'\nimport { copyProps, prefixPropName } from '../../utils/props'\nimport { props as cardProps } from '../../mixins/card'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n ...copyProps(cardProps, prefixPropName.bind(null, 'header')),\n header: {\n type: String\n // default: null\n },\n headerHtml: {\n type: String\n // default: null\n },\n headerClass: {\n type: [String, Object, Array]\n // default: null\n }\n },\n NAME_CARD_HEADER\n)\n\n// --- Main component ---\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 { makePropsConfigurable } from '../../utils/config'\nimport { htmlOrText } from '../../utils/html'\nimport { copyProps, prefixPropName } from '../../utils/props'\nimport { props as cardProps } from '../../mixins/card'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n ...copyProps(cardProps, prefixPropName.bind(null, 'footer')),\n footer: {\n type: String\n // default: null\n },\n footerHtml: {\n type: String\n // default: null\n },\n footerClass: {\n type: [String, Object, Array]\n // default: null\n }\n },\n NAME_CARD_FOOTER\n)\n\n// --- Main component ---\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_CARD_IMG } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\n\nexport const props = makePropsConfigurable(\n {\n src: {\n type: String,\n required: true\n },\n alt: {\n type: String,\n default: null\n },\n top: {\n type: Boolean,\n default: false\n },\n bottom: {\n type: Boolean,\n default: false\n },\n start: {\n type: Boolean,\n default: false\n },\n left: {\n // alias of 'start'\n type: Boolean,\n default: false\n },\n end: {\n type: Boolean,\n default: false\n },\n right: {\n // alias of 'end'\n type: Boolean,\n default: false\n },\n height: {\n type: [Number, String]\n // default: null\n },\n width: {\n type: [Number, String]\n // default: null\n }\n },\n NAME_CARD_IMG\n)\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 let baseClass = 'card-img'\n if (props.top) {\n baseClass += '-top'\n } else if (props.right || props.end) {\n baseClass += '-right'\n } else if (props.bottom) {\n baseClass += '-bottom'\n } else if (props.left || props.start) {\n baseClass += '-left'\n }\n\n return h(\n 'img',\n mergeData(data, {\n class: [baseClass],\n attrs: {\n src: props.src || null,\n alt: props.alt,\n height: props.height || null,\n width: props.width || null\n }\n })\n )\n }\n})\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_CARD } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_FOOTER, SLOT_NAME_HEADER } from '../../constants/slot-names'\nimport { htmlOrText } from '../../utils/html'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport { copyProps, pluckProps, prefixPropName, unprefixPropName } from '../../utils/props'\nimport { props as cardProps } from '../../mixins/card'\nimport { BCardBody, props as bodyProps } from './card-body'\nimport { BCardHeader, props as headerProps } from './card-header'\nimport { BCardFooter, props as footerProps } from './card-footer'\nimport { BCardImg, props as imgProps } from './card-img'\n\n// --- Props ---\n\nconst cardImgProps = copyProps(imgProps, prefixPropName.bind(null, 'img'))\ncardImgProps.imgSrc.required = false\n\nexport const props = makePropsConfigurable(\n {\n ...bodyProps,\n ...headerProps,\n ...footerProps,\n ...cardImgProps,\n ...cardProps,\n align: {\n type: String\n // default: null\n },\n noBody: {\n type: Boolean,\n default: false\n }\n },\n NAME_CARD\n)\n\n// --- Main component ---\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(headerProps, 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(bodyProps, 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(footerProps, 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 looseEqual from '../../utils/loose-equal'\nimport { requestAF } from '../../utils/dom'\nimport { isFunction } from '../../utils/inspect'\nimport { clone, keys } from '../../utils/object'\n\nconst OBSERVER_PROP_NAME = '__bv__visibility_observer'\n\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, { mergeData } from '../../vue'\nimport { NAME_IMG } from '../../constants/components'\nimport identity from '../../utils/identity'\nimport { concat } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { isString } from '../../utils/inspect'\nimport { toInteger } from '../../utils/number'\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\nexport const props = makePropsConfigurable(\n {\n src: {\n type: String\n // default: null\n },\n srcset: {\n type: [String, Array]\n // default: null\n },\n sizes: {\n type: [String, Array]\n // default: null\n },\n alt: {\n type: String,\n default: null\n },\n width: {\n type: [Number, String]\n // default: null\n },\n height: {\n type: [Number, String]\n // default: null\n },\n block: {\n type: Boolean,\n default: false\n },\n fluid: {\n type: Boolean,\n default: false\n },\n fluidGrow: {\n // Gives fluid images class `w-100` to make them grow to fit container\n type: Boolean,\n default: false\n },\n rounded: {\n // rounded can be:\n // false: no rounding of corners\n // true: slightly rounded corners\n // 'top': top corners rounded\n // 'right': right corners rounded\n // 'bottom': bottom corners rounded\n // 'left': left corners rounded\n // 'circle': circle/oval\n // '0': force rounding off\n type: [Boolean, String],\n default: false\n },\n thumbnail: {\n type: Boolean,\n default: false\n },\n left: {\n type: Boolean,\n default: false\n },\n right: {\n type: Boolean,\n default: false\n },\n center: {\n type: Boolean,\n default: false\n },\n blank: {\n type: Boolean,\n default: false\n },\n blankColor: {\n type: String,\n default: 'transparent'\n }\n },\n NAME_IMG\n)\n\n// --- Helper methods ---\n\nconst makeBlankImgSrc = (width, height, color) => {\n const src = encodeURIComponent(\n BLANK_TEMPLATE.replace('%{w}', toString(width))\n .replace('%{h}', toString(height))\n .replace('%{f}', color)\n )\n return `data:image/svg+xml;charset=UTF-8,${src}`\n}\n\n// @vue/component\nexport const BImg = /*#__PURE__*/ Vue.extend({\n name: NAME_IMG,\n functional: true,\n props,\n render(h, { props, data }) {\n let src = props.src\n let width = toInteger(props.width) || null\n let height = toInteger(props.height) || null\n let align = null\n let block = props.block\n let srcset = concat(props.srcset)\n .filter(identity)\n .join(',')\n let sizes = concat(props.sizes)\n .filter(identity)\n .join(',')\n if (props.blank) {\n if (!height && width) {\n height = width\n } else if (!width && height) {\n width = height\n }\n if (!width && !height) {\n width = 1\n height = 1\n }\n // Make a blank SVG image\n src = makeBlankImgSrc(width, height, props.blankColor || 'transparent')\n // Disable srcset and sizes\n srcset = null\n sizes = null\n }\n if (props.left) {\n align = 'float-left'\n } else if (props.right) {\n align = 'float-right'\n } else if (props.center) {\n align = 'mx-auto'\n block = true\n }\n return h(\n 'img',\n mergeData(data, {\n attrs: {\n src,\n alt: props.alt,\n width: width ? toString(width) : null,\n height: height ? toString(height) : null,\n srcset: srcset || null,\n sizes: sizes || null\n },\n class: {\n 'img-thumbnail': props.thumbnail,\n 'img-fluid': props.fluid || props.fluidGrow,\n 'w-100': props.fluidGrow,\n rounded: props.rounded === '' || props.rounded === true,\n [`rounded-${props.rounded}`]: isString(props.rounded) && props.rounded !== '',\n [align]: align,\n 'd-block': block\n }\n })\n )\n }\n})\n","import Vue from '../../vue'\nimport { NAME_IMG_LAZY } from '../../constants/components'\nimport identity from '../../utils/identity'\nimport { concat } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { hasIntersectionObserverSupport } from '../../utils/env'\nimport { toInteger } from '../../utils/number'\nimport { omit } from '../../utils/object'\nimport { VBVisible } from '../../directives/visible/visible'\nimport { BImg, props as BImgProps } from './img'\n\nexport const props = makePropsConfigurable(\n {\n ...omit(BImgProps, ['blank']),\n blankSrc: {\n // If null, a blank image is generated\n type: String,\n default: null\n },\n blankColor: {\n type: String,\n default: 'transparent'\n },\n blankWidth: {\n type: [Number, String]\n // default: null\n },\n blankHeight: {\n type: [Number, String]\n // default: null\n },\n show: {\n type: Boolean,\n default: false\n },\n offset: {\n // Distance away from viewport (in pixels) before being\n // considered \"visible\"\n type: [Number, String],\n default: 360\n }\n },\n NAME_IMG_LAZY\n)\n\n// @vue/component\nexport const BImgLazy = /*#__PURE__*/ Vue.extend({\n name: NAME_IMG_LAZY,\n directives: {\n bVisible: VBVisible\n },\n props,\n data() {\n return {\n isShown: this.show\n }\n },\n computed: {\n computedSrc() {\n return !this.blankSrc || this.isShown ? this.src : this.blankSrc\n },\n computedBlank() {\n return !(this.isShown || this.blankSrc)\n },\n computedWidth() {\n return this.isShown ? this.width : this.blankWidth || this.width\n },\n computedHeight() {\n return this.isShown ? this.height : this.blankHeight || this.height\n },\n computedSrcset() {\n const srcset = concat(this.srcset)\n .filter(identity)\n .join(',')\n return !this.blankSrc || this.isShown ? srcset : null\n },\n computedSizes() {\n const sizes = concat(this.sizes)\n .filter(identity)\n .join(',')\n return !this.blankSrc || this.isShown ? sizes : null\n }\n },\n watch: {\n show(newVal, oldVal) {\n if (newVal !== oldVal) {\n // If IntersectionObserver support is not available, image is always shown\n const visible = hasIntersectionObserverSupport ? newVal : true\n this.isShown = visible\n if (visible !== newVal) {\n // Ensure the show prop is synced (when no IntersectionObserver)\n this.$nextTick(this.updateShowProp)\n }\n }\n },\n isShown(newVal, oldVal) {\n if (newVal !== oldVal) {\n // Update synched show prop\n this.updateShowProp()\n }\n }\n },\n mounted() {\n // If IntersectionObserver is not available, image is always shown\n this.isShown = hasIntersectionObserverSupport ? this.show : true\n },\n methods: {\n updateShowProp() {\n this.$emit('update:show', this.isShown)\n },\n doShow(visible) {\n // If IntersectionObserver is not supported, the callback\n // will be called with `null` rather than `true` or `false`\n if ((visible || visible === null) && !this.isShown) {\n this.isShown = true\n }\n }\n },\n render(h) {\n const directives = []\n if (!this.isShown) {\n // We only add the visible directive if we are not shown\n directives.push({\n // Visible directive will silently do nothing if\n // IntersectionObserver is not supported\n name: 'b-visible',\n // Value expects a callback (passed one arg of `visible` = `true` or `false`)\n value: this.doShow,\n modifiers: {\n // Root margin from viewport\n [`${toInteger(this.offset, 0)}`]: true,\n // Once the image is shown, stop observing\n once: true\n }\n })\n }\n\n return h(BImg, {\n directives,\n props: {\n // Computed value props\n src: this.computedSrc,\n blank: this.computedBlank,\n width: this.computedWidth,\n height: this.computedHeight,\n srcset: this.computedSrcset || null,\n sizes: this.computedSizes || null,\n // Passthrough props\n alt: this.alt,\n blankColor: this.blankColor,\n fluid: this.fluid,\n fluidGrow: this.fluidGrow,\n block: this.block,\n thumbnail: this.thumbnail,\n rounded: this.rounded,\n left: this.left,\n right: this.right,\n center: this.center\n }\n })\n }\n})\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_CARD_IMG_LAZY } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { omit } from '../../utils/object'\nimport { BImgLazy, props as imgLazyProps } from '../image/img-lazy'\n\n// Copy of `<b-img-lazy>` props, and remove conflicting/non-applicable props\n// The `omit()` util creates a new object, so we can just pass the original props\nconst lazyProps = omit(imgLazyProps, [\n 'left',\n 'right',\n 'center',\n 'block',\n 'rounded',\n 'thumbnail',\n 'fluid',\n 'fluidGrow'\n])\n\nexport const props = makePropsConfigurable(\n {\n ...lazyProps,\n top: {\n type: Boolean,\n default: false\n },\n bottom: {\n type: Boolean,\n default: false\n },\n start: {\n type: Boolean,\n default: false\n },\n left: {\n // alias of 'start'\n type: Boolean,\n default: false\n },\n end: {\n type: Boolean,\n default: false\n },\n right: {\n // alias of 'end'\n type: Boolean,\n default: false\n }\n },\n NAME_CARD_IMG_LAZY\n)\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 // False out the left/center/right props before passing to b-img-lazy\n const lazyProps = { ...props, left: false, right: false, center: false }\n return h(\n BImgLazy,\n mergeData(data, {\n class: [baseClass],\n props: lazyProps\n })\n )\n }\n})\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_CARD_TEXT } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\n\nexport const props = makePropsConfigurable(\n {\n textTag: {\n type: String,\n default: 'p'\n }\n },\n NAME_CARD_TEXT\n)\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 { makePropsConfigurable } from '../../utils/config'\n\nexport const props = makePropsConfigurable(\n {\n tag: {\n type: String,\n default: 'div'\n },\n deck: {\n type: Boolean,\n default: false\n },\n columns: {\n type: Boolean,\n default: false\n }\n },\n NAME_CARD_GROUP\n)\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 EVENT_OPTIONS_PASSIVE = { passive: true }\nexport const EVENT_OPTIONS_NO_CAPTURE = { passive: true, capture: false }\n","const noop = () => {}\n\nexport default noop\n","import { MutationObs, isElement } from './dom'\nimport { warnNoMutationObserverSupport } from './warn'\n\n/**\n * Observe a DOM element changes, falls back to eventListener mode\n * @param {Element} el The DOM element to observe\n * @param {Function} callback callback to be called on change\n * @param {object} [options={childList: true, subtree: true}] observe options\n * @see https://stackoverflow.com/questions/3219758\n */\nconst observeDom = (\n el,\n callback,\n options\n) => /* istanbul ignore next: difficult to test in JSDOM */ {\n // Handle cases where we might be passed a Vue instance\n el = el ? el.$el || el : null\n\n // Early exit when we have no element\n /* istanbul ignore next: difficult to test in JSDOM */\n if (!isElement(el)) {\n return null\n }\n\n // Exit and throw a warning when `MutationObserver` isn't available\n if (warnNoMutationObserverSupport('observeDom')) {\n return null\n }\n\n // Define a new observer\n const obs = new MutationObs(mutations => {\n let changed = false\n\n // A mutation can contain several change records, so we loop\n // through them to see what has changed\n // We break out of the loop early if any \"significant\" change\n // has been detected\n for (let i = 0; i < mutations.length && !changed; i++) {\n // The mutation record\n const mutation = mutations[i]\n // Mutation type\n const type = mutation.type\n // DOM node (could be any DOM node type - HTMLElement, Text, comment, etc.)\n const target = mutation.target\n\n // Detect whether a change happened based on type and target\n if (type === 'characterData' && target.nodeType === Node.TEXT_NODE) {\n // We ignore nodes that are not TEXT (i.e. comments, etc.)\n // as they don't change layout\n changed = true\n } else if (type === 'attributes') {\n changed = true\n } else if (\n type === 'childList' &&\n (mutation.addedNodes.length > 0 || mutation.removedNodes.length > 0)\n ) {\n // This includes HTMLElement and text nodes being\n // added/removed/re-arranged\n changed = true\n }\n }\n\n // We only call the callback if a change that could affect\n // layout/size truly happened\n if (changed) {\n callback()\n }\n })\n\n // Have the observer observe foo for changes in children, etc\n obs.observe(el, { childList: true, subtree: true, ...options })\n\n // We return a reference to the observer so that `obs.disconnect()`\n // can be called if necessary\n // To reduce overhead when the root element is hidden\n return obs\n}\n\nexport default observeDom\n","import Vue from '../../vue'\nimport { NAME_CAROUSEL } from '../../constants/components'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../../constants/events'\nimport { CODE_ENTER, CODE_LEFT, CODE_RIGHT, CODE_SPACE } from '../../constants/key-codes'\nimport noop from '../../utils/noop'\nimport observeDom from '../../utils/observe-dom'\nimport { makePropsConfigurable } from '../../utils/config'\nimport {\n addClass,\n getActiveElement,\n reflow,\n removeClass,\n requestAF,\n selectAll,\n setAttr\n} from '../../utils/dom'\nimport { isBrowser, hasTouchSupport, hasPointerEventSupport } from '../../utils/env'\nimport { eventOn, eventOff, stopEvent } from '../../utils/events'\nimport { isUndefined } from '../../utils/inspect'\nimport { mathAbs, mathFloor, mathMax, mathMin } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport idMixin from '../../mixins/id'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\n// Slide directional classes\nconst DIRECTION = {\n next: {\n dirClass: 'carousel-item-left',\n overlayClass: 'carousel-item-next'\n },\n prev: {\n dirClass: 'carousel-item-right',\n overlayClass: 'carousel-item-prev'\n }\n}\n\n// Fallback Transition duration (with a little buffer) in ms\nconst TRANS_DURATION = 600 + 50\n\n// Time for mouse compat events to fire after touch\nconst TOUCH_EVENT_COMPAT_WAIT = 500\n\n// Number of pixels to consider touch move a swipe\nconst SWIPE_THRESHOLD = 40\n\n// PointerEvent pointer types\nconst PointerType = {\n TOUCH: 'touch',\n PEN: 'pen'\n}\n\n// Transition Event names\nconst TransitionEndEvents = {\n WebkitTransition: 'webkitTransitionEnd',\n MozTransition: 'transitionend',\n OTransition: 'otransitionend oTransitionEnd',\n transition: 'transitionend'\n}\n\n// Return the browser specific transitionEnd event name\nconst getTransitionEndEvent = el => {\n for (const name in TransitionEndEvents) {\n if (!isUndefined(el.style[name])) {\n return TransitionEndEvents[name]\n }\n }\n // Fallback\n /* istanbul ignore next */\n return null\n}\n\n// @vue/component\nexport const BCarousel = /*#__PURE__*/ Vue.extend({\n name: NAME_CAROUSEL,\n mixins: [idMixin, normalizeSlotMixin],\n provide() {\n return { bvCarousel: this }\n },\n model: {\n prop: 'value',\n event: 'input'\n },\n props: makePropsConfigurable(\n {\n labelPrev: {\n type: String,\n default: 'Previous slide'\n },\n labelNext: {\n type: String,\n default: 'Next slide'\n },\n labelGotoSlide: {\n type: String,\n default: 'Goto slide'\n },\n labelIndicators: {\n type: String,\n default: 'Select a slide to display'\n },\n interval: {\n type: Number,\n default: 5000\n },\n indicators: {\n type: Boolean,\n default: false\n },\n controls: {\n type: Boolean,\n default: false\n },\n noAnimation: {\n // Disable slide/fade animation\n type: Boolean,\n default: false\n },\n fade: {\n // Enable cross-fade animation instead of slide animation\n type: Boolean,\n default: false\n },\n noWrap: {\n // Disable wrapping/looping when start/end is reached\n type: Boolean,\n default: false\n },\n noTouch: {\n // Sniffed by carousel-slide\n type: Boolean,\n default: false\n },\n noHoverPause: {\n // Disable pause on hover\n type: Boolean,\n default: false\n },\n imgWidth: {\n // Sniffed by carousel-slide\n type: [Number, String]\n // default: undefined\n },\n imgHeight: {\n // Sniffed by carousel-slide\n type: [Number, String]\n // default: undefined\n },\n background: {\n type: String\n // default: undefined\n },\n value: {\n type: Number,\n default: 0\n }\n },\n NAME_CAROUSEL\n ),\n data() {\n return {\n index: this.value || 0,\n isSliding: false,\n transitionEndEvent: null,\n slides: [],\n direction: null,\n isPaused: !(toInteger(this.interval, 0) > 0),\n // Touch event handling values\n touchStartX: 0,\n touchDeltaX: 0\n }\n },\n computed: {\n numSlides() {\n return this.slides.length\n }\n },\n watch: {\n value(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.setSlide(toInteger(newVal, 0))\n }\n },\n interval(newVal, oldVal) {\n if (newVal === oldVal) {\n /* istanbul ignore next */\n return\n }\n if (!newVal) {\n // Pausing slide show\n this.pause(false)\n } else {\n // Restarting or Changing interval\n this.pause(true)\n this.start(false)\n }\n },\n isPaused(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.$emit(newVal ? 'paused' : 'unpaused')\n }\n },\n index(to, from) {\n if (to === from || this.isSliding) {\n /* istanbul ignore next */\n return\n }\n this.doSlide(to, from)\n }\n },\n created() {\n // Create private non-reactive props\n this.$_interval = null\n this.$_animationTimeout = null\n this.$_touchTimeout = null\n this.$_observer = null\n // Set initial paused state\n this.isPaused = !(toInteger(this.interval, 0) > 0)\n },\n mounted() {\n // Cache current browser transitionend event name\n this.transitionEndEvent = getTransitionEndEvent(this.$el) || null\n // Get all slides\n this.updateSlides()\n // Observe child changes so we can update slide list\n this.setObserver(true)\n },\n beforeDestroy() {\n this.clearInterval()\n this.clearAnimationTimeout()\n this.clearTouchTimeout()\n this.setObserver(false)\n },\n methods: {\n clearInterval() {\n clearInterval(this.$_interval)\n this.$_interval = null\n },\n clearAnimationTimeout() {\n clearTimeout(this.$_animationTimeout)\n this.$_animationTimeout = null\n },\n clearTouchTimeout() {\n clearTimeout(this.$_touchTimeout)\n this.$_touchTimeout = null\n },\n setObserver(on = false) {\n this.$_observer && this.$_observer.disconnect()\n this.$_observer = null\n if (on) {\n this.$_observer = observeDom(this.$refs.inner, this.updateSlides.bind(this), {\n subtree: false,\n childList: true,\n attributes: true,\n attributeFilter: ['id']\n })\n }\n },\n // Set slide\n setSlide(slide, direction = null) {\n // Don't animate when page is not visible\n /* istanbul ignore if: difficult to test */\n if (isBrowser && document.visibilityState && document.hidden) {\n return\n }\n const noWrap = this.noWrap\n const numSlides = this.numSlides\n // Make sure we have an integer (you never know!)\n slide = mathFloor(slide)\n // Don't do anything if nothing to slide to\n if (numSlides === 0) {\n return\n }\n // Don't change slide while transitioning, wait until transition is done\n if (this.isSliding) {\n // Schedule slide after sliding complete\n this.$once('sliding-end', () => {\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.value) {\n this.$emit('input', this.index)\n }\n },\n // Previous slide\n prev() {\n this.setSlide(this.index - 1, 'prev')\n },\n // Next slide\n next() {\n this.setSlide(this.index + 1, 'next')\n },\n // Pause auto rotation\n pause(evt) {\n if (!evt) {\n this.isPaused = true\n }\n this.clearInterval()\n },\n // Start auto rotate slides\n start(evt) {\n if (!evt) {\n this.isPaused = false\n }\n /* istanbul ignore next: most likely will never happen, but just in case */\n this.clearInterval()\n // Don't start if no interval, or less than 2 slides\n if (this.interval && this.numSlides > 1) {\n this.$_interval = setInterval(this.next, mathMax(1000, this.interval))\n }\n },\n // Restart auto rotate slides when focus/hover leaves the carousel\n /* istanbul ignore next */\n restart() {\n if (!this.$el.contains(getActiveElement())) {\n this.start()\n }\n },\n doSlide(to, from) {\n const isCycling = Boolean(this.interval)\n // Determine sliding direction\n const direction = this.calcDirection(this.direction, from, to)\n const overlayClass = direction.overlayClass\n const dirClass = direction.dirClass\n // Determine current and next slides\n const currentSlide = this.slides[from]\n const nextSlide = this.slides[to]\n // Don't do anything if there aren't any slides to slide to\n if (!currentSlide || !nextSlide) {\n /* istanbul ignore next */\n return\n }\n // Start animating\n this.isSliding = true\n if (isCycling) {\n this.pause(false)\n }\n this.$emit('sliding-start', to)\n // Update v-model\n this.$emit('input', this.index)\n if (this.noAnimation) {\n addClass(nextSlide, 'active')\n removeClass(currentSlide, 'active')\n this.isSliding = false\n // Notify ourselves that we're done sliding (slid)\n this.$nextTick(() => this.$emit('sliding-end', to))\n } else {\n addClass(nextSlide, overlayClass)\n // Trigger a reflow of next slide\n reflow(nextSlide)\n addClass(currentSlide, dirClass)\n addClass(nextSlide, dirClass)\n // Transition End handler\n let called = false\n /* istanbul ignore next: difficult to test */\n const onceTransEnd = () => {\n if (called) {\n return\n }\n called = true\n /* istanbul ignore if: transition events cant be tested in JSDOM */\n if (this.transitionEndEvent) {\n const events = this.transitionEndEvent.split(/\\s+/)\n events.forEach(evt => eventOff(nextSlide, evt, onceTransEnd, EVENT_OPTIONS_NO_CAPTURE))\n }\n this.clearAnimationTimeout()\n removeClass(nextSlide, dirClass)\n removeClass(nextSlide, overlayClass)\n addClass(nextSlide, 'active')\n removeClass(currentSlide, 'active')\n removeClass(currentSlide, dirClass)\n removeClass(currentSlide, overlayClass)\n setAttr(currentSlide, 'aria-current', 'false')\n setAttr(nextSlide, 'aria-current', 'true')\n setAttr(currentSlide, 'aria-hidden', 'true')\n setAttr(nextSlide, 'aria-hidden', 'false')\n this.isSliding = false\n this.direction = null\n // Notify ourselves that we're done sliding (slid)\n this.$nextTick(() => this.$emit('sliding-end', to))\n }\n // Set up transitionend handler\n /* istanbul ignore if: transition events cant be tested in JSDOM */\n if (this.transitionEndEvent) {\n const events = this.transitionEndEvent.split(/\\s+/)\n events.forEach(event => eventOn(nextSlide, event, onceTransEnd, EVENT_OPTIONS_NO_CAPTURE))\n }\n // Fallback to setTimeout()\n this.$_animationTimeout = setTimeout(onceTransEnd, TRANS_DURATION)\n }\n if (isCycling) {\n this.start(false)\n }\n },\n // Update slide list\n updateSlides() {\n this.pause(true)\n // Get all slides as DOM elements\n this.slides = selectAll('.carousel-item', this.$refs.inner)\n const numSlides = this.slides.length\n // Keep slide number in range\n const index = mathMax(0, mathMin(mathFloor(this.index), numSlides - 1))\n this.slides.forEach((slide, idx) => {\n const n = idx + 1\n if (idx === index) {\n addClass(slide, 'active')\n setAttr(slide, 'aria-current', 'true')\n } else {\n removeClass(slide, 'active')\n setAttr(slide, 'aria-current', 'false')\n }\n setAttr(slide, 'aria-posinset', String(n))\n setAttr(slide, 'aria-setsize', String(numSlides))\n })\n // Set slide as active\n this.setSlide(index)\n this.start(this.isPaused)\n },\n calcDirection(direction = null, curIndex = 0, nextIndex = 0) {\n if (!direction) {\n return nextIndex > curIndex ? DIRECTION.next : DIRECTION.prev\n }\n return DIRECTION[direction]\n },\n handleClick(evt, fn) {\n const keyCode = evt.keyCode\n if (evt.type === 'click' || keyCode === CODE_SPACE || keyCode === CODE_ENTER) {\n stopEvent(evt)\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(evt) {\n if (hasPointerEventSupport && PointerType[evt.pointerType.toUpperCase()]) {\n this.touchStartX = evt.clientX\n } else if (!hasPointerEventSupport) {\n this.touchStartX = evt.touches[0].clientX\n }\n },\n /* istanbul ignore next: JSDOM doesn't support touch events */\n touchMove(evt) {\n // Ensure swiping with one touch and not pinching\n if (evt.touches && evt.touches.length > 1) {\n this.touchDeltaX = 0\n } else {\n this.touchDeltaX = evt.touches[0].clientX - this.touchStartX\n }\n },\n /* istanbul ignore next: JSDOM doesn't support touch events */\n touchEnd(evt) {\n if (hasPointerEventSupport && PointerType[evt.pointerType.toUpperCase()]) {\n this.touchDeltaX = evt.clientX - this.touchStartX\n }\n this.handleSwipe()\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n this.pause(false)\n this.clearTouchTimeout()\n this.$_touchTimeout = setTimeout(\n this.start,\n TOUCH_EVENT_COMPAT_WAIT + mathMax(1000, this.interval)\n )\n }\n },\n render(h) {\n // Wrapper for slides\n const inner = h(\n 'div',\n {\n ref: 'inner',\n class: ['carousel-inner'],\n attrs: {\n id: this.safeId('__BV_inner_'),\n role: 'list'\n }\n },\n [this.normalizeSlot()]\n )\n\n // Prev and next controls\n let controls = h()\n if (this.controls) {\n const prevHandler = evt => {\n /* istanbul ignore next */\n if (!this.isSliding) {\n this.handleClick(evt, this.prev)\n } else {\n stopEvent(evt, { propagation: false })\n }\n }\n const nextHandler = evt => {\n /* istanbul ignore next */\n if (!this.isSliding) {\n this.handleClick(evt, this.next)\n } else {\n stopEvent(evt, { propagation: false })\n }\n }\n controls = [\n h(\n 'a',\n {\n class: ['carousel-control-prev'],\n attrs: {\n href: '#',\n role: 'button',\n 'aria-controls': this.safeId('__BV_inner_'),\n 'aria-disabled': this.isSliding ? 'true' : null\n },\n on: {\n click: prevHandler,\n keydown: prevHandler\n }\n },\n [\n h('span', { class: ['carousel-control-prev-icon'], attrs: { 'aria-hidden': 'true' } }),\n h('span', { class: ['sr-only'] }, [this.labelPrev])\n ]\n ),\n h(\n 'a',\n {\n class: ['carousel-control-next'],\n attrs: {\n href: '#',\n role: 'button',\n 'aria-controls': this.safeId('__BV_inner_'),\n 'aria-disabled': this.isSliding ? 'true' : null\n },\n on: {\n click: nextHandler,\n keydown: nextHandler\n }\n },\n [\n h('span', { class: ['carousel-control-next-icon'], attrs: { 'aria-hidden': 'true' } }),\n h('span', { class: ['sr-only'] }, [this.labelNext])\n ]\n )\n ]\n }\n\n // Indicators\n const indicators = h(\n 'ol',\n {\n class: ['carousel-indicators'],\n directives: [\n { name: 'show', rawName: 'v-show', value: this.indicators, expression: 'indicators' }\n ],\n attrs: {\n id: this.safeId('__BV_indicators_'),\n 'aria-hidden': this.indicators ? 'false' : 'true',\n 'aria-label': this.labelIndicators,\n 'aria-owns': this.safeId('__BV_inner_')\n }\n },\n this.slides.map((slide, n) => {\n return h('li', {\n key: `slide_${n}`,\n class: { active: n === this.index },\n attrs: {\n role: 'button',\n id: this.safeId(`__BV_indicator_${n + 1}_`),\n tabindex: this.indicators ? '0' : '-1',\n 'aria-current': n === this.index ? 'true' : 'false',\n 'aria-label': `${this.labelGotoSlide} ${n + 1}`,\n 'aria-describedby': this.slides[n].id || null,\n 'aria-controls': this.safeId('__BV_inner_')\n },\n on: {\n click: evt => {\n this.handleClick(evt, () => {\n this.setSlide(n)\n })\n },\n keydown: evt => {\n this.handleClick(evt, () => {\n this.setSlide(n)\n })\n }\n }\n })\n })\n )\n\n const on = {\n mouseenter: this.noHoverPause ? noop : this.pause,\n mouseleave: this.noHoverPause ? noop : this.restart,\n focusin: this.pause,\n focusout: this.restart,\n keydown: evt => {\n if (/input|textarea/i.test(evt.target.tagName)) {\n /* istanbul ignore next */\n return\n }\n const keyCode = evt.keyCode\n if (keyCode === CODE_LEFT || keyCode === CODE_RIGHT) {\n stopEvent(evt)\n this[keyCode === CODE_LEFT ? 'prev' : 'next']()\n }\n }\n }\n // Touch support event handlers for environment\n if (!this.noTouch && hasTouchSupport) {\n // Attach appropriate listeners (prepend event name with '&' for passive mode)\n /* istanbul ignore next: JSDOM doesn't support touch events */\n if (hasPointerEventSupport) {\n on['&pointerdown'] = this.touchStart\n on['&pointerup'] = this.touchEnd\n } else {\n on['&touchstart'] = this.touchStart\n on['&touchmove'] = this.touchMove\n on['&touchend'] = this.touchEnd\n }\n }\n\n // Return the carousel\n return h(\n 'div',\n {\n staticClass: 'carousel',\n class: {\n slide: !this.noAnimation,\n 'carousel-fade': !this.noAnimation && this.fade,\n 'pointer-event': !this.noTouch && hasTouchSupport && hasPointerEventSupport\n },\n style: { background: this.background },\n attrs: {\n role: 'region',\n id: this.safeId(),\n 'aria-busy': this.isSliding ? 'true' : 'false'\n },\n on\n },\n [inner, controls, indicators]\n )\n }\n})\n","import Vue from '../../vue'\nimport { NAME_CAROUSEL_SLIDE } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { hasTouchSupport } from '../../utils/env'\nimport { stopEvent } from '../../utils/events'\nimport { htmlOrText } from '../../utils/html'\nimport { pluckProps, unprefixPropName } from '../../utils/props'\nimport idMixin from '../../mixins/id'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { BImg } from '../image/img'\n\n// --- Props ---\n\nconst imgProps = {\n imgSrc: {\n type: String\n // default: undefined\n },\n imgAlt: {\n type: String\n // default: undefined\n },\n imgWidth: {\n type: [Number, String]\n // default: undefined\n },\n imgHeight: {\n type: [Number, String]\n // default: undefined\n },\n imgBlank: {\n type: Boolean,\n default: false\n },\n imgBlankColor: {\n type: String,\n default: 'transparent'\n }\n}\n\nexport const props = makePropsConfigurable(\n {\n ...imgProps,\n contentVisibleUp: {\n type: String\n },\n contentTag: {\n type: String,\n default: 'div'\n },\n caption: {\n type: String\n },\n captionHtml: {\n type: String\n },\n captionTag: {\n type: String,\n default: 'h3'\n },\n text: {\n type: String\n },\n textHtml: {\n type: String\n },\n textTag: {\n type: String,\n default: 'p'\n },\n background: {\n type: String\n }\n },\n NAME_CAROUSEL_SLIDE\n)\n\n// --- Main component ---\n// @vue/component\nexport const BCarouselSlide = /*#__PURE__*/ Vue.extend({\n name: NAME_CAROUSEL_SLIDE,\n mixins: [idMixin, normalizeSlotMixin],\n inject: {\n bvCarousel: {\n default() {\n return {\n // Explicitly disable touch if not a child of carousel\n noTouch: true\n }\n }\n }\n },\n props,\n computed: {\n contentClasses() {\n return [\n this.contentVisibleUp ? 'd-none' : '',\n this.contentVisibleUp ? `d-${this.contentVisibleUp}-block` : ''\n ]\n },\n computedWidth() {\n // Use local width, or try parent width\n return this.imgWidth || this.bvCarousel.imgWidth || null\n },\n computedHeight() {\n // Use local height, or try parent height\n return this.imgHeight || this.bvCarousel.imgHeight || null\n }\n },\n render(h) {\n let $img = this.normalizeSlot('img')\n if (!$img && (this.imgSrc || this.imgBlank)) {\n const on = {}\n // Touch support event handler\n /* istanbul ignore if: difficult to test in JSDOM */\n if (!this.bvCarousel.noTouch && hasTouchSupport) {\n on.dragstart = evt => stopEvent(evt, { 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(Boolean)) {\n $content = h(\n this.contentTag,\n {\n staticClass: 'carousel-caption',\n class: this.contentClasses\n },\n $contentChildren.map($child => $child || h())\n )\n }\n\n return h(\n 'div',\n {\n staticClass: 'carousel-item',\n style: { background: this.background || this.bvCarousel.background || null },\n attrs: { id: this.safeId(), role: 'listitem' }\n },\n [$img, $content]\n )\n }\n})\n","import { BCarousel } from './carousel'\nimport { BCarouselSlide } from './carousel-slide'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst CarouselPlugin = /*#__PURE*/ pluginFactory({\n components: {\n BCarousel,\n BCarouselSlide\n }\n})\n\nexport { CarouselPlugin, BCarousel, BCarouselSlide }\n","// Generic collapse transion helper component\n//\n// Note:\n// Applies the classes `collapse`, `show` and `collapsing`\n// during the enter/leave transition phases only\n// Although it appears that Vue may be leaving the classes\n// in-place after the transition completes\nimport Vue, { mergeData } from '../vue'\nimport { NAME_COLLAPSE_HELPER } from '../constants/components'\nimport { getBCR, reflow, removeStyle, requestAF, setStyle } from './dom'\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// Default transition props\n// `appear` will use the enter classes\nconst TRANSITION_PROPS = {\n css: true,\n enterClass: '',\n enterActiveClass: 'collapsing',\n enterToClass: 'collapse show',\n leaveClass: 'collapse show',\n leaveActiveClass: 'collapsing',\n leaveToClass: 'collapse'\n}\n\n// Default transition handlers\n// `appear` will use the enter handlers\nconst TRANSITION_HANDLERS = {\n enter: onEnter,\n afterEnter: onAfterEnter,\n leave: onLeave,\n afterLeave: onAfterLeave\n}\n\n// @vue/component\nexport const BVCollapse = /*#__PURE__*/ Vue.extend({\n name: 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","// @vue/component\nexport default {\n methods: {\n /**\n * Safely register event listeners on the root Vue node\n * While Vue automatically removes listeners for individual components,\n * when a component registers a listener on root and is destroyed,\n * this orphans a callback because the node is gone,\n * but the root does not clear the callback\n *\n * When registering a `$root` listener, it also registers a listener on\n * the component's `beforeDestroy()` hook to automatically remove the\n * event listener from the `$root` instance\n *\n * @param {string} event\n * @param {function} callback\n */\n listenOnRoot(event, callback) {\n this.$root.$on(event, callback)\n this.$on('hook:beforeDestroy', () => {\n this.$root.$off(event, callback)\n })\n },\n\n /**\n * Safely register a `$once()` event listener on the root Vue node\n * While Vue automatically removes listeners for individual components,\n * when a component registers a listener on root and is destroyed,\n * this orphans a callback because the node is gone,\n * but the root does not clear the callback\n *\n * When registering a $root listener, it also registers a listener on\n * the component's `beforeDestroy` hook to automatically remove the\n * event listener from the $root instance.\n *\n * @param {string} event\n * @param {function} callback\n */\n listenOnRootOnce(event, callback) {\n this.$root.$once(event, callback)\n this.$on('hook:beforeDestroy', () => {\n this.$root.$off(event, callback)\n })\n },\n\n /**\n * Convenience method for calling `vm.$emit()` on `vm.$root`\n *\n * @param {string} event\n * @param {*} args\n */\n emitOnRoot(event, ...args) {\n this.$root.$emit(event, ...args)\n }\n }\n}\n","import { 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 looseEqual from '../../utils/loose-equal'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport {\n addClass,\n getAttr,\n hasAttr,\n isDisabled,\n isTag,\n removeAttr,\n removeClass,\n removeStyle,\n requestAF,\n setAttr,\n setStyle\n} from '../../utils/dom'\nimport { isBrowser } from '../../utils/env'\nimport { eventOn, eventOff } from '../../utils/events'\nimport { isString } from '../../utils/inspect'\nimport { keys } from '../../utils/object'\n\n// --- Constants ---\n\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)\nexport const EVENT_TOGGLE = 'bv::toggle::collapse'\n\n// Listen to event for toggle state update (emitted by collapse)\nexport const EVENT_STATE = 'bv::collapse::state'\n\n// Private event emitted on `$root` to ensure the toggle state is always synced\n// Gets emitted even if the state of b-collapse has not changed\n// This event is NOT to be documented as people should not be using it\nexport const EVENT_STATE_SYNC = 'bv::collapse::sync::state'\n// Private event we send to collapse to request state update sync event\nexport const EVENT_STATE_REQUEST = 'bv::request::collapse::state'\n\nconst KEYDOWN_KEY_CODES = [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 = evt => {\n if (\n !(evt.type === 'keydown' && !arrayIncludes(KEYDOWN_KEY_CODES, evt.keyCode)) &&\n !isDisabled(el)\n ) {\n const targets = el[BV_TOGGLE_TARGETS] || []\n targets.forEach(target => {\n vnode.context.$root.$emit(EVENT_TOGGLE, target)\n })\n }\n }\n el[BV_TOGGLE_CLICK_HANDLER] = handler\n eventOn(el, 'click', handler, 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([EVENT_STATE, EVENT_STATE_SYNC], el[BV_TOGGLE_ROOT_HANDLER])\n }\n el[BV_TOGGLE_ROOT_HANDLER] = null\n}\n\nconst addRootListeners = (el, vnode) => {\n removeRootListeners(el, vnode)\n if (vnode.context) {\n const handler = (id, state) => {\n // `state` will be `true` if target is expanded\n if (arrayIncludes(el[BV_TOGGLE_TARGETS] || [], id)) {\n // Set/Clear 'collapsed' visibility class state\n el[BV_TOGGLE_STATE] = state\n // Set `aria-expanded` and class state on trigger element\n setToggleState(el, state)\n }\n }\n el[BV_TOGGLE_ROOT_HANDLER] = handler\n // Listen for toggle state changes (public) and sync (private)\n vnode.context.$root.$on([EVENT_STATE, EVENT_STATE_SYNC], handler)\n }\n}\n\nconst setToggleState = (el, state) => {\n // State refers to the visibility of the collapse/sidebar\n if (state) {\n removeClass(el, CLASS_BV_TOGGLE_COLLAPSED)\n addClass(el, CLASS_BV_TOGGLE_NOT_COLLAPSED)\n setAttr(el, ATTR_ARIA_EXPANDED, STRING_TRUE)\n } else {\n removeClass(el, CLASS_BV_TOGGLE_NOT_COLLAPSED)\n addClass(el, CLASS_BV_TOGGLE_COLLAPSED)\n setAttr(el, ATTR_ARIA_EXPANDED, STRING_FALSE)\n }\n}\n\n// Reset and remove a property from the provided element\nconst resetProp = (el, prop) => {\n el[prop] = null\n delete el[prop]\n}\n\n// Handle directive updates\nconst handleUpdate = (el, binding, vnode) => {\n /* istanbul ignore next: should never happen */\n if (!isBrowser || !vnode.context) {\n return\n }\n\n // If element is not a button or link, we add `role=\"button\"`\n // and `tabindex=\"0\"` for accessibility reasons\n if (isNonStandardTag(el)) {\n if (!hasAttr(el, ATTR_ROLE)) {\n setAttr(el, ATTR_ROLE, 'button')\n }\n if (!hasAttr(el, ATTR_TABINDEX)) {\n setAttr(el, ATTR_TABINDEX, '0')\n }\n }\n\n // Ensure the collapse class and `aria-*` attributes persist\n // after element is updated (either by parent re-rendering\n // or changes to this element or its contents)\n setToggleState(el, el[BV_TOGGLE_STATE])\n\n // Parse list of target IDs\n const targets = getTargets(binding, el)\n\n // 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(EVENT_STATE_REQUEST, target)\n })\n }\n}\n\n/*\n * Export our directive\n */\nexport const VBToggle = {\n bind(el, binding, vnode) {\n // State is initially collapsed until we receive a state event\n el[BV_TOGGLE_STATE] = false\n // Assume no targets initially\n el[BV_TOGGLE_TARGETS] = []\n // Add our root listeners\n addRootListeners(el, vnode)\n // Initial update of trigger\n handleUpdate(el, binding, vnode)\n },\n componentUpdated: handleUpdate,\n updated: handleUpdate,\n unbind(el, binding, vnode) {\n removeClickListener(el)\n // Remove our $root listener\n removeRootListeners(el, vnode)\n // Reset custom props\n resetProp(el, BV_TOGGLE_ROOT_HANDLER)\n resetProp(el, BV_TOGGLE_CLICK_HANDLER)\n resetProp(el, BV_TOGGLE_STATE)\n resetProp(el, BV_TOGGLE_TARGETS)\n // Reset classes/attrs/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 Vue from '../../vue'\nimport { NAME_COLLAPSE } from '../../constants/components'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../../constants/events'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slot-names'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { BVCollapse } from '../../utils/bv-collapse'\nimport { addClass, hasClass, removeClass, closest, matches, getCS } from '../../utils/dom'\nimport { isBrowser } from '../../utils/env'\nimport { eventOnOff } from '../../utils/events'\nimport idMixin from '../../mixins/id'\nimport listenOnRootMixin from '../../mixins/listen-on-root'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport {\n EVENT_TOGGLE,\n EVENT_STATE,\n EVENT_STATE_REQUEST,\n EVENT_STATE_SYNC\n} from '../../directives/toggle/toggle'\n\n// --- Constants ---\n\n// Accordion event name we emit on `$root`\nconst EVENT_ACCORDION = 'bv::collapse::accordion'\n\n// --- Main component ---\n// @vue/component\nexport const BCollapse = /*#__PURE__*/ Vue.extend({\n name: NAME_COLLAPSE,\n mixins: [idMixin, listenOnRootMixin, normalizeSlotMixin],\n model: {\n prop: 'visible',\n event: 'input'\n },\n props: makePropsConfigurable(\n {\n isNav: {\n type: Boolean,\n default: false\n },\n accordion: {\n type: String\n // default: null\n },\n visible: {\n type: Boolean,\n default: false\n },\n tag: {\n type: String,\n default: 'div'\n },\n appear: {\n // If `true` (and `visible` is `true` on mount), animate initially visible\n type: Boolean,\n default: false\n }\n },\n NAME_COLLAPSE\n ),\n data() {\n return {\n show: this.visible,\n transitioning: false\n }\n },\n computed: {\n classObject() {\n return {\n 'navbar-collapse': this.isNav,\n collapse: !this.transitioning,\n show: this.show && !this.transitioning\n }\n }\n },\n watch: {\n visible(newVal) {\n if (newVal !== this.show) {\n this.show = newVal\n }\n },\n show(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.emitState()\n }\n }\n },\n created() {\n this.show = this.visible\n },\n mounted() {\n this.show = this.visible\n // Listen for toggle events to open/close us\n this.listenOnRoot(EVENT_TOGGLE, this.handleToggleEvt)\n // Listen to other collapses for accordion events\n this.listenOnRoot(EVENT_ACCORDION, this.handleAccordionEvt)\n if (this.isNav) {\n // Set up handlers\n this.setWindowEvents(true)\n this.handleResize()\n }\n this.$nextTick(() => {\n this.emitState()\n })\n // Listen for \"Sync state\" requests from `v-b-toggle`\n this.listenOnRoot(EVENT_STATE_REQUEST, id => {\n if (id === this.safeId()) {\n this.$nextTick(this.emitSync)\n }\n })\n },\n updated() {\n // Emit a private event every time this component updates to ensure\n // the toggle button is in sync with the collapse's state\n // It is emitted regardless if the visible state changes\n this.emitSync()\n },\n /* istanbul ignore next */\n deactivated() {\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 && isBrowser) {\n this.setWindowEvents(false)\n }\n },\n methods: {\n setWindowEvents(on) {\n eventOnOff(on, window, 'resize', this.handleResize, EVENT_OPTIONS_NO_CAPTURE)\n eventOnOff(on, window, 'orientationchange', this.handleResize, EVENT_OPTIONS_NO_CAPTURE)\n },\n toggle() {\n this.show = !this.show\n },\n onEnter() {\n this.transitioning = true\n // This should be moved out so we can add cancellable events\n this.$emit('show')\n },\n onAfterEnter() {\n this.transitioning = false\n this.$emit('shown')\n },\n onLeave() {\n this.transitioning = true\n // This should be moved out so we can add cancellable events\n this.$emit('hide')\n },\n onAfterLeave() {\n this.transitioning = false\n this.$emit('hidden')\n },\n emitState() {\n this.$emit('input', this.show)\n // Let `v-b-toggle` know the state of this collapse\n this.emitOnRoot(EVENT_STATE, this.safeId(), this.show)\n if (this.accordion && this.show) {\n // Tell the other collapses in this accordion to close\n this.emitOnRoot(EVENT_ACCORDION, this.safeId(), this.accordion)\n }\n },\n emitSync() {\n // Emit a private event every time this component updates to ensure\n // the toggle button is in sync with the collapse's state\n // It is emitted regardless if the visible state changes\n this.emitOnRoot(EVENT_STATE_SYNC, this.safeId(), this.show)\n },\n checkDisplayBlock() {\n // Check to see if the collapse has `display: block !important` set\n // We can't set `display: none` directly on `this.$el`, as it would\n // trigger a new transition to start (or cancel a current one)\n const restore = hasClass(this.$el, 'show')\n removeClass(this.$el, 'show')\n const isBlock = getCS(this.$el).display === 'block'\n if (restore) {\n addClass(this.$el, 'show')\n }\n return isBlock\n },\n clickHandler(evt) {\n // If we are in a nav/navbar, close the collapse when non-disabled link clicked\n const el = evt.target\n if (!this.isNav || !el || getCS(this.$el).display !== 'block') {\n /* istanbul ignore next: can't test getComputedStyle in JSDOM */\n return\n }\n if (matches(el, '.nav-link,.dropdown-item') || closest('.nav-link,.dropdown-item', el)) {\n if (!this.checkDisplayBlock()) {\n // Only close the collapse if it is not forced to be `display: block !important`\n this.show = false\n }\n }\n },\n handleToggleEvt(target) {\n if (target !== this.safeId()) {\n return\n }\n this.toggle()\n },\n handleAccordionEvt(openedId, accordion) {\n if (!this.accordion || accordion !== this.accordion) {\n return\n }\n if (openedId === this.safeId()) {\n // Open this collapse if not shown\n if (!this.show) {\n this.toggle()\n }\n } else {\n // Close this collapse if shown\n if (this.show) {\n this.toggle()\n }\n }\n },\n handleResize() {\n // Handler for orientation/resize to set collapsed state in nav/navbar\n this.show = getCS(this.$el).display === 'block'\n }\n },\n render(h) {\n const scope = {\n visible: this.show,\n close: () => (this.show = false)\n }\n const content = h(\n this.tag,\n {\n class: this.classObject,\n directives: [{ name: 'show', value: this.show }],\n attrs: { id: this.safeId() },\n on: { click: this.clickHandler }\n },\n [this.normalizeSlot(SLOT_NAME_DEFAULT, scope)]\n )\n return h(\n BVCollapse,\n {\n props: { appear: this.appear },\n on: {\n enter: this.onEnter,\n afterEnter: this.onAfterEnter,\n leave: this.onLeave,\n afterLeave: this.onAfterLeave\n }\n },\n [content]\n )\n }\n})\n","import { VBToggle } from './toggle'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBTogglePlugin = /*#__PURE__*/ pluginFactory({\n directives: { VBToggle }\n})\n\nexport { VBTogglePlugin, VBToggle }\n","import { BCollapse } from './collapse'\nimport { VBTogglePlugin } from '../../directives/toggle'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst CollapsePlugin = /*#__PURE__*/ pluginFactory({\n components: { BCollapse },\n plugins: { VBTogglePlugin }\n})\n\nexport { CollapsePlugin, BCollapse }\n","/**!\n * @fileOverview Kickass library to create and place poppers near their reference elements.\n * @version 1.16.1\n * @license\n * Copyright (c) 2016 Federico Zivolo and contributors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';\n\nvar timeoutDuration = function () {\n var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];\n for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {\n if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {\n return 1;\n }\n }\n return 0;\n}();\n\nfunction microtaskDebounce(fn) {\n var called = false;\n return function () {\n if (called) {\n return;\n }\n called = true;\n window.Promise.resolve().then(function () {\n called = false;\n fn();\n });\n };\n}\n\nfunction taskDebounce(fn) {\n var scheduled = false;\n return function () {\n if (!scheduled) {\n scheduled = true;\n setTimeout(function () {\n scheduled = false;\n fn();\n }, timeoutDuration);\n }\n };\n}\n\nvar supportsMicroTasks = isBrowser && window.Promise;\n\n/**\n* Create a debounced version of a method, that's asynchronously deferred\n* but called in the minimum time possible.\n*\n* @method\n* @memberof Popper.Utils\n* @argument {Function} fn\n* @returns {Function}\n*/\nvar debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce;\n\n/**\n * Check if the given variable is a function\n * @method\n * @memberof Popper.Utils\n * @argument {Any} functionToCheck - variable to check\n * @returns {Boolean} answer to: is a function?\n */\nfunction isFunction(functionToCheck) {\n var getType = {};\n return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';\n}\n\n/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nfunction getStyleComputedProperty(element, property) {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n var window = element.ownerDocument.defaultView;\n var css = window.getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n\n/**\n * Returns the parentNode or the host of the element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} parent\n */\nfunction getParentNode(element) {\n if (element.nodeName === 'HTML') {\n return element;\n }\n return element.parentNode || element.host;\n}\n\n/**\n * Returns the scrolling parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} scroll parent\n */\nfunction getScrollParent(element) {\n // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n if (!element) {\n return document.body;\n }\n\n switch (element.nodeName) {\n case 'HTML':\n case 'BODY':\n return element.ownerDocument.body;\n case '#document':\n return element.body;\n }\n\n // Firefox want us to check `-x` and `-y` variations as well\n\n var _getStyleComputedProp = getStyleComputedProperty(element),\n overflow = _getStyleComputedProp.overflow,\n overflowX = _getStyleComputedProp.overflowX,\n overflowY = _getStyleComputedProp.overflowY;\n\n if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {\n return element;\n }\n\n return getScrollParent(getParentNode(element));\n}\n\n/**\n * Returns the reference node of the reference object, or the reference object itself.\n * @method\n * @memberof Popper.Utils\n * @param {Element|Object} reference - the reference element (the popper will be relative to this)\n * @returns {Element} parent\n */\nfunction getReferenceNode(reference) {\n return reference && reference.referenceNode ? reference.referenceNode : reference;\n}\n\nvar isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nvar isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nfunction isIE(version) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n\n/**\n * Returns the offset parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} offset parent\n */\nfunction getOffsetParent(element) {\n if (!element) {\n return document.documentElement;\n }\n\n var noOffsetParent = isIE(10) ? document.body : null;\n\n // NOTE: 1 DOM access here\n var offsetParent = element.offsetParent || null;\n // Skip hidden elements which don't have an offsetParent\n while (offsetParent === noOffsetParent && element.nextElementSibling) {\n offsetParent = (element = element.nextElementSibling).offsetParent;\n }\n\n var nodeName = offsetParent && offsetParent.nodeName;\n\n if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n return element ? element.ownerDocument.documentElement : document.documentElement;\n }\n\n // .offsetParent will return the closest TH, TD or TABLE in case\n // no offsetParent is present, I hate this job...\n if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {\n return getOffsetParent(offsetParent);\n }\n\n return offsetParent;\n}\n\nfunction isOffsetContainer(element) {\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY') {\n return false;\n }\n return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;\n}\n\n/**\n * Finds the root node (document, shadowDOM root) of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} node\n * @returns {Element} root node\n */\nfunction getRoot(node) {\n if (node.parentNode !== null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\n/**\n * Finds the offset parent common to the two provided nodes\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element1\n * @argument {Element} element2\n * @returns {Element} common offset parent\n */\nfunction findCommonOffsetParent(element1, element2) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n return document.documentElement;\n }\n\n // Here we make sure to give as \"start\" the element that comes first in the DOM\n var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;\n var start = order ? element1 : element2;\n var end = order ? element2 : element1;\n\n // Get common ancestor container\n var range = document.createRange();\n range.setStart(start, 0);\n range.setEnd(end, 0);\n var commonAncestorContainer = range.commonAncestorContainer;\n\n // Both nodes are inside #document\n\n if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {\n if (isOffsetContainer(commonAncestorContainer)) {\n return commonAncestorContainer;\n }\n\n return getOffsetParent(commonAncestorContainer);\n }\n\n // one of the nodes is inside shadowDOM, find which one\n var element1root = getRoot(element1);\n if (element1root.host) {\n return findCommonOffsetParent(element1root.host, element2);\n } else {\n return findCommonOffsetParent(element1, getRoot(element2).host);\n }\n}\n\n/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} side `top` or `left`\n * @returns {number} amount of scrolled pixels\n */\nfunction getScroll(element) {\n var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';\n\n var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n var html = element.ownerDocument.documentElement;\n var scrollingElement = element.ownerDocument.scrollingElement || html;\n return scrollingElement[upperSide];\n }\n\n return element[upperSide];\n}\n\n/*\n * Sum or subtract the element scroll values (left and top) from a given rect object\n * @method\n * @memberof Popper.Utils\n * @param {Object} rect - Rect object you want to change\n * @param {HTMLElement} element - The element from the function reads the scroll values\n * @param {Boolean} subtract - set to true if you want to subtract the scroll values\n * @return {Object} rect - The modifier rect object\n */\nfunction includeScroll(rect, element) {\n var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n var modifier = subtract ? -1 : 1;\n rect.top += scrollTop * modifier;\n rect.bottom += scrollTop * modifier;\n rect.left += scrollLeft * modifier;\n rect.right += scrollLeft * modifier;\n return rect;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nfunction getBordersSize(styles, axis) {\n var sideA = axis === 'x' ? 'Left' : 'Top';\n var sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n\n return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']);\n}\n\nfunction getSize(axis, body, html, computedStyle) {\n return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0);\n}\n\nfunction getWindowSizes(document) {\n var body = document.body;\n var html = document.documentElement;\n var computedStyle = isIE(10) && getComputedStyle(html);\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle)\n };\n}\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n\n\n\nvar defineProperty = function (obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n};\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nfunction getClientRect(offsets) {\n return _extends({}, offsets, {\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height\n });\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nfunction getBoundingClientRect(element) {\n var rect = {};\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n } else {\n rect = element.getBoundingClientRect();\n }\n } catch (e) {}\n\n var result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top\n };\n\n // subtract scrollbar size from sizes\n var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};\n var width = sizes.width || element.clientWidth || result.width;\n var height = sizes.height || element.clientHeight || result.height;\n\n var horizScrollbar = element.offsetWidth - width;\n var vertScrollbar = element.offsetHeight - height;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n var styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result);\n}\n\nfunction getOffsetRectRelativeToArbitraryNode(children, parent) {\n var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var isIE10 = isIE(10);\n var isHTML = parent.nodeName === 'HTML';\n var childrenRect = getBoundingClientRect(children);\n var parentRect = getBoundingClientRect(parent);\n var scrollParent = getScrollParent(children);\n\n var styles = getStyleComputedProperty(parent);\n var borderTopWidth = parseFloat(styles.borderTopWidth);\n var borderLeftWidth = parseFloat(styles.borderLeftWidth);\n\n // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n if (fixedPosition && isHTML) {\n parentRect.top = Math.max(parentRect.top, 0);\n parentRect.left = Math.max(parentRect.left, 0);\n }\n var offsets = getClientRect({\n top: childrenRect.top - parentRect.top - borderTopWidth,\n left: childrenRect.left - parentRect.left - borderLeftWidth,\n width: childrenRect.width,\n height: childrenRect.height\n });\n offsets.marginTop = 0;\n offsets.marginLeft = 0;\n\n // Subtract margins of documentElement in case it's being used as parent\n // we do this only on HTML because it's the only element that behaves\n // differently when margins are applied to it. The margins are included in\n // the box of the documentElement, in the other cases not.\n if (!isIE10 && isHTML) {\n var marginTop = parseFloat(styles.marginTop);\n var marginLeft = parseFloat(styles.marginLeft);\n\n offsets.top -= borderTopWidth - marginTop;\n offsets.bottom -= borderTopWidth - marginTop;\n offsets.left -= borderLeftWidth - marginLeft;\n offsets.right -= borderLeftWidth - marginLeft;\n\n // Attach marginTop and marginLeft because in some circumstances we may need them\n offsets.marginTop = marginTop;\n offsets.marginLeft = marginLeft;\n }\n\n if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {\n offsets = includeScroll(offsets, parent);\n }\n\n return offsets;\n}\n\nfunction getViewportOffsetRectRelativeToArtbitraryNode(element) {\n var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var html = element.ownerDocument.documentElement;\n var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n var width = Math.max(html.clientWidth, window.innerWidth || 0);\n var height = Math.max(html.clientHeight, window.innerHeight || 0);\n\n var scrollTop = !excludeScroll ? getScroll(html) : 0;\n var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n\n var offset = {\n top: scrollTop - relativeOffset.top + relativeOffset.marginTop,\n left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,\n width: width,\n height: height\n };\n\n return getClientRect(offset);\n}\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {Element} customContainer\n * @returns {Boolean} answer to \"isFixed?\"\n */\nfunction isFixed(element) {\n var nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n if (getStyleComputedProperty(element, 'position') === 'fixed') {\n return true;\n }\n var parentNode = getParentNode(element);\n if (!parentNode) {\n return false;\n }\n return isFixed(parentNode);\n}\n\n/**\n * Finds the first parent of an element that has a transformed property defined\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} first transformed parent or documentElement\n */\n\nfunction getFixedPositionOffsetParent(element) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element || !element.parentElement || isIE()) {\n return document.documentElement;\n }\n var el = element.parentElement;\n while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n el = el.parentElement;\n }\n return el || document.documentElement;\n}\n\n/**\n * Computed the boundaries limits and return them\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} popper\n * @param {HTMLElement} reference\n * @param {number} padding\n * @param {HTMLElement} boundariesElement - Element used to define the boundaries\n * @param {Boolean} fixedPosition - Is in fixed position mode\n * @returns {Object} Coordinates of the boundaries\n */\nfunction getBoundaries(popper, reference, padding, boundariesElement) {\n var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n // NOTE: 1 DOM access here\n\n var boundaries = { top: 0, left: 0 };\n var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n\n // Handle viewport case\n if (boundariesElement === 'viewport') {\n boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n } else {\n // Handle other cases based on DOM element used as boundaries\n var boundariesNode = void 0;\n if (boundariesElement === 'scrollParent') {\n boundariesNode = getScrollParent(getParentNode(reference));\n if (boundariesNode.nodeName === 'BODY') {\n boundariesNode = popper.ownerDocument.documentElement;\n }\n } else if (boundariesElement === 'window') {\n boundariesNode = popper.ownerDocument.documentElement;\n } else {\n boundariesNode = boundariesElement;\n }\n\n var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);\n\n // In case of HTML, we need a different computation\n if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n var _getWindowSizes = getWindowSizes(popper.ownerDocument),\n height = _getWindowSizes.height,\n width = _getWindowSizes.width;\n\n boundaries.top += offsets.top - offsets.marginTop;\n boundaries.bottom = height + offsets.top;\n boundaries.left += offsets.left - offsets.marginLeft;\n boundaries.right = width + offsets.left;\n } else {\n // for all the other DOM elements, this one is good\n boundaries = offsets;\n }\n }\n\n // Add paddings\n padding = padding || 0;\n var isPaddingNumber = typeof padding === 'number';\n boundaries.left += isPaddingNumber ? padding : padding.left || 0;\n boundaries.top += isPaddingNumber ? padding : padding.top || 0;\n boundaries.right -= isPaddingNumber ? padding : padding.right || 0;\n boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0;\n\n return boundaries;\n}\n\nfunction getArea(_ref) {\n var width = _ref.width,\n height = _ref.height;\n\n return width * height;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n * @method\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {\n var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n\n if (placement.indexOf('auto') === -1) {\n return placement;\n }\n\n var boundaries = getBoundaries(popper, reference, padding, boundariesElement);\n\n var rects = {\n top: {\n width: boundaries.width,\n height: refRect.top - boundaries.top\n },\n right: {\n width: boundaries.right - refRect.right,\n height: boundaries.height\n },\n bottom: {\n width: boundaries.width,\n height: boundaries.bottom - refRect.bottom\n },\n left: {\n width: refRect.left - boundaries.left,\n height: boundaries.height\n }\n };\n\n var sortedAreas = Object.keys(rects).map(function (key) {\n return _extends({\n key: key\n }, rects[key], {\n area: getArea(rects[key])\n });\n }).sort(function (a, b) {\n return b.area - a.area;\n });\n\n var filteredAreas = sortedAreas.filter(function (_ref2) {\n var width = _ref2.width,\n height = _ref2.height;\n return width >= popper.clientWidth && height >= popper.clientHeight;\n });\n\n var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;\n\n var variation = placement.split('-')[1];\n\n return computedPlacement + (variation ? '-' + variation : '');\n}\n\n/**\n * Get offsets to the reference element\n * @method\n * @memberof Popper.Utils\n * @param {Object} state\n * @param {Element} popper - the popper element\n * @param {Element} reference - the reference element (the popper will be relative to this)\n * @param {Element} fixedPosition - is in fixed position mode\n * @returns {Object} An object containing the offsets which will be applied to the popper\n */\nfunction getReferenceOffsets(state, popper, reference) {\n var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);\n}\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nfunction getOuterSizes(element) {\n var window = element.ownerDocument.defaultView;\n var styles = window.getComputedStyle(element);\n var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n var result = {\n width: element.offsetWidth + y,\n height: element.offsetHeight + x\n };\n return result;\n}\n\n/**\n * Get the opposite placement of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement\n * @returns {String} flipped placement\n */\nfunction getOppositePlacement(placement) {\n var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}\n\n/**\n * Get offsets to the popper\n * @method\n * @memberof Popper.Utils\n * @param {Object} position - CSS position the Popper will get applied\n * @param {HTMLElement} popper - the popper element\n * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)\n * @param {String} placement - one of the valid placement options\n * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper\n */\nfunction getPopperOffsets(popper, referenceOffsets, placement) {\n placement = placement.split('-')[0];\n\n // Get popper node sizes\n var popperRect = getOuterSizes(popper);\n\n // Add position, width and height to our offsets object\n var popperOffsets = {\n width: popperRect.width,\n height: popperRect.height\n };\n\n // depending by the popper placement we have to compute its offsets slightly differently\n var isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n var mainSide = isHoriz ? 'top' : 'left';\n var secondarySide = isHoriz ? 'left' : 'top';\n var measurement = isHoriz ? 'height' : 'width';\n var secondaryMeasurement = !isHoriz ? 'height' : 'width';\n\n popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;\n if (placement === secondarySide) {\n popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];\n } else {\n popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];\n }\n\n return popperOffsets;\n}\n\n/**\n * Mimics the `find` method of Array\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction find(arr, check) {\n // use native find if supported\n if (Array.prototype.find) {\n return arr.find(check);\n }\n\n // use `filter` to obtain the same behavior of `find`\n return arr.filter(check)[0];\n}\n\n/**\n * Return the index of the matching object\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction findIndex(arr, prop, value) {\n // use native findIndex if supported\n if (Array.prototype.findIndex) {\n return arr.findIndex(function (cur) {\n return cur[prop] === value;\n });\n }\n\n // use `find` + `indexOf` if `findIndex` isn't supported\n var match = find(arr, function (obj) {\n return obj[prop] === value;\n });\n return arr.indexOf(match);\n}\n\n/**\n * Loop trough the list of modifiers and run them in order,\n * each of them will then edit the data object.\n * @method\n * @memberof Popper.Utils\n * @param {dataObject} data\n * @param {Array} modifiers\n * @param {String} ends - Optional modifier name used as stopper\n * @returns {dataObject}\n */\nfunction runModifiers(modifiers, data, ends) {\n var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));\n\n modifiersToRun.forEach(function (modifier) {\n if (modifier['function']) {\n // eslint-disable-line dot-notation\n console.warn('`modifier.function` is deprecated, use `modifier.fn`!');\n }\n var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation\n if (modifier.enabled && isFunction(fn)) {\n // Add properties to offsets to make them a complete clientRect object\n // we do this before each modifier to make sure the previous one doesn't\n // mess with these values\n data.offsets.popper = getClientRect(data.offsets.popper);\n data.offsets.reference = getClientRect(data.offsets.reference);\n\n data = fn(data, modifier);\n }\n });\n\n return data;\n}\n\n/**\n * Updates the position of the popper, computing the new offsets and applying\n * the new style.<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\nclass BvEvent {\n constructor(type, eventInit = {}) {\n // Start by emulating native Event constructor\n if (!type) {\n /* istanbul ignore next */\n throw new TypeError(\n `Failed to construct '${this.constructor.name}'. 1 argument required, ${\n arguments.length\n } given.`\n )\n }\n\n // Merge defaults first, the eventInit, and the type last\n // so it can't be overwritten\n assign(this, BvEvent.Defaults, this.constructor.Defaults, eventInit, { type })\n\n // Freeze some props as readonly, but leave them enumerable\n defineProperties(this, {\n type: readonlyDescriptor(),\n cancelable: readonlyDescriptor(),\n nativeEvent: readonlyDescriptor(),\n target: readonlyDescriptor(),\n relatedTarget: readonlyDescriptor(),\n vueTarget: readonlyDescriptor(),\n componentId: readonlyDescriptor()\n })\n\n // Create a private variable using closure scoping\n let defaultPrevented = false\n // Recreate preventDefault method. One way setter\n this.preventDefault = function preventDefault() {\n if (this.cancelable) {\n defaultPrevented = true\n }\n }\n\n // Create `defaultPrevented` publicly accessible prop that\n // can only be altered by the preventDefault method\n defineProperty(this, 'defaultPrevented', {\n enumerable: true,\n get() {\n return defaultPrevented\n }\n })\n }\n\n static get Defaults() {\n return {\n type: '',\n cancelable: true,\n nativeEvent: null,\n target: null,\n relatedTarget: null,\n vueTarget: null,\n componentId: null\n }\n }\n}\n\n// Named Exports\nexport { BvEvent }\n","import { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events'\nimport { contains } from '../utils/dom'\nimport { eventOn, eventOff } from '../utils/events'\n\n// @vue/component\nexport default {\n data() {\n return {\n listenForClickOut: false\n }\n },\n watch: {\n listenForClickOut(newValue, oldValue) {\n if (newValue !== oldValue) {\n eventOff(\n this.clickOutElement,\n this.clickOutEventName,\n this._clickOutHandler,\n EVENT_OPTIONS_NO_CAPTURE\n )\n if (newValue) {\n eventOn(\n this.clickOutElement,\n this.clickOutEventName,\n this._clickOutHandler,\n EVENT_OPTIONS_NO_CAPTURE\n )\n }\n }\n }\n },\n beforeCreate() {\n // Declare non-reactive properties\n this.clickOutElement = null\n this.clickOutEventName = null\n },\n mounted() {\n if (!this.clickOutElement) {\n this.clickOutElement = document\n }\n if (!this.clickOutEventName) {\n this.clickOutEventName = 'click'\n }\n if (this.listenForClickOut) {\n eventOn(\n this.clickOutElement,\n this.clickOutEventName,\n this._clickOutHandler,\n EVENT_OPTIONS_NO_CAPTURE\n )\n }\n },\n beforeDestroy() {\n eventOff(\n this.clickOutElement,\n this.clickOutEventName,\n this._clickOutHandler,\n EVENT_OPTIONS_NO_CAPTURE\n )\n },\n methods: {\n isClickOut(evt) {\n return !contains(this.$el, evt.target)\n },\n _clickOutHandler(evt) {\n if (this.clickOutHandler && this.isClickOut(evt)) {\n this.clickOutHandler(evt)\n }\n }\n }\n}\n","import { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events'\nimport { eventOn, eventOff } from '../utils/events'\n\n// @vue/component\nexport default {\n data() {\n return {\n listenForFocusIn: false\n }\n },\n watch: {\n listenForFocusIn(newValue, oldValue) {\n if (newValue !== oldValue) {\n eventOff(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n if (newValue) {\n eventOn(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n }\n }\n }\n },\n beforeCreate() {\n // Declare non-reactive properties\n this.focusInElement = null\n },\n mounted() {\n if (!this.focusInElement) {\n this.focusInElement = document\n }\n if (this.listenForFocusIn) {\n eventOn(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n }\n },\n beforeDestroy() {\n eventOff(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n },\n methods: {\n _focusInHandler(evt) {\n if (this.focusInHandler) {\n this.focusInHandler(evt)\n }\n }\n }\n}\n","import Popper from 'popper.js'\nimport { NAME_DROPDOWN } from '../constants/components'\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 { BvEvent } from '../utils/bv-event.class'\nimport { makePropsConfigurable } from '../utils/config'\nimport { attemptFocus, closest, contains, isVisible, requestAF, selectAll } from '../utils/dom'\nimport { stopEvent } from '../utils/events'\nimport { isNull } from '../utils/inspect'\nimport { mergeDeep } from '../utils/object'\nimport { HTMLElement } from '../utils/safe-types'\nimport { warn } from '../utils/warn'\nimport clickOutMixin from './click-out'\nimport focusInMixin from './focus-in'\nimport idMixin from './id'\n\n// --- Constants ---\n\n// Root dropdown event names\nconst ROOT_EVENT_PREFIX = 'bv::dropdown::'\nconst ROOT_EVENT_SHOWN = `${ROOT_EVENT_PREFIX}shown`\nconst ROOT_EVENT_HIDDEN = `${ROOT_EVENT_PREFIX}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// --- Utility methods ---\n\n// Return an array of visible items\nconst filterVisibles = els => (els || []).filter(isVisible)\n\n// --- Props ---\n\nexport const commonProps = makePropsConfigurable(\n {\n dropup: {\n // place on top if possible\n type: Boolean,\n default: false\n },\n dropright: {\n // place right if possible\n type: Boolean,\n default: false\n },\n dropleft: {\n // place left if possible\n type: Boolean,\n default: false\n },\n right: {\n // Right align menu (default is left align)\n type: Boolean,\n default: false\n },\n offset: {\n // Number of pixels to offset menu, or a CSS unit value (i.e. `1px`, `1rem`, etc.)\n type: [Number, String],\n default: 0\n },\n noFlip: {\n // Disable auto-flipping of menu from bottom <=> top\n type: Boolean,\n default: false\n },\n popperOpts: {\n type: Object,\n default: () => {}\n },\n boundary: {\n // String: `scrollParent`, `window` or `viewport`\n // HTMLElement: HTML Element reference\n type: [String, HTMLElement],\n default: 'scrollParent'\n }\n },\n NAME_DROPDOWN\n)\n\nexport const props = {\n ...commonProps,\n ...makePropsConfigurable(\n {\n disabled: {\n type: Boolean,\n default: false\n }\n },\n NAME_DROPDOWN\n )\n}\n\n// --- Mixin ---\n// @vue/component\nexport default {\n mixins: [idMixin, clickOutMixin, focusInMixin],\n provide() {\n return { bvDropdown: this }\n },\n inject: {\n bvNavbar: { default: null }\n },\n props,\n data() {\n return {\n visible: false,\n visibleChangePrevented: false\n }\n },\n computed: {\n inNavbar() {\n return !isNull(this.bvNavbar)\n },\n toggler() {\n const toggle = this.$refs.toggle\n return toggle ? toggle.$el || toggle : null\n },\n directionClass() {\n if (this.dropup) {\n return 'dropup'\n } else if (this.dropright) {\n return 'dropright'\n } else if (this.dropleft) {\n return 'dropleft'\n }\n return ''\n },\n 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 evtName = newValue ? 'show' : 'hide'\n const bvEvt = new BvEvent(evtName, {\n cancelable: true,\n vueTarget: this,\n target: this.$refs.menu,\n relatedTarget: null,\n componentId: this.safeId ? this.safeId() : this.id || null\n })\n this.emitEvent(bvEvt)\n if (bvEvt.defaultPrevented) {\n // Reset value and exit if canceled\n this.visibleChangePrevented = true\n this.visible = oldValue\n // Just in case a child element triggered `this.hide(true)`\n this.$off('hidden', this.focusToggler)\n return\n }\n if (evtName === 'show') {\n this.showMenu()\n } else {\n this.hideMenu()\n }\n }\n },\n disabled(newValue, oldValue) {\n if (newValue !== oldValue && newValue && this.visible) {\n // Hide dropdown if disabled changes to true\n this.visible = false\n }\n }\n },\n created() {\n // Create private non-reactive props\n this.$_popper = null\n 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(bvEvt) {\n const { type } = bvEvt\n this.$emit(type, bvEvt)\n this.$root.$emit(`${ROOT_EVENT_PREFIX}${type}`, bvEvt)\n },\n showMenu() {\n if (this.disabled) {\n /* istanbul ignore next */\n return\n }\n\n // Only instantiate Popper.js when dropdown is not in `<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.$root.$emit(ROOT_EVENT_SHOWN, this)\n\n // Enable listeners\n this.whileOpenListen(true)\n\n // Wrap in `$nextTick()` to ensure menu is fully rendered/shown\n this.$nextTick(() => {\n // Focus on the menu container on show\n this.focusMenu()\n // Emit the shown event\n this.$emit('shown')\n })\n },\n hideMenu() {\n this.whileOpenListen(false)\n this.$root.$emit(ROOT_EVENT_HIDDEN, this)\n this.$emit('hidden')\n this.destroyPopper()\n },\n createPopper(element) {\n this.destroyPopper()\n this.$_popper = new Popper(element, this.$refs.menu, this.getPopperConfig())\n },\n // Ensure popper event listeners are removed cleanly\n destroyPopper() {\n this.$_popper && this.$_popper.destroy()\n this.$_popper = null\n },\n // Instructs popper to re-computes the dropdown position\n // useful if the content changes size\n updatePopper() {\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_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('hidden', this.focusToggler)\n }\n },\n // Called only by a button that toggles the menu\n toggle(evt) {\n evt = evt || {}\n // Early exit when not a click event or ENTER, SPACE or DOWN were pressed\n const { type, keyCode } = evt\n if (\n type !== 'click' &&\n !(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('toggle', evt)\n stopEvent(evt)\n // Toggle visibility\n if (this.visible) {\n this.hide(true)\n } else {\n this.show()\n }\n },\n // Mousedown handler for the toggle\n /* istanbul ignore next */\n onMousedown(evt) {\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(evt, { propagation: false })\n },\n // Called from dropdown menu context\n onKeydown(evt) {\n const { keyCode } = evt\n if (keyCode === CODE_ESC) {\n // Close on ESC\n this.onEsc(evt)\n } else if (keyCode === CODE_DOWN) {\n // Down Arrow\n this.focusNext(evt, false)\n } else if (keyCode === CODE_UP) {\n // Up Arrow\n this.focusNext(evt, true)\n }\n },\n // If user presses ESC, close the menu\n onEsc(evt) {\n if (this.visible) {\n this.visible = false\n stopEvent(evt)\n // Return focus to original trigger button\n this.$once('hidden', this.focusToggler)\n }\n },\n // Called only in split button mode, for the split button\n onSplitClick(evt) {\n /* istanbul ignore next */\n if (this.disabled) {\n this.visible = false\n return\n }\n this.$emit('click', evt)\n },\n // Shared hide handler between click-out and focus-in events\n hideHandler(evt) {\n const { target } = evt\n if (this.visible && !contains(this.$refs.menu, target) && !contains(this.toggler, target)) {\n this.clearHideTimeout()\n this.$_hideTimeout = setTimeout(() => this.hide(), this.inNavbar ? 300 : 0)\n }\n },\n // Document click-out listener\n clickOutHandler(evt) {\n this.hideHandler(evt)\n },\n // Document focus-in listener\n focusInHandler(evt) {\n this.hideHandler(evt)\n },\n // Keyboard nav\n focusNext(evt, up) {\n // Ignore key up/down on form elements\n const { target } = evt\n if (!this.visible || (evt && closest(SELECTOR_FORM_CHILD, target))) {\n /* istanbul ignore next: should never happen */\n return\n }\n stopEvent(evt)\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 { SLOT_NAME_DEFAULT } from '../../constants/slot-names'\nimport { arrayIncludes } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { htmlOrText } from '../../utils/html'\nimport { toString } from '../../utils/string'\nimport dropdownMixin, { props as dropdownProps } from '../../mixins/dropdown'\nimport idMixin from '../../mixins/id'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { BButton } from '../button/button'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n ...dropdownProps,\n text: {\n type: String\n // default: null\n },\n html: {\n type: String\n // default: null\n },\n variant: {\n type: String,\n default: 'secondary'\n },\n size: {\n type: String\n // default: null\n },\n block: {\n type: Boolean,\n default: false\n },\n menuClass: {\n type: [String, Array, Object]\n // default: null\n },\n toggleTag: {\n type: String,\n default: 'button'\n },\n toggleText: {\n // TODO: This really should be `toggleLabel`\n type: String,\n default: 'Toggle dropdown'\n },\n toggleClass: {\n type: [String, Array, Object]\n // default: null\n },\n noCaret: {\n type: Boolean,\n default: false\n },\n split: {\n type: Boolean,\n default: false\n },\n splitHref: {\n type: String\n // default: undefined\n },\n splitTo: {\n type: [String, Object]\n // default: undefined\n },\n splitVariant: {\n type: String\n // default: undefined\n },\n splitClass: {\n type: [String, Array, Object]\n // default: null\n },\n splitButtonType: {\n type: String,\n default: 'button',\n validator(value) {\n return arrayIncludes(['button', 'submit', 'reset'], value)\n }\n },\n lazy: {\n // If true, only render menu contents when open\n type: Boolean,\n default: false\n },\n role: {\n type: String,\n default: 'menu'\n }\n },\n NAME_DROPDOWN\n)\n\n// --- Main component ---\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 const buttonContentSlotName = 'button-content'\n let $buttonChildren = this.normalizeSlot(buttonContentSlotName)\n let buttonContentDomProps = this.hasNormalizedSlot(buttonContentSlotName)\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 { makePropsConfigurable } from '../../utils/config'\nimport { requestAF } from '../../utils/dom'\nimport { omit } from '../../utils/object'\nimport attrsMixin from '../../mixins/attrs'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { BLink, props as BLinkProps } from '../link/link'\n\nexport const props = omit(BLinkProps, ['event', 'routerTag'])\n\n// @vue/component\nexport const BDropdownItem = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_ITEM,\n mixins: [attrsMixin, normalizeSlotMixin],\n inject: {\n bvDropdown: {\n default: null\n }\n },\n inheritAttrs: false,\n props: makePropsConfigurable(\n {\n ...props,\n linkClass: {\n type: [String, Array, Object]\n // default: null\n },\n variant: {\n type: String\n // default: null\n }\n },\n NAME_DROPDOWN_ITEM\n ),\n computed: {\n computedAttrs() {\n return {\n ...this.bvAttrs,\n role: 'menuitem'\n }\n }\n },\n methods: {\n closeDropdown() {\n // Close on next animation frame to allow <b-link> time to process\n requestAF(() => {\n if (this.bvDropdown) {\n this.bvDropdown.hide(true)\n }\n })\n },\n onClick(evt) {\n this.$emit('click', evt)\n this.closeDropdown()\n }\n },\n render(h) {\n const { linkClass, variant, active, disabled, onClick } = this\n\n return h('li', { attrs: { role: 'presentation' } }, [\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","import Vue from '../../vue'\nimport { NAME_DROPDOWN_ITEM_BUTTON } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport attrsMixin from '../../mixins/attrs'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\nexport const props = makePropsConfigurable(\n {\n active: {\n type: Boolean,\n default: false\n },\n activeClass: {\n type: String,\n default: 'active'\n },\n buttonClass: {\n type: [String, Array, Object]\n // default: null\n },\n disabled: {\n type: Boolean,\n default: false\n },\n variant: {\n type: String\n // default: null\n }\n },\n NAME_DROPDOWN_ITEM_BUTTON\n)\n\n// @vue/component\nexport const BDropdownItemButton = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_ITEM_BUTTON,\n mixins: [attrsMixin, normalizeSlotMixin],\n inject: {\n bvDropdown: {\n default: null\n }\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(evt) {\n this.$emit('click', evt)\n this.closeDropdown()\n }\n },\n render(h) {\n return h('li', { attrs: { role: 'presentation' } }, [\n h(\n 'button',\n {\n staticClass: 'dropdown-item',\n class: [\n this.buttonClass,\n {\n [this.activeClass]: this.active,\n [`text-${this.variant}`]: this.variant && !(this.active || this.disabled)\n }\n ],\n attrs: this.computedAttrs,\n on: { click: this.onClick },\n ref: 'button'\n },\n this.normalizeSlot()\n )\n ])\n }\n})\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_DROPDOWN_HEADER } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\n\nexport const props = makePropsConfigurable(\n {\n id: {\n type: String\n // default: null\n },\n tag: {\n type: String,\n default: 'header'\n },\n variant: {\n type: String\n // default: null\n }\n },\n NAME_DROPDOWN_HEADER\n)\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 $attrs = data.attrs || {}\n data.attrs = {}\n return h('li', mergeData(data, { attrs: { role: 'presentation' } }), [\n h(\n props.tag,\n {\n staticClass: 'dropdown-header',\n class: {\n [`text-${props.variant}`]: props.variant\n },\n attrs: {\n ...$attrs,\n id: props.id || null,\n role: 'heading'\n },\n ref: 'header'\n },\n children\n )\n ])\n }\n})\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_DROPDOWN_DIVIDER } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\n\nexport const props = makePropsConfigurable(\n {\n tag: {\n type: String,\n default: 'hr'\n }\n },\n NAME_DROPDOWN_DIVIDER\n)\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 const $attrs = data.attrs || {}\n data.attrs = {}\n return h('li', mergeData(data, { attrs: { role: 'presentation' } }), [\n h(props.tag, {\n staticClass: 'dropdown-divider',\n attrs: {\n ...$attrs,\n role: 'separator',\n 'aria-orientation': 'horizontal'\n },\n ref: 'divider'\n })\n ])\n }\n})\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_FORM } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\n\nexport const props = makePropsConfigurable(\n {\n id: {\n type: String\n // default: null\n },\n inline: {\n type: Boolean,\n default: false\n },\n novalidate: {\n type: Boolean,\n default: false\n },\n validated: {\n type: Boolean,\n default: false\n }\n },\n NAME_FORM\n)\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 { makePropsConfigurable } from '../../utils/config'\nimport { BForm, props as formControlProps } from '../form/form'\n\n// @vue/component\nexport const BDropdownForm = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_FORM,\n functional: true,\n props: makePropsConfigurable(\n {\n ...formControlProps,\n disabled: {\n type: Boolean,\n default: false\n },\n formClass: {\n type: [String, Object, Array]\n // default: null\n }\n },\n NAME_DROPDOWN_FORM\n ),\n render(h, { props, data, children }) {\n const $attrs = data.attrs || {}\n const $listeners = data.on || {}\n data.attrs = {}\n data.on = {}\n return h('li', mergeData(data, { attrs: { role: 'presentation' } }), [\n h(\n BForm,\n {\n ref: 'form',\n staticClass: 'b-dropdown-form',\n class: [props.formClass, { disabled: props.disabled }],\n props,\n attrs: {\n ...$attrs,\n disabled: props.disabled,\n // Tab index of -1 for keyboard navigation\n tabindex: props.disabled ? null : '-1'\n },\n on: $listeners\n },\n children\n )\n ])\n }\n})\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_DROPDOWN_TEXT } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\n\n// @vue/component\nexport const BDropdownText = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_TEXT,\n functional: true,\n props: makePropsConfigurable(\n {\n tag: {\n type: String,\n default: 'p'\n },\n textClass: {\n type: [String, Array, Object]\n // default: null\n },\n variant: {\n type: String\n // default: null\n }\n },\n NAME_DROPDOWN_TEXT\n ),\n render(h, { props, data, children }) {\n const { tag, textClass, variant } = props\n\n const attrs = data.attrs || {}\n data.attrs = {}\n\n return h('li', mergeData(data, { attrs: { role: 'presentation' } }), [\n h(\n tag,\n {\n staticClass: 'b-dropdown-text',\n class: [textClass, { [`text-${variant}`]: variant }],\n props,\n 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 { SLOT_NAME_DEFAULT, SLOT_NAME_HEADER } from '../../constants/slot-names'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport identity from '../../utils/identity'\n\nexport const props = makePropsConfigurable(\n {\n id: {\n type: String\n // default: null\n },\n header: {\n type: String\n // default: null\n },\n headerTag: {\n type: String,\n default: 'header'\n },\n headerVariant: {\n type: String\n // default: null\n },\n headerClasses: {\n type: [String, Array, Object]\n // default: null\n },\n ariaDescribedby: {\n type: String\n // default: null\n }\n },\n NAME_DROPDOWN_GROUP\n)\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 $attrs = data.attrs || {}\n data.attrs = {}\n let header\n let headerId = null\n\n if (hasNormalizedSlot(SLOT_NAME_HEADER, $scopedSlots, $slots) || props.header) {\n headerId = props.id ? `_bv_${props.id}_group_dd_header` : null\n header = h(\n props.headerTag,\n {\n staticClass: 'dropdown-header',\n class: [props.headerClasses, { [`text-${props.variant}`]: props.variant }],\n attrs: {\n id: headerId,\n role: 'heading'\n }\n },\n normalizeSlot(SLOT_NAME_HEADER, {}, $scopedSlots, $slots) || props.header\n )\n }\n\n const adb = [headerId, props.ariaDescribedBy]\n .filter(identity)\n .join(' ')\n .trim()\n\n return h('li', mergeData(data, { attrs: { role: 'presentation' } }), [\n header || h(),\n h(\n 'ul',\n {\n staticClass: 'list-unstyled',\n attrs: {\n ...$attrs,\n id: props.id || null,\n role: 'group',\n 'aria-describedby': adb || null\n }\n },\n normalizeSlot(SLOT_NAME_DEFAULT, {}, $scopedSlots, $slots)\n )\n ])\n }\n})\n","import { BDropdown } from './dropdown'\nimport { BDropdownItem } from './dropdown-item'\nimport { BDropdownItemButton } from './dropdown-item-button'\nimport { BDropdownHeader } from './dropdown-header'\nimport { BDropdownDivider } from './dropdown-divider'\nimport { BDropdownForm } from './dropdown-form'\nimport { BDropdownText } from './dropdown-text'\nimport { BDropdownGroup } from './dropdown-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst DropdownPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BDropdown,\n BDd: BDropdown,\n BDropdownItem,\n BDdItem: BDropdownItem,\n BDropdownItemButton,\n BDropdownItemBtn: BDropdownItemButton,\n BDdItemButton: BDropdownItemButton,\n BDdItemBtn: BDropdownItemButton,\n BDropdownHeader,\n BDdHeader: BDropdownHeader,\n BDropdownDivider,\n BDdDivider: BDropdownDivider,\n BDropdownForm,\n BDdForm: BDropdownForm,\n BDropdownText,\n BDdText: BDropdownText,\n BDropdownGroup,\n BDdGroup: BDropdownGroup\n }\n})\n\nexport {\n DropdownPlugin,\n BDropdown,\n BDropdownItem,\n BDropdownItemButton,\n BDropdownHeader,\n BDropdownDivider,\n BDropdownForm,\n BDropdownText,\n BDropdownGroup\n}\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_EMBED } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { arrayIncludes } from '../../utils/array'\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 type: {\n type: String,\n default: 'iframe',\n validator(value) {\n return arrayIncludes(TYPES, value)\n }\n },\n tag: {\n type: String,\n default: 'div'\n },\n aspect: {\n type: String,\n default: '16by9'\n }\n },\n NAME_EMBED\n)\n\n// --- Main component ---\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 return h(\n props.tag,\n {\n ref: data.ref,\n staticClass: 'embed-responsive',\n class: {\n [`embed-responsive-${props.aspect}`]: props.aspect\n }\n },\n [h(props.type, mergeData(data, { ref: '', staticClass: 'embed-responsive-item' }), children)]\n )\n }\n})\n","import { BEmbed } from './embed'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst EmbedPlugin = /*#__PURE__*/ pluginFactory({\n components: { BEmbed }\n})\n\nexport { EmbedPlugin, BEmbed }\n","import get from '../utils/get'\nimport { makePropsConfigurable } from '../utils/config'\nimport { stripTags } from '../utils/html'\nimport { isArray, isPlainObject, isUndefined } from '../utils/inspect'\nimport { keys } from '../utils/object'\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 options: {\n type: [Array, Object],\n default: () => []\n },\n valueField: {\n type: String,\n default: 'value'\n },\n textField: {\n type: String,\n default: 'text'\n },\n htmlField: {\n type: String,\n default: 'html'\n },\n disabledField: {\n type: String,\n default: 'disabled'\n }\n },\n 'formOptionControls'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport default {\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 { makePropsConfigurable } from '../../utils/config'\nimport { htmlOrText } from '../../utils/html'\nimport formOptionsMixin, { props as formOptionsProps } from '../../mixins/form-options'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\n// @vue/component\nexport const BFormDatalist = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_DATALIST,\n mixins: [formOptionsMixin, normalizeSlotMixin],\n props: makePropsConfigurable(\n {\n ...formOptionsProps,\n id: {\n type: String,\n required: true\n }\n },\n NAME_FORM_DATALIST\n ),\n render(h) {\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: this.id } }, [$options, this.normalizeSlot()])\n }\n})\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_FORM_TEXT } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\n\nexport const props = makePropsConfigurable(\n {\n id: {\n type: String\n // default: null\n },\n tag: {\n type: String,\n default: 'small'\n },\n textVariant: {\n type: String,\n default: 'muted'\n },\n inline: {\n type: Boolean,\n default: false\n }\n },\n NAME_FORM_TEXT\n)\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 { makePropsConfigurable } from '../../utils/config'\n\nexport const props = makePropsConfigurable(\n {\n id: {\n type: String\n // default: null\n },\n tag: {\n type: String,\n default: 'div'\n },\n tooltip: {\n type: Boolean,\n default: false\n },\n forceShow: {\n type: Boolean,\n default: false\n },\n state: {\n // Tri-state prop: `true`, `false`, or `null`\n type: Boolean,\n default: null\n },\n ariaLive: {\n type: String\n // default: null\n },\n role: {\n type: String\n // default: null\n }\n },\n NAME_FORM_INVALID_FEEDBACK\n)\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 show = props.forceShow === true || props.state === false\n return h(\n props.tag,\n mergeData(data, {\n class: {\n 'invalid-feedback': !props.tooltip,\n 'invalid-tooltip': props.tooltip,\n 'd-block': show\n },\n attrs: {\n id: props.id || null,\n role: props.role || null,\n 'aria-live': props.ariaLive || null,\n 'aria-atomic': props.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 { makePropsConfigurable } from '../../utils/config'\n\nexport const props = makePropsConfigurable(\n {\n id: {\n type: String\n // default: null\n },\n tag: {\n type: String,\n default: 'div'\n },\n tooltip: {\n type: Boolean,\n default: false\n },\n forceShow: {\n type: Boolean,\n default: false\n },\n state: {\n // Tri-state prop: `true`, `false`, or `null`\n type: Boolean,\n default: null\n },\n ariaLive: {\n type: String\n // default: null\n },\n role: {\n type: String\n // default: null\n }\n },\n NAME_FORM_VALID_FEEDBACK\n)\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 show = props.forceShow === true || props.state === true\n return h(\n props.tag,\n mergeData(data, {\n class: {\n 'valid-feedback': !props.tooltip,\n 'valid-tooltip': props.tooltip,\n 'd-block': show\n },\n attrs: {\n id: props.id || null,\n role: props.role || null,\n 'aria-live': props.ariaLive || null,\n 'aria-atomic': props.ariaLive ? 'true' : null\n }\n }),\n children\n )\n }\n})\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_FORM_ROW } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\n\nexport const props = makePropsConfigurable(\n {\n tag: {\n type: String,\n default: 'div'\n }\n },\n NAME_FORM_ROW\n)\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\nconst looseIndexOf = (arr, val) => {\n // Assumes that the first argument is an array\n for (let i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) {\n return i\n }\n }\n return -1\n}\n\nexport default looseIndexOf\n","import { makePropsConfigurable } from '../utils/config'\nimport { attemptFocus, isVisible, matches, requestAF, select } from '../utils/dom'\n\n// --- Constants ---\n\nconst SELECTOR = 'input, textarea, select'\n\n// --- Props ---\n\nexport const props = {\n id: {\n type: String\n // default: undefined\n },\n name: {\n type: String\n // default: undefined\n },\n ...makePropsConfigurable(\n {\n disabled: {\n type: Boolean,\n default: false\n },\n required: {\n type: Boolean,\n default: false\n },\n form: {\n type: String\n // default: null\n },\n autofocus: {\n type: Boolean,\n default: false\n }\n },\n 'formControls'\n )\n}\n\n// --- Mixin ---\n// @vue/component\nexport default {\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 { makePropsConfigurable } from '../utils/config'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n plain: {\n type: Boolean,\n default: false\n }\n },\n 'formControls'\n)\n\n// --- Mixin ---\n// @vue/component\nexport default {\n props,\n computed: {\n custom() {\n return !this.plain\n }\n }\n}\n","import looseEqual from '../utils/loose-equal'\nimport { makePropsConfigurable } from '../utils/config'\nimport { attemptBlur, attemptFocus } from '../utils/dom'\nimport attrsMixin from './attrs'\nimport formCustomMixin, { props as formCustomProps } from './form-custom'\nimport normalizeSlotMixin from './normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n ...formCustomProps,\n value: {\n // Value when checked\n // type: Object,\n // default: undefined\n },\n checked: {\n // This is the v-model\n // type: Object,\n // default: undefined\n },\n inline: {\n type: Boolean,\n default: false\n },\n button: {\n // Only applicable in standalone mode (non group)\n type: Boolean,\n default: false\n },\n buttonVariant: {\n // Only applicable when rendered with button style\n type: String\n // default: null\n },\n ariaLabel: {\n // Placed on the input if present.\n type: String\n // default: null\n },\n ariaLabelledby: {\n // Placed on the input if present.\n type: String\n // default: null\n }\n },\n 'formRadioCheckControls'\n)\n\n// --- Mixin ---\n// @vue/component\nexport default {\n mixins: [attrsMixin, formCustomMixin, normalizeSlotMixin],\n inheritAttrs: false,\n model: {\n prop: 'checked',\n event: 'input'\n },\n props,\n data() {\n return {\n localChecked: this.isGroup ? this.bvGroup.checked : this.checked,\n hasFocus: false\n }\n },\n computed: {\n computedLocalChecked: {\n get() {\n return this.isGroup ? this.bvGroup.localChecked : this.localChecked\n },\n set(val) {\n if (this.isGroup) {\n this.bvGroup.localChecked = val\n } else {\n this.localChecked = val\n }\n }\n },\n isGroup() {\n // Is this check/radio a child of check-group or radio-group?\n return Boolean(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.getName && (this.isGroup ? this.bvGroup.required : this.required)\n },\n getName() {\n // Group name preferred over local name\n return (this.isGroup ? this.bvGroup.groupName : this.name) || null\n },\n getForm() {\n return (this.isGroup ? this.bvGroup.form : this.form) || null\n },\n getSize() {\n return (this.isGroup ? this.bvGroup.size : this.size) || ''\n },\n getState() {\n return this.isGroup ? this.bvGroup.computedState : this.computedState\n },\n getButtonVariant() {\n // Local variant preferred over group variant\n if (this.buttonVariant) {\n return this.buttonVariant\n } else if (this.isGroup && this.bvGroup.buttonVariant) {\n return this.bvGroup.buttonVariant\n }\n // default variant\n return 'secondary'\n },\n buttonClasses() {\n // Same for radio & check\n return [\n 'btn',\n `btn-${this.getButtonVariant}`,\n {\n [`btn-${this.getSize}`]: this.getSize,\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 return {\n ...this.bvAttrs,\n id: this.safeId(),\n type: this.isRadio ? 'radio' : 'checkbox',\n name: this.getName,\n form: this.getForm,\n disabled: this.isDisabled,\n required: this.isRequired,\n 'aria-required': this.isRequired || null,\n 'aria-label': this.ariaLabel || null,\n 'aria-labelledby': this.ariaLabelledby || null\n }\n }\n },\n watch: {\n checked(newValue) {\n if (!looseEqual(newValue, this.computedLocalChecked)) {\n this.computedLocalChecked = newValue\n }\n }\n },\n methods: {\n handleFocus(evt) {\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 (evt.target) {\n if (evt.type === 'focus') {\n this.hasFocus = true\n } else if (evt.type === 'blur') {\n this.hasFocus = false\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 defaultSlot = this.normalizeSlot()\n\n // Generate the input element\n const on = { change: this.handleChange }\n if (this.isBtnMode) {\n // Handlers for focus styling when in button mode\n on.focus = on.blur = this.handleFocus\n }\n const input = h('input', {\n ref: 'input',\n key: 'input',\n on,\n class: {\n 'form-check-input': this.isPlain,\n 'custom-control-input': this.isCustom,\n 'is-valid': this.getState === true && !this.isBtnMode,\n 'is-invalid': this.getState === false && !this.isBtnMode,\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/2911\n 'position-static': this.isPlain && !defaultSlot\n },\n directives: [\n {\n name: 'model',\n rawName: 'v-model',\n value: this.computedLocalChecked,\n expression: 'computedLocalChecked'\n }\n ],\n attrs: this.computedAttrs,\n domProps: {\n value: this.value,\n checked: this.isChecked\n }\n })\n\n if (this.isBtnMode) {\n // Button mode\n let button = h('label', { class: this.buttonClasses }, [input, defaultSlot])\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 return button\n } else {\n // Not button mode\n let label = h()\n // If no label content in plain mode we dont render the label\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/2911\n if (!(this.isPlain && !defaultSlot)) {\n label = h(\n 'label',\n {\n class: {\n 'form-check-label': this.isPlain,\n 'custom-control-label': this.isCustom\n },\n attrs: { for: this.safeId() }\n },\n defaultSlot\n )\n }\n // Wrap it in a div\n return h(\n 'div',\n {\n class: {\n 'form-check': this.isPlain,\n 'form-check-inline': this.isPlain && this.isInline,\n 'custom-control': this.isCustom,\n 'custom-control-inline': this.isCustom && this.isInline,\n 'custom-checkbox': this.isCustom && this.isCheck && !this.isSwitch,\n 'custom-switch': this.isSwitch,\n 'custom-radio': this.isCustom && this.isRadio,\n // Temporary until Bootstrap v4 supports sizing (most likely in V5)\n [`b-custom-control-${this.getSize}`]: Boolean(this.getSize && !this.isBtnMode)\n }\n },\n [input, label]\n )\n }\n }\n}\n","import { makePropsConfigurable } from '../utils/config'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n size: {\n type: String\n // default: null\n }\n },\n 'formControls'\n)\n\n// --- Mixin ---\n// @vue/component\nexport default {\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 { isBoolean } from '../utils/inspect'\nimport { makePropsConfigurable } from '../utils/config'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n state: {\n // Tri-state prop: true, false, null (or undefined)\n type: Boolean,\n default: null\n }\n },\n 'formState'\n)\n\n// --- Mixin ---\n// @vue/component\nexport default {\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 }\n}\n","import Vue from '../../vue'\nimport { NAME_FORM_CHECKBOX } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport looseEqual from '../../utils/loose-equal'\nimport looseIndexOf from '../../utils/loose-index-of'\nimport { isArray } from '../../utils/inspect'\nimport formControlMixin, { props as formControlProps } from '../../mixins/form-control'\nimport formRadioCheckMixin, { props as formRadioCheckProps } 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 from '../../mixins/id'\n\n// @vue/component\nexport const BFormCheckbox = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_CHECKBOX,\n mixins: [\n formRadioCheckMixin, // Includes shared render function\n idMixin,\n formControlMixin,\n formSizeMixin,\n formStateMixin\n ],\n inject: {\n bvGroup: {\n from: 'bvCheckGroup',\n default: false\n }\n },\n props: makePropsConfigurable(\n {\n ...formControlProps,\n ...formRadioCheckProps,\n ...formSizeProps,\n ...formStateProps,\n value: {\n // type: [String, Number, Boolean, Object],\n default: true\n },\n uncheckedValue: {\n // type: [String, Number, Boolean, Object],\n // Not applicable in multi-check mode\n default: false\n },\n indeterminate: {\n // Not applicable in multi-check mode\n type: Boolean,\n default: false\n },\n switch: {\n // Custom switch styling\n type: Boolean,\n default: false\n },\n checked: {\n // v-model (Array when multiple checkboxes have same name)\n // type: [String, Number, Boolean, Object, Array],\n default: null\n }\n },\n NAME_FORM_CHECKBOX\n ),\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 isCheck() {\n return true\n }\n },\n watch: {\n computedLocalChecked(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit('input', newValue)\n\n const $input = this.$refs.input\n if ($input) {\n this.$emit('update:indeterminate', $input.indeterminate)\n }\n }\n },\n indeterminate(newVal) {\n this.setIndeterminate(newVal)\n }\n },\n mounted() {\n // Set initial indeterminate state\n this.setIndeterminate(this.indeterminate)\n },\n methods: {\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('change', localChecked)\n\n // If this is a child of `<form-checkbox-group>`,\n // we emit a change event on it as well\n if (this.isGroup) {\n this.bvGroup.$emit('change', localChecked)\n }\n\n this.$emit('update:indeterminate', indeterminate)\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('update: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 { makePropsConfigurable } from '../../utils/config'\nimport formControlMixin, { props as formControlProps } from '../../mixins/form-control'\nimport formRadioCheckMixin, { props as formRadioCheckProps } 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 from '../../mixins/id'\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: makePropsConfigurable(\n {\n ...formControlProps,\n ...formRadioCheckProps,\n ...formSizeProps,\n ...formStateProps,\n checked: {\n // v-model\n // type: [String, Number, Boolean, Object],\n default: null\n }\n },\n NAME_FORM_RADIO\n ),\n computed: {\n isChecked() {\n return looseEqual(this.value, this.computedLocalChecked)\n },\n isRadio() {\n return true\n },\n isCheck() {\n return false\n }\n },\n watch: {\n computedLocalChecked(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit('input', newValue)\n }\n }\n },\n methods: {\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('change', localChecked)\n\n // If this is a child of `<form-radio-group>`,\n // we emit a change event on it as well\n if (this.isGroup) {\n this.bvGroup.$emit('change', localChecked)\n }\n })\n }\n }\n})\n","import { SLOT_NAME_FIRST } from '../constants/slot-names'\nimport looseEqual from '../utils/loose-equal'\nimport { makePropsConfigurable } from '../utils/config'\nimport { htmlOrText } from '../utils/html'\nimport { BFormCheckbox } from '../components/form-checkbox/form-checkbox'\nimport { BFormRadio } from '../components/form-radio/form-radio'\nimport formCustomMixin, { props as formCustomProps } from './form-custom'\nimport normalizeSlotMixin from './normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n ...formCustomProps,\n validated: {\n type: Boolean,\n default: false\n },\n ariaInvalid: {\n type: [Boolean, String],\n default: false\n },\n stacked: {\n type: Boolean,\n default: false\n },\n buttons: {\n // Render as button style\n type: Boolean,\n default: false\n },\n buttonVariant: {\n // Only applicable when rendered with button style\n type: String\n // default: null\n }\n },\n 'formRadioCheckGroups'\n)\n\n// --- Mixin ---\n// @vue/component\nexport default {\n mixins: [formCustomMixin, normalizeSlotMixin],\n model: {\n prop: 'checked',\n event: 'input'\n },\n props,\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 if (this.buttons) {\n return [\n 'btn-group-toggle',\n this.inline ? 'btn-group' : 'btn-group-vertical',\n this.size ? `btn-group-${this.size}` : '',\n this.validated ? `was-validated` : ''\n ]\n }\n return [this.validated ? `was-validated` : '']\n },\n computedAriaInvalid() {\n const ariaInvalid = this.ariaInvalid\n if (ariaInvalid === true || ariaInvalid === 'true' || ariaInvalid === '') {\n return 'true'\n }\n return this.computedState === false ? 'true' : null\n }\n },\n watch: {\n checked(newVal) {\n if (!looseEqual(newVal, this.localChecked)) {\n this.localChecked = newVal\n }\n },\n localChecked(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit('input', newValue)\n }\n }\n },\n render(h) {\n const $inputs = this.formOptions.map((option, index) => {\n const key = `BV_option_${index}`\n\n return h(\n this.isRadioGroup ? BFormRadio : BFormCheckbox,\n {\n props: {\n id: this.safeId(key),\n value: option.value,\n // Individual radios or checks can be disabled in a group\n disabled: option.disabled || false\n // We don't need to include these, since the input's will know they are inside here\n // name: this.groupName,\n // form: this.form || null,\n // required: Boolean(this.name && this.required)\n },\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 id: this.safeId(),\n role: this.isRadioGroup ? 'radiogroup' : 'group',\n // Add `tabindex=\"-1\"` to allow group to be focused if needed by screen readers\n tabindex: '-1',\n 'aria-required': this.required ? 'true' : null,\n 'aria-invalid': this.computedAriaInvalid\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 { makePropsConfigurable } from '../../utils/config'\nimport formControlMixin, { props as formControlProps } from '../../mixins/form-control'\nimport formOptionsMixin, { props as formOptionsProps } from '../../mixins/form-options'\nimport formRadioCheckGroupMixin, {\n props as formRadioCheckGroupProps\n} from '../../mixins/form-radio-check-group'\nimport formSizeMixin, { props as formSizeProps } from '../../mixins/form-size'\nimport formStateMixin, { props as formStateProps } from '../../mixins/form-state'\nimport idMixin from '../../mixins/id'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n ...formControlProps,\n ...formOptionsProps,\n ...formRadioCheckGroupProps,\n ...formSizeProps,\n ...formStateProps,\n switches: {\n // Custom switch styling\n type: Boolean,\n default: false\n },\n checked: {\n type: Array,\n default: null\n }\n },\n NAME_FORM_CHECKBOX_GROUP\n)\n\n// --- Main component ---\n// @vue/component\nexport const BFormCheckboxGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_CHECKBOX_GROUP,\n mixins: [\n idMixin,\n formControlMixin,\n formRadioCheckGroupMixin, // Includes render function\n formOptionsMixin,\n formSizeMixin,\n formStateMixin\n ],\n provide() {\n return {\n bvCheckGroup: this\n }\n },\n props,\n data() {\n return {\n localChecked: this.checked || []\n }\n },\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 { EVENT_OPTIONS_NO_CAPTURE } from '../../constants/events'\nimport { isBrowser } from '../../utils/env'\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// --- Utility methods ---\n\nconst createListener = handler => {\n const listener = evt => {\n handler(evt.type === MOUSEENTER, evt)\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 (isBrowser) {\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 { SLOT_NAME_BUTTON_CONTENT, SLOT_NAME_DEFAULT } from '../constants/slot-names'\nimport { attemptBlur, attemptFocus } from './dom'\nimport { stopEvent } from './events'\nimport { omit } from './object'\nimport { toString } from './string'\nimport dropdownMixin, { commonProps as dropdownProps } from '../mixins/dropdown'\nimport formSizeMixin, { props as formSizeProps } from '../mixins/form-size'\nimport formStateMixin, { props as formStateProps } from '../mixins/form-state'\nimport idMixin from '../mixins/id'\nimport normalizeSlotMixin from '../mixins/normalize-slot'\nimport { props as formControlProps } from '../mixins/form-control'\nimport { VBHover } from '../directives/hover/hover'\nimport { BIconChevronDown } from '../icons/icons'\n\n// --- Props ---\n\nexport const props = {\n ...omit(formControlProps, ['autofocus']),\n ...formSizeProps,\n ...dropdownProps,\n ...formStateProps,\n value: {\n // This is the value placed on the hidden input\n type: String,\n default: ''\n },\n formattedValue: {\n // This is the value shown in the label\n // Defaults back to `value`\n type: String\n // default: null\n },\n placeholder: {\n // This is the value placed on the hidden input when no value selected\n type: String\n // default: null\n },\n labelSelected: {\n // Value placed in sr-only span inside label when value is present\n type: String\n // default: null\n },\n readonly: {\n type: Boolean,\n default: false\n },\n lang: {\n type: String\n // default: null\n },\n rtl: {\n // Tri-state prop: `true`, `false` or `null`\n type: Boolean,\n // We must explicitly default to `null` here otherwise\n // Vue coerces `undefined` into Boolean `false`\n default: null\n },\n buttonOnly: {\n // When true, renders a btn-group wrapper and visually hides the label\n type: Boolean,\n default: false\n },\n buttonVariant: {\n // Applicable in button mode only\n type: String,\n default: 'secondary'\n },\n menuClass: {\n // Extra classes to apply to the `dropdown-menu` div\n type: [String, Array, Object]\n // default: null\n }\n}\n\n// --- Main component ---\n// @vue/component\nexport const BVFormBtnLabelControl = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_BUTTON_LABEL_CONTROL,\n directives: {\n BHover: 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(evt) {\n this.hasFocus = evt.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 } = this\n const value = toString(this.value) || ''\n const buttonOnly = !!this.buttonOnly\n const invalid = state === false || (required && !value)\n\n const btnScope = { isHovered, hasFocus, state, opened: visible }\n const $button = h(\n 'button',\n {\n ref: 'toggle',\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 },\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 ref: 'menu',\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 },\n [this.normalizeSlot(SLOT_NAME_DEFAULT, { opened: visible })]\n )\n\n // Value label\n const $label = h(\n 'label',\n {\n staticClass: 'form-control text-break text-wrap bg-transparent h-auto',\n class: [\n {\n // Hidden in button only mode\n 'sr-only': buttonOnly,\n // Mute the text if showing the placeholder\n 'text-muted': !value\n },\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 */ evt => {\n stopEvent(evt, { 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 {\n BVFormBtnLabelControl,\n props as BVFormBtnLabelControlProps\n} from '../../utils/bv-form-btn-label-control'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { createDate, constrainDate, formatYMD, parseYMD } from '../../utils/date'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { pick, omit } from '../../utils/object'\nimport { pluckProps } from '../../utils/props'\nimport idMixin from '../../mixins/id'\nimport { BButton } from '../button/button'\nimport { BCalendar, props as BCalendarProps } from '../calendar/calendar'\nimport { BIconCalendar, BIconCalendarFill } from '../../icons/icons'\n\n// --- Main component ---\n// @vue/component\nexport const BFormDatepicker = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_DATEPICKER,\n // The mixins order determines the order of appearance in the props reference section\n mixins: [idMixin],\n model: {\n prop: 'value',\n event: 'input'\n },\n props: makePropsConfigurable(\n {\n ...BCalendarProps,\n ...omit(BVFormBtnLabelControlProps, ['id', 'value', 'formattedValue', 'rtl', 'lang']),\n resetValue: {\n type: [String, Date]\n // default: null\n },\n noCloseOnSelect: {\n type: Boolean,\n default: false\n },\n buttonOnly: {\n type: Boolean,\n default: false\n },\n buttonVariant: {\n // Applicable in button only mode\n type: String,\n default: 'secondary'\n },\n calendarWidth: {\n // Width of the calendar dropdown\n type: String,\n default: '270px'\n },\n todayButton: {\n type: Boolean,\n default: false\n },\n labelTodayButton: {\n type: String,\n default: 'Select today'\n },\n todayButtonVariant: {\n type: String,\n default: 'outline-primary'\n },\n resetButton: {\n type: Boolean,\n default: false\n },\n labelResetButton: {\n type: String,\n default: 'Reset'\n },\n resetButtonVariant: {\n type: String,\n default: 'outline-danger'\n },\n closeButton: {\n type: Boolean,\n default: false\n },\n labelCloseButton: {\n type: String,\n default: 'Close'\n },\n closeButtonVariant: {\n type: String,\n default: 'outline-secondary'\n },\n // Dark mode\n dark: {\n type: Boolean,\n default: false\n }\n },\n NAME_FORM_DATEPICKER\n ),\n data() {\n return {\n // We always use `YYYY-MM-DD` value internally\n localYMD: formatYMD(this.value) || '',\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 value(newVal) {\n this.localYMD = formatYMD(newVal) || ''\n },\n localYMD(newVal) {\n // We only update the v-model when the datepicker is open\n if (this.isVisible) {\n this.$emit('input', this.valueAsDate ? parseYMD(newVal) || null : newVal || '')\n }\n },\n calendarYM(newVal, oldVal) {\n // Displayed calendar month has changed\n // So possibly the calendar height has changed...\n // We need to update popper computed position\n if (newVal !== oldVal && oldVal) {\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('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('shown')\n })\n },\n onHidden() {\n this.isVisible = false\n this.$emit('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: { size: 'sm', disabled: disabled || readonly, variant: this.todayButtonVariant },\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: { size: 'sm', disabled: disabled || readonly, variant: this.resetButtonVariant },\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: { size: 'sm', disabled, variant: this.closeButtonVariant },\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 key: 'calendar',\n ref: 'calendar',\n staticClass: 'b-form-date-calendar w-100',\n props: {\n ...pluckProps(BCalendarProps, $props),\n value: localYMD,\n hidden: !this.isVisible\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 },\n $footer\n )\n\n return h(\n BVFormBtnLabelControl,\n {\n ref: 'control',\n staticClass: 'b-form-datepicker',\n props: {\n ...pluckProps(BVFormBtnLabelControlProps, $props),\n id: this.safeId(),\n value: localYMD,\n formattedValue: localYMD ? this.formattedValue : '',\n placeholder,\n rtl: this.isRTL,\n lang: this.computedLang,\n menuClass: [{ 'bg-dark': !!dark, 'text-light': !!dark }, this.menuClass]\n },\n on: {\n show: this.onShow,\n shown: this.onShown,\n hidden: this.onHidden\n },\n scopedSlots: {\n 'button-content': $scopedSlots['button-content'] || this.defaultButtonFn\n }\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 { EVENT_OPTIONS_PASSIVE } from '../../constants/events'\nimport { RX_EXTENSION, RX_STAR } from '../../constants/regex'\nimport cloneDeep from '../../utils/clone-deep'\nimport identity from '../../utils/identity'\nimport looseEqual from '../../utils/loose-equal'\nimport { from as arrayFrom, flatten, flattenDeep } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { closest } from '../../utils/dom'\nimport { hasPromiseSupport } from '../../utils/env'\nimport { eventOn, eventOff, stopEvent } from '../../utils/events'\nimport {\n isArray,\n isFile,\n isFunction,\n isNull,\n isUndefined,\n isUndefinedOrNull\n} from '../../utils/inspect'\nimport { File } from '../../utils/safe-types'\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 from '../../mixins/id'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { props as formSizeProps } from '../../mixins/form-size'\n\n// --- Constants ---\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// @vue/component\nexport const BFormFile = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_FILE,\n mixins: [\n attrsMixin,\n idMixin,\n formControlMixin,\n formStateMixin,\n formCustomMixin,\n normalizeSlotMixin\n ],\n inheritAttrs: false,\n model: {\n prop: 'value',\n event: 'input'\n },\n props: makePropsConfigurable(\n {\n ...formControlProps,\n ...formCustomProps,\n ...formStateProps,\n ...formSizeProps,\n value: {\n type: [File, Array],\n default: 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 accept: {\n type: String,\n default: ''\n },\n // Instruct input to capture from camera\n capture: {\n type: Boolean,\n default: false\n },\n placeholder: {\n type: String,\n default: 'No file chosen'\n },\n browseText: {\n type: String,\n default: 'Browse'\n },\n dropPlaceholder: {\n type: String,\n default: 'Drop files here'\n },\n noDropPlaceholder: {\n type: String,\n default: 'Not allowed'\n },\n multiple: {\n type: Boolean,\n default: false\n },\n directory: {\n type: Boolean,\n default: false\n },\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: {\n type: Boolean,\n default: false\n },\n noDrop: {\n type: Boolean,\n default: false\n },\n fileNameFormatter: {\n type: Function\n // default: null\n }\n },\n NAME_FORM_FILE\n ),\n data() {\n return {\n files: [],\n dragging: false,\n // IE 11 doesn't respect setting `evt.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(Boolean)\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 let result = null\n try {\n result = fileNameFormatter()\n } catch {}\n return isUndefined(result) ? this.defaultFileNameFormatter : fileNameFormatter\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 const h = this.$createElement\n\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('drop-placeholder', { allowed: this.dropAllowed }) ||\n (this.dropAllowed\n ? this.dropPlaceholder\n : h('span', { staticClass: 'text-danger' }, this.noDropPlaceholder))\n )\n }\n\n // No file chosen\n if (this.files.length === 0) {\n return this.normalizeSlot('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('file-name')) {\n return this.normalizeSlot('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 value(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('input', multiple ? files : files[0] || null)\n }\n }\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.$on('hook:beforeDestroy', () => {\n eventOff($form, 'reset', this.reset, EVENT_OPTIONS_PASSIVE)\n })\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(evt) {\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 || evt.type === 'focusout') {\n this.hasFocus = false\n } else {\n // Add focus styling for custom file input\n this.hasFocus = true\n }\n },\n onChange(evt) {\n const { type, target, dataTransfer = {} } = evt\n const isDrop = type === 'drop'\n\n // Always emit original event\n this.$emit('change', evt)\n\n const items = arrayFrom(dataTransfer.items || [])\n if (hasPromiseSupport && 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(evt) {\n stopEvent(evt)\n this.dragging = true\n const { dataTransfer = {} } = evt\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(evt) {\n stopEvent(evt)\n this.dragging = true\n const { dataTransfer = {} } = evt\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(evt) {\n stopEvent(evt)\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(evt) {\n stopEvent(evt)\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(evt)\n }\n },\n render(h) {\n const { custom, plain, size, dragging, stateClass } = this\n\n // Form Input\n const $input = h('input', {\n ref: '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 })\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],\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\nconst 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\nexport default cssEscape\n","import { mergeData } from '../../vue'\nimport { NAME_COL } from '../../constants/components'\nimport { RX_COL_CLASS } from '../../constants/regex'\nimport identity from '../../utils/identity'\nimport memoize from '../../utils/memoize'\nimport { arrayIncludes } from '../../utils/array'\nimport { getBreakpointsUpCached } from '../../utils/config'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { assign, create, keys } from '../../utils/object'\nimport { 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// Generates a prop object with a type of `[Boolean, String, Number]`\nconst boolStrNum = () => ({\n type: [Boolean, String, Number],\n default: false\n})\n\n// Generates a prop object with a type of `[String, Number]`\nconst strNum = () => ({\n type: [String, Number],\n default: null\n})\n\n// Compute a breakpoint class name\nconst computeBreakpoint = (type, breakpoint, val) => {\n let className = type\n if (isUndefinedOrNull(val) || val === 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, an empty string indicates the prop's presence.\n if (type === 'col' && (val === '' || val === true)) {\n // .col-md\n return lowerCase(className)\n }\n // .order-md-6\n className += `-${val}`\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// Lazy evaled props factory for BCol\nconst generateProps = () => {\n // Grab the breakpoints from the cached config (exclude the '' (xs) breakpoint)\n const breakpoints = getBreakpointsUpCached().filter(identity)\n\n // Supports classes like: .col-sm, .col-md-6, .col-lg-auto\n const breakpointCol = breakpoints.reduce((propMap, breakpoint) => {\n if (breakpoint) {\n // We filter out the '' breakpoint (xs), as making a prop name ''\n // would not work. The `cols` prop is used for `xs`\n propMap[breakpoint] = boolStrNum()\n }\n return propMap\n }, create(null))\n\n // Supports classes like: .offset-md-1, .offset-lg-12\n const breakpointOffset = breakpoints.reduce((propMap, breakpoint) => {\n propMap[suffixPropName(breakpoint, 'offset')] = strNum()\n return propMap\n }, create(null))\n\n // Supports classes like: .order-md-1, .order-lg-12\n const breakpointOrder = breakpoints.reduce((propMap, breakpoint) => {\n propMap[suffixPropName(breakpoint, 'order')] = strNum()\n return propMap\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 {\n // Generic flexbox .col (xs)\n col: {\n type: Boolean,\n default: false\n },\n // .col-[1-12]|auto (xs)\n cols: strNum(),\n // Breakpoint Specific props\n ...breakpointCol,\n offset: strNum(),\n ...breakpointOffset,\n order: strNum(),\n ...breakpointOrder,\n // Flex alignment\n alignSelf: {\n type: String,\n default: null,\n validator(value) {\n return arrayIncludes(ALIGN_SELF_VALUES, value)\n }\n },\n tag: {\n type: String,\n default: 'div'\n }\n }\n}\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 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 && !props.cols),\n [`col-${props.cols}`]: props.cols,\n [`offset-${props.offset}`]: props.offset,\n [`order-${props.order}`]: props.order,\n [`align-self-${props.alignSelf}`]: props.alignSelf\n })\n\n return h(props.tag, mergeData(data, { class: classList }), children)\n }\n}\n","import { NAME_FORM_GROUP } from '../../constants/components'\nimport { SLOT_NAME_DESCRIPTION, SLOT_NAME_LABEL } from '../../constants/slot-names'\nimport cssEscape from '../../utils/css-escape'\nimport memoize from '../../utils/memoize'\nimport { arrayIncludes } from '../../utils/array'\nimport { getBreakpointsUpCached, makePropsConfigurable } from '../../utils/config'\nimport {\n select,\n selectAll,\n isVisible,\n setAttr,\n removeAttr,\n getAttr,\n attemptFocus\n} from '../../utils/dom'\nimport { isBrowser } from '../../utils/env'\nimport { isBoolean } from '../../utils/inspect'\nimport { toInteger } from '../../utils/number'\nimport { keys, create } from '../../utils/object'\nimport { upperFirst } from '../../utils/string'\nimport formStateMixin, { props as formStateProps } from '../../mixins/form-state'\nimport idMixin 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\n// Selector for finding first input in the form-group\nconst INPUT_SELECTOR = 'input:not([disabled]),textarea:not([disabled]),select:not([disabled])'\n\n// A list of interactive elements (tag names) inside `<b-form-group>`'s legend\nconst LEGEND_INTERACTIVE_ELEMENTS = ['input', 'select', 'textarea', 'label', 'button', 'a']\n\n// -- BFormGroup prop factory -- used for lazy generation of props\n\n// Memoize this function to return cached values to\n// save time in computed functions\nconst makePropName = memoize((breakpoint = '', prefix = '') => `${prefix}${upperFirst(breakpoint)}`)\n\n// BFormGroup prop generator for lazy generation of props\nconst generateProps = () => {\n const CODE_BREAKPOINTS = getBreakpointsUpCached()\n\n // Generate the `labelCol` breakpoint props\n const bpLabelColProps = CODE_BREAKPOINTS.reduce((props, breakpoint) => {\n // i.e. 'label-cols', 'label-cols-sm', 'label-cols-md', ...\n props[makePropName(breakpoint, 'labelCols')] = {\n type: [Number, String, Boolean],\n default: breakpoint ? false : null\n }\n return props\n }, create(null))\n\n // Generate the `labelAlign` breakpoint props\n const bpLabelAlignProps = CODE_BREAKPOINTS.reduce((props, breakpoint) => {\n // 'label-align', 'bel-align-sm', 'label-align-md', ...\n props[makePropName(breakpoint, 'labelAlign')] = {\n type: String // left, right, center\n // default: null\n }\n return props\n }, create(null))\n\n return makePropsConfigurable(\n {\n ...formStateProps,\n label: {\n type: String\n // default: null\n },\n labelFor: {\n type: String\n // default: null\n },\n labelSize: {\n type: String\n // default: null\n },\n labelSrOnly: {\n type: Boolean,\n default: false\n },\n // label-cols prop and all label-cols-{bp} props\n ...bpLabelColProps,\n // label-align prop and all label-align-{bp} props\n ...bpLabelAlignProps,\n labelClass: {\n type: [String, Array, Object]\n // default: null\n },\n description: {\n type: String\n // default: null\n },\n invalidFeedback: {\n type: String\n // default: null\n },\n validFeedback: {\n type: String\n // default: null\n },\n tooltip: {\n // Enable tooltip style feedback\n type: Boolean,\n default: false\n },\n feedbackAriaLive: {\n type: String,\n default: 'assertive'\n },\n validated: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n }\n },\n NAME_FORM_GROUP\n )\n}\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 describedByIds: ''\n }\n },\n computed: {\n labelColProps() {\n const props = {}\n getBreakpointsUpCached().forEach(breakpoint => {\n // Grab the value if the label column breakpoint prop\n let propVal = this[makePropName(breakpoint, 'labelCols')]\n // Handle case where the prop's value is an empty string,\n // which represents `true`\n propVal = propVal === '' ? true : propVal || false\n if (!isBoolean(propVal) && propVal !== 'auto') {\n // Convert to column size to number\n propVal = toInteger(propVal, 0)\n // Ensure column size is greater than `0`\n propVal = propVal > 0 ? propVal : false\n }\n if (propVal) {\n // Add the prop to the list of props to give to `<b-col>`\n // If breakpoint is '' (`labelCols` is `true`), then we use the\n // col prop to make equal width at 'xs'\n props[breakpoint || (isBoolean(propVal) ? 'col' : 'cols')] = propVal\n }\n })\n return props\n },\n labelAlignClasses() {\n const classes = []\n getBreakpointsUpCached().forEach(breakpoint => {\n // Assemble the label column breakpoint align classes\n const propVal = this[makePropName(breakpoint, 'labelAlign')] || null\n if (propVal) {\n const className = breakpoint ? `text-${breakpoint}-${propVal}` : `text-${propVal}`\n classes.push(className)\n }\n })\n return classes\n },\n isHorizontal() {\n // Determine if the resultant form-group will be rendered\n // horizontal (meaning it has label-col breakpoints)\n return keys(this.labelColProps).length > 0\n }\n },\n watch: {\n describedByIds(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.setInputDescribedBy(newValue, oldValue)\n }\n }\n },\n mounted() {\n this.$nextTick(() => {\n // Set the `aria-describedby` IDs on the input specified by `label-for`\n // We do this in a `$nextTick()` to ensure the children have finished rendering\n this.setInputDescribedBy(this.describedByIds)\n })\n },\n methods: {\n legendClick(evt) {\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 const { target } = evt\n const tagName = target ? target.tagName : ''\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 const inputs = selectAll(INPUT_SELECTOR, this.$refs.content).filter(isVisible)\n // If only a single input, focus it, emulating label behaviour\n if (inputs && inputs.length === 1) {\n attemptFocus(inputs[0])\n }\n },\n // Sets the `aria-describedby` attribute on the input if label-for 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 setInputDescribedBy(add, remove) {\n if (this.labelFor && isBrowser) {\n // We need to escape `labelFor` since it can be user-provided\n const input = select(`#${cssEscape(this.labelFor)}`, this.$refs.content)\n if (input) {\n const adb = 'aria-describedby'\n let ids = (getAttr(input, adb) || '').split(/\\s+/)\n add = (add || '').split(/\\s+/)\n remove = (remove || '').split(/\\s+/)\n // Update ID list, preserving any original IDs\n // and ensuring the ID's are unique\n ids = ids\n .filter(id => !arrayIncludes(remove, id))\n .concat(add)\n .filter(Boolean)\n ids = keys(ids.reduce((memo, id) => ({ ...memo, [id]: true }), {}))\n .join(' ')\n .trim()\n if (ids) {\n setAttr(input, adb, ids)\n } else {\n // No IDs, so remove the attribute\n removeAttr(input, adb)\n }\n }\n }\n }\n },\n render(h) {\n const {\n labelFor,\n tooltip,\n feedbackAriaLive,\n computedState: state,\n isHorizontal,\n normalizeSlot\n } = this\n const isFieldset = !labelFor\n\n let $label = h()\n const labelContent = normalizeSlot(SLOT_NAME_LABEL) || this.label\n const labelId = labelContent ? this.safeId('_BV_label_') : null\n if (labelContent || isHorizontal) {\n const { labelSize, labelColProps } = this\n const isLegend = isFieldset\n const labelTag = isLegend ? '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: isLegend ? { click: this.legendClick } : {},\n props: isHorizontal ? { tag: labelTag, ...labelColProps } : {},\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: isLegend ? '-1' : null\n },\n class: [\n // Hide the focus ring on the legend\n isLegend ? '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 || isLegend ? 'col-form-label' : '',\n // Emulate label padding top of `0` on legend when not horizontal\n !isHorizontal && isLegend ? '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 && !isLegend ? '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('invalid-feedback') || this.invalidFeedback\n const invalidFeedbackId = invalidFeedbackContent ? this.safeId('_BV_feedback_invalid_') : null\n if (invalidFeedbackContent) {\n $invalidFeedback = h(\n BFormInvalidFeedback,\n {\n props: {\n id: invalidFeedbackId,\n // If state is explicitly `false`, always show the feedback\n state,\n tooltip,\n ariaLive: feedbackAriaLive,\n role: feedbackAriaLive ? 'alert' : null\n },\n attrs: { tabindex: invalidFeedbackContent ? '-1' : null }\n },\n [invalidFeedbackContent]\n )\n }\n\n let $validFeedback = h()\n const validFeedbackContent = normalizeSlot('valid-feedback') || this.validFeedback\n const validFeedbackId = validFeedbackContent ? this.safeId('_BV_feedback_valid_') : null\n if (validFeedbackContent) {\n $validFeedback = h(\n BFormValidFeedback,\n {\n props: {\n id: validFeedbackId,\n // If state is explicitly `true`, always show the feedback\n state,\n tooltip,\n ariaLive: feedbackAriaLive,\n role: feedbackAriaLive ? 'alert' : null\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 ? this.safeId('_BV_description_') : null\n if (descriptionContent) {\n $description = h(\n BFormText,\n {\n attrs: {\n id: descriptionId,\n tabindex: descriptionContent ? '-1' : null\n }\n },\n [descriptionContent]\n )\n }\n\n const $content = h(\n isHorizontal ? BCol : 'div',\n {\n ref: 'content',\n // Hide focus ring\n staticClass: 'bv-no-focus-ring',\n attrs: {\n tabindex: isFieldset ? '-1' : null,\n role: isFieldset ? 'group' : null,\n 'aria-labelledby': isFieldset ? labelId : null\n }\n },\n [normalizeSlot() || h(), $invalidFeedback, $validFeedback, $description]\n )\n\n // Update the `aria-describedby` IDs\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 this.describedByIds = [\n descriptionId,\n state === false ? invalidFeedbackId : null,\n state === true ? validFeedbackId : null\n ]\n .filter(Boolean)\n .join(' ')\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: [this.validated ? 'was-validated' : null, this.stateClass],\n attrs: {\n id: this.safeId(),\n disabled: isFieldset ? this.disabled : null,\n role: isFieldset ? null : 'group',\n 'aria-invalid': state === false ? 'true' : null,\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 // Only apply `aria-describedby` IDs if we are a fieldset\n // as the input will have the IDs when not a fieldset\n 'aria-describedby': isFieldset ? this.describedByIds : 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","// @vue/component\nexport default {\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 { makePropsConfigurable } from '../utils/config'\nimport { attemptBlur, attemptFocus } from '../utils/dom'\nimport { stopEvent } from '../utils/events'\nimport { isUndefined } from '../utils/inspect'\nimport { mathMax } from '../utils/math'\nimport { toInteger, toFloat } from '../utils/number'\nimport { toString } from '../utils/string'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n value: {\n type: [String, Number],\n default: ''\n },\n ariaInvalid: {\n type: [Boolean, String],\n default: false\n },\n readonly: {\n type: Boolean,\n default: false\n },\n plaintext: {\n type: Boolean,\n default: false\n },\n autocomplete: {\n type: String\n // default: null\n },\n placeholder: {\n type: String\n // default: null\n },\n formatter: {\n type: Function\n // default: null\n },\n lazyFormatter: {\n type: Boolean,\n default: false\n },\n trim: {\n type: Boolean,\n default: false\n },\n number: {\n type: Boolean,\n default: false\n },\n lazy: {\n // Only update the `v-model` on blur/change events\n type: Boolean,\n default: false\n },\n debounce: {\n // Debounce timeout (in ms). Not applicable with `lazy` prop\n type: [Number, String],\n default: 0\n }\n },\n 'formTextControls'\n)\n\n// --- Mixin ---\n// @vue/component\nexport default {\n model: {\n prop: 'value',\n event: 'update'\n },\n props,\n data() {\n return {\n localValue: toString(this.value),\n vModelValue: this.value\n }\n },\n computed: {\n computedClass() {\n return [\n {\n // Range input needs class `custom-range`\n 'custom-range': this.type === 'range',\n // `plaintext` not supported by `type=\"range\"` or `type=\"color\"`\n 'form-control-plaintext':\n this.plaintext && this.type !== 'range' && this.type !== 'color',\n // `form-control` not used by `type=\"range\"` or `plaintext`\n // Always used by `type=\"color\"`\n 'form-control': (!this.plaintext && this.type !== 'range') || this.type === 'color'\n },\n this.sizeFormClass,\n this.stateClass\n ]\n },\n computedAriaInvalid() {\n if (!this.ariaInvalid || this.ariaInvalid === 'false') {\n // `this.ariaInvalid` is `null` or `false` or 'false'\n return this.computedState === false ? 'true' : null\n }\n if (this.ariaInvalid === true) {\n // User wants explicit `:aria-invalid=\"true\"`\n return 'true'\n }\n // Most likely a string value (which could be the string 'true')\n return this.ariaInvalid\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 let result = null\n try {\n result = this.formatter()\n } catch {}\n return !isUndefined(result)\n }\n },\n watch: {\n value(newVal) {\n const stringifyValue = toString(newVal)\n if (stringifyValue !== this.localValue && newVal !== 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 = newVal\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:beforeDestroy', this.clearDebounce)\n // Preset the internal state\n const value = this.value\n const stringifyValue = toString(value)\n /* istanbul ignore next */\n if (stringifyValue !== this.localValue && value !== this.vModelValue) {\n this.localValue = stringifyValue\n this.vModelValue = value\n }\n },\n methods: {\n clearDebounce() {\n clearTimeout(this.$_inputDebounceTimer)\n this.$_inputDebounceTimer = null\n },\n formatValue(value, evt, force = false) {\n value = toString(value)\n if (this.hasFormatter && (!this.lazyFormatter || force)) {\n value = this.formatter(value, evt)\n }\n return value\n },\n modifyValue(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.lazy\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('update', 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(evt) {\n // `evt.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 (evt.target.composing) {\n return\n }\n const value = evt.target.value\n const formattedValue = this.formatValue(value, evt)\n // Exit when the `formatter` function strictly returned `false`\n // or prevented the input event\n /* istanbul ignore next */\n if (formattedValue === false || evt.defaultPrevented) {\n stopEvent(evt, { propagation: false })\n return\n }\n this.localValue = formattedValue\n this.updateValue(formattedValue)\n this.$emit('input', formattedValue)\n },\n onChange(evt) {\n const value = evt.target.value\n const formattedValue = this.formatValue(value, evt)\n // Exit when the `formatter` function strictly returned `false`\n // or prevented the input event\n /* istanbul ignore next */\n if (formattedValue === false || evt.defaultPrevented) {\n stopEvent(evt, { propagation: false })\n return\n }\n this.localValue = formattedValue\n this.updateValue(formattedValue, true)\n this.$emit('change', formattedValue)\n },\n onBlur(evt) {\n // Apply the `localValue` on blur to prevent cursor jumps\n // on mobile browsers (e.g. caused by autocomplete)\n const value = evt.target.value\n const formattedValue = this.formatValue(value, evt, 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('blur', evt)\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","// @vue/component\nexport default {\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 { arrayIncludes } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { attemptBlur } from '../../utils/dom'\nimport { eventOn, eventOff, eventOnOff, stopEvent } from '../../utils/events'\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 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// --- Main component ---\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: makePropsConfigurable(\n {\n ...formControlProps,\n ...formSizeProps,\n ...formStateProps,\n ...formTextProps,\n // `value` prop is defined in form-text mixin\n type: {\n type: String,\n default: 'text',\n validator(type) {\n return arrayIncludes(TYPES, type)\n }\n },\n noWheel: {\n // Disable mousewheel to prevent wheel from\n // changing values (i.e. number/date)\n type: Boolean,\n default: false\n },\n min: {\n type: [String, Number]\n // default: null\n },\n max: {\n type: [String, Number]\n // default: null\n },\n step: {\n type: [String, Number]\n // default: null\n },\n list: {\n type: String\n // default: null\n }\n },\n NAME_FORM_INPUT\n ),\n computed: {\n localType() {\n // We only allow certain types\n return arrayIncludes(TYPES, this.type) ? this.type : 'text'\n },\n computedAttrs() {\n const { localType: type, disabled, placeholder, required, min, max, step } = this\n\n return {\n id: this.safeId(),\n name: this.name || null,\n form: this.form || null,\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(newVal) {\n this.setWheelStopper(newVal)\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(evt) {\n stopEvent(evt, { propagation: false })\n attemptBlur(this.$el)\n }\n },\n render(h) {\n return h('input', {\n ref: 'input',\n class: this.computedClass,\n attrs: this.computedAttrs,\n domProps: { value: this.localValue },\n on: this.computedListeners\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/config'\nimport idMixin from '../../mixins/id'\nimport formControlMixin, { props as formControlProps } from '../../mixins/form-control'\nimport formOptionsMixin, { props as formOptionsProps } from '../../mixins/form-options'\nimport formRadioCheckGroupMixin, {\n props as formRadioCheckGroupProps\n} from '../../mixins/form-radio-check-group'\nimport formSizeMixin, { props as formSizeProps } from '../../mixins/form-size'\nimport formStateMixin, { props as formStateProps } from '../../mixins/form-state'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n ...formControlProps,\n ...formOptionsProps,\n ...formRadioCheckGroupProps,\n ...formSizeProps,\n ...formStateProps,\n checked: {\n // type: [String, Number, Boolean, Object],\n default: null\n }\n },\n NAME_FORM_RADIO_GROUP\n)\n\n// --- Main component ---\n// @vue/component\nexport const BFormRadioGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_RADIO_GROUP,\n mixins: [\n idMixin,\n formControlMixin,\n formRadioCheckGroupMixin, // Includes render function\n formOptionsMixin,\n formSizeMixin,\n formStateMixin\n ],\n provide() {\n return {\n bvRadioGroup: this\n }\n },\n props,\n data() {\n return {\n localChecked: this.checked\n }\n },\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 { CODE_LEFT, CODE_RIGHT, CODE_UP, CODE_DOWN } from '../../constants/key-codes'\nimport identity from '../../utils/identity'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { isNull } from '../../utils/inspect'\nimport { isLocaleRTL } from '../../utils/locale'\nimport { mathMax, mathMin } from '../../utils/math'\nimport { toInteger, toFloat } from '../../utils/number'\nimport { omit } from '../../utils/object'\nimport { toString } from '../../utils/string'\nimport formSizeMixin, { props as formSizeProps } from '../../mixins/form-size'\nimport idMixin 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 MIN_STARS = 3\nconst DEFAULT_STARS = 5\n\n// --- Utility 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// --- Private helper components ---\n\n// @vue/component\nconst BVFormRatingStar = Vue.extend({\n name: NAME_FORM_RATING_STAR,\n mixins: [normalizeSlotMixin],\n props: {\n rating: {\n type: Number,\n default: 0\n },\n star: {\n type: Number,\n default: 0\n },\n focused: {\n // If parent is focused\n type: Boolean,\n default: false\n },\n variant: {\n type: String\n // default: null\n },\n disabled: {\n type: Boolean,\n default: false\n },\n readonly: {\n type: Boolean,\n default: false\n },\n hasClear: {\n type: Boolean,\n default: false\n }\n },\n methods: {\n onClick(evt) {\n if (!this.disabled && !this.readonly) {\n stopEvent(evt, { propagation: false })\n this.$emit('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// --- Main component ---\n// @vue/component\nexport const BFormRating = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_RATING,\n components: { BIconStar, BIconStarHalf, BIconStarFill, BIconX },\n mixins: [idMixin, formSizeMixin],\n model: {\n prop: 'value',\n event: 'change'\n },\n props: makePropsConfigurable(\n {\n ...omit(formControlProps, ['required', 'autofocus']),\n ...formSizeProps,\n value: {\n type: [Number, String],\n default: null\n },\n stars: {\n type: [Number, String],\n default: DEFAULT_STARS,\n validator(value) {\n return toInteger(value) >= MIN_STARS\n }\n },\n variant: {\n type: String\n // default: undefined\n },\n color: {\n // CSS color string (overrides variant)\n type: String\n // default: undefined\n },\n showValue: {\n type: Boolean,\n default: false\n },\n showValueMax: {\n type: Boolean,\n default: false\n },\n readonly: {\n type: Boolean,\n default: false\n },\n noBorder: {\n type: Boolean,\n default: false\n },\n inline: {\n type: Boolean,\n default: false\n },\n precision: {\n type: [Number, String],\n default: null\n },\n iconEmpty: {\n type: String,\n default: 'star'\n },\n iconHalf: {\n type: String,\n default: 'star-half'\n },\n iconFull: {\n type: String,\n default: 'star-fill'\n },\n iconClear: {\n type: String,\n default: 'x'\n },\n locale: {\n // Locale for the formatted value (if shown)\n // Defaults to the browser locale. Falls back to `en`\n type: [String, Array]\n // default: undefined\n },\n showClear: {\n type: Boolean,\n default: false\n }\n },\n NAME_FORM_RATING\n ),\n data() {\n const value = toFloat(this.value, 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 value(newVal, oldVal) {\n if (newVal !== oldVal) {\n const value = toFloat(newVal, null)\n this.localValue = isNull(value) ? null : clampValue(value, 0, this.computedStars)\n }\n },\n localValue(newVal, oldVal) {\n if (newVal !== oldVal && newVal !== (this.value || 0)) {\n this.$emit('change', newVal || null)\n }\n },\n disabled(newVal) {\n if (newVal) {\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(evt) {\n const { keyCode } = evt\n if (\n this.isInteractive &&\n arrayIncludes([CODE_LEFT, CODE_DOWN, CODE_RIGHT, CODE_UP], keyCode)\n ) {\n stopEvent(evt, { 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(evt) {\n this.hasFocus = !this.isInteractive ? false : evt.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['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['icon-empty'] || this.iconEmptyFn,\n half: $scopedSlots['icon-half'] || this.iconHalfFn,\n full: $scopedSlots['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 get from '../../../utils/get'\nimport { makePropsConfigurable } from '../../../utils/config'\nimport { isNull, isPlainObject, isUndefined } from '../../../utils/inspect'\nimport formOptionsMixin, { props as formOptionsProps } from '../../../mixins/form-options'\n\n// @vue/component\nexport default {\n mixins: [formOptionsMixin],\n props: makePropsConfigurable(\n {\n ...formOptionsProps,\n labelField: {\n type: String,\n default: 'label'\n },\n optionsField: {\n type: String,\n default: 'options'\n }\n },\n 'formOptions'\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 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 { makePropsConfigurable } from '../../utils/config'\n\nexport const props = makePropsConfigurable(\n {\n value: {\n // type: [String, Number, Boolean, Object],\n required: true\n },\n disabled: {\n type: Boolean,\n default: false\n }\n },\n NAME_FORM_SELECT_OPTION\n)\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 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 { makePropsConfigurable } from '../../utils/config'\nimport { SLOT_NAME_FIRST } from '../../constants/slot-names'\nimport { htmlOrText } from '../../utils/html'\nimport formOptionsMixin, { props as formOptionsProps } from '../../mixins/form-options'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { BFormSelectOption } from './form-select-option'\n\n// @vue/component\nconst BFormSelectOptionGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_SELECT_OPTION_GROUP,\n mixins: [normalizeSlotMixin, formOptionsMixin],\n props: makePropsConfigurable(\n {\n ...formOptionsProps,\n label: {\n type: String,\n required: true\n }\n },\n NAME_FORM_SELECT_OPTION_GROUP\n ),\n render(h) {\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: this.label } }, [\n this.normalizeSlot(SLOT_NAME_FIRST),\n $options,\n this.normalizeSlot()\n ])\n }\n})\n\nexport { BFormSelectOptionGroup }\n","import Vue from '../../vue'\nimport { NAME_FORM_SELECT } from '../../constants/components'\nimport { SLOT_NAME_FIRST } from '../../constants/slot-names'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { from as arrayFrom } from '../../utils/array'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { htmlOrText } from '../../utils/html'\nimport { isArray } from '../../utils/inspect'\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 from '../../mixins/id'\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// @vue/component\nexport const BFormSelect = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_SELECT,\n mixins: [\n idMixin,\n normalizeSlotMixin,\n formControlMixin,\n formSizeMixin,\n formStateMixin,\n formCustomMixin,\n optionsMixin\n ],\n model: {\n prop: 'value',\n event: 'input'\n },\n props: makePropsConfigurable(\n {\n ...formControlProps,\n ...formCustomProps,\n ...formSizeProps,\n ...formStateProps,\n value: {\n // type: [Object, Array, String, Number, Boolean],\n // default: undefined\n },\n multiple: {\n type: Boolean,\n default: false\n },\n selectSize: {\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 type: Number,\n default: 0\n },\n ariaInvalid: {\n type: [Boolean, String],\n default: false\n }\n },\n NAME_FORM_SELECT\n ),\n data() {\n return {\n localValue: this.value\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 computedAriaInvalid() {\n if (this.ariaInvalid === true || this.ariaInvalid === 'true') {\n return 'true'\n }\n return this.stateClass === 'is-invalid' ? 'true' : null\n }\n },\n watch: {\n value(newVal) {\n this.localValue = newVal\n },\n localValue() {\n this.$emit('input', this.localValue)\n }\n },\n methods: {\n focus() {\n attemptFocus(this.$refs.input)\n },\n blur() {\n attemptBlur(this.$refs.input)\n },\n onChange(evt) {\n const { target } = evt\n const selectedVal = arrayFrom(target.options)\n .filter(o => o.selected)\n .map(o => ('_value' in o ? o._value : o.value))\n this.localValue = target.multiple ? selectedVal : selectedVal[0]\n this.$nextTick(() => {\n this.$emit('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 {\n CODE_DOWN,\n CODE_END,\n CODE_HOME,\n CODE_PAGEUP,\n CODE_UP,\n CODE_PAGEDOWN\n} from '../../constants/key-codes'\nimport identity from '../../utils/identity'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { eventOnOff, stopEvent } from '../../utils/events'\nimport { isNull, isUndefined } from '../../utils/inspect'\nimport { isLocaleRTL } from '../../utils/locale'\nimport { mathFloor, mathMax, mathPow, mathRound } from '../../utils/math'\nimport { toFloat, toInteger } from '../../utils/number'\nimport { omit } from '../../utils/object'\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 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\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 {\n ...omit(formControlProps, ['required', 'autofocus']),\n ...formSizeProps,\n ...formStateProps,\n value: {\n // Should this really be String, to match native number inputs?\n type: Number,\n default: null\n },\n min: {\n type: [Number, String],\n default: DEFAULT_MIN\n },\n max: {\n type: [Number, String],\n default: DEFAULT_MAX\n },\n step: {\n type: [Number, String],\n default: DEFAULT_STEP\n },\n wrap: {\n type: Boolean,\n default: false\n },\n formatterFn: {\n type: Function\n // default: null\n },\n placeholder: {\n type: String\n // default: null\n },\n readonly: {\n type: Boolean,\n default: false\n },\n inline: {\n type: Boolean,\n default: false\n },\n vertical: {\n type: Boolean,\n default: false\n },\n ariaLabel: {\n type: String\n // default: null\n },\n ariaControls: {\n type: String\n // default: null\n },\n labelDecrement: {\n type: String,\n default: 'Decrement'\n },\n labelIncrement: {\n type: String,\n default: 'Increment'\n },\n locale: {\n type: [String, Array]\n // default: null\n },\n repeatDelay: {\n type: [Number, String],\n default: DEFAULT_REPEAT_DELAY\n },\n repeatInterval: {\n type: [Number, String],\n default: DEFAULT_REPEAT_INTERVAL\n },\n repeatThreshold: {\n type: [Number, String],\n default: DEFAULT_REPEAT_THRESHOLD\n },\n repeatStepMultiplier: {\n type: [Number, String],\n default: DEFAULT_REPEAT_MULTIPLIER\n }\n },\n NAME_FORM_SPINBUTTON\n)\n\n// --- BFormSpinbutton ---\n// @vue/component\nexport const BFormSpinbutton = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_SPINBUTTON,\n // Mixin order is important!\n mixins: [attrsMixin, idMixin, formSizeMixin, formStateMixin, normalizeSlotMixin],\n inheritAttrs: false,\n props,\n data() {\n return {\n localValue: toFloat(this.value, 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 let result = null\n try {\n result = formatterFn()\n } catch {}\n return isUndefined(result) ? this.defaultFormatter : formatterFn\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 value(value) {\n this.localValue = toFloat(value, null)\n },\n localValue(value) {\n this.$emit('input', 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('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(evt) {\n if (!this.disabled) {\n this.hasFocus = evt.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(evt) {\n const { keyCode, altKey, ctrlKey, metaKey } = evt\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(evt, { 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(evt, this.stepUp)\n } else if (keyCode === CODE_DOWN) {\n this.handleStepRepeat(evt, 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(evt) {\n // Emit a change event when the keyup happens\n const { keyCode, altKey, ctrlKey, metaKey } = evt\n /* istanbul ignore if */\n if (this.disabled || this.readonly || altKey || ctrlKey || metaKey) {\n return\n }\n if (arrayIncludes(KEY_CODES, keyCode)) {\n stopEvent(evt, { propagation: false })\n this.resetTimers()\n this.$_keyIsDown = false\n this.emitChange()\n }\n },\n handleStepRepeat(evt, stepper) {\n const { type, button } = evt || {}\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(evt) {\n // `<body>` listener, only enabled when mousedown starts\n const { type, button } = evt || {}\n /* istanbul ignore if */\n if (type === 'mouseup' && button) {\n // Ignore non left button (main === 0) mouse button click\n return\n }\n stopEvent(evt, { 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 = evt => {\n if (!disabled && !readonly) {\n stopEvent(evt, { propagation: false })\n this.setMouseup(true)\n // Since we `preventDefault()`, we must manually focus the button\n attemptFocus(evt.currentTarget)\n this.handleStepRepeat(evt, stepper)\n }\n }\n return h(\n 'button',\n {\n key: keyRef || null,\n ref: keyRef,\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 },\n [h('div', [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 'increment'\n )\n const $decrement = makeButton(\n this.stepDown,\n this.labelDecrement,\n BIconDash,\n 'dec',\n 'ArrowDown',\n false,\n 'decrement'\n )\n\n let $hidden = h()\n if (this.name && !disabled) {\n $hidden = h('input', {\n key: 'hidden',\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 })\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 ref: 'spinner',\n key: 'output',\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 },\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 { CODE_DELETE } from '../../constants/key-codes'\nimport { makePropsConfigurable } from '../../utils/config'\nimport idMixin from '../../mixins/id'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { BBadge } from '../badge/badge'\nimport { BButtonClose } from '../button/button-close'\n\nexport const BFormTag = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_TAG,\n mixins: [idMixin, normalizeSlotMixin],\n props: makePropsConfigurable(\n {\n variant: {\n type: String,\n default: 'secondary'\n },\n disabled: {\n type: Boolean,\n default: false\n },\n title: {\n type: String\n // default: null\n },\n pill: {\n type: Boolean,\n default: false\n },\n removeLabel: {\n type: String,\n default: 'Remove tag'\n },\n tag: {\n type: String,\n default: 'span'\n }\n },\n NAME_FORM_TAG\n ),\n methods: {\n onDelete(evt) {\n const { type, keyCode } = evt\n if (!this.disabled && (type === 'click' || (type === 'keydown' && keyCode === CODE_DELETE))) {\n this.$emit('remove')\n }\n }\n },\n render(h) {\n const tagId = this.safeId()\n const tagLabelId = this.safeId('_taglabel_')\n let $remove = h()\n if (!this.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.onDelete,\n keydown: this.onDelete\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() || this.title || [h()]\n )\n return h(\n BBadge,\n {\n staticClass: 'b-form-tag d-inline-flex align-items-baseline mw-100',\n class: { disabled: this.disabled },\n attrs: { id: tagId, title: this.title || null, 'aria-labelledby': tagLabelId },\n props: { tag: this.tag, variant: this.variant, pill: this.pill }\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 { CODE_BACKSPACE, CODE_DELETE, CODE_ENTER } from '../../constants/key-codes'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slot-names'\nimport { RX_SPACES } from '../../constants/regex'\nimport cssEscape from '../../utils/css-escape'\nimport identity from '../../utils/identity'\nimport looseEqual from '../../utils/loose-equal'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport {\n attemptBlur,\n attemptFocus,\n closest,\n isActiveElement,\n matches,\n requestAF,\n select\n} from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { pick } from '../../utils/object'\nimport { isEvent, isNumber, isString, isUndefined } from '../../utils/inspect'\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 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\n// Supported input types (for built in input)\nconst TYPES = ['text', 'email', 'tel', 'url', 'number']\n\n// --- Utility 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 = evt => (isString(evt) ? evt : isEvent(evt) ? evt.target.value || '' : '')\n\n// Returns a fresh empty `tagsState` object\nconst cleanTagsState = () => ({\n all: [],\n valid: [],\n invalid: [],\n duplicate: []\n})\n\n// --- Main component ---\n// @vue/component\nexport const BFormTags = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_TAGS,\n mixins: [idMixin, formControlMixin, formSizeMixin, formStateMixin, normalizeSlotMixin],\n model: {\n // Even though this is the default that Vue assumes, we need\n // to add it for the docs to reflect that this is the model\n prop: 'value',\n event: 'input'\n },\n props: makePropsConfigurable(\n {\n ...formControlProps,\n ...formSizeProps,\n ...formStateProps,\n value: {\n // The v-model prop\n type: Array,\n default: () => []\n },\n placeholder: {\n type: String,\n default: 'Add tag...'\n },\n inputId: {\n type: String\n // default: null\n },\n inputType: {\n type: String,\n default: 'text',\n validator(value) {\n return arrayIncludes(TYPES, value)\n }\n },\n inputClass: {\n type: [String, Array, Object]\n // default: null\n },\n inputAttrs: {\n // Additional attributes to add to the input element\n type: Object,\n default: () => ({})\n },\n addButtonText: {\n type: String,\n default: 'Add'\n },\n addButtonVariant: {\n type: String,\n default: 'outline-secondary'\n },\n tagVariant: {\n type: String,\n default: 'secondary'\n },\n tagClass: {\n type: [String, Array, Object]\n // default: null\n },\n tagPills: {\n type: Boolean,\n default: false\n },\n tagRemoveLabel: {\n type: String,\n default: 'Remove tag'\n },\n tagRemovedLabel: {\n type: String,\n default: 'Tag removed'\n },\n tagValidator: {\n type: Function\n // default: null\n },\n duplicateTagText: {\n type: String,\n default: 'Duplicate tag(s)'\n },\n invalidTagText: {\n type: String,\n default: 'Invalid tag(s)'\n },\n limitTagsText: {\n type: String,\n default: 'Tag limit reached'\n },\n limit: {\n type: Number\n // default: null\n },\n separator: {\n // Character (or characters) that trigger adding tags\n type: [String, Array]\n // default: null\n },\n removeOnDelete: {\n // Enable deleting last tag in list when CODE_BACKSPACE is\n // pressed and input is empty\n type: Boolean,\n default: false\n },\n addOnChange: {\n // Enable change event triggering tag addition\n // Handy if using <select> as the input\n type: Boolean,\n default: false\n },\n noAddOnEnter: {\n // Disable ENTER key from triggering tag addition\n type: Boolean,\n default: false\n },\n noOuterFocus: {\n // Disable the focus ring on the root element\n type: Boolean,\n default: false\n },\n ignoreInputFocusSelector: {\n // Disable the input focus behavior when clicking\n // on element matching the selector (or selectors)\n type: [Array, String],\n default: () => ['.b-form-tag', 'button', 'input', 'select']\n }\n },\n NAME_FORM_TAGS\n ),\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 return {\n // Merge in user supplied attributes\n ...this.inputAttrs,\n // Must have attributes\n id: this.computedInputId,\n value: this.newTag,\n disabled: this.disabled || null,\n form: this.form || null\n }\n },\n computedInputHandlers() {\n return {\n input: this.onInputInput,\n change: this.onInputChange,\n keydown: this.onInputKeydown\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 value(newVal) {\n this.tags = cleanTags(newVal)\n },\n tags(newVal, oldVal) {\n // Update the `v-model` (if it differs from the value prop)\n if (!looseEqual(newVal, this.value)) {\n this.$emit('input', newVal)\n }\n if (!looseEqual(newVal, oldVal)) {\n newVal = concat(newVal).filter(identity)\n oldVal = concat(oldVal).filter(identity)\n this.removedTags = oldVal.filter(old => !arrayIncludes(newVal, old))\n }\n },\n tagsState(newVal, oldVal) {\n // Emit a tag-state event when the `tagsState` object changes\n if (!looseEqual(newVal, oldVal)) {\n this.$emit('tag-state', newVal.valid, newVal.invalid, newVal.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.value)\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 // --- Input element event handlers ---\n onInputInput(evt) {\n /* istanbul ignore next: hard to test composition events */\n if (this.disabled || (isEvent(evt) && evt.target.composing)) {\n // `evt.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(evt)\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(evt) {\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(evt)\n /* istanbul ignore next */\n if (this.newTag !== newTag) {\n this.newTag = newTag\n }\n this.addTag()\n }\n },\n onInputKeydown(evt) {\n // Early exit\n /* istanbul ignore next */\n if (this.disabled || !isEvent(evt)) {\n return\n }\n const keyCode = evt.keyCode\n const value = evt.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(evt, { 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(evt, { propagation: false })\n this.tags = this.tags.slice(0, -1)\n }\n },\n // --- Wrapper event handlers ---\n onClick(evt) {\n const ignoreFocusSelector = this.computeIgnoreInputFocusSelector\n const { target } = evt\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 let result = null\n try {\n result = tagValidator()\n } catch {}\n return isUndefined(result) ? true : tagValidator(tag)\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 tags,\n inputAttrs,\n inputType,\n inputHandlers,\n removeTag,\n addTag,\n isInvalid,\n isDuplicate,\n isLimitReached,\n disableAddButton,\n disabled,\n placeholder,\n inputClass,\n tagRemoveLabel,\n tagVariant,\n tagPills,\n tagClass,\n addButtonText,\n addButtonVariant,\n invalidTagText,\n duplicateTagText,\n limitTagsText\n }) {\n const h = this.$createElement\n\n // Make the list of tags\n const $tags = tags.map(tag => {\n tag = toString(tag)\n return h(\n BFormTag,\n {\n class: tagClass,\n props: {\n // `BFormTag` will auto generate an ID\n // so we do not need to set the ID prop\n tag: 'li',\n title: tag,\n disabled,\n variant: tagVariant,\n pill: tagPills,\n removeLabel: tagRemoveLabel\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 ref: 'input',\n // Directive needed to get `evt.target.composing` set (if needed)\n directives: [{ name: 'model', value: inputAttrs.value }],\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 })\n\n // Add button\n const $button = h(\n BButton,\n {\n ref: 'button',\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 variant: addButtonVariant,\n disabled: disableAddButton || isLimitReached\n },\n on: { click: () => addTag() }\n },\n [this.normalizeSlot('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: { id: invalidFeedbackId, forceShow: true },\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 // Return the content\n return [$ul, $feedback]\n }\n },\n render(h) {\n const { name, disabled, 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 // <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 'disabled',\n 'state',\n 'size',\n 'limit',\n 'separator',\n 'placeholder',\n 'inputClass',\n 'tagRemoveLabel',\n 'tagVariant',\n 'tagPills',\n 'tagClass',\n 'addButtonText',\n 'addButtonVariant',\n 'invalidTagText',\n 'duplicateTagText',\n 'limitTagsText'\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 // for native submission of forms\n $hidden = tags.map(tag => {\n return h('input', {\n attrs: {\n type: 'hidden',\n value: tag,\n name,\n form: this.form || null\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 { makePropsConfigurable } from '../../utils/config'\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 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 from '../../mixins/id'\nimport listenOnRootMixin from '../../mixins/listen-on-root'\nimport listenersMixin from '../../mixins/listeners'\nimport { VBVisible } from '../../directives/visible/visible'\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: makePropsConfigurable(\n {\n ...formControlProps,\n ...formSizeProps,\n ...formStateProps,\n ...formTextProps,\n rows: {\n type: [Number, String],\n default: 2\n },\n maxRows: {\n type: [Number, String]\n // default: null\n },\n wrap: {\n // 'soft', 'hard' or 'off'. Browser default is 'soft'\n type: String,\n default: 'soft'\n },\n noResize: {\n // Disable the resize handle of textarea\n type: Boolean,\n default: false\n },\n noAutoShrink: {\n // When in auto resize mode, disable shrinking to content height\n type: Boolean,\n default: false\n }\n },\n NAME_FORM_TEXTAREA\n ),\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 ref: 'input',\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 })\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 { CODE_LEFT, CODE_RIGHT } from '../../constants/key-codes'\nimport { RX_TIME } from '../../constants/regex'\nimport identity from '../../utils/identity'\nimport looseEqual from '../../utils/loose-equal'\nimport { concat } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { createDate, createDateFormatter } from '../../utils/date'\nimport { attemptBlur, attemptFocus, contains, getActiveElement, requestAF } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { isNull, isUndefinedOrNull } from '../../utils/inspect'\nimport { isLocaleRTL } from '../../utils/locale'\nimport { toInteger } from '../../utils/number'\nimport { toString } from '../../utils/string'\nimport { pick } from '../../utils/object'\nimport idMixin from '../../mixins/id'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { BFormSpinbutton, props as formSpinbuttonProps } from '../form-spinbutton/form-spinbutton'\nimport { BIconCircleFill, BIconChevronUp } from '../../icons/icons'\n\n// --- Constants ---\n\nconst NUMERIC = 'numeric'\n\n// --- Helper methods ---\n\nconst padLeftZeros = num => {\n return `00${num || ''}`.slice(-2)\n}\n\nconst parseHMS = hms => {\n hms = toString(hms)\n let [hh, mm, ss] = [null, null, null]\n if (RX_TIME.test(hms)) {\n ;[hh, mm, ss] = hms.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 {\n value: {\n type: String,\n default: ''\n },\n showSeconds: {\n // If true, show the second spinbutton\n type: Boolean,\n default: false\n },\n hour12: {\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 type: Boolean,\n default: null\n },\n locale: {\n type: [String, Array]\n // default: null\n },\n ariaLabelledby: {\n // ID of label element\n type: String\n // default: null\n },\n secondsStep: {\n type: [Number, String],\n default: 1\n },\n minutesStep: {\n type: [Number, String],\n default: 1\n },\n disabled: {\n type: Boolean,\n default: false\n },\n readonly: {\n type: Boolean,\n default: false\n },\n hideHeader: {\n type: Boolean,\n default: false\n },\n labelNoTimeSelected: {\n type: String,\n default: 'No time selected'\n },\n labelSelected: {\n type: String,\n default: 'Selected time'\n },\n labelHours: {\n type: String,\n default: 'Hours'\n },\n labelMinutes: {\n type: String,\n default: 'Minutes'\n },\n labelSeconds: {\n type: String,\n default: 'Seconds'\n },\n labelAmpm: {\n type: String,\n default: 'AM/PM'\n },\n labelAm: {\n type: String,\n default: 'AM'\n },\n labelPm: {\n type: String,\n default: 'PM'\n },\n // Passed to the spin buttons\n ...pick(formSpinbuttonProps, ['labelIncrement', 'labelDecrement']),\n hidden: {\n type: Boolean,\n default: false\n }\n },\n NAME_TIME\n)\n\n// --- Main component ---\n// @vue/component\nexport const BTime = /*#__PURE__*/ Vue.extend({\n name: NAME_TIME,\n mixins: [idMixin, normalizeSlotMixin],\n model: {\n prop: 'value',\n event: 'input'\n },\n props,\n data() {\n const parsed = parseHMS(this.value || '')\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 value(newVal, oldVal) {\n if (newVal !== oldVal && !looseEqual(parseHMS(newVal), parseHMS(this.computedHMS))) {\n const { hours, minutes, seconds, ampm } = parseHMS(newVal)\n this.modelHours = hours\n this.modelMinutes = minutes\n this.modelSeconds = seconds\n this.modelAmpm = ampm\n }\n },\n computedHMS(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.$emit('input', newVal)\n }\n },\n context(newVal, oldVal) {\n if (!looseEqual(newVal, oldVal)) {\n this.$emit('context', newVal)\n }\n },\n modelAmpm(newVal, oldVal) {\n if (newVal !== oldVal) {\n const hours = isNull(this.modelHours) ? 0 : this.modelHours\n this.$nextTick(() => {\n if (newVal === 0 && hours > 11) {\n // Switched to AM\n this.modelHours = hours - 12\n } else if (newVal === 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('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(evt = {}) {\n const { type, keyCode } = evt\n if (\n !this.disabled &&\n type === 'keydown' &&\n (keyCode === CODE_LEFT || keyCode === CODE_RIGHT)\n ) {\n stopEvent(evt)\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 return h(BFormSpinbutton, {\n key,\n ref: 'spinners',\n refInFor: true,\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 })\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 */: evt => /* istanbul ignore next */ {\n if (evt.target === evt.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 {\n BVFormBtnLabelControl,\n props as BVFormBtnLabelControlProps\n} from '../../utils/bv-form-btn-label-control'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { omit } from '../../utils/object'\nimport { pluckProps } from '../../utils/props'\nimport idMixin from '../../mixins/id'\nimport { BButton } from '../button/button'\nimport { BTime, props as BTimeProps } from '../time/time'\nimport { BIconClock, BIconClockFill } from '../../icons/icons'\n\n// --- Main component ---\n// @vue/component\nexport const BFormTimepicker = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_TIMEPICKER,\n // The mixins order determines the order of appearance in the props reference section\n mixins: [idMixin],\n model: {\n prop: 'value',\n event: 'input'\n },\n props: makePropsConfigurable(\n {\n ...BTimeProps,\n ...omit(BVFormBtnLabelControlProps, ['id', 'value', 'formattedValue', 'rtl', 'lang']),\n resetValue: {\n type: String,\n default: ''\n },\n buttonOnly: {\n type: Boolean,\n default: false\n },\n buttonVariant: {\n // Applicable in button only mode\n type: String,\n default: 'secondary'\n },\n nowButton: {\n type: Boolean,\n default: false\n },\n labelNowButton: {\n type: String,\n default: 'Select now'\n },\n nowButtonVariant: {\n type: String,\n default: 'outline-primary'\n },\n resetButton: {\n type: Boolean,\n default: false\n },\n labelResetButton: {\n type: String,\n default: 'Reset'\n },\n resetButtonVariant: {\n type: String,\n default: 'outline-danger'\n },\n noCloseButton: {\n type: Boolean,\n default: false\n },\n labelCloseButton: {\n type: String,\n default: 'Close'\n },\n closeButtonVariant: {\n type: String,\n default: 'outline-secondary'\n }\n },\n NAME_FORM_TIMEPICKER\n ),\n data() {\n return {\n // We always use `HH:mm:ss` value internally\n localHMS: this.value || '',\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 value(newVal) {\n this.localHMS = newVal || ''\n },\n localHMS(newVal) {\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('input', newVal || '')\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('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('shown')\n })\n },\n onHidden() {\n this.isVisible = false\n this.$emit('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 key: 'now-btn',\n props: { size: 'sm', disabled: disabled || readonly, variant: this.nowButtonVariant },\n attrs: { 'aria-label': label || null },\n on: { click: this.onNowButton }\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 key: 'reset-btn',\n props: { size: 'sm', disabled: disabled || readonly, variant: this.resetButtonVariant },\n attrs: { 'aria-label': label || null },\n on: { click: this.onResetButton }\n },\n label\n )\n )\n }\n\n if (!this.noCloseButton) {\n if ($footer.length > 0) {\n // Add a \"spacer\" between buttons ('&nbsp;')\n $footer.push(h('span', '\\u00a0'))\n }\n const label = this.labelCloseButton\n $footer.push(\n h(\n BButton,\n {\n key: 'close-btn',\n props: { size: 'sm', disabled, variant: this.closeButtonVariant },\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 $time = h(\n BTime,\n {\n ref: 'time',\n staticClass: 'b-form-time-control',\n props: {\n ...pluckProps(BTimeProps, $props),\n value: localHMS,\n hidden: !this.isVisible\n },\n on: {\n input: this.onInput,\n context: this.onContext\n }\n },\n $footer\n )\n\n return h(\n BVFormBtnLabelControl,\n {\n ref: 'control',\n staticClass: 'b-form-timepicker',\n props: {\n ...pluckProps(BVFormBtnLabelControlProps, $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 'button-content': this.$scopedSlots['button-content'] || this.defaultButtonFn\n }\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 { makePropsConfigurable } from '../../utils/config'\n\nexport const props = makePropsConfigurable(\n {\n tag: {\n type: String,\n default: 'div'\n }\n },\n NAME_INPUT_GROUP_TEXT\n)\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 { makePropsConfigurable } from '../../utils/config'\nimport { BInputGroupText } from './input-group-text'\n\nexport const commonProps = {\n id: {\n type: String,\n default: null\n },\n tag: {\n type: String,\n default: 'div'\n },\n isText: {\n type: Boolean,\n default: false\n }\n}\n\n// @vue/component\nexport const BInputGroupAddon = /*#__PURE__*/ Vue.extend({\n name: NAME_INPUT_GROUP_ADDON,\n functional: true,\n props: makePropsConfigurable(\n {\n ...commonProps,\n append: {\n type: Boolean,\n default: false\n }\n },\n NAME_INPUT_GROUP_ADDON\n ),\n render(h, { props, data, children }) {\n return h(\n props.tag,\n mergeData(data, {\n class: {\n 'input-group-append': props.append,\n 'input-group-prepend': !props.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 { makePropsConfigurable } from '../../utils/config'\nimport { BInputGroupAddon, commonProps } from './input-group-addon'\n\n// @vue/component\nexport const BInputGroupAppend = /*#__PURE__*/ Vue.extend({\n name: NAME_INPUT_GROUP_APPEND,\n functional: true,\n props: makePropsConfigurable(commonProps, NAME_INPUT_GROUP_APPEND),\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 { makePropsConfigurable } from '../../utils/config'\nimport { BInputGroupAddon, commonProps } from './input-group-addon'\n\n// @vue/component\nexport const BInputGroupPrepend = /*#__PURE__*/ Vue.extend({\n name: NAME_INPUT_GROUP_PREPEND,\n functional: true,\n props: makePropsConfigurable(commonProps, NAME_INPUT_GROUP_PREPEND),\n render(h, { props, data, children }) {\n // pass all our props/attrs down to child, and set`append` to false\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 { SLOT_NAME_APPEND, SLOT_NAME_DEFAULT, SLOT_NAME_PREPEND } from '../../constants/slot-names'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { htmlOrText } from '../../utils/html'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\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 id: {\n type: String\n },\n size: {\n type: String\n // default: undefined\n },\n prepend: {\n type: String\n },\n prependHtml: {\n type: String\n },\n append: {\n type: String\n },\n appendHtml: {\n type: String\n },\n tag: {\n type: String,\n default: 'div'\n }\n },\n NAME_INPUT_GROUP\n)\n\n// --- Main component ---\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 { makePropsConfigurable } from '../../utils/config'\n\nexport const props = makePropsConfigurable(\n {\n tag: {\n type: String,\n default: 'div'\n },\n fluid: {\n // String breakpoint name new in Bootstrap v4.4.x\n type: [Boolean, String],\n default: false\n }\n },\n NAME_CONTAINER\n)\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 return h(\n props.tag,\n mergeData(data, {\n class: {\n container: !(props.fluid || props.fluid === ''),\n 'container-fluid': props.fluid === true || props.fluid === '',\n // Bootstrap v4.4+ responsive containers\n [`container-${props.fluid}`]: props.fluid && props.fluid !== true\n }\n }),\n children\n )\n }\n})\n","import Vue, { mergeData } from '../../vue'\nimport { NAME_JUMBOTRON } from '../../constants/components'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_HEADER, SLOT_NAME_LEAD } from '../../constants/slot-names'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { htmlOrText } from '../../utils/html'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport { BContainer } from '../layout/container'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n fluid: {\n type: Boolean,\n default: false\n },\n containerFluid: {\n type: [Boolean, String],\n default: false\n },\n header: {\n type: String\n // default: null\n },\n headerHtml: {\n type: String\n // default: null\n },\n headerTag: {\n type: String,\n default: 'h1'\n },\n headerLevel: {\n type: [Number, String],\n default: '3'\n },\n lead: {\n type: String\n // default: null\n },\n leadHtml: {\n type: String\n // default: null\n },\n leadTag: {\n type: String,\n default: 'p'\n },\n tag: {\n type: String,\n default: 'div'\n },\n bgVariant: {\n type: String\n // default: undefined\n },\n borderVariant: {\n type: String\n // default: undefined\n },\n textVariant: {\n type: String\n // default: undefined\n }\n },\n NAME_JUMBOTRON\n)\n\n// --- Main component ---\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 identity from '../../utils/identity'\nimport memoize from '../../utils/memoize'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { getBreakpointsUpCached, makePropsConfigurable } from '../../utils/config'\nimport { create, keys } from '../../utils/object'\nimport { suffixPropName } from '../../utils/props'\nimport { lowerCase, toString, trim } from '../../utils/string'\n\nconst COMMON_ALIGNMENT = ['start', 'end', 'center']\n\n// Generates a prop object with a type of `[String, Number]`\nconst strNum = () => ({\n type: [String, Number],\n default: null\n})\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// Lazy evaled props factory for <b-row> (called only once,\n// the first time the component is used)\nconst generateProps = () => {\n // Grab the breakpoints from the cached config (including the '' (xs) breakpoint)\n const breakpoints = getBreakpointsUpCached()\n\n // Supports classes like: `row-cols-2`, `row-cols-md-4`, `row-cols-xl-6`\n const rowColsProps = breakpoints.reduce((props, breakpoint) => {\n props[suffixPropName(breakpoint, 'cols')] = strNum()\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 {\n tag: {\n type: String,\n default: 'div'\n },\n noGutters: {\n type: Boolean,\n default: false\n },\n alignV: {\n type: String,\n default: null,\n validator(value) {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'baseline', 'stretch'), value)\n }\n },\n alignH: {\n type: String,\n default: null,\n validator(value) {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'between', 'around'), value)\n }\n },\n alignContent: {\n type: String,\n default: null,\n validator(value) {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'between', 'around', 'stretch'), value)\n }\n },\n ...rowColsProps\n },\n NAME_ROW\n )\n}\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 classList = []\n // Loop through row-cols breakpoint props and generate the classes\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 classList.push({\n 'no-gutters': props.noGutters,\n [`align-items-${props.alignV}`]: props.alignV,\n [`justify-content-${props.alignH}`]: props.alignH,\n [`align-content-${props.alignContent}`]: props.alignContent\n })\n return h(props.tag, mergeData(data, { staticClass: 'row', class: classList }), children)\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 { makePropsConfigurable } from '../../utils/config'\nimport { isString } from '../../utils/inspect'\n\nexport const props = makePropsConfigurable(\n {\n tag: {\n type: String,\n default: 'div'\n },\n flush: {\n type: Boolean,\n default: false\n },\n horizontal: {\n type: [Boolean, String],\n default: false\n }\n },\n NAME_LIST_GROUP\n)\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 { arrayIncludes } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { isTag } from '../../utils/dom'\nimport { omit } from '../../utils/object'\nimport { pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Constants ---\n\nconst 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 {\n ...linkProps,\n tag: {\n type: String,\n default: 'div'\n },\n action: {\n type: Boolean,\n default: null\n },\n button: {\n type: Boolean,\n default: null\n },\n variant: {\n type: String\n // default: undefined\n }\n },\n NAME_LIST_GROUP_ITEM\n)\n\n// --- Main component ---\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 { makePropsConfigurable } from '../../utils/config'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n tag: {\n type: String,\n default: 'div'\n },\n right: {\n type: Boolean,\n default: false\n },\n verticalAlign: {\n type: String,\n default: 'top'\n }\n },\n NAME_MEDIA_ASIDE\n)\n\n// --- Main component ---\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 { makePropsConfigurable } from '../../utils/config'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n tag: {\n type: String,\n default: 'div'\n }\n },\n NAME_MEDIA_BODY\n)\n\n// --- Main component ---\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 { makePropsConfigurable } from '../../utils/config'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slot-names'\nimport { normalizeSlot } from '../../utils/normalize-slot'\nimport { BMediaAside } from './media-aside'\nimport { BMediaBody } from './media-body'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n tag: {\n type: String,\n default: 'div'\n },\n noBody: {\n type: Boolean,\n default: false\n },\n rightAlign: {\n type: Boolean,\n default: false\n },\n verticalAlign: {\n type: String,\n default: 'top'\n }\n },\n NAME_MEDIA\n)\n\n// --- Main component ---\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('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 { NAME_TRANSPORTER_SINGLE, NAME_TRANSPORTER_TARGET_SINGLE } from '../constants/components'\nimport identity from './identity'\nimport { concat } from './array'\nimport { removeNode, select } from './dom'\nimport { isBrowser } from './env'\nimport { isFunction, isString } from './inspect'\nimport { HTMLElement } from './safe-types'\nimport normalizeSlotMixin from '../mixins/normalize-slot'\n\n// BTransporterSingle/BTransporterTargetSingle:\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 BTransporterSingle\n// Supports only a single root element\n// @vue/component\nconst BTransporterTargetSingle = /*#__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_SINGLE,\n props: {\n nodes: {\n // Even though we only support a single root element,\n // VNodes are always passed as an array\n type: [Array, Function]\n // default: undefined\n }\n },\n data: vm => {\n return {\n updatedNodes: vm.nodes\n }\n },\n destroyed() {\n removeNode(this.$el)\n },\n render(h) {\n let nodes = isFunction(this.updatedNodes) ? this.updatedNodes({}) : this.updatedNodes\n nodes = concat(nodes).filter(Boolean)\n /* istanbul ignore else */\n if (nodes && nodes.length > 0 && !nodes[0].text) {\n return nodes[0]\n } else {\n /* istanbul ignore next */\n return h()\n }\n }\n})\n\n// This component has no root element, so only a single VNode is allowed\n// @vue/component\nexport const BTransporterSingle = /*#__PURE__*/ Vue.extend({\n name: NAME_TRANSPORTER_SINGLE,\n mixins: [normalizeSlotMixin],\n props: {\n disabled: {\n type: Boolean,\n default: false\n },\n container: {\n // String: CSS selector,\n // HTMLElement: Element reference\n // Mainly needed for tooltips/popovers inside modals\n type: [String, HTMLElement],\n default: 'body'\n },\n tag: {\n // This should be set to match the root element type\n type: String,\n default: 'div'\n }\n },\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 (isBrowser) {\n const container = this.container\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 BTransporterTargetSingle({\n 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 (isBrowser && 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 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 { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events'\nimport { arrayIncludes } from '../utils/array'\nimport { isBrowser } from '../utils/env'\nimport { eventOn, eventOff } from '../utils/events'\nimport { isString, isFunction } from '../utils/inspect'\nimport { keys } from '../utils/object'\n\nconst PROP = '$_bv_documentHandlers_'\n\n// @vue/component\nexport default {\n created() {\n /* istanbul ignore next */\n if (!isBrowser) {\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:beforeDestroy', () => {\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(evtName => {\n const handlers = items[evtName] || []\n handlers.forEach(handler => eventOff(document, evtName, handler, EVENT_OPTIONS_NO_CAPTURE))\n })\n })\n },\n methods: {\n listenDocument(on, evtName, handler) {\n on ? this.listenOnDocument(evtName, handler) : this.listenOffDocument(evtName, handler)\n },\n listenOnDocument(evtName, handler) {\n if (this[PROP] && isString(evtName) && isFunction(handler)) {\n this[PROP][evtName] = this[PROP][evtName] || []\n if (!arrayIncludes(this[PROP][evtName], handler)) {\n this[PROP][evtName].push(handler)\n eventOn(document, evtName, handler, EVENT_OPTIONS_NO_CAPTURE)\n }\n }\n },\n listenOffDocument(evtName, handler) {\n if (this[PROP] && isString(evtName) && isFunction(handler)) {\n eventOff(document, evtName, handler, EVENT_OPTIONS_NO_CAPTURE)\n this[PROP][evtName] = (this[PROP][evtName] || []).filter(h => h !== handler)\n }\n }\n }\n}\n","import { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events'\nimport { arrayIncludes } from '../utils/array'\nimport { isBrowser } from '../utils/env'\nimport { eventOn, eventOff } from '../utils/events'\nimport { isString, isFunction } from '../utils/inspect'\nimport { keys } from '../utils/object'\n\nconst PROP = '$_bv_windowHandlers_'\n\n// @vue/component\nexport default {\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 (isBrowser) {\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(evtName => {\n const handlers = items[evtName] || []\n handlers.forEach(handler => eventOff(window, evtName, handler, EVENT_OPTIONS_NO_CAPTURE))\n })\n }\n },\n methods: {\n listenWindow(on, evtName, handler) {\n on ? this.listenOnWindow(evtName, handler) : this.listenOffWindow(evtName, handler)\n },\n listenOnWindow(evtName, handler) {\n if (isBrowser && this[PROP] && isString(evtName) && isFunction(handler)) {\n this[PROP][evtName] = this[PROP][evtName] || []\n if (!arrayIncludes(this[PROP][evtName], handler)) {\n this[PROP][evtName].push(handler)\n eventOn(window, evtName, handler, EVENT_OPTIONS_NO_CAPTURE)\n }\n }\n },\n listenOffWindow(evtName, handler) {\n if (isBrowser && this[PROP] && isString(evtName) && isFunction(handler)) {\n eventOff(window, evtName, handler, EVENT_OPTIONS_NO_CAPTURE)\n this[PROP][evtName] = (this[PROP][evtName] || []).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\n\nconst getScopeId = (vm, defaultValue = null) => {\n return vm ? vm.$options._scopeId || defaultValue : defaultValue\n}\n\nexport default getScopeId\n","import getScopeId from '../utils/get-scope-id'\n\nexport default {\n computed: {\n scopedStyleAttrs() {\n const scopeId = getScopeId(this.$parent)\n return scopeId ? { [scopeId]: '' } : {}\n }\n }\n}\n","/**\n * Private ModalManager helper\n * Handles controlling modal stacking zIndexes and body adjustments/classes\n */\n\nimport Vue from '../../../vue'\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 { isBrowser } from '../../../utils/env'\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 = {\n FIXED_CONTENT: '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top',\n STICKY_CONTENT: '.sticky-top',\n NAVBAR_TOGGLER: '.navbar-toggler'\n}\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 (isBrowser) {\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(newVal) {\n this.checkScrollbar()\n requestAF(() => {\n this.updateModals(newVal || [])\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:beforeDestroy', () => {\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) && isBrowser) {\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) && isBrowser) {\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 { 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","import Vue from '../../vue'\nimport { NAME_MODAL } from '../../constants/components'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../../constants/events'\nimport { CODE_ESC } from '../../constants/key-codes'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slot-names'\nimport BVTransition from '../../utils/bv-transition'\nimport identity from '../../utils/identity'\nimport observeDom from '../../utils/observe-dom'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport {\n attemptFocus,\n closest,\n contains,\n getActiveElement,\n getTabables,\n requestAF,\n select\n} from '../../utils/dom'\nimport { isBrowser } from '../../utils/env'\nimport { eventOn, eventOff } from '../../utils/events'\nimport { htmlOrText } from '../../utils/html'\nimport { isString, isUndefinedOrNull } from '../../utils/inspect'\nimport { HTMLElement } from '../../utils/safe-types'\nimport { BTransporterSingle } from '../../utils/transporter'\nimport attrsMixin from '../../mixins/attrs'\nimport idMixin 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 scopedStyleAttrsMixin from '../../mixins/scoped-style-attrs'\nimport { BButton } from '../button/button'\nimport { BButtonClose } from '../button/button-close'\nimport { modalManager } from './helpers/modal-manager'\nimport { BvModalEvent } from './helpers/bv-modal-event.class'\n\n// --- Constants ---\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 ---\nexport const props = makePropsConfigurable(\n {\n size: {\n type: String,\n default: 'md'\n },\n centered: {\n type: Boolean,\n default: false\n },\n scrollable: {\n type: Boolean,\n default: false\n },\n buttonSize: {\n type: String\n // default: ''\n },\n noStacking: {\n type: Boolean,\n default: false\n },\n noFade: {\n type: Boolean,\n default: false\n },\n noCloseOnBackdrop: {\n type: Boolean,\n default: false\n },\n noCloseOnEsc: {\n type: Boolean,\n default: false\n },\n noEnforceFocus: {\n type: Boolean,\n default: false\n },\n ignoreEnforceFocusSelector: {\n type: [Array, String],\n default: ''\n },\n title: {\n type: String,\n default: ''\n },\n titleHtml: {\n type: String\n },\n titleTag: {\n type: String,\n default: 'h5'\n },\n titleClass: {\n type: [String, Array, Object]\n // default: null\n },\n titleSrOnly: {\n type: Boolean,\n default: false\n },\n ariaLabel: {\n type: String\n // default: null\n },\n headerBgVariant: {\n type: String\n // default: undefined\n },\n headerBorderVariant: {\n type: String\n // default: undefined\n },\n headerTextVariant: {\n type: String\n // default: undefined\n },\n headerCloseVariant: {\n type: String\n // default: undefined\n },\n headerClass: {\n type: [String, Array, Object]\n // default: null\n },\n bodyBgVariant: {\n type: String\n // default: undefined\n },\n bodyTextVariant: {\n type: String\n // default: undefined\n },\n modalClass: {\n type: [String, Array, Object]\n // default: null\n },\n dialogClass: {\n type: [String, Array, Object]\n // default: null\n },\n contentClass: {\n type: [String, Array, Object]\n // default: null\n },\n bodyClass: {\n type: [String, Array, Object]\n // default: null\n },\n footerBgVariant: {\n type: String\n // default: undefined\n },\n footerBorderVariant: {\n type: String\n // default: undefined\n },\n footerTextVariant: {\n type: String\n // default: undefined\n },\n footerClass: {\n type: [String, Array, Object]\n // default: null\n },\n // TODO: Rename to `noHeader` and deprecate `hideHeader`\n hideHeader: {\n type: Boolean,\n default: false\n },\n // TODO: Rename to `noFooter` and deprecate `hideFooter`\n hideFooter: {\n type: Boolean,\n default: false\n },\n // TODO: Rename to `noHeaderClose` and deprecate `hideHeaderClose`\n hideHeaderClose: {\n type: Boolean,\n default: false\n },\n // TODO: Rename to `noBackdrop` and deprecate `hideBackdrop`\n hideBackdrop: {\n type: Boolean,\n default: false\n },\n okOnly: {\n type: Boolean,\n default: false\n },\n okDisabled: {\n type: Boolean,\n default: false\n },\n cancelDisabled: {\n type: Boolean,\n default: false\n },\n visible: {\n type: Boolean,\n default: false\n },\n returnFocus: {\n // HTML Element, CSS selector string or Vue component instance\n type: [HTMLElement, String, Object],\n default: null\n },\n headerCloseContent: {\n type: String,\n default: '&times;'\n },\n headerCloseLabel: {\n type: String,\n default: 'Close'\n },\n cancelTitle: {\n type: String,\n default: 'Cancel'\n },\n cancelTitleHtml: {\n type: String\n },\n okTitle: {\n type: String,\n default: 'OK'\n },\n okTitleHtml: {\n type: String\n },\n cancelVariant: {\n type: String,\n default: 'secondary'\n },\n okVariant: {\n type: String,\n default: 'primary'\n },\n lazy: {\n type: Boolean,\n default: false\n },\n busy: {\n type: Boolean,\n default: false\n },\n static: {\n type: Boolean,\n default: false\n },\n autoFocusButton: {\n type: String,\n default: null,\n /* istanbul ignore next */\n validator(value) {\n return isUndefinedOrNull(value) || arrayIncludes(['ok', 'cancel', 'close'], value)\n }\n }\n },\n NAME_MODAL\n)\n\n// @vue/component\nexport const BModal = /*#__PURE__*/ Vue.extend({\n name: NAME_MODAL,\n mixins: [\n attrsMixin,\n idMixin,\n listenOnDocumentMixin,\n listenOnRootMixin,\n listenOnWindowMixin,\n normalizeSlotMixin,\n scopedStyleAttrsMixin\n ],\n inheritAttrs: false,\n model: {\n prop: 'visible',\n event: 'change'\n },\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 return_focus: this.returnFocus || null,\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 ok: this.onOk,\n cancel: this.onCancel,\n close: this.onClose,\n hide: this.hide,\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('modal-title') || this.titleHtml || this.title)\n ? null\n : this.modalTitleId,\n 'aria-describedby': this.modalBodyId\n }\n }\n },\n watch: {\n visible(newVal, oldVal) {\n if (newVal !== oldVal) {\n this[newVal ? 'show' : 'hide']()\n }\n }\n },\n created() {\n // Define non-reactive properties\n this.$_observer = 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('bv::show::modal', this.showHandler)\n this.listenOnRoot('bv::hide::modal', this.hideHandler)\n this.listenOnRoot('bv::toggle::modal', this.toggleHandler)\n // Listen for `bv:modal::show events`, and close ourselves if the\n // opening modal not us\n this.listenOnRoot('bv::modal::show', this.modalListener)\n // Initially show modal?\n if (this.visible === 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(val) {\n if (val !== this.visible) {\n this.$emit('change', val)\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('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.return_focus = this.return_focus || this.getActiveElement()\n const showEvt = this.buildEvent('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('hide', {\n cancelable: trigger !== 'FORCE',\n trigger: trigger || null\n })\n // We emit specific event for one of the three built-in buttons\n if (trigger === 'ok') {\n this.$emit('ok', hideEvt)\n } else if (trigger === 'cancel') {\n this.$emit('cancel', hideEvt)\n } else if (trigger === 'headerclose') {\n this.$emit('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.return_focus = triggerEl\n }\n if (this.isVisible) {\n this.hide('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(isBrowser ? [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('bv::modal::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('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('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(`bv::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 = evt => {\n eventOff(modal, 'mouseup', onceModalMouseup, EVENT_OPTIONS_NO_CAPTURE)\n if (evt.target === modal) {\n this.ignoreBackdropClick = true\n }\n }\n eventOn(modal, 'mouseup', onceModalMouseup, EVENT_OPTIONS_NO_CAPTURE)\n },\n onClickOut(evt) {\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, evt.target)) {\n return\n }\n // If backdrop clicked, hide modal\n if (!contains(this.$refs.content, evt.target)) {\n this.hide('backdrop')\n }\n },\n onOk() {\n this.hide('ok')\n },\n onCancel() {\n this.hide('cancel')\n },\n onClose() {\n this.hide('headerclose')\n },\n onEsc(evt) {\n // If ESC pressed, hide modal\n if (evt.keyCode === CODE_ESC && this.isVisible && !this.noCloseOnEsc) {\n this.hide('esc')\n }\n },\n // Document focusin listener\n focusHandler(evt) {\n // If focus leaves modal content, bring it back\n const content = this.$refs.content\n const { target } = evt\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, topTrap } = this.$refs\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.return_focus = 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(bvEvt) {\n // If another modal opens, close this one if stacking not permitted\n if (this.noStacking && bvEvt.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 (isBrowser) {\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 === 'ok' && ok\n ? ok.$el || ok\n : autoFocus === 'cancel' && cancel\n ? cancel.$el || cancel\n : autoFocus === '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.return_focus || null\n this.return_focus = 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('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('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('modal-title')\n ? {}\n : htmlOrText(this.titleHtml, this.title)\n },\n // TODO: Rename slot to `title` and deprecate `modal-title`\n this.normalizeSlot('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('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('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('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('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('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', { ref: 'topTrap', attrs: { tabindex: '0' } })\n $tabTrapBottom = h('span', { ref: 'bottomTrap', attrs: { tabindex: '0' } })\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('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._uid}`\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(BTransporterSingle, [this.makeModal(h)])\n }\n }\n})\n","import { 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 { eventOn, eventOff } from '../../utils/events'\nimport { isString } from '../../utils/inspect'\nimport { keys } from '../../utils/object'\n\n// Emitted show event for modal\nconst EVENT_SHOW = 'bv::show::modal'\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 = evt => {\n // `currentTarget` is the element with the listener on it\n const currentTarget = evt.currentTarget\n if (!isDisabled(currentTarget)) {\n const type = evt.type\n const key = evt.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(EVENT_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 { concat } from '../../../utils/array'\nimport { getComponentConfig } from '../../../utils/config'\nimport { requestAF } from '../../../utils/dom'\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// --- Utility 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:destroyed', handleDestroy)\n // Self destruct after hidden\n this.$once('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:beforeDestroy', 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:destroyed', () => {\n if (!resolved) {\n /* istanbul ignore next */\n reject(new Error('BootstrapVue MsgBox destroyed before resolve'))\n }\n })\n msgBox.$on('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('bv::show::modal', 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('bv::hide::modal', 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 { makePropsConfigurable } from '../../utils/config'\n\n// -- Constants --\n\nexport const props = makePropsConfigurable(\n {\n tag: {\n type: String,\n default: 'ul'\n },\n fill: {\n type: Boolean,\n default: false\n },\n justified: {\n type: Boolean,\n default: false\n },\n align: {\n type: String\n // default: null\n },\n tabs: {\n type: Boolean,\n default: false\n },\n pills: {\n type: Boolean,\n default: false\n },\n vertical: {\n type: Boolean,\n default: false\n },\n small: {\n type: Boolean,\n default: false\n },\n cardHeader: {\n // Set to true if placing in a card header\n type: Boolean,\n default: false\n }\n },\n NAME_NAV\n)\n\n// -- Utils --\n\nconst computeJustifyContent = value => {\n // Normalize value\n value = value === 'left' ? 'start' : value === 'right' ? 'end' : value\n return `justify-content-${value}`\n}\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 return h(\n props.tag,\n mergeData(data, {\n staticClass: 'nav',\n class: {\n 'nav-tabs': props.tabs,\n 'nav-pills': props.pills && !props.tabs,\n 'card-header-tabs': !props.vertical && props.cardHeader && props.tabs,\n 'card-header-pills': !props.vertical && props.cardHeader && props.pills && !props.tabs,\n 'flex-column': props.vertical,\n 'nav-fill': !props.vertical && props.fill,\n 'nav-justified': !props.vertical && props.justified,\n [computeJustifyContent(props.align)]: !props.vertical && props.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 { makePropsConfigurable } from '../../utils/config'\nimport { omit } from '../../utils/object'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n ...omit(BLinkProps, ['event', 'routerTag']),\n linkAttrs: {\n type: Object,\n default: () => {}\n },\n linkClasses: {\n type: [String, Object, Array],\n default: null\n }\n },\n NAME_NAV_ITEM\n)\n\n// --- Main component ---\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 // We transfer the listeners to the link\n delete data.on\n return h(\n 'li',\n mergeData(data, {\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\nexport const props = {}\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 { makePropsConfigurable } from '../../utils/config'\nimport { omit } from '../../utils/object'\nimport { BForm, props as BFormProps } from '../form/form'\n\nexport const props = makePropsConfigurable(\n {\n ...omit(BFormProps, ['inline']),\n formClass: {\n type: [String, Array, Object]\n // default: null\n }\n },\n NAME_NAV_FORM\n)\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 attrs = data.attrs\n // The following data properties are cleared out\n // as they will be passed to BForm directly\n data.attrs = {}\n data.on = {}\n const $form = h(\n BForm,\n {\n class: props.formClass,\n props: { ...props, inline: true },\n attrs,\n on: listeners\n },\n children\n )\n return h('li', mergeData(data, { staticClass: 'form-inline' }), [$form])\n }\n})\n","import Vue from '../../vue'\nimport { NAME_NAV_ITEM_DROPDOWN } from '../../constants/components'\nimport {\n SLOT_NAME_BUTTON_CONTENT,\n SLOT_NAME_DEFAULT,\n SLOT_NAME_TEXT\n} from '../../constants/slot-names'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { htmlOrText } from '../../utils/html'\nimport { pluckProps } from '../../utils/props'\nimport dropdownMixin from '../../mixins/dropdown'\nimport idMixin 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 pluckProps(\n ['text', 'html', 'menuClass', 'toggleClass', 'noCaret', 'role', 'lazy'],\n BDropdownProps\n ),\n NAME_NAV_ITEM_DROPDOWN\n)\n\n// --- Main component ---\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 } = 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: this.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 { makePropsConfigurable, getBreakpoints } from '../../utils/config'\nimport { isTag } from '../../utils/dom'\nimport { isString } from '../../utils/inspect'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n tag: {\n type: String,\n default: 'nav'\n },\n type: {\n type: String,\n default: 'light'\n },\n variant: {\n type: String\n // default: undefined\n },\n toggleable: {\n type: [Boolean, String],\n default: false\n },\n fixed: {\n type: String\n },\n sticky: {\n type: Boolean,\n default: false\n },\n print: {\n type: Boolean,\n default: false\n }\n },\n NAME_NAVBAR\n)\n\n// --- Main component ---\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 let breakpoint = null\n const xs = getBreakpoints()[0]\n const toggleable = this.toggleable\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 return h(\n this.tag,\n {\n staticClass: 'navbar',\n class: [\n {\n 'd-print': this.print,\n 'sticky-top': this.sticky,\n [`navbar-${this.type}`]: this.type,\n [`bg-${this.variant}`]: this.variant,\n [`fixed-${this.fixed}`]: this.fixed\n },\n this.breakpointClass\n ],\n attrs: {\n role: isTag(this.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 { makePropsConfigurable } from '../../utils/config'\nimport { pluckProps } from '../../utils/props'\nimport { props as BNavProps } from '../nav/nav'\n\n// -- Constants --\n\nexport const props = makePropsConfigurable(\n pluckProps(['tag', 'fill', 'justified', 'align', 'small'], BNavProps),\n NAME_NAVBAR_NAV\n)\n\n// -- Utils --\n\nconst computeJustifyContent = value => {\n // Normalize value\n value = value === 'left' ? 'start' : value === 'right' ? 'end' : value\n return `justify-content-${value}`\n}\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 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(props.align)]: props.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 { makePropsConfigurable } from '../../utils/config'\nimport { omit } from '../../utils/object'\nimport { 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 {\n tag: {\n type: String,\n default: 'div'\n },\n ...linkProps\n },\n NAME_NAVBAR_BRAND\n)\n\n// --- Main component ---\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_NAVBAR_TOGGLE } from '../../constants/components'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slot-names'\nimport { makePropsConfigurable } from '../../utils/config'\nimport listenOnRootMixin from '../../mixins/listen-on-root'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { VBToggle, EVENT_STATE, EVENT_STATE_SYNC } from '../../directives/toggle/toggle'\n\n// --- Constants ---\n\nconst CLASS_NAME = 'navbar-toggler'\n\n// --- Main component ---\n// @vue/component\nexport const BNavbarToggle = /*#__PURE__*/ Vue.extend({\n name: NAME_NAVBAR_TOGGLE,\n directives: { VBToggle },\n mixins: [listenOnRootMixin, normalizeSlotMixin],\n props: makePropsConfigurable(\n {\n label: {\n type: String,\n default: 'Toggle navigation'\n },\n target: {\n type: [Array, String],\n required: true\n },\n disabled: {\n type: Boolean,\n default: false\n }\n },\n NAME_NAVBAR_TOGGLE\n ),\n data() {\n return {\n toggleState: false\n }\n },\n created() {\n this.listenOnRoot(EVENT_STATE, this.handleStateEvt)\n this.listenOnRoot(EVENT_STATE_SYNC, this.handleStateEvt)\n },\n methods: {\n onClick(evt) {\n if (!this.disabled) {\n // Emit courtesy `click` event\n this.$emit('click', evt)\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 { SLOT_NAME_LABEL } from '../../constants/slot-names'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { normalizeSlot } from '../../utils/normalize-slot'\n\n// @vue/component\nexport const BSpinner = /*#__PURE__*/ Vue.extend({\n name: NAME_SPINNER,\n functional: true,\n props: makePropsConfigurable(\n {\n type: {\n type: String,\n default: 'border' // SCSS currently supports 'border' or 'grow'\n },\n label: {\n type: String\n // default: null\n },\n variant: {\n type: String\n // default: undefined\n },\n small: {\n type: Boolean,\n default: false\n },\n role: {\n type: String,\n default: 'status'\n },\n tag: {\n type: String,\n default: 'span'\n }\n },\n NAME_SPINNER\n ),\n render(h, { props, data, slots, scopedSlots }) {\n const $slots = slots()\n const $scopedSlots = scopedSlots || {}\n let label = normalizeSlot(SLOT_NAME_LABEL, {}, $scopedSlots, $slots) || props.label\n if (label) {\n label = h('span', { staticClass: 'sr-only' }, label)\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 { makePropsConfigurable } from '../../utils/config'\nimport { BVTransition } from '../../utils/bv-transition'\nimport { toFloat } from '../../utils/number'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { BSpinner } from '../spinner/spinner'\n\nconst positionCover = { top: 0, left: 0, bottom: 0, right: 0 }\n\nexport const BOverlay = /*#__PURE__*/ Vue.extend({\n name: NAME_OVERLAY,\n mixins: [normalizeSlotMixin],\n props: makePropsConfigurable(\n {\n show: {\n type: Boolean,\n default: false\n },\n variant: {\n type: String,\n default: 'light'\n },\n bgColor: {\n // Alternative to variant, allowing a specific\n // CSS color to be applied to the overlay\n type: String\n // default: null\n },\n opacity: {\n type: [Number, String],\n default: 0.85,\n validator(value) {\n const number = toFloat(value, 0)\n return number >= 0 && number <= 1\n }\n },\n blur: {\n type: String,\n default: '2px'\n },\n rounded: {\n type: [Boolean, String],\n default: false\n },\n noCenter: {\n type: Boolean,\n default: false\n },\n noFade: {\n type: Boolean,\n default: false\n },\n spinnerType: {\n type: String,\n default: 'border'\n },\n spinnerVariant: {\n type: String\n // default: null\n },\n spinnerSmall: {\n type: Boolean,\n default: false\n },\n overlayTag: {\n type: String,\n default: 'div'\n },\n wrapTag: {\n type: String,\n default: 'div'\n },\n noWrap: {\n // If set, does not render the default slot\n // and switches to absolute positioning\n type: Boolean,\n default: false\n },\n fixed: {\n type: Boolean,\n default: false\n },\n zIndex: {\n type: [Number, String],\n default: 10\n }\n },\n NAME_OVERLAY\n ),\n computed: {\n computedRounded() {\n const rounded = this.rounded\n return rounded === true || rounded === '' ? 'rounded' : !rounded ? '' : `rounded-${rounded}`\n },\n computedVariant() {\n return this.variant && !this.bgColor ? `bg-${this.variant}` : ''\n },\n overlayScope() {\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 let $overlay = h()\n if (this.show) {\n const scope = this.overlayScope\n // Overlay backdrop\n const $background = h('div', {\n staticClass: 'position-absolute',\n class: [this.computedVariant, this.computedRounded],\n style: {\n ...positionCover,\n opacity: this.opacity,\n backgroundColor: this.bgColor || null,\n backdropFilter: this.blur ? `blur(${this.blur})` : null\n }\n })\n // Overlay content\n const $content = h(\n 'div',\n {\n staticClass: 'position-absolute',\n style: this.noCenter\n ? /* istanbul ignore next */ { ...positionCover }\n : { top: '50%', left: '50%', transform: 'translateX(-50%) translateY(-50%)' }\n },\n [this.normalizeSlot('overlay', scope) || this.defaultOverlayFn(scope)]\n )\n // Overlay positioning\n $overlay = h(\n this.overlayTag,\n {\n key: 'overlay',\n staticClass: 'b-overlay',\n class: {\n 'position-absolute': !this.noWrap || (this.noWrap && !this.fixed),\n 'position-fixed': this.noWrap && this.fixed\n },\n style: { ...positionCover, zIndex: this.zIndex || 10 },\n on: { click: evt => this.$emit('click', evt) }\n },\n [$background, $content]\n )\n }\n // Wrap in a fade transition\n $overlay = h(\n BVTransition,\n {\n props: {\n noFade: this.noFade,\n appear: true\n },\n on: {\n 'after-enter': () => this.$emit('shown'),\n 'after-leave': () => this.$emit('hidden')\n }\n },\n [$overlay]\n )\n\n if (this.noWrap) {\n return $overlay\n }\n\n return h(\n this.wrapTag,\n {\n staticClass: 'b-overlay-wrap position-relative',\n attrs: { 'aria-busy': this.show ? 'true' : null }\n },\n this.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","/**\n * @param {number} length\n * @return {Array}\n */\nconst range = length => Array.apply(null, { length })\n\nexport default range\n","import { NAME_PAGINATION } from '../constants/components'\nimport { CODE_DOWN, CODE_LEFT, CODE_RIGHT, CODE_SPACE, CODE_UP } from '../constants/key-codes'\nimport range from '../utils/range'\nimport { makePropsConfigurable } from '../utils/config'\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, isUndefined } from '../utils/inspect'\nimport { mathFloor, mathMax, mathMin } from '../utils/math'\nimport { toInteger } from '../utils/number'\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\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 range(numberOfPages).map((val, i) => ({ number: startNumber + i, classes: null }))\n\n// Sanitize the provided limit value (converting to a number)\nconst sanitizeLimit = val => {\n const limit = toInteger(val) || 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 = evt => {\n if (evt.keyCode === CODE_SPACE) {\n // Stop page from scrolling\n stopEvent(evt, { immediatePropagation: true })\n // Trigger the click event on the link\n evt.currentTarget.click()\n return false\n }\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n disabled: {\n type: Boolean,\n default: false\n },\n value: {\n type: [Number, String],\n default: 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 limit: {\n type: [Number, String],\n default: DEFAULT_LIMIT,\n /* istanbul ignore next */\n validator(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 align: {\n type: String,\n default: 'left'\n },\n pills: {\n type: Boolean,\n default: false\n },\n hideGotoEndButtons: {\n type: Boolean,\n default: false\n },\n ariaLabel: {\n type: String,\n default: 'Pagination'\n },\n labelFirstPage: {\n type: String,\n default: 'Go to first page'\n },\n firstText: {\n type: String,\n default: '\\u00AB' // '«'\n },\n firstNumber: {\n type: Boolean,\n default: false\n },\n firstClass: {\n type: [String, Array, Object],\n default: null\n },\n labelPrevPage: {\n type: String,\n default: 'Go to previous page'\n },\n prevText: {\n type: String,\n default: '\\u2039' // '‹'\n },\n prevClass: {\n type: [String, Array, Object],\n default: null\n },\n labelNextPage: {\n type: String,\n default: 'Go to next page'\n },\n nextText: {\n type: String,\n default: '\\u203A' // '›'\n },\n nextClass: {\n type: [String, Array, Object]\n // default: null\n },\n labelLastPage: {\n type: String,\n default: 'Go to last page'\n },\n lastText: {\n type: String,\n default: '\\u00BB' // '»'\n },\n lastNumber: {\n type: Boolean,\n default: false\n },\n lastClass: {\n type: [String, Array, Object]\n // default: null\n },\n labelPage: {\n type: [String, Function],\n default: 'Go to page'\n },\n pageClass: {\n type: [String, Array, Object]\n // default: null\n },\n hideEllipsis: {\n type: Boolean,\n default: false\n },\n ellipsisText: {\n type: String,\n default: '\\u2026' // '…'\n },\n ellipsisClass: {\n type: [String, Array, Object]\n // default: null\n }\n },\n NAME_PAGINATION\n)\n\n// --- Mixin ---\n// @vue/component\nexport default {\n mixins: [normalizeSlotMixin],\n model: {\n prop: 'value',\n event: 'input'\n },\n props,\n data() {\n // `-1` signifies no page initially selected\n let currentPage = toInteger(this.value, 0)\n currentPage = currentPage > 0 ? currentPage : -1\n return {\n currentPage,\n localNumberOfPages: 1,\n localLimit: DEFAULT_LIMIT\n }\n },\n computed: {\n btnSize() {\n return this.size ? `pagination-${this.size}` : ''\n },\n alignment() {\n const align = this.align\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 value(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('input', 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(evt) {\n const { keyCode, shiftKey } = evt\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(evt, { propagation: false })\n shiftKey ? this.focusFirst() : this.focusPrev()\n } else if (keyCode === CODE_RIGHT || keyCode === CODE_DOWN) {\n stopEvent(evt, { 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 buttons = []\n const numberOfPages = this.localNumberOfPages\n const pageNumbers = this.pageList.map(p => p.number)\n const disabled = this.disabled\n const { showFirstDots, showLastDots } = this.paginationParams\n const currentPage = this.computedCurrentPage\n const fill = this.align === 'fill'\n // Used to control what type of aria attributes are rendered and wrapper\n const isNav = this.isNav\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': evt => {\n this.onClick(evt, 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 key: `ellipsis-${isLast ? 'last' : 'first'}`,\n staticClass: 'page-item',\n class: ['disabled', 'bv-d-xs-down-none', fill ? 'flex-fill' : '', this.ellipsisClass],\n attrs: { role: 'separator' }\n },\n [\n h('span', { staticClass: 'page-link' }, [\n this.normalizeSlot('ellipsis-text') || toString(this.ellipsisText) || h()\n ])\n ]\n )\n }\n\n // Page button factory\n const makePageButton = (page, idx) => {\n const active = isActivePage(page.number) && !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':\n isFunction(this.labelPage) && !isUndefined(this.labelPage(page.number))\n ? /* istanbul ignore next */ this.labelPage(page.number)\n : `${this.labelPage} ${page.number}`,\n 'aria-checked': isNav ? null : active ? 'true' : 'false',\n 'aria-current': isNav && active ? 'page' : null,\n 'aria-posinset': isNav ? null : page.number,\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(page.number))\n const scope = {\n page: page.number,\n index: page.number - 1,\n content: btnContent,\n active,\n disabled\n }\n const $inner = h(\n disabled ? 'span' : isNav ? BLink : 'button',\n {\n props: disabled || !isNav ? {} : this.linkProps(page.number),\n staticClass: 'page-link',\n class: { 'flex-grow-1': !isNav && !disabled && fill },\n attrs,\n on: disabled\n ? {}\n : {\n '!click': evt => {\n this.onClick(evt, page.number)\n },\n keydown: onSpaceKey\n }\n },\n [this.normalizeSlot('page', scope) || btnContent]\n )\n return h(\n 'li',\n {\n key: `page-${page.number}`,\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 },\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 '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 '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 '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 '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 ref: 'ul',\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 : this.ariaLabel || null\n },\n // We disable keyboard left/right nav when `<b-pagination-nav>`\n on: isNav ? {} : { keydown: this.handleKeyNav }\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 ? this.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 { BvEvent } from '../../utils/bv-event.class'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { attemptFocus, isVisible } from '../../utils/dom'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { mathCeil, mathMax } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport paginationMixin 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 = val => mathMax(toInteger(val) || DEFAULT_PER_PAGE, 1)\n\n// Sanitize the provided total rows number (converting to a number)\nconst sanitizeTotalRows = val => mathMax(toInteger(val) || DEFAULT_TOTAL_ROWS, 0)\n\n// --- Main component ---\n// The render function is brought in via the `paginationMixin`\n// @vue/component\nexport const BPagination = /*#__PURE__*/ Vue.extend({\n name: NAME_PAGINATION,\n mixins: [paginationMixin],\n props: makePropsConfigurable(\n {\n size: {\n type: String\n // default: null\n },\n perPage: {\n type: [Number, String],\n default: DEFAULT_PER_PAGE\n },\n totalRows: {\n type: [Number, String],\n default: DEFAULT_TOTAL_ROWS\n },\n ariaControls: {\n type: String\n // default: null\n }\n },\n NAME_PAGINATION\n ),\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(newVal, oldVal) {\n if (!isUndefinedOrNull(oldVal)) {\n if (newVal.perPage !== oldVal.perPage && newVal.totalRows === oldVal.totalRows) {\n // If the page size changes, reset to page 1\n this.currentPage = 1\n } else if (\n newVal.numberOfPages !== oldVal.numberOfPages &&\n this.currentPage > newVal.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 = newVal.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.value, 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(evt, pageNumber) {\n // Dont do anything if clicking the current active page\n if (pageNumber === this.currentPage) {\n return\n }\n\n const { target } = evt\n\n // Emit a user-cancelable `page-click` event\n const clickEvt = new BvEvent('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('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 /* istanbul ignore next */\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 looseEqual from '../../utils/loose-equal'\nimport { BvEvent } from '../../utils/bv-event.class'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { attemptBlur, requestAF } from '../../utils/dom'\nimport { isBrowser } from '../../utils/env'\nimport { isArray, isUndefined, isFunction, isObject } from '../../utils/inspect'\nimport { mathMax } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport { omit } from '../../utils/object'\nimport { 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// --- Utility 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\n// --- Main component ---\n// The render function is brought in via the pagination mixin\n// @vue/component\nexport const BPaginationNav = /*#__PURE__*/ Vue.extend({\n name: NAME_PAGINATION_NAV,\n mixins: [paginationMixin],\n props: makePropsConfigurable(\n {\n ...paginationProps,\n ...linkProps,\n size: {\n type: String\n // default: null\n },\n numberOfPages: {\n type: [Number, String],\n default: 1,\n /* istanbul ignore next */\n validator(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 baseUrl: {\n type: String,\n default: '/'\n },\n useRouter: {\n type: Boolean,\n default: false\n },\n linkGen: {\n type: Function\n // default: null\n },\n pageGen: {\n type: Function\n // default: null\n },\n pages: {\n // Optional array of page links\n type: Array\n // default: null\n },\n noPageDetect: {\n // Disable auto page number detection if true\n type: Boolean,\n default: false\n }\n },\n NAME_PAGINATION_NAV\n ),\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(evt, pageNumber) {\n // Dont do anything if clicking the current active page\n if (pageNumber === this.currentPage) {\n return\n }\n\n const target = evt.currentTarget || evt.target\n\n // Emit a user-cancelable `page-click` event\n const clickEvt = new BvEvent('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('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(pageNum) {\n if (!isArray(this.pages) || this.pages.length === 0 || isUndefined(this.pages[pageNum - 1])) {\n const link = `${this.baseUrl}${pageNum}`\n return {\n link: this.useRouter ? { path: link } : link,\n text: toString(pageNum)\n }\n }\n const info = this.pages[pageNum - 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 || pageNum)\n }\n } else {\n return { link: toString(info), text: toString(pageNum) }\n }\n },\n makePage(pageNum) {\n const { pageGen } = this\n const info = this.getPageInfo(pageNum)\n if (pageGen && isFunction(pageGen)) {\n const result = pageGen(pageNum, info)\n if (!isUndefined(result)) {\n return result\n }\n }\n return info.text\n },\n makeLink(pageNum) {\n const { linkGen } = this\n const info = this.getPageInfo(pageNum)\n if (linkGen && isFunction(linkGen)) {\n const result = linkGen(pageNum, info)\n if (!isUndefined(result)) {\n return result\n }\n }\n return info.link\n },\n linkProps(pageNum) {\n const props = pluckProps(linkProps, this)\n const link = this.makeLink(pageNum)\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 let guess = this.computedValue\n const $router = this.$router\n const $route = this.$route\n // This section only occurs if we are client side, or server-side with $router\n /* istanbul ignore else */\n if (!this.noPageDetect && !guess && (isBrowser || (!isBrowser && $router))) {\n // Current route (if router available)\n const currRoute =\n $router && $route ? { path: $route.path, hash: $route.hash, query: $route.query } : {}\n // Current page full HREF (if client side). Can't be done as a computed prop!\n const loc = isBrowser ? window.location || document.location : null\n const currLink = 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 page = 1; !guess && page <= this.localNumberOfPages; page++) {\n const to = this.makeLink(page)\n if ($router && (isObject(to) || this.useRouter)) {\n // Resolve the page via the $router\n guess = looseEqual(this.resolveRoute(to), currRoute) ? page : null\n } else if (isBrowser) {\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), currLink) ? page : null\n } else {\n // probably SSR, but no $router so we can't guess, so lets break out of\n // 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 this.currentPage is -1 when no value is specified\n // And 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 { BVTransition } from '../../../utils/bv-transition'\nimport { getCS, requestAF, select } from '../../../utils/dom'\nimport { toFloat } from '../../../utils/number'\nimport { HTMLElement, SVGElement } from '../../../utils/safe-types'\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// @vue/component\nexport const BVPopper = /*#__PURE__*/ Vue.extend({\n name: NAME_POPPER,\n props: {\n target: {\n // Element that the tooltip/popover is positioned relative to\n type: [HTMLElement, SVGElement]\n // default: null\n },\n placement: {\n type: String,\n default: 'top'\n },\n fallbackPlacement: {\n type: [String, Array],\n default: 'flip'\n },\n offset: {\n type: Number,\n default: 0\n },\n boundary: {\n // 'scrollParent', 'viewport', 'window', or Element\n type: [String, HTMLElement],\n default: 'scrollParent'\n },\n boundaryPadding: {\n // Tooltip/popover will try and stay away from\n // boundary edge by this many pixels\n type: Number,\n default: 5\n },\n arrowPadding: {\n // The minimum distance (in `px`) from the edge of the\n // tooltip/popover that the arrow can be positioned\n type: Number,\n default: 6\n }\n },\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('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:destroyed', handleDestroy)\n // Self destruct after hidden\n this.$once('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 // 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: this.noFade },\n on: {\n // Events used by parent component/instance\n beforeEnter: el => this.$emit('show', el),\n afterEnter: el => this.$emit('shown', el),\n beforeLeave: el => this.$emit('hide', el),\n afterLeave: el => this.$emit('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 scopedStyleAttrsMixin from '../../../mixins/scoped-style-attrs'\nimport { isFunction, isUndefinedOrNull } from '../../../utils/inspect'\nimport { BVPopper } from './bv-popper'\n\n// @vue/component\nexport const BVTooltipTemplate = /*#__PURE__*/ Vue.extend({\n name: NAME_TOOLTIP_TEMPLATE,\n extends: BVPopper,\n mixins: [scopedStyleAttrsMixin],\n props: {\n // Other non-reactive (while open) props are pulled in from BVPopper\n id: {\n type: String\n // default: null\n },\n html: {\n // Used only by the directive versions\n type: Boolean\n // default: false\n }\n },\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 return [\n {\n // Disables pointer events to hide the tooltip when the user\n // hovers over its content\n noninteractive: !this.interactive,\n [`b-${this.templateType}-${this.variant}`]: this.variant,\n // `attachment` will come from BVToolpop\n [`bs-${this.templateType}-${this.attachment}`]: this.attachment\n },\n this.customClass\n ]\n },\n templateAttributes() {\n return {\n // Apply attributes from root tooltip component\n ...this.$parent.$parent.$attrs,\n\n id: this.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 */: evt => {\n /* istanbul ignore next: difficult to test in JSDOM */\n this.$emit('mouseenter', evt)\n },\n mouseleave /* istanbul ignore next */: evt => {\n /* istanbul ignore next: difficult to test in JSDOM */\n this.$emit('mouseleave', evt)\n },\n focusin /* istanbul ignore next */: evt => {\n /* istanbul ignore next: difficult to test in JSDOM */\n this.$emit('focusin', evt)\n },\n focusout /* istanbul ignore next */: evt => {\n /* istanbul ignore next: difficult to test in JSDOM */\n this.$emit('focusout', evt)\n }\n }\n }\n },\n methods: {\n renderTemplate(h) {\n // Title can be a scoped slot function\n const $title = isFunction(this.title)\n ? this.title({})\n : isUndefinedOrNull(this.title)\n ? /* istanbul ignore next */ h()\n : this.title\n\n // Directive versions only\n const domProps = this.html && !isFunction(this.title) ? { innerHTML: this.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', { ref: 'arrow', staticClass: 'arrow' }),\n h('div', { staticClass: 'tooltip-inner', domProps }, [$title])\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 Vue from '../../../vue'\nimport { NAME_TOOLTIP_HELPER } from '../../../constants/components'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../../../constants/events'\nimport getScopId from '../../../utils/get-scope-id'\nimport looseEqual from '../../../utils/loose-equal'\nimport { mathMax } from '../../../utils/math'\nimport noop from '../../../utils/noop'\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 { eventOn, eventOff, eventOnOff } from '../../../utils/events'\nimport {\n isFunction,\n isNumber,\n isPlainObject,\n isString,\n isUndefined,\n isUndefinedOrNull\n} from '../../../utils/inspect'\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// Modal container selector for appending tooltip/popover\nconst MODAL_SELECTOR = '.modal-content'\n// Modal `$root` hidden event\nconst MODAL_CLOSE_EVENT = 'bv::modal::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// @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._uid}__`\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(Boolean)\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 return {\n title: this.title,\n content: this.content,\n variant: this.variant,\n customClass: this.customClass,\n noFade: this.noFade,\n interactive: this.interactive\n }\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:beforeDestroy', () => {\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 = getScopId(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('show', this.onTemplateShow)\n // When the template has completed showing\n $tip.$once('shown', this.onTemplateShown)\n // When the template has started to hide\n $tip.$once('hide', this.onTemplateHide)\n // When the template has completed hiding\n $tip.$once('hidden', this.onTemplateHidden)\n // When the template gets destroyed for any reason\n $tip.$once('hook: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('focusin', this.handleEvent)\n $tip.$on('focusout', this.handleEvent)\n $tip.$on('mouseenter', this.handleEvent)\n $tip.$on('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('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('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` evt 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('enabled'))\n },\n disable() {\n this.$_enabled = false\n // Create a non-cancelable BvEvent\n this.emitEvent(this.buildEvent('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('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('hidden'))\n },\n // --- Utility 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(bvEvt) {\n // Emits a BvEvent on $root and this instance\n const evtName = bvEvt.type\n const $root = this.$root\n if ($root && $root.$emit) {\n // Emit an event on $root\n $root.$emit(`bv::${this.templateType}::${evtName}`, bvEvt)\n }\n this.$emit(evtName, bvEvt)\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(evt => {\n target && eventOff(target, evt, 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](`bv::hide::${type}`, this.doHide)\n $root[method](`bv::show::${type}`, this.doShow)\n $root[method](`bv::disable::${type}`, this.doDisable)\n $root[method](`bv::enable::${type}`, 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'](MODAL_CLOSE_EVENT, 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']('shown', this.forceHide)\n }\n },\n // --- Event handlers ---\n handleEvent(evt) {\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 = evt.type\n const triggers = this.computedTriggers\n\n if (type === 'click' && arrayIncludes(triggers, 'click')) {\n this.click(evt)\n } else if (type === 'mouseenter' && arrayIncludes(triggers, 'hover')) {\n // `mouseenter` is a non-bubbling event\n this.enter(evt)\n } else if (type === 'focusin' && arrayIncludes(triggers, 'focus')) {\n // `focusin` is a bubbling event\n // `evt` includes `relatedTarget` (element losing focus)\n this.enter(evt)\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 // `evtTarget` is the element which is losing focus/hover and\n const evtTarget = evt.target\n // `relatedTarget` is the element gaining focus/hover\n const relatedTarget = evt.relatedTarget\n /* istanbul ignore next */\n if (\n // From tip to target\n (tip && contains(tip, evtTarget) && contains(target, relatedTarget)) ||\n // From target to tip\n (tip && contains(target, evtTarget) && contains(tip, relatedTarget)) ||\n // Within tip\n (tip && contains(tip, evtTarget) && contains(tip, relatedTarget)) ||\n // Within target\n (contains(target, evtTarget) && 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(evt)\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(evt) {\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(evt.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(evt = null) {\n // Opening trigger handler\n // Note: Click events are sent with evt === null\n if (evt) {\n this.activeTrigger[evt.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(evt = null) {\n // Closing trigger handler\n // Note: Click events are sent with evt === null\n if (evt) {\n this.activeTrigger[evt.type === 'focusout' ? 'focus' : 'hover'] = false\n /* istanbul ignore next */\n if (evt.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 getScopId from '../../utils/get-scope-id'\nimport { arrayIncludes } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { isArray, isString, isUndefinedOrNull } from '../../utils/inspect'\nimport { HTMLElement, SVGElement } from '../../utils/safe-types'\nimport { BVTooltip } from './helpers/bv-tooltip'\n\n// @vue/component\nexport const BTooltip = /*#__PURE__*/ Vue.extend({\n name: NAME_TOOLTIP,\n inheritAttrs: false,\n props: makePropsConfigurable(\n {\n title: {\n type: String\n // default: undefined\n },\n // Added in by BPopover\n // content: {\n // type: String,\n // default: undefined\n // },\n target: {\n // String ID of element, or element/component reference\n // Or function that returns one of the above\n type: [String, HTMLElement, SVGElement, Function, Object],\n required: true\n },\n triggers: {\n type: [String, Array],\n default: 'hover focus'\n },\n placement: {\n type: String,\n default: 'top'\n },\n fallbackPlacement: {\n type: [String, Array],\n default: 'flip',\n validator(value) {\n return (\n (isArray(value) && value.every(v => isString(v))) ||\n arrayIncludes(['flip', 'clockwise', 'counterclockwise'], value)\n )\n }\n },\n variant: {\n type: String\n // default: undefined\n },\n customClass: {\n type: String\n // default: undefined\n },\n delay: {\n type: [Number, Object, String],\n default: 50\n },\n boundary: {\n // String: scrollParent, window, or viewport\n // Element: element reference\n // Object: Vue component\n type: [String, HTMLElement, Object],\n default: 'scrollParent'\n },\n boundaryPadding: {\n type: [Number, String],\n default: 5\n },\n offset: {\n type: [Number, String],\n default: 0\n },\n noFade: {\n type: Boolean,\n default: false\n },\n container: {\n // String: HTML ID of container, if null body is used (default)\n // HTMLElement: element reference reference\n // Object: Vue Component\n type: [String, HTMLElement, Object]\n // default: undefined\n },\n show: {\n type: Boolean,\n default: false\n },\n noninteractive: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n id: {\n // ID to use for tooltip element\n // If not provided on will automatically be generated\n type: String\n // default: null\n }\n },\n NAME_TOOLTIP\n ),\n data() {\n return {\n localShow: this.show,\n localTitle: '',\n localContent: ''\n }\n },\n computed: {\n templateData() {\n // Data that will be passed to the template and popper\n return {\n // We use massaged versions of the title and content props/slots\n title: this.localTitle,\n content: this.localContent,\n // Pass these props as is\n target: this.target,\n triggers: this.triggers,\n placement: this.placement,\n fallbackPlacement: this.fallbackPlacement,\n variant: this.variant,\n customClass: this.customClass,\n container: this.container,\n boundary: this.boundary,\n boundaryPadding: this.boundaryPadding,\n delay: this.delay,\n offset: this.offset,\n noFade: this.noFade,\n interactive: !this.noninteractive,\n disabled: this.disabled,\n id: this.id\n }\n },\n templateTitleContent() {\n // Used to watch for changes to the title and content props\n return {\n title: this.title,\n content: this.content\n }\n }\n },\n watch: {\n show(show, oldVal) {\n if (show !== oldVal && show !== this.localShow && this.$_toolpop) {\n if (show) {\n this.$_toolpop.show()\n } else {\n // We use `forceHide()` to override any active triggers\n this.$_toolpop.forceHide()\n }\n }\n },\n disabled(newVal) {\n if (newVal) {\n this.doDisable()\n } else {\n this.doEnable()\n }\n },\n localShow(newVal) {\n // TODO: May need to be done in a `$nextTick()`\n this.$emit('update:show', newVal)\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('open', this.doOpen)\n this.$off('close', this.doClose)\n this.$off('disable', this.doDisable)\n this.$off('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 = getScopId(this) || getScopId(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('show', this.onShow)\n $toolpop.$on('shown', this.onShown)\n $toolpop.$on('hide', this.onHide)\n $toolpop.$on('hidden', this.onHidden)\n $toolpop.$on('disabled', this.onDisabled)\n $toolpop.$on('enabled', this.onEnabled)\n // Initially disabled?\n if (this.disabled) {\n // Initially disabled\n this.doDisable()\n }\n // Listen to open signals from others\n this.$on('open', this.doOpen)\n // Listen to close signals from others\n this.$on('close', this.doClose)\n // Listen to disable signals from others\n this.$on('disable', this.doDisable)\n // Listen to enable signals from others\n this.$on('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.$scopedSlots.default || this.title)\n },\n // Helper methods for `updateContent()`\n setTitle(val) {\n val = isUndefinedOrNull(val) ? '' : val\n // We only update the value if it has changed\n if (this.localTitle !== val) {\n this.localTitle = val\n }\n },\n setContent(val) {\n val = isUndefinedOrNull(val) ? '' : val\n // We only update the value if it has changed\n if (this.localContent !== val) {\n this.localContent = val\n }\n },\n // --- Template event handlers ---\n onShow(bvEvt) {\n // Placeholder\n this.$emit('show', bvEvt)\n if (bvEvt) {\n this.localShow = !bvEvt.defaultPrevented\n }\n },\n onShown(bvEvt) {\n // Tip is now showing\n this.localShow = true\n this.$emit('shown', bvEvt)\n },\n onHide(bvEvt) {\n this.$emit('hide', bvEvt)\n },\n onHidden(bvEvt) {\n // Tip is no longer showing\n this.$emit('hidden', bvEvt)\n this.localShow = false\n },\n onDisabled(bvEvt) {\n // Prevent possible endless loop if user mistakenly\n // fires `disabled` instead of `disable`\n if (bvEvt && bvEvt.type === 'disabled') {\n this.$emit('update:disabled', true)\n this.$emit('disabled', bvEvt)\n }\n },\n onEnabled(bvEvt) {\n // Prevent possible endless loop if user mistakenly\n // fires `enabled` instead of `enable`\n if (bvEvt && bvEvt.type === 'enabled') {\n this.$emit('update:disabled', false)\n this.$emit('enabled', bvEvt)\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 // Title and content could be a scoped slot function\n const $title = isFunction(this.title) ? this.title({}) : this.title\n const $content = isFunction(this.content) ? this.content({}) : this.content\n\n // Directive usage only\n const titleDomProps = this.html && !isFunction(this.title) ? { innerHTML: this.title } : {}\n const contentDomProps =\n this.html && !isFunction(this.content) ? { innerHTML: this.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', { ref: 'arrow', staticClass: 'arrow' }),\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 { makePropsConfigurable } from '../../utils/config'\nimport { HTMLElement } from '../../utils/safe-types'\nimport { BTooltip } from '../tooltip/tooltip'\nimport { BVPopover } from './helpers/bv-popover'\n\nexport const BPopover = /*#__PURE__*/ Vue.extend({\n name: NAME_POPOVER,\n extends: BTooltip,\n inheritAttrs: false,\n props: makePropsConfigurable(\n {\n title: {\n type: String\n // default: undefined\n },\n content: {\n type: String\n // default: undefined\n },\n triggers: {\n type: [String, Array],\n default: 'click'\n },\n placement: {\n type: String,\n default: 'right'\n },\n variant: {\n type: String,\n default: undefined\n },\n customClass: {\n type: String,\n default: undefined\n },\n delay: {\n type: [Number, Object, String],\n default: 50\n },\n boundary: {\n // String: scrollParent, window, or viewport\n // Element: element reference\n // Object: Vue component\n type: [String, HTMLElement, Object],\n default: 'scrollParent'\n },\n boundaryPadding: {\n type: [Number, String],\n default: 5\n }\n },\n NAME_POPOVER\n ),\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.$scopedSlots.default || this.content)\n this.setTitle(this.$scopedSlots.title || this.title)\n }\n }\n // Render function provided by BTooltip\n})\n","import { NAME_POPOVER } from '../../constants/components'\nimport getScopId from '../../utils/get-scope-id'\nimport identity from '../../utils/identity'\nimport looseEqual from '../../utils/loose-equal'\nimport { concat } from '../../utils/array'\nimport { getComponentConfig } from '../../utils/config'\nimport { isBrowser } from '../../utils/env'\nimport {\n isFunction,\n isNumber,\n isPlainObject,\n isString,\n isUndefined,\n isUndefinedOrNull\n} from '../../utils/inspect'\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 (!isBrowser) {\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: getScopId($parent, undefined)\n })\n el[BV_POPOVER].__bv_prev_data__ = {}\n el[BV_POPOVER].$on('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 { makePropsConfigurable } from '../../utils/config'\nimport { htmlOrText } from '../../utils/html'\nimport { isBoolean } from '../../utils/inspect'\nimport { mathMax, mathPow } from '../../utils/math'\nimport { toFixed, toFloat, toInteger } from '../../utils/number'\nimport { toString } from '../../utils/string'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\n// @vue/component\nexport const BProgressBar = /*#__PURE__*/ Vue.extend({\n name: NAME_PROGRESS_BAR,\n mixins: [normalizeSlotMixin],\n inject: {\n bvProgress: {\n default() {\n return {}\n }\n }\n },\n props: makePropsConfigurable(\n {\n value: {\n type: [Number, String],\n default: 0\n },\n label: {\n type: String\n // default: null\n },\n labelHtml: {\n type: String\n },\n // $parent (this.bvProgress) prop values may take precedence over the following props\n // Which is why they are defaulted to null\n max: {\n type: [Number, String],\n default: null\n },\n precision: {\n type: [Number, String],\n default: null\n },\n variant: {\n type: String\n // default: undefined\n },\n striped: {\n type: Boolean,\n default: null\n },\n animated: {\n type: Boolean,\n default: null\n },\n showProgress: {\n type: Boolean,\n default: null\n },\n showValue: {\n type: Boolean,\n default: null\n }\n },\n NAME_PROGRESS_BAR\n ),\n computed: {\n progressBarClasses() {\n return [\n this.computedVariant ? `bg-${this.computedVariant}` : '',\n this.computedStriped || this.computedAnimated ? 'progress-bar-striped' : '',\n this.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 { 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_PROGRESS } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { BProgressBar } from './progress-bar'\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: makePropsConfigurable(\n {\n // These props can be inherited via the child b-progress-bar(s)\n variant: {\n type: String\n // default: undefined\n },\n striped: {\n type: Boolean,\n default: false\n },\n animated: {\n type: Boolean,\n default: false\n },\n height: {\n type: String\n // default: null\n },\n precision: {\n type: [Number, String],\n default: 0\n },\n showProgress: {\n type: Boolean,\n default: false\n },\n showValue: {\n type: Boolean,\n default: false\n },\n max: {\n type: [Number, String],\n default: 100\n },\n // This prop is not inherited by child b-progress-bar(s)\n value: {\n type: [Number, String],\n default: 0\n }\n },\n NAME_PROGRESS\n ),\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, {\n props: {\n value: this.value,\n max: this.max,\n precision: this.precision,\n variant: this.variant,\n animated: this.animated,\n striped: this.striped,\n showProgress: this.showProgress,\n showValue: this.showValue\n }\n })\n }\n return h('div', { class: ['progress'], style: this.progressHeight }, [childNodes])\n }\n})\n","import Vue from '../../vue'\nimport { NAME_SIDEBAR } from '../../constants/components'\nimport { CODE_ESC } from '../../constants/key-codes'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_FOOTER, SLOT_NAME_TITLE } from '../../constants/slot-names'\nimport BVTransition from '../../utils/bv-transition'\nimport { attemptFocus, contains, getActiveElement, getTabables } from '../../utils/dom'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { isBrowser } from '../../utils/env'\nimport { toString } from '../../utils/string'\nimport attrsMixin from '../../mixins/attrs'\nimport idMixin from '../../mixins/id'\nimport listenOnRootMixin from '../../mixins/listen-on-root'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport {\n EVENT_TOGGLE,\n EVENT_STATE,\n EVENT_STATE_REQUEST,\n EVENT_STATE_SYNC\n} from '../../directives/toggle/toggle'\nimport { BButtonClose } from '../button/button-close'\nimport { BIconX } from '../../icons/icons'\n\n// --- Constants ---\n\nconst CLASS_NAME = 'b-sidebar'\n\n// --- Render methods ---\nconst renderHeaderTitle = (h, ctx) => {\n // Render a empty `<span>` when to title was provided\n const title = ctx.computedTile\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 ref: 'close-button',\n props: { ariaLabel: closeLabel, textVariant },\n on: { click: hide }\n },\n [ctx.normalizeSlot('header-close') || h(BIconX)]\n )\n}\n\nconst renderHeader = (h, ctx) => {\n if (ctx.noHeader) {\n return h()\n }\n\n const $title = renderHeaderTitle(h, ctx)\n const $close = renderHeaderClose(h, ctx)\n\n return h(\n 'header',\n {\n key: 'header',\n staticClass: `${CLASS_NAME}-header`,\n class: ctx.headerClass\n },\n ctx.right ? [$close, $title] : [$title, $close]\n )\n}\n\nconst renderBody = (h, ctx) => {\n return h(\n 'div',\n {\n key: 'body',\n staticClass: `${CLASS_NAME}-body`,\n class: ctx.bodyClass\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 key: 'footer',\n staticClass: `${CLASS_NAME}-footer`,\n class: ctx.footerClass\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// @vue/component\nexport const BSidebar = /*#__PURE__*/ Vue.extend({\n name: NAME_SIDEBAR,\n // Mixin order is important!\n mixins: [attrsMixin, idMixin, listenOnRootMixin, normalizeSlotMixin],\n inheritAttrs: false,\n model: {\n prop: 'visible',\n event: 'change'\n },\n props: makePropsConfigurable(\n {\n title: {\n type: String\n // default: null\n },\n right: {\n type: Boolean,\n default: false\n },\n bgVariant: {\n type: String,\n default: 'light'\n },\n textVariant: {\n type: String,\n default: 'dark'\n },\n shadow: {\n type: [Boolean, String],\n default: false\n },\n width: {\n type: String\n // default: undefined\n },\n zIndex: {\n type: [Number, String]\n // default: null\n },\n ariaLabel: {\n type: String\n // default: null\n },\n ariaLabelledby: {\n type: String\n // default: null\n },\n closeLabel: {\n // `aria-label` for close button\n // Defaults to 'Close'\n type: String\n // default: undefined\n },\n tag: {\n type: String,\n default: 'div'\n },\n sidebarClass: {\n type: [String, Array, Object]\n // default: null\n },\n headerClass: {\n type: [String, Array, Object]\n // default: null\n },\n bodyClass: {\n type: [String, Array, Object]\n // default: null\n },\n footerClass: {\n type: [String, Array, Object]\n // default: null\n },\n backdrop: {\n // If `true`, shows a basic backdrop\n type: Boolean,\n default: false\n },\n backdropVariant: {\n type: String,\n default: 'dark'\n },\n noSlide: {\n type: Boolean,\n default: false\n },\n noHeader: {\n type: Boolean,\n default: false\n },\n noHeaderClose: {\n type: Boolean,\n default: false\n },\n noCloseOnEsc: {\n type: Boolean,\n default: false\n },\n noCloseOnBackdrop: {\n type: Boolean,\n default: false\n },\n noCloseOnRouteChange: {\n type: Boolean,\n default: false\n },\n noEnforceFocus: {\n type: Boolean,\n default: false\n },\n lazy: {\n type: Boolean,\n default: false\n },\n visible: {\n type: Boolean,\n default: false\n }\n },\n NAME_SIDEBAR\n ),\n data() {\n return {\n // Internal `v-model` state\n localShow: !!this.visible,\n // For lazy render triggering\n isOpen: !!this.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 return {\n visible: this.localShow,\n right: this.right,\n hide: this.hide\n }\n },\n computedTile() {\n return this.normalizeSlot(SLOT_NAME_TITLE, this.slotScope) || toString(this.title) || null\n },\n titleId() {\n return this.computedTile ? 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 visible(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.localShow = newVal\n }\n },\n localShow(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.emitState(newVal)\n this.$emit('change', newVal)\n }\n },\n /* istanbul ignore next */\n $route(newVal = {}, oldVal = {}) {\n if (!this.noCloseOnRouteChange && newVal.fullPath !== oldVal.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(EVENT_TOGGLE, this.handleToggle)\n this.listenOnRoot(EVENT_STATE_REQUEST, 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(EVENT_STATE, this.safeId(), state)\n },\n emitSync(state = this.localShow) {\n this.emitOnRoot(EVENT_STATE_SYNC, 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(evt) {\n const { keyCode } = evt\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(isBrowser ? [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('shown')\n },\n onAfterLeave() {\n this.enforceFocus(this.$_returnFocusEl)\n this.$_returnFocusEl = null\n // Trigger lazy render\n this.isOpen = false\n this.$emit('hidden')\n },\n enforceFocus(el) {\n if (!this.noEnforceFocus) {\n attemptFocus(el)\n }\n }\n },\n render(h) {\n const localShow = this.localShow\n const shadow = this.shadow === '' ? true : this.shadow\n\n let $sidebar = h(\n this.tag,\n {\n ref: 'content',\n directives: [{ name: 'show', value: localShow }],\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-${this.bgVariant}`]: !!this.bgVariant,\n [`text-${this.textVariant}`]: !!this.textVariant\n },\n this.sidebarClass\n ],\n attrs: this.computedAttrs,\n style: { width: this.width }\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 && this.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 { makePropsConfigurable } from '../../utils/config'\n\n// @vue/component\nexport const BSkeleton = /*#__PURE__*/ Vue.extend({\n name: NAME_SKELETON,\n functional: true,\n props: makePropsConfigurable(\n {\n animation: {\n type: String,\n default: 'wave'\n },\n type: {\n type: String,\n default: 'text'\n },\n width: {\n type: String\n // default: null\n },\n height: {\n type: String\n // default: null\n },\n size: {\n type: String\n // default: null\n },\n variant: {\n type: String\n // default: null\n }\n },\n NAME_SKELETON\n ),\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 { makePropsConfigurable } from '../../utils/config'\nimport { BIcon } from '../../icons'\n\n// @vue/component\nexport const BSkeletonIcon = /*#__PURE__*/ Vue.extend({\n name: NAME_SKELETON_ICON,\n functional: true,\n props: makePropsConfigurable(\n {\n animation: {\n type: String,\n default: 'wave'\n },\n icon: {\n type: String\n },\n iconProps: {\n type: Object,\n default: () => {}\n }\n },\n NAME_SKELETON_ICON\n ),\n render(h, { props }) {\n const { icon, animation } = props\n\n const $icon = h(BIcon, {\n props: { icon, ...props.iconProps },\n staticClass: 'b-skeleton-icon'\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 { makePropsConfigurable } from '../utils/config'\nimport { commonIconProps, BVIconBase } from './helpers/icon-base'\n\n// @vue/component\nexport const BIconstack = /*#__PURE__*/ Vue.extend({\n name: NAME_ICONSTACK,\n functional: true,\n props: makePropsConfigurable(commonIconProps, NAME_ICONSTACK),\n render(h, { data, props, children }) {\n return h(\n BVIconBase,\n mergeData(data, { staticClass: 'b-iconstack', props: { ...props, stacked: false } }),\n children\n )\n }\n})\n","import Vue from '../../vue'\nimport { NAME_SKELETON_IMG } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { BAspect } from '../aspect'\nimport { BSkeleton } from './skeleton'\n\n// @vue/component\nexport const BSkeletonImg = /*#__PURE__*/ Vue.extend({\n name: NAME_SKELETON_IMG,\n functional: true,\n props: makePropsConfigurable(\n {\n animation: {\n type: String\n },\n aspect: {\n type: String,\n default: '16:9'\n },\n noAspect: {\n type: Boolean,\n default: false\n },\n height: {\n type: String\n },\n width: {\n type: String\n },\n variant: {\n type: String\n },\n cardImg: {\n type: String\n }\n },\n NAME_SKELETON_IMG\n ),\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 { isArray, isUndefined } from '../utils/inspect'\n\n// @vue/component\nexport default {\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 { makePropsConfigurable } from '../../utils/config'\nimport attrsMixin from '../../mixins/attrs'\nimport listenersMixin from '../../mixins/listeners'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\nexport const props = makePropsConfigurable(\n {\n variant: {\n type: String,\n default: null\n }\n },\n NAME_TR\n)\n\nconst LIGHT = 'light'\nconst DARK = 'dark'\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 // Mixin order is important!\n mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n provide() {\n return {\n bvTableTr: this\n }\n },\n inject: {\n bvTableRowGroup: {\n /* istanbul ignore next */\n default() {\n return {}\n }\n }\n },\n inheritAttrs: false,\n props,\n computed: {\n inTbody() {\n // Sniffed by <b-td> / <b-th>\n return this.bvTableRowGroup.isTbody\n },\n inThead() {\n // Sniffed by <b-td> / <b-th>\n return this.bvTableRowGroup.isThead\n },\n inTfoot() {\n // Sniffed by <b-td> / <b-th>\n return this.bvTableRowGroup.isTfoot\n },\n isDark() {\n // Sniffed by <b-td> / <b-th>\n return this.bvTableRowGroup.isDark\n },\n isStacked() {\n // Sniffed by <b-td> / <b-th>\n return this.bvTableRowGroup.isStacked\n },\n isResponsive() {\n // Sniffed by <b-td> / <b-th>\n return this.bvTableRowGroup.isResponsive\n },\n isStickyHeader() {\n // Sniffed by <b-td> / <b-th>\n // Sticky headers are only supported in thead\n return this.bvTableRowGroup.isStickyHeader\n },\n hasStickyHeader() {\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 return !this.isStacked && this.bvTableRowGroup.hasStickyHeader\n },\n tableVariant() {\n // Sniffed by <b-td> / <b-th>\n return this.bvTableRowGroup.tableVariant\n },\n headVariant() {\n // Sniffed by <b-td> / <b-th>\n return this.inThead ? this.bvTableRowGroup.headVariant : null\n },\n footVariant() {\n // Sniffed by <b-td> / <b-th>\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 return [this.variant ? `${this.isRowDark ? 'bg' : 'table'}-${this.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 { isFunction } from '../../../utils/inspect'\nimport { BTr } from '../tr'\n\nconst slotName = 'bottom-row'\n\nexport default {\n methods: {\n renderBottomRow() {\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(slotName) || this.stacked === true || this.stacked === '') {\n return h()\n }\n\n const fields = this.computedFields\n\n return h(\n BTr,\n {\n key: 'b-bottom-row',\n staticClass: 'b-table-bottom-row',\n class: [\n isFunction(this.tbodyTrClass)\n ? /* istanbul ignore next */ this.tbodyTrClass(null, 'row-bottom')\n : this.tbodyTrClass\n ],\n attrs: isFunction(this.tbodyTrAttr)\n ? /* istanbul ignore next */ this.tbodyTrAttr(null, 'row-bottom')\n : this.tbodyTrAttr\n },\n this.normalizeSlot(slotName, { columns: fields.length, fields })\n )\n }\n }\n}\n","import Vue from '../../vue'\nimport { NAME_TABLE_CELL } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { isTag } from '../../utils/dom'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { toInteger } from '../../utils/number'\nimport { toString } from '../../utils/string'\nimport attrsMixin from '../../mixins/attrs'\nimport listenersMixin from '../../mixins/listeners'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\n// --- Utility 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 = val => isUndefinedOrNull(val) || parseSpan(val) > 0\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n variant: {\n type: String,\n default: null\n },\n colspan: {\n type: [Number, String],\n default: null,\n validator: spanValidator\n },\n rowspan: {\n type: [Number, String],\n default: null,\n validator: spanValidator\n },\n stackedHeading: {\n type: String,\n default: null\n },\n stickyColumn: {\n type: Boolean,\n default: false\n }\n },\n NAME_TABLE_CELL\n)\n\n// --- Main component ---\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 /* istanbul ignore next */\n default() {\n return {}\n }\n }\n },\n inheritAttrs: false,\n props,\n computed: {\n tag() {\n // Overridden by <b-th>\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 isStackedCell() {\n // We only support stacked-heading in tbody in stacked mode\n return this.inTbody && this.isStacked\n },\n isResponsive() {\n return this.bvTableTr.isResponsive\n },\n isStickyHeader() {\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 return this.bvTableTr.isStickyHeader\n },\n hasStickyHeader() {\n // Needed to handle header background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n return this.bvTableTr.hasStickyHeader\n },\n isStickyColumn() {\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 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 cellClasses() {\n // We use computed props here for improved performance by caching\n // the results of the string interpolation\n let variant = this.variant\n if (\n (!variant && this.isStickyHeader && !this.headVariant) ||\n (!variant && this.isStickyColumn && this.inTfoot && !this.footVariant) ||\n (!variant && this.isStickyColumn && this.inThead && !this.headVariant) ||\n (!variant && this.isStickyColumn && this.inTbody)\n ) {\n // Needed for sticky-header mode as Bootstrap v4 table cells do\n // not inherit parent's background-color. Boo!\n variant = this.rowVariant || this.tableVariant || 'b-table-default'\n }\n return [\n variant ? `${this.isDark ? 'bg' : 'table'}-${variant}` : null,\n this.isStickyColumn ? 'b-table-sticky-column' : null\n ]\n },\n cellAttrs() {\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(this.stackedHeading)\n ? /* istanbul ignore next */ toString(this.stackedHeading)\n : null\n }\n }\n },\n render(h) {\n const content = [this.normalizeSlot()]\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 { NAME_TABLE } from '../../../constants/components'\nimport { makePropsConfigurable } from '../../../utils/config'\nimport { stopEvent } from '../../../utils/events'\nimport { isFunction } from '../../../utils/inspect'\nimport { BTr } from '../tr'\nimport { BTd } from '../td'\n\nconst busySlotName = 'table-busy'\n\nexport default {\n props: makePropsConfigurable(\n {\n busy: {\n type: Boolean,\n default: false\n }\n },\n NAME_TABLE\n ),\n data() {\n return {\n localBusy: false\n }\n },\n computed: {\n computedBusy() {\n return this.busy || this.localBusy\n }\n },\n watch: {\n localBusy(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.$emit('update:busy', newVal)\n }\n }\n },\n methods: {\n // Event handler helper\n stopIfBusy(evt) {\n if (this.computedBusy) {\n // If table is busy (via provider) then don't propagate\n stopEvent(evt)\n return true\n }\n return false\n },\n // Render the busy indicator or return `null` if not busy\n renderBusy() {\n const h = this.$createElement\n\n // Return a busy indicator row, or `null` if not busy\n if (this.computedBusy && this.hasNormalizedSlot(busySlotName)) {\n // Show the busy slot\n return h(\n BTr,\n {\n key: 'table-busy-slot',\n staticClass: 'b-table-busy-slot',\n class: [\n isFunction(this.tbodyTrClass)\n ? /* istanbul ignore next */ this.tbodyTrClass(null, busySlotName)\n : this.tbodyTrClass\n ],\n attrs: isFunction(this.tbodyTrAttr)\n ? /* istanbul ignore next */ this.tbodyTrAttr(null, busySlotName)\n : this.tbodyTrAttr\n },\n [\n h(BTd, { props: { colspan: this.computedFields.length || null } }, [\n this.normalizeSlot(busySlotName)\n ])\n ]\n )\n } else {\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}\n","import { NAME_TABLE } from '../../../constants/components'\nimport { makePropsConfigurable } from '../../../utils/config'\nimport { htmlOrText } from '../../../utils/html'\n\nexport default {\n props: makePropsConfigurable(\n {\n // `caption-top` is part of table-render mixin (styling)\n // captionTop: {\n // type: Boolean,\n // default: false\n // },\n caption: {\n type: String\n // default: null\n },\n captionHtml: {\n type: String\n }\n },\n NAME_TABLE\n ),\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('table-caption')\n if (hasCaptionSlot || caption || captionHtml) {\n $caption = h(\n 'caption',\n {\n key: 'caption',\n attrs: { id: this.captionId },\n domProps: hasCaptionSlot ? {} : htmlOrText(captionHtml, caption)\n },\n this.normalizeSlot('table-caption')\n )\n }\n\n return $caption\n }\n }\n}\n","export default {\n methods: {\n renderColgroup() {\n const h = this.$createElement\n\n const fields = this.computedFields\n let $colgroup = h()\n\n if (this.hasNormalizedSlot('table-colgroup')) {\n $colgroup = h('colgroup', { key: 'colgroup' }, [\n this.normalizeSlot('table-colgroup', { columns: fields.length, fields })\n ])\n }\n\n return $colgroup\n }\n }\n}\n","import { NAME_TABLE } from '../../../constants/components'\nimport { makePropsConfigurable } from '../../../utils/config'\nimport { htmlOrText } from '../../../utils/html'\nimport { isFunction } from '../../../utils/inspect'\nimport { BTr } from '../tr'\nimport { BTd } from '../td'\n\nexport default {\n props: makePropsConfigurable(\n {\n showEmpty: {\n type: Boolean,\n default: false\n },\n emptyText: {\n type: String,\n default: 'There are no records to show'\n },\n emptyHtml: {\n type: String\n },\n emptyFilteredText: {\n type: String,\n default: 'There are no records matching your request'\n },\n emptyFilteredHtml: {\n type: String\n }\n },\n NAME_TABLE\n ),\n methods: {\n renderEmpty() {\n const h = this.$createElement\n const items = this.computedItems\n\n let $empty = h()\n if (\n this.showEmpty &&\n (!items || items.length === 0) &&\n !(this.computedBusy && this.hasNormalizedSlot('table-busy'))\n ) {\n const {\n isFiltered,\n emptyText,\n emptyHtml,\n emptyFilteredText,\n emptyFilteredHtml,\n computedFields,\n tbodyTrClass,\n tbodyTrAttr\n } = this\n\n $empty = this.normalizeSlot(this.isFiltered ? 'emptyfiltered' : 'empty', {\n emptyFilteredHtml,\n emptyFilteredText,\n emptyHtml,\n emptyText,\n fields: computedFields,\n // Not sure why this is included, as it will always be an empty array\n items: this.computedItems\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: computedFields.length || null } }, [\n h('div', { attrs: { role: 'alert', 'aria-live': 'polite' } }, [$empty])\n ])\n\n $empty = h(\n BTr,\n {\n staticClass: 'b-table-empty-row',\n class: [\n isFunction(tbodyTrClass)\n ? /* istanbul ignore next */ this.tbodyTrClass(null, 'row-empty')\n : tbodyTrClass\n ],\n attrs: isFunction(tbodyTrAttr)\n ? /* istanbul ignore next */ this.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","// Constants used by table helpers\n\n// Object of item keys that should be ignored for headers and\n// stringification and filter events\nexport const IGNORED_FIELD_KEYS = {\n _rowVariant: true,\n _cellVariants: true,\n _showDetails: true\n}\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\nconst 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\nexport default sanitizeRow\n","import { keys } from '../../../utils/object'\nimport { isDate, isObject, isUndefinedOrNull } from '../../../utils/inspect'\nimport { toString } from '../../../utils/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// Primitives (numbers/strings) are returned as-is\n// Null and undefined values are filtered out\n// Dates are converted to their native string format\nconst stringifyObjectValues = val => {\n if (isUndefinedOrNull(val)) {\n /* istanbul ignore next */\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(val) && !isDate(val)) {\n return keys(val)\n .sort() // Sort to prevent SSR issues on pre-rendered sorted tables\n .filter(v => !isUndefinedOrNull(v)) // Ignore undefined/null values\n .map(k => stringifyObjectValues(val[k]))\n .join(' ')\n }\n return toString(val)\n}\n\nexport default stringifyObjectValues\n","import { NAME_TABLE } from '../../../constants/components'\nimport { RX_SPACES } from '../../../constants/regex'\nimport cloneDeep from '../../../utils/clone-deep'\nimport identity from '../../../utils/identity'\nimport looseEqual from '../../../utils/loose-equal'\nimport { concat } from '../../../utils/array'\nimport { makePropsConfigurable } from '../../../utils/config'\nimport { isFunction, isString, isRegExp, isUndefined } from '../../../utils/inspect'\nimport { toInteger } from '../../../utils/number'\nimport { escapeRegExp } from '../../../utils/string'\nimport { warn } from '../../../utils/warn'\nimport stringifyRecordValues from './stringify-record-values'\n\nconst DEBOUNCE_DEPRECATED_MSG =\n 'Prop \"filter-debounce\" is deprecated. Use the debounce feature of \"<b-form-input>\" instead.'\n\nexport default {\n props: makePropsConfigurable(\n {\n filter: {\n type: [String, RegExp, Object, Array],\n default: null\n },\n filterFunction: {\n type: Function\n // default: null\n },\n filterIgnoredFields: {\n type: Array\n // default: undefined\n },\n filterIncludedFields: {\n type: Array\n // default: undefined\n },\n filterDebounce: {\n type: [Number, String],\n deprecated: DEBOUNCE_DEPRECATED_MSG,\n default: 0,\n validator(value) {\n return /^\\d+/.test(String(value))\n }\n }\n },\n NAME_TABLE\n ),\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 return {\n filteredItems: this.filteredItems,\n localItems: this.localItems,\n localFilter: this.localFilter\n }\n },\n // Sanitized/normalize filter-function prop\n localFilterFn() {\n // Return `null` to signal to use internal filter function\n const { filterFunction } = this\n let result = null\n try {\n result = filterFunction()\n } catch {}\n return isUndefined(result) ? null : filterFunction\n },\n // Returns the records in `localItems` that match the filter criteria\n // Returns the original `localItems` array if not sorting\n filteredItems() {\n const items = this.localItems || []\n // Note the criteria is debounced and sanitized\n const criteria = this.localFilter\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(newVal) {\n if (!newVal && 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('filtered', filteredItems, filteredItems.length)\n }\n this.isFiltered = isFiltered\n },\n isFiltered(newVal, oldVal) {\n if (newVal === false && oldVal === 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 this.$emit('filtered', this.localItems, this.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 sanitizeRow from './sanitize-row'\nimport stringifyObjectValues from './stringify-object-values'\n\n// Stringifies the values of a record, ignoring any special top level field keys\n// TODO: Add option to stringify `scopedSlot` items\nconst stringifyRecordValues = (row, ignoreFields, includeFields, fieldsObj) => {\n return isObject(row)\n ? stringifyObjectValues(sanitizeRow(row, ignoreFields, includeFields, fieldsObj))\n : /* istanbul ignore next */ ''\n}\n\nexport default stringifyRecordValues\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:..., ...}, {...}, ..., {..}]\nconst 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\nexport default normalizeFields\n","import { NAME_TABLE } from '../../../constants/components'\nimport looseEqual from '../../../utils/loose-equal'\nimport { makePropsConfigurable } from '../../../utils/config'\nimport { isArray, isFunction, isString, isUndefinedOrNull } from '../../../utils/inspect'\nimport { mathMax } from '../../../utils/math'\nimport { toInteger } from '../../../utils/number'\nimport { clone } from '../../../utils/object'\nimport normalizeFields from './normalize-fields'\n\nexport default {\n props: makePropsConfigurable(\n {\n items: {\n // Provider mixin adds in `Function` type\n type: Array,\n /* istanbul ignore next */\n default() {\n return []\n }\n },\n fields: {\n type: Array,\n default: null\n },\n primaryKey: {\n // Primary key for record\n // If provided the value in each row must be unique!\n type: String\n // default: null\n },\n value: {\n // `v-model` for retrieving the current displayed rows\n type: Array,\n default() {\n return []\n }\n }\n },\n NAME_TABLE\n ),\n data() {\n return {\n // Our local copy of the items\n // Must be an array\n localItems: isArray(this.items) ? this.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.$parent\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(newItems) {\n /* istanbul ignore else */\n if (isArray(newItems)) {\n // Set `localItems`/`filteredItems` to a copy of the provided array\n this.localItems = newItems.slice()\n } else if (isUndefinedOrNull(newItems)) {\n /* istanbul ignore next */\n this.localItems = []\n }\n },\n // Watch for changes on `computedItems` and update the `v-model`\n computedItems(newVal, oldVal) {\n if (!looseEqual(newVal, oldVal)) {\n this.$emit('input', newVal)\n }\n },\n // Watch for context changes\n context(newVal, oldVal) {\n // Emit context information for external paging/filtering/sorting handling\n if (!looseEqual(newVal, oldVal)) {\n this.$emit('context-changed', newVal)\n }\n }\n },\n mounted() {\n // Initially update the `v-model` of displayed items\n this.$emit('input', 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 { NAME_TABLE } from '../../../constants/components'\nimport { makePropsConfigurable } from '../../../utils/config'\nimport { mathMax } from '../../../utils/math'\nimport { toInteger } from '../../../utils/number'\n\nexport default {\n props: makePropsConfigurable(\n {\n perPage: {\n type: [Number, String],\n default: 0\n },\n currentPage: {\n type: [Number, String],\n default: 1\n }\n },\n NAME_TABLE\n ),\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 { NAME_TABLE } from '../../../constants/components'\nimport looseEqual from '../../../utils/loose-equal'\nimport { makePropsConfigurable } from '../../../utils/config'\nimport { isArray, isFunction, isPromise } from '../../../utils/inspect'\nimport { clone } from '../../../utils/object'\nimport { warn } from '../../../utils/warn'\nimport listenOnRootMixin from '../../../mixins/listen-on-root'\n\nexport default {\n mixins: [listenOnRootMixin],\n props: makePropsConfigurable(\n {\n // Prop override(s)\n items: {\n // Adds in 'Function' support\n type: [Array, Function],\n /* istanbul ignore next */\n default() {\n return []\n }\n },\n // Additional props\n noProviderPaging: {\n type: Boolean,\n default: false\n },\n noProviderSorting: {\n type: Boolean,\n default: false\n },\n noProviderFiltering: {\n type: Boolean,\n default: false\n },\n apiUrl: {\n // Passthrough prop. Passed to the context object. Not used by b-table directly\n type: String,\n default: ''\n }\n },\n NAME_TABLE\n ),\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(newVal) {\n // If a new provider has been specified, trigger an update\n if (this.hasProvider || isFunction(newVal)) {\n this.$nextTick(this._providerUpdate)\n }\n },\n providerTriggerContext(newVal, oldVal) {\n // Trigger the provider to update as the relevant context values have changed.\n if (!looseEqual(newVal, oldVal)) {\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('bv::refresh::table', id => {\n if (id === this.id || id === this) {\n this.refresh()\n }\n })\n },\n methods: {\n refresh() {\n // Public Method: Force a refresh of the provider function\n this.$off('refreshed', this.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('refreshed', this.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(this.items) ? this.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('refreshed')\n // New root emit\n if (this.id) {\n this.emitOnRoot('bv::table::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('refreshed', this.refresh)\n }\n })\n }\n }\n}\n","import { NAME_TABLE } from '../../../constants/components'\nimport identity from '../../../utils/identity'\nimport looseEqual from '../../../utils/loose-equal'\nimport range from '../../../utils/range'\nimport { arrayIncludes } from '../../../utils/array'\nimport { makePropsConfigurable } from '../../../utils/config'\nimport { isArray, isNumber } from '../../../utils/inspect'\nimport { mathMax, mathMin } from '../../../utils/math'\nimport sanitizeRow from './sanitize-row'\n\nconst SELECT_MODES = ['range', 'multi', 'single']\n\nexport default {\n props: makePropsConfigurable(\n {\n selectable: {\n type: Boolean,\n default: false\n },\n selectMode: {\n type: String,\n default: 'multi',\n validator(value) {\n return arrayIncludes(SELECT_MODES, value)\n }\n },\n selectedVariant: {\n type: String,\n default: 'active'\n },\n noSelectOnClick: {\n // Disable use of click handlers for row selection\n type: Boolean,\n default: false\n }\n },\n NAME_TABLE\n ),\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 return (\n this.isSelectable &&\n this.selectedRows &&\n this.selectedRows.length > 0 &&\n this.selectedRows.some(identity)\n )\n },\n selectableIsMultiSelect() {\n return this.isSelectable && arrayIncludes(['range', 'multi'], this.selectMode)\n },\n selectableTableClasses() {\n return {\n 'b-table-selectable': this.isSelectable,\n [`b-table-select-${this.selectMode}`]: this.isSelectable,\n 'b-table-selecting': this.selectableHasSelection,\n 'b-table-selectable-no-click': this.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(newVal, oldVal) {\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(newVal) && isArray(oldVal) && newVal.length === oldVal.length\n for (let i = 0; equal && i < newVal.length; i++) {\n // Look for the first non-loosely equal row, after ignoring reserved fields\n equal = looseEqual(sanitizeRow(newVal[i]), sanitizeRow(oldVal[i]))\n }\n }\n if (!equal) {\n this.clearSelected()\n }\n },\n selectable(newVal) {\n this.clearSelected()\n this.setSelectionHandlers(newVal)\n },\n selectMode() {\n this.clearSelected()\n },\n hasSelectableRowClick(newVal) {\n this.clearSelected()\n this.setSelectionHandlers(!newVal)\n },\n selectedRows(selectedRows, oldVal) {\n if (this.isSelectable && !looseEqual(selectedRows, oldVal)) {\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('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 ? range(length).map(() => 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 } else {\n return {}\n }\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]('row-clicked', this.selectionHandler)\n // Clear selection on filter, pagination, and sort changes\n this[method]('filtered', this.clearSelected)\n this[method]('context-changed', this.clearSelected)\n },\n selectionHandler(item, index, evt) {\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 = this.selectMode\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 (this.selectedLastRow > -1 && evt.shiftKey) {\n // range\n for (\n let idx = mathMin(this.selectedLastRow, index);\n idx <= mathMax(this.selectedLastRow, index);\n idx++\n ) {\n selectedRows[idx] = true\n }\n selected = true\n } else {\n if (!(evt.ctrlKey || evt.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 */\nconst 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\nexport default stableSort\n","import { NAME_TABLE } from '../../../constants/components'\nimport stableSort from '../../../utils/stable-sort'\nimport { arrayIncludes } from '../../../utils/array'\nimport { makePropsConfigurable } from '../../../utils/config'\nimport { isFunction, isUndefinedOrNull } from '../../../utils/inspect'\nimport { trim } from '../../../utils/string'\nimport defaultSortCompare from './default-sort-compare'\n\nconst SORT_DIRECTIONS = ['asc', 'desc', 'last']\n\nexport default {\n props: makePropsConfigurable(\n {\n sortBy: {\n type: String,\n default: ''\n },\n sortDesc: {\n // TODO: Make this tri-state: true, false, null\n type: Boolean,\n default: false\n },\n sortDirection: {\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 type: String,\n default: 'asc',\n validator(value) {\n return arrayIncludes(SORT_DIRECTIONS, value)\n }\n },\n sortCompare: {\n type: Function\n // default: null\n },\n sortCompareOptions: {\n // Supported localCompare options, see `options` section of:\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/localeCompare\n type: Object,\n default: () => {\n return { numeric: true }\n }\n },\n sortCompareLocale: {\n // String: locale code\n // Array: array of Locale strings\n type: [String, Array]\n // default: undefined\n },\n sortNullLast: {\n // Sort null and undefined to appear last\n type: Boolean,\n default: false\n },\n noSortReset: {\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 type: Boolean,\n default: false\n },\n labelSortAsc: {\n type: String,\n default: 'Click to sort Ascending'\n },\n labelSortDesc: {\n type: String,\n default: 'Click to sort Descending'\n },\n labelSortClear: {\n type: String,\n default: 'Click to clear sorting'\n },\n noLocalSorting: {\n type: Boolean,\n default: false\n },\n noFooterSorting: {\n type: Boolean,\n default: false\n },\n sortIconLeft: {\n // Place the sorting icon on the left of the header cells\n type: Boolean,\n default: false\n }\n },\n NAME_TABLE\n ),\n data() {\n return {\n localSortBy: this.sortBy || '',\n localSortDesc: this.sortDesc || 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 sortedItems() {\n // Sorts the filtered items and returns a new array of the sorted items\n // or the original items array if not sorted.\n const items = (this.filteredItems || this.localItems || []).slice()\n const sortBy = this.localSortBy\n const sortDesc = this.localSortDesc\n const sortCompare = this.sortCompare\n const localSorting = this.localSorting\n const sortOptions = { ...this.sortCompareOptions, usage: 'sort' }\n const sortLocale = this.sortCompareLocale || undefined\n const nullLast = this.sortNullLast\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 // `stableSort` returns a new array, and leaves the original array intact\n return stableSort(items, (a, b) => {\n let result = null\n if (isFunction(sortCompare)) {\n // Call user provided sortCompare routine\n result = sortCompare(a, b, sortBy, sortDesc, formatter, sortOptions, sortLocale)\n }\n if (isUndefinedOrNull(result) || result === false) {\n // Fallback to built-in defaultSortCompare if sortCompare\n // is not defined or returns null/false\n result = defaultSortCompare(\n a,\n b,\n sortBy,\n sortDesc,\n formatter,\n sortOptions,\n sortLocale,\n nullLast\n )\n }\n // Negate result if sorting in descending order\n return (result || 0) * (sortDesc ? -1 : 1)\n })\n }\n return items\n }\n },\n watch: {\n /* istanbul ignore next: pain in the butt to test */\n isSortable(newVal) {\n if (newVal) {\n if (this.isSortable) {\n this.$on('head-clicked', this.handleSort)\n }\n } else {\n this.$off('head-clicked', this.handleSort)\n }\n },\n sortDesc(newVal) {\n if (newVal === this.localSortDesc) {\n /* istanbul ignore next */\n return\n }\n this.localSortDesc = newVal || false\n },\n sortBy(newVal) {\n if (newVal === this.localSortBy) {\n /* istanbul ignore next */\n return\n }\n this.localSortBy = newVal || ''\n },\n // Update .sync props\n localSortDesc(newVal, oldVal) {\n // Emit update to sort-desc.sync\n if (newVal !== oldVal) {\n this.$emit('update:sortDesc', newVal)\n }\n },\n localSortBy(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.$emit('update:sortBy', newVal)\n }\n }\n },\n created() {\n if (this.isSortable) {\n this.$on('head-clicked', this.handleSort)\n }\n },\n methods: {\n // Handlers\n // Need to move from thead-mixin\n handleSort(key, field, evt, 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 === 'asc') {\n this.localSortDesc = false\n } else if (sortDirection === '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('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 === 'asc') {\n labelSorting = this.labelSortAsc\n } else if (sortDirection === '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 get from '../../../utils/get'\nimport { isDate, isFunction, isNumber, isUndefinedOrNull } from '../../../utils/inspect'\nimport stringifyObjectValues from './stringify-object-values'\n\n// Default sort compare routine\n//\n// TODO: 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\nconst defaultSortCompare = (a, b, sortBy, sortDesc, formatter, localeOpts, locale, nullLast) => {\n let aa = get(a, sortBy, null)\n let bb = get(b, sortBy, null)\n if (isFunction(formatter)) {\n aa = formatter(aa, sortBy, a)\n bb = formatter(bb, sortBy, b)\n }\n aa = isUndefinedOrNull(aa) ? '' : aa\n bb = isUndefinedOrNull(bb) ? '' : bb\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/empty string last\n return 1\n } else if (nullLast && aa !== '' && bb === '') {\n // Special case when sorting null/undefined/empty string last\n return -1\n }\n // Do localized string comparison\n return stringifyObjectValues(aa).localeCompare(stringifyObjectValues(bb), locale, localeOpts)\n}\n\nexport default defaultSortCompare\n","// Mixin for providing stacked tables\nimport { NAME_TABLE } from '../../../constants/components'\nimport { makePropsConfigurable } from '../../../utils/config'\n\nexport default {\n props: makePropsConfigurable(\n {\n stacked: {\n type: [Boolean, String],\n default: false\n }\n },\n NAME_TABLE\n ),\n computed: {\n isStacked() {\n // `true` when always stacked, or returns breakpoint specified\n return this.stacked === '' ? true : this.stacked\n },\n isStackedAlways() {\n return this.isStacked === true\n },\n stackedTableClasses() {\n return {\n 'b-table-stacked': this.isStackedAlways,\n [`b-table-stacked-${this.stacked}`]: !this.isStackedAlways && this.isStacked\n }\n }\n }\n}\n","import { NAME_TABLE } from '../../../constants/components'\nimport identity from '../../../utils/identity'\nimport { makePropsConfigurable } from '../../../utils/config'\nimport { isBoolean } from '../../../utils/inspect'\nimport { toString } from '../../../utils/string'\nimport attrsMixin from '../../../mixins/attrs'\n\n// Main `<table>` render mixin\n// Includes all main table styling options\n\nexport default {\n // Don't place attributes on root element automatically,\n // as table could be wrapped in responsive `<div>`\n inheritAttrs: false,\n // Mixin order is important!\n mixins: [attrsMixin],\n provide() {\n return {\n bvTable: this\n }\n },\n props: makePropsConfigurable(\n {\n striped: {\n type: Boolean,\n default: false\n },\n bordered: {\n type: Boolean,\n default: false\n },\n borderless: {\n type: Boolean,\n default: false\n },\n outlined: {\n type: Boolean,\n default: false\n },\n dark: {\n type: Boolean,\n default: false\n },\n hover: {\n type: Boolean,\n default: false\n },\n small: {\n type: Boolean,\n default: false\n },\n fixed: {\n type: Boolean,\n default: false\n },\n responsive: {\n type: [Boolean, String],\n default: false\n },\n stickyHeader: {\n // If a string, it is assumed to be the table `max-height` value\n type: [Boolean, String],\n default: false\n },\n noBorderCollapse: {\n type: Boolean,\n default: false\n },\n captionTop: {\n type: Boolean,\n default: false\n },\n tableVariant: {\n type: String\n // default: null\n },\n tableClass: {\n type: [String, Array, Object]\n // default: null\n }\n },\n NAME_TABLE\n ),\n computed: {\n // Layout related computed props\n isResponsive() {\n const responsive = this.responsive === '' ? true : this.responsive\n return this.isStacked ? false : responsive\n },\n isStickyHeader() {\n const stickyHeader = this.stickyHeader === '' ? true : this.stickyHeader\n return this.isStacked ? false : stickyHeader\n },\n wrapperClasses() {\n return [\n this.isStickyHeader ? 'b-table-sticky-header' : '',\n this.isResponsive === true\n ? 'table-responsive'\n : this.isResponsive\n ? `table-responsive-${this.responsive}`\n : ''\n ].filter(identity)\n },\n wrapperStyles() {\n return this.isStickyHeader && !isBoolean(this.isStickyHeader)\n ? { maxHeight: this.isStickyHeader }\n : {}\n },\n tableClasses() {\n const hover = this.isTableSimple\n ? this.hover\n : this.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 this.tableVariant ? `${this.dark ? 'bg' : 'table'}-${this.tableVariant}` : '',\n // Stacked table classes\n this.stackedTableClasses,\n // Selectable classes\n this.selectableTableClasses\n ]\n },\n tableAttrs() {\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 const items = this.computedItems\n const filteredItems = this.filteredItems\n const fields = this.computedFields\n const selectableAttrs = this.selectableTableAttrs || {}\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 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 ...selectableAttrs\n }\n }\n },\n render(h) {\n const $content = []\n\n if (this.isTableSimple) {\n $content.push(this.normalizeSlot())\n } else {\n // Build the `<caption>` (from caption mixin)\n $content.push(this.renderCaption ? this.renderCaption() : null)\n\n // Build the `<colgroup>`\n $content.push(this.renderColgroup ? this.renderColgroup() : null)\n\n // Build the `<thead>`\n $content.push(this.renderThead ? this.renderThead() : null)\n\n // Build the `<tbody>`\n $content.push(this.renderTbody ? this.renderTbody() : null)\n\n // Build the `<tfoot>`\n $content.push(this.renderTfoot ? this.renderTfoot() : null)\n }\n\n // Assemble `<table>`\n const $table = h(\n 'table',\n {\n key: 'b-table',\n staticClass: 'table b-table',\n class: this.tableClasses,\n attrs: this.tableAttrs\n },\n $content.filter(identity)\n )\n\n // Add responsive/sticky wrapper if needed and return table\n return this.wrapperClasses.length > 0\n ? h('div', { key: 'wrap', class: this.wrapperClasses, style: this.wrapperStyles }, [$table])\n : $table\n }\n}\n","import Vue from '../../vue'\nimport { NAME_TBODY } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/config'\nimport attrsMixin from '../../mixins/attrs'\nimport listenersMixin from '../../mixins/listeners'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\nexport const props = makePropsConfigurable(\n {\n tbodyTransitionProps: {\n type: Object\n // default: undefined\n },\n tbodyTransitionHandlers: {\n type: Object\n // default: undefined\n }\n },\n NAME_TBODY\n)\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 // Mixin order is important!\n mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n provide() {\n return {\n bvTableRowGroup: this\n }\n },\n inject: {\n bvTable: {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n /* istanbul ignore next */\n default() {\n return {}\n }\n }\n },\n inheritAttrs: false,\n props,\n computed: {\n isTbody() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n return true\n },\n isDark() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n return this.bvTable.dark\n },\n isStacked() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n return this.bvTable.isStacked\n },\n isResponsive() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n return this.bvTable.isResponsive\n },\n isStickyHeader() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n // Sticky headers are only supported in thead\n return false\n },\n hasStickyHeader() {\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 return !this.isStacked && this.bvTable.stickyHeader\n },\n tableVariant() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\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 return this.tbodyTransitionProps ? { ...this.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 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\nconst filterEvent = evt => {\n // Exit early when we don't have a target element\n if (!evt || !evt.target) {\n /* istanbul ignore next */\n return false\n }\n const el = evt.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\nexport default filterEvent\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\nconst 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\nexport default textSelectionActive\n","import Vue from '../../vue'\nimport { NAME_TH } from '../../constants/components'\nimport { BTd } from './td'\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 computed: {\n tag() {\n return 'th'\n }\n }\n})\n","import { NAME_TABLE } from '../../../constants/components'\nimport get from '../../../utils/get'\nimport { makePropsConfigurable } from '../../../utils/config'\nimport { isFunction, isString, isUndefinedOrNull } from '../../../utils/inspect'\nimport { toString } from '../../../utils/string'\nimport { BTr } from '../tr'\nimport { BTd } from '../td'\nimport { BTh } from '../th'\n\nconst detailsSlotName = 'row-details'\n\nexport default {\n props: makePropsConfigurable(\n {\n tbodyTrClass: {\n type: [String, Array, Object, Function]\n // default: null\n },\n tbodyTrAttr: {\n type: [Object, Function]\n // default: null\n },\n detailsTdClass: {\n type: [String, Array, Object]\n // default: null\n }\n },\n NAME_TABLE\n ),\n methods: {\n // Methods for computing classes, attributes and styles for table cells\n getTdValues(item, key, tdValue, defValue) {\n const parent = this.$parent\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 defValue\n },\n getThValues(item, key, thValue, type, defValue) {\n const parent = this.$parent\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 defValue\n },\n // Method to get the value for a field\n getFormattedValue(item, field) {\n const key = field.key\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, '_showDetails', !item._showDetails)\n }\n }\n },\n // Row event handlers\n rowHovered(evt) {\n // `mouseenter` handler (non-bubbling)\n // `this.tbodyRowEvtStopped` from tbody mixin\n if (!this.tbodyRowEvtStopped(evt)) {\n // `this.emitTbodyRowEvent` from tbody mixin\n this.emitTbodyRowEvent('row-hovered', evt)\n }\n },\n rowUnhovered(evt) {\n // `mouseleave` handler (non-bubbling)\n // `this.tbodyRowEvtStopped` from tbody mixin\n if (!this.tbodyRowEvtStopped(evt)) {\n // `this.emitTbodyRowEvent` from tbody mixin\n this.emitTbodyRowEvent('row-unhovered', evt)\n }\n },\n // Render helpers\n renderTbodyRowCell(field, colIndex, item, rowIndex) {\n // Renders a TD or TH for a row's field\n const h = this.$createElement\n const hasDetailsSlot = this.hasNormalizedSlot(detailsSlotName)\n const formatted = this.getFormattedValue(item, field)\n const key = field.key\n const stickyColumn =\n !this.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\n ? field.isRowHeader\n ? BTh\n : BTd\n : field.isRowHeader\n ? 'th'\n : 'td'\n const cellVariant =\n item._cellVariants && item._cellVariants[key]\n ? item._cellVariants[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 key: `row-${rowIndex}-cell-${colIndex}-${key}`,\n class: [field.class ? field.class : '', this.getTdValues(item, key, field.tdClass, '')],\n props: {},\n attrs: {\n 'aria-colindex': String(colIndex + 1),\n ...(field.isRowHeader\n ? this.getThValues(item, key, field.thAttr, 'row', {})\n : this.getTdValues(item, key, field.tdAttr, {}))\n }\n }\n if (stickyColumn) {\n // We are using the helper BTd or BTh\n data.props = {\n stackedHeading: this.isStacked ? field.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'] =\n this.isStacked && !isUndefinedOrNull(field.label) ? toString(field.label) : null\n data.attrs.role = field.isRowHeader ? 'rowheader' : 'cell'\n data.attrs.scope = field.isRowHeader ? 'row' : null\n // Add in the variant class\n if (cellVariant) {\n data.class.push(`${this.dark ? 'bg' : 'table'}-${cellVariant}`)\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._showDetails)\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 // 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 // Render either a td or th cell\n return h(cellTag, data, [$childNodes])\n },\n renderTbodyRow(item, rowIndex) {\n // Renders an item's row (or rows if details supported)\n const h = this.$createElement\n const fields = this.computedFields\n const tableStriped = this.striped\n const hasDetailsSlot = this.hasNormalizedSlot(detailsSlotName)\n const rowShowDetails = item._showDetails && hasDetailsSlot\n const hasRowClickHandler = this.$listeners['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 (this.currentPage && this.perPage && this.perPage > 0) {\n ariaRowIndex = String((this.currentPage - 1) * this.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 primaryKey = this.primaryKey\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(this.tbodyTrClass)\n ? this.tbodyTrClass(item, 'row')\n : this.tbodyTrClass\n const userTrAttrs = isFunction(this.tbodyTrAttr)\n ? /* istanbul ignore next */ this.tbodyTrAttr(item, 'row')\n : this.tbodyTrAttr\n\n // Add the item row\n $rows.push(\n h(\n BTr,\n {\n key: `__b-table-row-${rowKey}__`,\n ref: 'itemRows',\n refInFor: true,\n class: [userTrClasses, selectableClasses, rowShowDetails ? 'b-table-has-details' : ''],\n props: { variant: item._rowVariant || 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 },\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(BTd, { props: { colspan: fields.length }, class: this.detailsTdClass }, [\n this.normalizeSlot(detailsSlotName, 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 (tableStriped) {\n $rows.push(\n // We don't use `BTr` here as we don't need the extra functionality\n h('tr', {\n key: `__b-table-details-stripe__${rowKey}`,\n staticClass: 'd-none',\n attrs: { 'aria-hidden': 'true', role: 'presentation' }\n })\n )\n }\n\n // Add the actual details row\n const userDetailsTrClasses = isFunction(this.tbodyTrClass)\n ? /* istanbul ignore next */ this.tbodyTrClass(item, detailsSlotName)\n : this.tbodyTrClass\n const userDetailsTrAttrs = isFunction(this.tbodyTrAttr)\n ? /* istanbul ignore next */ this.tbodyTrAttr(item, detailsSlotName)\n : this.tbodyTrAttr\n $rows.push(\n h(\n BTr,\n {\n key: `__b-table-details__${rowKey}`,\n staticClass: 'b-table-details',\n class: [userDetailsTrClasses],\n props: { variant: item._rowVariant || null },\n attrs: {\n ...userDetailsTrAttrs,\n // Users cannot override the following attributes\n id: detailsId,\n tabindex: '-1'\n }\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 (tableStriped) {\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 {\n CODE_DOWN,\n CODE_END,\n CODE_ENTER,\n CODE_HOME,\n CODE_SPACE,\n CODE_UP\n} from '../../../constants/key-codes'\nimport { arrayIncludes, from as arrayFrom } from '../../../utils/array'\nimport { attemptFocus, closest, isActiveElement, isElement } from '../../../utils/dom'\nimport { stopEvent } from '../../../utils/events'\nimport { props as tbodyProps, BTbody } from '../tbody'\nimport filterEvent from './filter-event'\nimport textSelectionActive from './text-selection-active'\nimport tbodyRowMixin from './mixin-tbody-row'\n\nconst props = {\n ...tbodyProps,\n tbodyClass: {\n type: [String, Array, Object]\n // default: undefined\n }\n}\n\nexport default {\n mixins: [tbodyRowMixin],\n props,\n beforeDestroy() {\n this.$_bodyFieldSlotNameCache = null\n },\n methods: {\n // Helper methods\n getTbodyTrs() {\n // Returns all the item TR elements (excludes detail and spacer rows)\n // `this.$refs.itemRows` 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.itemRows` may not always be in document order\n const refs = this.$refs || {}\n const tbody = refs.tbody ? refs.tbody.$el || refs.tbody : null\n const trs = (refs.itemRows || []).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 getTbodyTrIndex(el) {\n // Returns index of a particular TBODY item TR\n // We set `true` on closest to include self in result\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 emitTbodyRowEvent(type, evt) {\n // Emits a row event, with the item object, row index and original event\n if (type && this.hasListener(type) && evt && evt.target) {\n const rowIndex = this.getTbodyTrIndex(evt.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, evt)\n }\n }\n },\n tbodyRowEvtStopped(evt) {\n return this.stopIfBusy && this.stopIfBusy(evt)\n },\n // Delegated row event handlers\n onTbodyRowKeydown(evt) {\n // Keyboard navigation and row click emulation\n const target = evt.target\n if (\n this.tbodyRowEvtStopped(evt) ||\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 const keyCode = evt.keyCode\n if (arrayIncludes([CODE_ENTER, CODE_SPACE], keyCode)) {\n // Emulated click for keyboard users, transfer to click handler\n stopEvent(evt)\n this.onTBodyRowClicked(evt)\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(evt)\n const trs = this.getTbodyTrs()\n const shift = evt.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(evt) {\n if (this.tbodyRowEvtStopped(evt)) {\n // If table is busy, then don't propagate\n return\n } else if (filterEvent(evt) || textSelectionActive(this.$el)) {\n // Clicked on a non-disabled control so ignore\n // Or user is selecting text, so ignore\n return\n }\n this.emitTbodyRowEvent('row-clicked', evt)\n },\n onTbodyRowMiddleMouseRowClicked(evt) {\n if (!this.tbodyRowEvtStopped(evt) && evt.which === 2) {\n this.emitTbodyRowEvent('row-middle-clicked', evt)\n }\n },\n onTbodyRowContextmenu(evt) {\n if (!this.tbodyRowEvtStopped(evt)) {\n this.emitTbodyRowEvent('row-contextmenu', evt)\n }\n },\n onTbodyRowDblClicked(evt) {\n if (!this.tbodyRowEvtStopped(evt) && !filterEvent(evt)) {\n this.emitTbodyRowEvent('row-dblclicked', evt)\n }\n },\n // Note: Row hover handlers are handled by the tbody-row mixin\n // As mouseenter/mouseleave events do not bubble\n //\n // Render Helper\n renderTbody() {\n // Render the tbody element and children\n const items = this.computedItems\n // Shortcut to `createElement` (could use `this._c()` instead)\n const h = this.$createElement\n const hasRowClickHandler = this.hasListener('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 = this.renderBusy ? this.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 const defaultSlotName = this.hasNormalizedSlot('cell()') ? 'cell()' : null\n this.computedFields.forEach(field => {\n const key = field.key\n const fullName = `cell(${key})`\n const lowerName = `cell(${key.toLowerCase()})`\n cache[key] = this.hasNormalizedSlot(fullName)\n ? fullName\n : this.hasNormalizedSlot(lowerName)\n ? /* istanbul ignore next */ lowerName\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(this.renderTopRow ? this.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(this.renderEmpty ? this.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(this.renderBottomRow ? this.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 ref: 'tbody',\n class: this.tbodyClass || null,\n props: {\n tbodyTransitionProps: this.tbodyTransitionProps,\n tbodyTransitionHandlers: this.tbodyTransitionHandlers\n },\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 },\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 { makePropsConfigurable } from '../../utils/config'\nimport attrsMixin from '../../mixins/attrs'\nimport listenersMixin from '../../mixins/listeners'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\nexport const props = makePropsConfigurable(\n {\n footVariant: {\n type: String, // Supported values: 'lite', 'dark', or null\n default: null\n }\n },\n NAME_TFOOT\n)\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 // Mixin order is important!\n mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n provide() {\n return {\n bvTableRowGroup: this\n }\n },\n inject: {\n bvTable: {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n /* istanbul ignore next */\n default() {\n return {}\n }\n }\n },\n inheritAttrs: false,\n props,\n computed: {\n isTfoot() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n return true\n },\n isDark() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n return this.bvTable.dark\n },\n isStacked() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n return this.bvTable.isStacked\n },\n isResponsive() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n return this.bvTable.isResponsive\n },\n isStickyHeader() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n // Sticky headers are only supported in thead\n return false\n },\n hasStickyHeader() {\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 return !this.isStacked && this.bvTable.stickyHeader\n },\n tableVariant() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n return this.bvTable.tableVariant\n },\n tfootClasses() {\n return [this.footVariant ? `thead-${this.footVariant}` : null]\n },\n tfootAttrs() {\n return { role: 'rowgroup', ...this.bvAttrs }\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 { NAME_TABLE } from '../../../constants/components'\nimport { makePropsConfigurable } from '../../../utils/config'\nimport { BTfoot } from '../tfoot'\n\nexport default {\n props: makePropsConfigurable(\n {\n footClone: {\n type: Boolean,\n default: false\n },\n footVariant: {\n type: String // 'dark', 'light', or `null` (or custom)\n // default: null\n },\n footRowVariant: {\n // Any Bootstrap theme variant (or custom). Falls back to `headRowVariant`\n type: String\n // default: null\n },\n tfootClass: {\n type: [String, Array, Object]\n // default: null\n },\n tfootTrClass: {\n type: [String, Array, Object]\n // default: null\n }\n },\n NAME_TABLE\n ),\n methods: {\n renderTFootCustom() {\n const h = this.$createElement\n if (this.hasNormalizedSlot('custom-foot')) {\n return h(\n BTfoot,\n {\n key: 'bv-tfoot-custom',\n class: this.tfootClass || null,\n props: { footVariant: this.footVariant || this.headVariant || null }\n },\n this.normalizeSlot('custom-foot', {\n items: this.computedItems.slice(),\n fields: this.computedFields.slice(),\n columns: this.computedFields.length\n })\n )\n } else {\n return h()\n }\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 { makePropsConfigurable } from '../../utils/config'\nimport attrsMixin from '../../mixins/attrs'\nimport listenersMixin from '../../mixins/listeners'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\nexport const props = makePropsConfigurable(\n {\n headVariant: {\n // Also sniffed by <b-tr> / <b-td> / <b-th>\n type: String, // Supported values: 'lite', 'dark', or null\n default: null\n }\n },\n NAME_THEAD\n)\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 // Mixin order is important!\n mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n provide() {\n return {\n bvTableRowGroup: this\n }\n },\n inject: {\n bvTable: {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n /* istanbul ignore next */\n default() {\n return {}\n }\n }\n },\n inheritAttrs: false,\n props,\n computed: {\n isThead() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n return true\n },\n isDark() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n return this.bvTable.dark\n },\n isStacked() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n return this.bvTable.isStacked\n },\n isResponsive() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\n return this.bvTable.isResponsive\n },\n isStickyHeader() {\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 return !this.isStacked && this.bvTable.stickyHeader\n },\n hasStickyHeader() {\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 return !this.isStacked && this.bvTable.stickyHeader\n },\n tableVariant() {\n // Sniffed by <b-tr> / <b-td> / <b-th>\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 { NAME_TABLE } from '../../../constants/components'\nimport { CODE_ENTER, CODE_SPACE } from '../../../constants/key-codes'\nimport identity from '../../../utils/identity'\nimport noop from '../../../utils/noop'\nimport { makePropsConfigurable } from '../../../utils/config'\nimport { stopEvent } from '../../../utils/events'\nimport { htmlOrText } from '../../../utils/html'\nimport { isUndefinedOrNull } from '../../../utils/inspect'\nimport { startCase } from '../../../utils/string'\nimport filterEvent from './filter-event'\nimport textSelectionActive from './text-selection-active'\nimport { BThead } from '../thead'\nimport { BTfoot } from '../tfoot'\nimport { BTr } from '../tr'\nimport { BTh } from '../th'\n\nexport default {\n props: makePropsConfigurable(\n {\n headVariant: {\n type: String // 'light', 'dark' or `null` (or custom)\n // default: null\n },\n headRowVariant: {\n // Any Bootstrap theme variant (or custom)\n type: String\n // default: null\n },\n theadClass: {\n type: [String, Array, Object]\n // default: undefined\n },\n theadTrClass: {\n type: [String, Array, Object]\n // default: undefined\n }\n },\n NAME_TABLE\n ),\n methods: {\n fieldClasses(field) {\n // Header field (<th>) classes\n return [field.class ? field.class : '', field.thClass ? field.thClass : '']\n },\n headClicked(evt, field, isFoot) {\n if (this.stopIfBusy && this.stopIfBusy(evt)) {\n // If table is busy (via provider) then don't propagate\n return\n } else if (filterEvent(evt)) {\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(evt)\n this.$emit('head-clicked', field.key, field, evt, isFoot)\n },\n renderThead(isFoot = false) {\n const h = this.$createElement\n const fields = this.computedFields || []\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 {\n isSortable,\n isSelectable,\n headVariant,\n footVariant,\n headRowVariant,\n footRowVariant\n } = this\n const hasHeadClickListener = isSortable || this.hasListener('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 = evt => {\n this.headClicked(evt, field, isFoot)\n }\n on.keydown = evt => {\n const keyCode = evt.keyCode\n if (keyCode === CODE_ENTER || keyCode === CODE_SPACE) {\n this.headClicked(evt, 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 tabindex: hasHeadClickListener ? '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 = [`head(${key})`, `head(${key.toLowerCase()})`, 'head()']\n // Footer will fallback to header slot names\n if (isFoot) {\n slotNames = [`foot(${key})`, `foot(${key.toLowerCase()})`, 'foot()', ...slotNames]\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('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 key: isFoot ? 'bv-tfoot' : 'bv-thead',\n class: (isFoot ? this.tfootClass : this.theadClass) || null,\n props: isFoot\n ? { footVariant: footVariant || headVariant || null }\n : { headVariant: headVariant || null }\n },\n $trs\n )\n }\n }\n}\n","import { isFunction } from '../../../utils/inspect'\nimport { BTr } from '../tr'\n\nconst slotName = 'top-row'\n\nexport default {\n methods: {\n renderTopRow() {\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(slotName) || this.stacked === true || this.stacked === '') {\n return h()\n }\n\n const fields = this.computedFields\n\n return h(\n BTr,\n {\n key: 'b-top-row',\n staticClass: 'b-table-top-row',\n class: [\n isFunction(this.tbodyTrClass) ? this.tbodyTrClass(null, 'row-top') : this.tbodyTrClass\n ],\n attrs: isFunction(this.tbodyTrAttr) ? this.tbodyTrAttr(null, 'row-top') : this.tbodyTrAttr\n },\n [this.normalizeSlot(slotName, { columns: fields.length, fields })]\n )\n }\n }\n}\n","import Vue from '../../vue'\nimport { NAME_TABLE } from '../../constants/components'\nimport attrsMixin from '../../mixins/attrs'\nimport hasListenerMixin from '../../mixins/has-listener'\nimport idMixin from '../../mixins/id'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\n// Table helper mixins\nimport bottomRowMixin from './helpers/mixin-bottom-row'\nimport busyMixin from './helpers/mixin-busy'\nimport captionMixin from './helpers/mixin-caption'\nimport colgroupMixin from './helpers/mixin-colgroup'\nimport emptyMixin from './helpers/mixin-empty'\nimport filteringMixin from './helpers/mixin-filtering'\nimport itemsMixin from './helpers/mixin-items'\nimport paginationMixin from './helpers/mixin-pagination'\nimport providerMixin from './helpers/mixin-provider'\nimport selectableMixin from './helpers/mixin-selectable'\nimport sortingMixin from './helpers/mixin-sorting'\nimport stackedMixin from './helpers/mixin-stacked'\nimport tableRendererMixin from './helpers/mixin-table-renderer'\nimport tbodyMixin from './helpers/mixin-tbody'\nimport tfootMixin from './helpers/mixin-tfoot'\nimport theadMixin from './helpers/mixin-thead'\nimport topRowMixin from './helpers/mixin-top-row'\n\n// b-table component definition\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 // Render function is provided by table-renderer mixin\n})\n","import Vue from '../../vue'\nimport { NAME_TABLE_LITE } from '../../constants/components'\nimport hasListenerMixin from '../../mixins/has-listener'\nimport idMixin from '../../mixins/id'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\n// Table helper Mixins\nimport captionMixin from './helpers/mixin-caption'\nimport colgroupMixin from './helpers/mixin-colgroup'\nimport itemsMixin from './helpers/mixin-items'\nimport stackedMixin from './helpers/mixin-stacked'\nimport tableRendererMixin from './helpers/mixin-table-renderer'\nimport tbodyMixin from './helpers/mixin-tbody'\nimport tfootMixin from './helpers/mixin-tfoot'\nimport theadMixin from './helpers/mixin-thead'\n\n// b-table-lite component definition\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 // Required mixins\n hasListenerMixin,\n idMixin,\n normalizeSlotMixin,\n itemsMixin,\n tableRendererMixin,\n stackedMixin,\n theadMixin,\n tfootMixin,\n tbodyMixin,\n // Features Mixins\n // These are pretty lightweight, and are useful for lightweight tables\n captionMixin,\n colgroupMixin\n ]\n // render function provided by table-renderer mixin\n})\n","import Vue from '../../vue'\nimport { NAME_TABLE_SIMPLE } from '../../constants/components'\nimport idMixin from '../../mixins/id'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\n// Table mixins\nimport stackedMixin from './helpers/mixin-stacked'\nimport tableRendererMixin from './helpers/mixin-table-renderer'\n\n// b-table-simple component definition\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 // Required mixins\n idMixin,\n normalizeSlotMixin,\n tableRendererMixin,\n // feature mixin\n // Stacked requires extra handling by users via\n // the table cell `stacked-heading` prop\n stackedMixin\n ],\n computed: {\n isTableSimple() {\n return true\n }\n }\n // render function provided by table-renderer mixin\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 { createAndFillArray } from '../../utils/array'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { BSkeleton } from './skeleton'\nimport { BTableSimple } from '../table'\n\n// @vue/component\nexport const BSkeletonTable = /*#__PURE__*/ Vue.extend({\n name: NAME_SKELETON_TABLE,\n functional: true,\n props: makePropsConfigurable(\n {\n animation: {\n type: String\n },\n rows: {\n type: Number,\n default: 3,\n validator(value) {\n return value > 0\n }\n },\n columns: {\n type: Number,\n default: 5,\n validator(value) {\n return value > 0\n }\n },\n hideHeader: {\n type: Boolean,\n default: false\n },\n showFooter: {\n type: Boolean,\n default: false\n },\n tableProps: {\n type: Object,\n default: () => {}\n }\n },\n NAME_SKELETON_TABLE\n ),\n render(h, { props }) {\n const { animation, columns } = props\n\n const $th = h('th', [h(BSkeleton, { props: { animation } })])\n const $thTr = h('tr', createAndFillArray(columns, $th))\n\n const $td = h('td', [h(BSkeleton, { props: { width: '75%', animation } })])\n const $tdTr = h('tr', createAndFillArray(columns, $td))\n const $tbody = h('tbody', createAndFillArray(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 { SLOT_NAME_DEFAULT } from '../../constants/slot-names'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { normalizeSlot } from '../../utils/normalize-slot'\n\n// @vue/component\nexport const BSkeletonWrapper = /*#__PURE__*/ Vue.extend({\n name: NAME_SKELETON_WRAPPER,\n functional: true,\n props: makePropsConfigurable(\n {\n loading: {\n type: Boolean,\n default: false\n }\n },\n NAME_SKELETON_WRAPPER\n ),\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('loading', slotScope, $scopedSlots, $slots) || h()]\n )\n }\n\n return normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots) || h()\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 Vue from '../../vue'\nimport { NAME_TABS, NAME_TAB_BUTTON_HELPER } from '../../constants/components'\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 { SLOT_NAME_TITLE } from '../../constants/slot-names'\nimport { makePropsConfigurable } from '../../utils/config'\nimport identity from '../../utils/identity'\nimport looseEqual from '../../utils/loose-equal'\nimport observeDom from '../../utils/observe-dom'\nimport stableSort from '../../utils/stable-sort'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { BvEvent } from '../../utils/bv-event.class'\nimport { attemptFocus, requestAF, selectAll } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { isEvent } from '../../utils/inspect'\nimport { mathMax } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport { omit } from '../../utils/object'\nimport idMixin 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 navProps = omit(BNavProps, ['tabs', 'isNavBar', 'cardHeader'])\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 /* istanbul ignore next */\n default() {\n return {}\n }\n }\n },\n props: makePropsConfigurable(\n {\n // Reference to the child <b-tab> instance\n tab: { default: null },\n tabs: {\n type: Array,\n /* istanbul ignore next */\n default() {\n return []\n }\n },\n id: { type: String, default: null },\n controls: { type: String, default: null },\n tabIndex: { type: Number, default: null },\n posInSet: { type: Number, default: null },\n setSize: { type: Number, default: null },\n noKeyNav: { type: Boolean, default: false }\n },\n NAME_TABS\n ),\n methods: {\n focus() {\n attemptFocus(this.$refs.link)\n },\n handleEvt(evt) {\n if (this.tab.disabled) {\n /* istanbul ignore next */\n return\n }\n const { type, keyCode, shiftKey } = evt\n if (type === 'click') {\n stopEvent(evt)\n this.$emit('click', evt)\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(evt)\n this.$emit('click', evt)\n } else if (type === 'keydown' && !this.noKeyNav) {\n // For keyboard navigation\n if ([CODE_UP, CODE_LEFT, CODE_HOME].indexOf(keyCode) !== -1) {\n stopEvent(evt)\n if (shiftKey || keyCode === CODE_HOME) {\n this.$emit('first', evt)\n } else {\n this.$emit('prev', evt)\n }\n } else if ([CODE_DOWN, CODE_RIGHT, CODE_END].indexOf(keyCode) !== -1) {\n stopEvent(evt)\n if (shiftKey || keyCode === CODE_END) {\n this.$emit('last', evt)\n } else {\n this.$emit('next', evt)\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 ref: 'link',\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 role: 'tab',\n id,\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 },\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// @vue/component\nexport const BTabs = /*#__PURE__*/ Vue.extend({\n name: NAME_TABS,\n mixins: [idMixin, normalizeSlotMixin],\n provide() {\n return {\n bvTabs: this\n }\n },\n model: {\n prop: 'value',\n event: 'input'\n },\n props: {\n ...navProps,\n tag: {\n type: String,\n default: 'div'\n },\n card: {\n type: Boolean,\n default: false\n },\n end: {\n // Synonym for 'bottom'\n type: Boolean,\n default: false\n },\n noFade: {\n type: Boolean,\n default: false\n },\n noNavStyle: {\n type: Boolean,\n default: false\n },\n noKeyNav: {\n type: Boolean,\n default: false\n },\n lazy: {\n // This prop is sniffed by the <b-tab> child\n type: Boolean,\n default: false\n },\n contentClass: {\n type: [String, Array, Object]\n // default: null\n },\n navClass: {\n type: [String, Array, Object]\n // default: null\n },\n navWrapperClass: {\n type: [String, Array, Object]\n // default: null\n },\n activeNavItemClass: {\n // Only applied to the currently active <b-nav-item>\n type: [String, Array, Object]\n // default: null\n },\n activeTabClass: {\n // Only applied to the currently active <b-tab>\n // This prop is sniffed by the <b-tab> child\n type: [String, Array, Object]\n // default: null\n },\n value: {\n // v-model\n type: Number,\n default: null\n }\n },\n data() {\n return {\n // Index of current tab\n currentTab: toInteger(this.value, -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 // Flag to know if we are mounted or not\n isMounted: false\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 currentTab(newVal) {\n let index = -1\n // Ensure only one tab is active at most\n this.tabs.forEach((tab, idx) => {\n if (newVal === idx && !tab.disabled) {\n tab.localActive = true\n index = idx\n } else {\n tab.localActive = false\n }\n })\n // Update the v-model\n this.$emit('input', index)\n },\n value(newVal, oldVal) {\n if (newVal !== oldVal) {\n newVal = toInteger(newVal, -1)\n oldVal = toInteger(oldVal, 0)\n const tabs = this.tabs\n if (tabs[newVal] && !tabs[newVal].disabled) {\n this.activateTab(tabs[newVal])\n } else {\n // Try next or prev tabs\n if (newVal < oldVal) {\n this.previousTab()\n } else {\n this.nextTab()\n }\n }\n }\n },\n registeredTabs() {\n // Each b-tab will register/unregister itself.\n // We use this to detect when tabs are added/removed\n // to trigger the update of the tabs.\n this.$nextTick(() => {\n requestAF(() => {\n this.updateTabs()\n })\n })\n },\n tabs(newVal, oldVal) {\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 (!looseEqual(newVal.map(t => t._uid), oldVal.map(t => t._uid))) {\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, to\n // prevent users from potentially mutating the internal arrays.\n this.$emit('changed', newVal.slice(), oldVal.slice())\n })\n }\n },\n isMounted(newVal) {\n // Trigger an update after mounted. Needed for tabs inside lazy modals.\n if (newVal) {\n requestAF(() => {\n this.updateTabs()\n })\n }\n // Enable or disable the observer\n this.setObserver(newVal)\n }\n },\n created() {\n // Create private non-reactive props\n this.$_observer = null\n this.currentTab = toInteger(this.value, -1)\n // For SSR and to make sure only a single tab is shown on mount\n // We wrap this in a `$nextTick()` to ensure the child tabs have been created\n this.$nextTick(() => {\n this.updateTabs()\n })\n },\n mounted() {\n // Call `updateTabs()` just in case...\n this.updateTabs()\n this.$nextTick(() => {\n // Flag we are now mounted and to switch to DOM for tab probing.\n // As this.$slots.default appears to lie about component instances\n // after b-tabs is destroyed and re-instantiated.\n // And this.$children does not respect DOM order.\n this.isMounted = true\n })\n },\n /* istanbul ignore next */\n deactivated() {\n this.isMounted = false\n },\n /* istanbul ignore next */\n activated() {\n this.currentTab = toInteger(this.value, -1)\n this.$nextTick(() => {\n this.updateTabs()\n this.isMounted = true\n })\n },\n beforeDestroy() {\n this.isMounted = false\n },\n destroyed() {\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 tab.$once('hook:destroyed', () => {\n this.unregisterTab(tab)\n })\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) {\n this.$_observer && this.$_observer.disconnect()\n this.$_observer = null\n if (on) {\n const self = this\n /* istanbul ignore next: difficult to test mutation observer in JSDOM */\n const handler = () => {\n // We delay the update to ensure that `tab.safeId()` has\n // updated with the final ID value.\n self.$nextTick(() => {\n requestAF(() => {\n self.updateTabs()\n })\n })\n }\n // Watch for changes to <b-tab> sub components\n this.$_observer = observeDom(this.$refs.tabsContainer, handler, {\n childList: true,\n subtree: false,\n attributes: true,\n attributeFilter: ['id']\n })\n }\n },\n getTabs() {\n // We use `registeredTabs` as the source of truth for child tab components\n // We also filter out any `<b-tab>` components that are extended\n // `<b-tab>` with a root child `<b-tab>`\n // See: https://github.com/bootstrap-vue/bootstrap-vue/issues/3260\n const tabs = this.registeredTabs.filter(\n tab => tab.$children.filter(t => t._isTab).length === 0\n )\n // DOM Order of Tabs\n let order = []\n if (this.isMounted && 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 // 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 // Update list of `<b-tab>` children\n updateTabs() {\n // Probe tabs\n const tabs = this.getTabs()\n\n // Find *last* active non-disabled tab in current tabs\n // We trust tab state over `currentTab`, in case tabs were added/removed/re-ordered\n let tabIndex = tabs.indexOf(\n tabs\n .slice()\n .reverse()\n .find(tab => tab.localActive && !tab.disabled)\n )\n\n // Else try setting to `currentTab`\n if (tabIndex < 0) {\n const currentTab = this.currentTab\n if (currentTab >= tabs.length) {\n // Handle last tab being removed, so find the last non-disabled tab\n tabIndex = tabs.indexOf(\n tabs\n .slice()\n .reverse()\n .find(notDisabled)\n )\n } else if (tabs[currentTab] && !tabs[currentTab].disabled) {\n // Current tab is not disabled\n tabIndex = currentTab\n }\n }\n\n // Else find *first* non-disabled tab in current tabs\n if (tabIndex < 0) {\n tabIndex = tabs.indexOf(tabs.find(notDisabled))\n }\n\n // Set the current tab state to active\n tabs.forEach(tab => {\n // tab.localActive = idx === tabIndex && !tab.disabled\n tab.localActive = false\n })\n if (tabs[tabIndex]) {\n tabs[tabIndex].localActive = true\n }\n\n // Update the array of tab children\n this.tabs = tabs\n // Set the currentTab index (can be -1 if no non-disabled tabs)\n this.currentTab = tabIndex\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 let result = false\n if (tab) {\n const index = this.tabs.indexOf(tab)\n if (!tab.disabled && index > -1 && index !== this.currentTab) {\n const tabEvt = new BvEvent('activate-tab', {\n cancelable: true,\n vueTarget: this,\n componentId: this.safeId()\n })\n this.$emit(tabEvt.type, index, this.currentTab, tabEvt)\n if (!tabEvt.defaultPrevented) {\n result = true\n this.currentTab = index\n }\n }\n }\n // Couldn't set tab, so ensure v-model is set to `this.currentTab`\n /* istanbul ignore next: should rarely happen */\n if (!result && this.currentTab !== this.value) {\n this.$emit('input', this.currentTab)\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/updating before focusing\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, evt) {\n if (isEvent(evt) && tab && tab.$emit && !tab.disabled) {\n tab.$emit('click', evt)\n }\n },\n // Click handler\n clickTab(tab, evt) {\n this.activateTab(tab)\n this.emitTabClick(tab, evt)\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 { tabs, noKeyNav, firstTab, previousTab, nextTab, lastTab } = 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 let tabIndex = null\n // Ensure at least one tab button is focusable when keynav enabled (if possible)\n if (!noKeyNav) {\n // Buttons are not in tab index unless active, or a fallback tab\n tabIndex = -1\n if (activeTab === tab || (!activeTab && fallbackTab === tab)) {\n // Place tab button in tab sequence\n tabIndex = null\n }\n }\n return h(BVTabButton, {\n key: tab._uid || index,\n ref: 'buttons',\n // Needed to make `this.$refs.buttons` an array\n refInFor: true,\n props: {\n tab,\n tabs,\n id: tab.controlledBy || (tab.safeId ? tab.safeId(`_BV_tab_button_`) : null),\n controls: tab.safeId ? tab.safeId() : null,\n tabIndex,\n setSize: tabs.length,\n posInSet: index + 1,\n noKeyNav\n },\n on: {\n click: evt => {\n this.clickTab(tab, evt)\n },\n first: firstTab,\n prev: previousTab,\n next: nextTab,\n last: lastTab\n }\n })\n })\n\n // Nav\n let nav = h(\n BNav,\n {\n ref: 'nav',\n class: this.localNavClass,\n attrs: {\n role: 'tablist',\n id: this.safeId('_BV_tab_controls_')\n },\n props: {\n fill: this.fill,\n justified: this.justified,\n align: this.align,\n tabs: !this.noNavStyle && !this.pills,\n pills: !this.noNavStyle && this.pills,\n vertical: this.vertical,\n small: this.small,\n cardHeader: this.card && !this.vertical\n }\n },\n [this.normalizeSlot('tabs-start') || h(), buttons, this.normalizeSlot('tabs-end') || h()]\n )\n nav = h(\n 'div',\n {\n key: 'bv-tabs-nav',\n class: [\n {\n 'card-header': this.card && !this.vertical && !this.end,\n 'card-footer': this.card && !this.vertical && this.end,\n 'col-auto': this.vertical\n },\n this.navWrapperClass\n ]\n },\n [nav]\n )\n\n let empty = h()\n if (!tabs || tabs.length === 0) {\n empty = h(\n 'div',\n { key: 'bv-empty-tab', class: ['tab-pane', 'active', { 'card-body': this.card }] },\n this.normalizeSlot('empty')\n )\n }\n\n // Main content section\n const content = h(\n 'div',\n {\n ref: 'tabsContainer',\n key: 'bv-tabs-container',\n staticClass: 'tab-content',\n class: [{ col: this.vertical }, this.contentClass],\n attrs: { id: this.safeId('_BV_tab_container_') }\n },\n concat(this.normalizeSlot(), empty)\n )\n\n // Render final output\n return h(\n this.tag,\n {\n staticClass: 'tabs',\n class: {\n row: this.vertical,\n 'no-gutters': this.vertical && this.card\n },\n attrs: { id: this.safeId() }\n },\n [this.end ? content : h(), [nav], this.end ? h() : 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 Vue from '../../vue'\nimport { NAME_TAB } from '../../constants/components'\nimport { SLOT_NAME_TITLE } from '../../constants/slot-names'\nimport { makePropsConfigurable } from '../../utils/config'\nimport BVTransition from '../../utils/bv-transition'\nimport idMixin from '../../mixins/id'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\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: makePropsConfigurable(\n {\n active: {\n type: Boolean,\n default: false\n },\n tag: {\n type: String,\n default: 'div'\n },\n buttonId: {\n type: String\n // default: ''\n },\n title: {\n type: String,\n default: ''\n },\n titleItemClass: {\n // Sniffed by `<b-tabs>` and added to nav `li.nav-item`\n type: [String, Array, Object]\n // default: null\n },\n titleLinkClass: {\n // Sniffed by `<b-tabs>` and added to nav `a.nav-link`\n type: [String, Array, Object]\n // default: null\n },\n titleLinkAttributes: {\n type: Object\n // default: null\n },\n disabled: {\n type: Boolean,\n default: false\n },\n noBody: {\n type: Boolean,\n default: false\n },\n lazy: {\n type: Boolean,\n default: false\n }\n },\n NAME_TAB\n ),\n data() {\n return {\n localActive: this.active && !this.disabled,\n show: false\n }\n },\n computed: {\n tabClasses() {\n return [\n {\n active: this.localActive,\n disabled: this.disabled,\n 'card-body': this.bvTabs.card && !this.noBody\n },\n // Apply <b-tabs> `activeTabClass` styles when this tab is active\n this.localActive ? 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 // For parent sniffing of child\n _isTab() {\n return true\n }\n },\n watch: {\n localActive(newValue) {\n // Make `active` prop work with `.sync` modifier\n this.$emit('update:active', newValue)\n },\n 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('update: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 },\n mounted() {\n // Inform b-tabs of our presence\n this.registerTab()\n // Initially show on mount if active and not disabled\n this.show = this.localActive\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 destroyed() {\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 ref: 'panel',\n staticClass: 'tab-pane',\n class: this.tabClasses,\n directives: [\n {\n name: 'show',\n rawName: 'v-show',\n value: localActive,\n expression: 'localActive'\n }\n ],\n attrs: {\n role: 'tabpanel',\n id: this.safeId(),\n 'aria-hidden': localActive ? 'false' : 'true',\n 'aria-labelledby': this.controlledBy || null\n }\n },\n // Render content lazily if requested\n [localActive || !this.computedLazy ? this.normalizeSlot() : h()]\n )\n return h(BVTransition, { props: { mode: 'out-in', noFade: this.computedNoFade } }, [$content])\n }\n})\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 { makePropsConfigurable } from '../../utils/config'\nimport { removeClass, requestAF } from '../../utils/dom'\nimport { warn } from '../../utils/warn'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n name: {\n type: String,\n required: true\n },\n ariaLive: {\n type: String,\n default: undefined\n },\n // Allowed: 'true' or 'false' or null\n ariaAtomic: {\n type: String\n // default: undefined\n },\n role: {\n // Aria role\n type: String\n // default: undefined\n }\n },\n NAME_TOASTER\n)\n\n// @vue/component\nexport const DefaultTransition = /*#__PURE__*/ Vue.extend({\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.$slots.default\n )\n }\n})\n\n// @vue/component\nexport const BToaster = /*#__PURE__*/ Vue.extend({\n name: NAME_TOASTER,\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 this.staticName = this.name\n /* istanbul ignore if */\n if (Wormhole.hasTarget(this.staticName)) {\n warn(\n `A \"<portal-target>\" with name \"${this.name}\" already exists in the document.`,\n NAME_TOASTER\n )\n this.dead = true\n } else {\n this.doRender = true\n this.$once('hook:beforeDestroy', () => {\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.$root.$emit('bv::toaster::destroyed', this.staticName)\n })\n }\n },\n destroyed() {\n // Remove from DOM if needed\n /* istanbul ignore next: difficult to test */\n if (this.$el && this.$el.parentNode) {\n this.$el.parentNode.removeChild(this.$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 $toaster = h(\n 'div',\n {\n staticClass: 'b-toaster',\n class: [this.staticName],\n attrs: {\n id: this.staticName,\n role: this.role || null, // Fallback to null to make sure attribute doesn't exist\n 'aria-live': this.ariaLive,\n 'aria-atomic': this.ariaAtomic\n }\n },\n [$target]\n )\n }\n return $toaster\n }\n})\n","import { Portal, Wormhole } from 'portal-vue'\nimport Vue from '../../vue'\nimport { NAME_TOAST } from '../../constants/components'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../../constants/events'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slot-names'\nimport BVTransition from '../../utils/bv-transition'\nimport { BvEvent } from '../../utils/bv-event.class'\nimport { makePropsConfigurable } from '../../utils/config'\nimport { requestAF } from '../../utils/dom'\nimport { eventOnOff } from '../../utils/events'\nimport { mathMax } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport { pick } from '../../utils/object'\nimport { pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport attrsMixin from '../../mixins/attrs'\nimport idMixin from '../../mixins/id'\nimport listenOnRootMixin from '../../mixins/listen-on-root'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport scopedStyleAttrsMixin from '../../mixins/scoped-style-attrs'\nimport { BToaster } from './toaster'\nimport { BButtonClose } from '../button/button-close'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Constants ---\n\nconst MIN_DURATION = 1000\n\n// --- Props ---\n\nconst linkProps = pick(BLinkProps, ['href', 'to'])\n\nexport const props = makePropsConfigurable(\n {\n id: {\n // Even though the ID prop is provided by idMixin, we\n // add it here for $bvToast props filtering\n type: String\n // default: null\n },\n title: {\n type: String\n // default: null\n },\n toaster: {\n type: String,\n default: 'b-toaster-top-right'\n },\n visible: {\n type: Boolean,\n default: false\n },\n variant: {\n type: String\n // default: null\n },\n isStatus: {\n // Switches role to 'status' and aria-live to 'polite'\n type: Boolean,\n default: false\n },\n appendToast: {\n type: Boolean,\n default: false\n },\n noAutoHide: {\n type: Boolean,\n default: false\n },\n autoHideDelay: {\n type: [Number, String],\n default: 5000\n },\n noCloseButton: {\n type: Boolean,\n default: false\n },\n noFade: {\n type: Boolean,\n default: false\n },\n noHoverPause: {\n type: Boolean,\n default: false\n },\n solid: {\n type: Boolean,\n default: false\n },\n toastClass: {\n type: [String, Object, Array]\n // default: undefined\n },\n headerClass: {\n type: [String, Object, Array]\n // default: undefined\n },\n bodyClass: {\n type: [String, Object, Array]\n // default: undefined\n },\n static: {\n // Render the toast in place, rather than in a portal-target\n type: Boolean,\n default: false\n },\n ...linkProps\n },\n NAME_TOAST\n)\n\n// @vue/component\nexport const BToast = /*#__PURE__*/ Vue.extend({\n name: NAME_TOAST,\n mixins: [attrsMixin, idMixin, listenOnRootMixin, normalizeSlotMixin, scopedStyleAttrsMixin],\n inheritAttrs: false,\n model: {\n prop: 'visible',\n event: 'change'\n },\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 bToastClasses() {\n return {\n 'b-toast-solid': this.solid,\n 'b-toast-append': this.appendToast,\n 'b-toast-prepend': !this.appendToast,\n [`b-toast-${this.variant}`]: this.variant\n }\n },\n slotScope() {\n return {\n hide: this.hide\n }\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 visible(newVal) {\n newVal ? this.show() : this.hide()\n },\n localShow(newVal) {\n if (newVal !== this.visible) {\n this.$emit('change', newVal)\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(newVal) {\n // If static changes to true, and the toast is showing,\n // ensure the toaster target exists\n if (newVal && 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.visible) {\n requestAF(() => {\n this.show()\n })\n }\n })\n // Listen for global $root show events\n this.listenOnRoot('bv::show::toast', id => {\n if (id === this.safeId()) {\n this.show()\n }\n })\n // Listen for global $root hide events\n this.listenOnRoot('bv::hide::toast', 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('bv::toaster::destroyed', toaster => {\n /* istanbul ignore next */\n if (toaster === this.computedToaster) {\n /* istanbul ignore next */\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('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('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(bvEvt) {\n const type = bvEvt.type\n this.emitOnRoot(`bv::toast:${type}`, bvEvt)\n this.$emit(type, bvEvt)\n },\n ensureToaster() {\n if (this.static) {\n return\n }\n if (!Wormhole.hasTarget(this.computedToaster)) {\n const div = document.createElement('div')\n document.body.appendChild(div)\n const toaster = new BToaster({\n parent: this.$root,\n propsData: {\n name: this.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('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('hidden')\n this.emitEvent(hiddenEvt)\n this.doRender = false\n },\n makeToast(h) {\n // Render helper for generating the toast\n // Assemble the header content\n const $headerContent = []\n const $title = this.normalizeSlot('toast-title', this.slotScope)\n if ($title) {\n $headerContent.push($title)\n } else if (this.title) {\n $headerContent.push(h('strong', { staticClass: 'mr-2' }, this.title))\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 // Assemble the header (if needed)\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 // Toast body\n const link = isLink(this)\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, this.slotScope) || h()]\n )\n // Build the toast\n const $toast = h(\n 'div',\n {\n key: `toast-${this._uid}`,\n ref: 'toast',\n staticClass: 'toast',\n class: this.toastClass,\n attrs: this.computedAttrs\n },\n [$header, $body]\n )\n return $toast\n }\n },\n render(h) {\n if (!this.doRender || !this.isMounted) {\n return h()\n }\n const name = `b-toast-${this._uid}`\n // If scoped styles are applied and the toast is not static,\n // make sure the scoped style data attribute is applied\n const scopedStyleAttrs = !this.static ? this.scopedStyleAttrs : {}\n\n return h(\n Portal,\n {\n props: {\n name,\n to: this.computedToaster,\n order: this.order,\n slim: true,\n disabled: this.static\n }\n },\n [\n h(\n 'div',\n {\n key: name,\n ref: 'b-toast',\n staticClass: 'b-toast',\n class: this.bToastClasses,\n attrs: {\n ...scopedStyleAttrs,\n id: this.safeId('_toast_outer'),\n role: this.isHiding ? null : this.isStatus ? 'status' : 'alert',\n 'aria-live': this.isHiding ? null : this.isStatus ? 'polite' : 'assertive',\n 'aria-atomic': this.isHiding ? null : 'true'\n }\n },\n [\n h(BVTransition, { props: { noFade: this.noFade }, on: this.transitionHandlers }, [\n this.localShow ? this.makeToast(h) : h()\n ])\n ]\n )\n ]\n )\n }\n})\n","/**\n * Plugin for adding `$bvToast` property to all Vue instances\n */\n\nimport { NAME_TOAST, NAME_TOAST_POP } from '../../../constants/components'\nimport { concat } from '../../../utils/array'\nimport { getComponentConfig } from '../../../utils/config'\nimport { requestAF } from '../../../utils/dom'\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// --- Utility 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 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 // 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:destroyed', handleDestroy)\n // Self destruct after hidden\n this.$once('hidden', handleDestroy)\n // Self destruct when toaster is destroyed\n this.listenOnRoot('bv::toaster::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('bv::show::toast', 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('bv::hide::toast', 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 getScopId from '../../utils/get-scope-id'\nimport identity from '../../utils/identity'\nimport looseEqual from '../../utils/loose-equal'\nimport { concat } from '../../utils/array'\nimport { getComponentConfig } from '../../utils/config'\nimport { isBrowser } from '../../utils/env'\nimport {\n isFunction,\n isNumber,\n isPlainObject,\n isString,\n isUndefined,\n isUndefinedOrNull\n} from '../../utils/inspect'\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 (!isBrowser) {\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: getScopId($parent, undefined)\n })\n el[BV_TOOLTIP].__bv_prev_data__ = {}\n el[BV_TOOLTIP].$on('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 observeDom from '../../utils/observe-dom'\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 { eventOn, eventOff } from '../../utils/events'\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 { warn } from '../../utils/warn'\n\n/*\n * Constants / Defaults\n */\n\nconst NAME = 'v-b-scrollspy'\nconst ACTIVATE_EVENT = 'bv::scrollspy::activate'\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 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 */\nclass ScrollSpy /* 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(evtName => {\n eventOn(window, evtName, 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(evtName => {\n eventOff(window, evtName, 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(evt) {\n const type = isString(evt) ? evt : evt.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(Boolean)\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(ACTIVATE_EVENT, 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\nexport default ScrollSpy\n","import ScrollSpy from './scrollspy.class'\nimport { isBrowser } from '../../utils/env'\nimport { isNumber, isObject, isString } from '../../utils/inspect'\nimport { mathRound } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport { keys } from '../../utils/object'\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 => !!ScrollSpy.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 (!isBrowser) {\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 ScrollSpy(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"]}