![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/ts.corals.io/frontend/node_modules/bootstrap-vue/dist/ |
{"version":3,"sources":["../node_modules/vue-functional-data-merge/dist/lib.esm.js","../src/vue.js","../src/constants/env.js","../src/utils/plugins.js","../src/constants/config.js","../src/constants/regex.js","../src/constants/safe-types.js","../src/utils/inspect.js","../src/utils/object.js","../src/utils/clone-deep.js","../src/utils/identity.js","../src/utils/get.js","../src/utils/env.js","../src/utils/warn.js","../src/utils/config-set.js","../src/constants/components.js","../src/constants/events.js","../src/constants/props.js","../src/constants/slots.js","../src/utils/array.js","../src/utils/number.js","../src/utils/string.js","../src/utils/dom.js","../src/utils/memoize.js","../src/utils/config.js","../src/utils/props.js","../src/utils/model.js","../src/utils/normalize-slot.js","../src/mixins/normalize-slot.js","../src/utils/events.js","../src/components/button/button-close.js","../src/components/transition/bv-transition.js","../src/components/alert/alert.js","../src/components/alert/index.js","../src/utils/math.js","../src/components/aspect/aspect.js","../src/components/aspect/index.js","../src/utils/router.js","../src/icons/helpers/icon-base.js","../src/icons/helpers/make-icon.js","../src/icons/icons.js","../src/icons/icon.js","../src/constants/key-codes.js","../src/utils/loose-equal.js","../src/utils/cache.js","../src/mixins/attrs.js","../src/mixins/listen-on-root.js","../src/mixins/listeners.js","../src/components/link/link.js","../src/components/button/button.js","../src/components/avatar/avatar.js","../src/components/avatar/avatar-group.js","../src/components/avatar/index.js","../src/components/badge/badge.js","../src/components/badge/index.js","../src/utils/html.js","../src/components/breadcrumb/breadcrumb-link.js","../src/components/breadcrumb/breadcrumb-item.js","../src/components/breadcrumb/breadcrumb.js","../src/components/breadcrumb/index.js","../src/components/button/index.js","../src/components/button-group/button-group.js","../src/components/button-group/index.js","../src/components/button-toolbar/button-toolbar.js","../src/components/button-toolbar/index.js","../src/constants/date.js","../src/utils/date.js","../src/utils/locale.js","../src/mixins/id.js","../src/components/calendar/calendar.js","../src/components/calendar/index.js","../src/mixins/card.js","../src/components/card/card-title.js","../src/components/card/card-sub-title.js","../src/components/card/card-body.js","../src/components/card/card-header.js","../src/components/card/card-footer.js","../src/components/image/img.js","../src/components/card/card-img.js","../src/components/card/card.js","../src/directives/visible/visible.js","../src/components/image/img-lazy.js","../src/components/card/card-img-lazy.js","../src/components/card/card-text.js","../src/components/card/card-group.js","../src/components/card/index.js","../src/utils/noop.js","../src/utils/observe-dom.js","../src/components/carousel/carousel.js","../src/components/carousel/carousel-slide.js","../src/components/carousel/index.js","../src/constants/classes.js","../src/components/collapse/helpers/bv-collapse.js","../src/components/collapse/collapse.js","../src/directives/toggle/toggle.js","../src/directives/toggle/index.js","../src/components/collapse/index.js","../node_modules/popper.js/dist/esm/popper.js","../src/constants/popper.js","../src/utils/bv-event.class.js","../src/mixins/click-out.js","../src/mixins/focus-in.js","../src/mixins/dropdown.js","../src/components/dropdown/dropdown.js","../src/components/dropdown/dropdown-item.js","../src/components/dropdown/dropdown-item-button.js","../src/components/dropdown/dropdown-header.js","../src/components/dropdown/dropdown-divider.js","../src/components/form/form.js","../src/components/dropdown/dropdown-form.js","../src/components/dropdown/dropdown-text.js","../src/components/dropdown/dropdown-group.js","../src/components/dropdown/index.js","../src/components/embed/embed.js","../src/components/embed/index.js","../src/mixins/form-options.js","../src/components/form/form-datalist.js","../src/components/form/form-text.js","../src/components/form/form-invalid-feedback.js","../src/components/form/form-valid-feedback.js","../src/components/layout/form-row.js","../src/components/form/index.js","../src/utils/loose-index-of.js","../src/mixins/form-control.js","../src/mixins/form-custom.js","../src/mixins/form-size.js","../src/mixins/form-state.js","../src/mixins/form-radio-check.js","../src/components/form-checkbox/form-checkbox.js","../src/components/form-radio/form-radio.js","../src/mixins/form-radio-check-group.js","../src/components/form-checkbox/form-checkbox-group.js","../src/components/form-checkbox/index.js","../src/directives/hover/hover.js","../src/components/form-btn-label-control/bv-form-btn-label-control.js","../src/components/form-datepicker/form-datepicker.js","../src/components/form-datepicker/index.js","../src/components/form-file/form-file.js","../src/components/form-file/index.js","../src/utils/css-escape.js","../src/components/layout/col.js","../src/components/form-group/form-group.js","../src/components/form-group/index.js","../src/mixins/form-selection.js","../src/mixins/form-text.js","../src/mixins/form-validity.js","../src/components/form-input/form-input.js","../src/components/form-input/index.js","../src/components/form-radio/form-radio-group.js","../src/components/form-radio/index.js","../src/components/form-rating/form-rating.js","../src/components/form-rating/index.js","../src/mixins/model.js","../src/components/form-select/helpers/mixin-options.js","../src/components/form-select/form-select-option.js","../src/components/form-select/form-select-option-group.js","../src/components/form-select/form-select.js","../src/components/form-select/index.js","../src/components/form-spinbutton/form-spinbutton.js","../src/components/form-spinbutton/index.js","../src/components/form-tags/form-tag.js","../src/components/form-tags/form-tags.js","../src/components/form-tags/index.js","../src/components/form-textarea/form-textarea.js","../src/components/form-textarea/index.js","../src/components/time/time.js","../src/components/form-timepicker/form-timepicker.js","../src/components/form-timepicker/index.js","../src/components/image/index.js","../src/components/input-group/input-group-text.js","../src/components/input-group/input-group-addon.js","../src/components/input-group/input-group-append.js","../src/components/input-group/input-group-prepend.js","../src/components/input-group/input-group.js","../src/components/input-group/index.js","../src/components/layout/container.js","../src/components/jumbotron/jumbotron.js","../src/components/jumbotron/index.js","../src/components/layout/row.js","../src/components/layout/index.js","../src/components/link/index.js","../src/components/list-group/list-group.js","../src/components/list-group/list-group-item.js","../src/components/list-group/index.js","../src/components/media/media-aside.js","../src/components/media/media-body.js","../src/components/media/media.js","../src/components/media/index.js","../src/mixins/listen-on-document.js","../src/mixins/listen-on-window.js","../src/utils/get-scope-id.js","../src/mixins/scoped-style.js","../src/components/transporter/transporter.js","../src/components/modal/helpers/bv-modal-event.class.js","../src/components/modal/helpers/modal-manager.js","../src/components/modal/modal.js","../src/directives/modal/modal.js","../src/components/modal/helpers/bv-modal.js","../src/components/modal/index.js","../src/components/nav/nav.js","../src/components/nav/nav-item.js","../src/components/nav/nav-text.js","../src/components/nav/nav-form.js","../src/components/nav/nav-item-dropdown.js","../src/components/nav/index.js","../src/components/navbar/navbar.js","../src/components/navbar/navbar-nav.js","../src/components/navbar/navbar-brand.js","../src/components/navbar/navbar-toggle.js","../src/components/navbar/index.js","../src/components/spinner/spinner.js","../src/components/overlay/overlay.js","../src/components/overlay/index.js","../src/mixins/pagination.js","../src/components/pagination/pagination.js","../src/components/pagination/index.js","../src/components/pagination-nav/pagination-nav.js","../src/components/pagination-nav/index.js","../src/components/tooltip/helpers/bv-popper.js","../src/components/tooltip/helpers/bv-tooltip-template.js","../src/components/tooltip/helpers/bv-tooltip.js","../src/components/tooltip/tooltip.js","../src/components/popover/helpers/bv-popover-template.js","../src/components/popover/helpers/bv-popover.js","../src/components/popover/popover.js","../src/directives/popover/popover.js","../src/directives/popover/index.js","../src/components/popover/index.js","../src/components/progress/progress-bar.js","../src/components/progress/progress.js","../src/components/progress/index.js","../src/components/sidebar/sidebar.js","../src/components/sidebar/index.js","../src/components/skeleton/skeleton.js","../src/icons/iconstack.js","../src/components/skeleton/skeleton-icon.js","../src/components/skeleton/skeleton-img.js","../src/mixins/has-listener.js","../src/components/table/tr.js","../src/components/table/helpers/mixin-bottom-row.js","../src/components/table/td.js","../src/components/table/helpers/mixin-busy.js","../src/components/table/helpers/mixin-caption.js","../src/components/table/helpers/mixin-colgroup.js","../src/components/table/helpers/mixin-empty.js","../src/utils/stringify-object-values.js","../src/components/table/helpers/constants.js","../src/components/table/helpers/sanitize-row.js","../src/components/table/helpers/mixin-filtering.js","../src/components/table/helpers/stringify-record-values.js","../src/components/table/helpers/normalize-fields.js","../src/components/table/helpers/mixin-items.js","../src/components/table/helpers/mixin-pagination.js","../src/components/table/helpers/mixin-provider.js","../src/components/table/helpers/mixin-selectable.js","../src/utils/stable-sort.js","../src/components/table/helpers/default-sort-compare.js","../src/components/table/helpers/mixin-sorting.js","../src/components/table/helpers/mixin-stacked.js","../src/components/table/helpers/mixin-table-renderer.js","../src/components/table/tbody.js","../src/components/table/helpers/filter-event.js","../src/components/table/helpers/text-selection-active.js","../src/components/table/th.js","../src/components/table/helpers/mixin-tbody-row.js","../src/components/table/helpers/mixin-tbody.js","../src/components/table/tfoot.js","../src/components/table/helpers/mixin-tfoot.js","../src/components/table/thead.js","../src/components/table/helpers/mixin-thead.js","../src/components/table/helpers/mixin-top-row.js","../src/components/table/table.js","../src/components/table/table-lite.js","../src/components/table/table-simple.js","../src/components/table/index.js","../src/components/skeleton/skeleton-table.js","../src/components/skeleton/skeleton-wrapper.js","../src/components/skeleton/index.js","../src/components/spinner/index.js","../src/components/tabs/tabs.js","../src/components/tabs/tab.js","../src/components/tabs/index.js","../src/components/time/index.js","../node_modules/portal-vue/dist/portal-vue.esm.js","../src/components/toast/toaster.js","../src/components/toast/toast.js","../src/components/toast/helpers/bv-toast.js","../src/components/toast/index.js","../src/directives/tooltip/tooltip.js","../src/directives/tooltip/index.js","../src/components/index.js","../src/components/tooltip/index.js","../src/directives/hover/index.js","../src/directives/modal/index.js","../src/directives/scrollspy/helpers/bv-scrollspy.class.js","../src/directives/scrollspy/scrollspy.js","../src/index.js","../src/directives/index.js","../src/directives/scrollspy/index.js","../src/directives/visible/index.js","../src/browser.js"],"names":["e","Object","assign","t","r","s","arguments","length","a","prototype","hasOwnProperty","call","apply","this","toUpperCase","c","o","split","n","i","l","trim","replace","keys","Array","isArray","style","y","concat","p","f","HAS_WINDOW_SUPPORT","window","HAS_DOCUMENT_SUPPORT","document","HAS_NAVIGATOR_SUPPORT","navigator","HAS_PROMISE_SUPPORT","Promise","HAS_MUTATION_OBSERVER_SUPPORT","MutationObserver","WebKitMutationObserver","MozMutationObserver","IS_BROWSER","WINDOW","DOCUMENT","NAVIGATOR","USER_AGENT","userAgent","toLowerCase","IS_JSDOM","indexOf","test","checkMultipleVueWarned","MULTIPLE_VUE_WARNING","HAS_PASSIVE_EVENT_SUPPORT","passiveEventSupported","options","passive","addEventListener","removeEventListener","_unused","HAS_TOUCH_SUPPORT","documentElement","maxTouchPoints","HAS_POINTER_EVENT_SUPPORT","Boolean","PointerEvent","MSPointerEvent","HAS_INTERACTION_OBSERVER_SUPPORT","IntersectionObserverEntry","NAME","DEFAULT_BREAKPOINT","RX_ARRAY_NOTATION","RX_BV_PREFIX","RX_DIGITS","RX_EXTENSION","RX_HASH","RX_HASH_ID","RX_HTML_TAGS","RX_HYPHENATE","RX_LOWER_UPPER","RX_NUMBER","RX_PLUS","RX_REGEXP_REPLACE","RX_SPACES","RX_SPACE_SPLIT","RX_STAR","RX_START_SPACE_WORD","RX_TRIM_LEFT","RX_UNDERSCORE","RX_UN_KEBAB","RX_DATE","RX_DATE_SPLIT","RX_TIME","RX_HREF","RX_ENCODED_COMMA","RX_ENCODE_REVERSE","RX_QUERY_START","RX_ASPECT","RX_ASPECT_SEPARATOR","RX_COL_CLASS","RX_ICON_PREFIX","RX_STRIP_LOCALE_MODS","Element","_Object","_inherits","_super","_createSuper","_classCallCheck","_wrapNativeSuper","HTMLElement","_Element","_super2","SVGElement","_Element2","_super3","File","_Object2","_super4","toType","value","_typeof$1","isUndefined","undefined","isNull","isUndefinedOrNull","isFunction","isBoolean","isString","isNumber","isNumeric","String","isObject","obj","_typeof","isPlainObject","toString","isDate","Date","isEvent","Event","isRegExp","slice","toRawType","create","proto","optionalProps","defineProperties","props","defineProperty","prop","descriptor","getOwnPropertyNames","clone","_objectSpread2$3","pick","filter","key","reduce","result","_defineProperty","omit","mergeDeep","target","source","forEach","sortKeys","sort","cloneDeep","defaultValue","val","_toConsumableArray$1","identity","x","getRaw","path","join","steps","every","step","get","getEnv","fallback","env","process","getNoWarn","warn","message","console","warnNotClient","warnNoPromiseSupport","BvConfig","$_config","_this","config","configKeys","subConfig","some","b","setConfig","Vue","OurVue","checkMultipleVue","installFactory","_ref","components","directives","plugins","install","installed","registerComponents","registerDirectives","registerPlugins","pluginFactory","extend","plugin","use","registerComponent","name","def","component","registerDirective","directive","NAME_ALERT","NAME_ASPECT","NAME_AVATAR","NAME_AVATAR_GROUP","NAME_BADGE","NAME_BREADCRUMB","NAME_BREADCRUMB_ITEM","NAME_BREADCRUMB_LINK","NAME_BUTTON","NAME_BUTTON_CLOSE","NAME_BUTTON_GROUP","NAME_BUTTON_TOOLBAR","NAME_CALENDAR","NAME_CARD","NAME_CARD_BODY","NAME_CARD_FOOTER","NAME_CARD_GROUP","NAME_CARD_HEADER","NAME_CARD_IMG","NAME_CARD_IMG_LAZY","NAME_CARD_SUB_TITLE","NAME_CARD_TEXT","NAME_CARD_TITLE","NAME_CAROUSEL","NAME_CAROUSEL_SLIDE","NAME_COL","NAME_COLLAPSE","NAME_CONTAINER","NAME_DROPDOWN","NAME_DROPDOWN_DIVIDER","NAME_DROPDOWN_FORM","NAME_DROPDOWN_GROUP","NAME_DROPDOWN_HEADER","NAME_DROPDOWN_ITEM","NAME_DROPDOWN_ITEM_BUTTON","NAME_DROPDOWN_TEXT","NAME_EMBED","NAME_FORM","NAME_FORM_CHECKBOX","NAME_FORM_CHECKBOX_GROUP","NAME_FORM_DATALIST","NAME_FORM_DATEPICKER","NAME_FORM_FILE","NAME_FORM_GROUP","NAME_FORM_INPUT","NAME_FORM_INVALID_FEEDBACK","NAME_FORM_RADIO","NAME_FORM_RADIO_GROUP","NAME_FORM_RATING","NAME_FORM_ROW","NAME_FORM_SELECT","NAME_FORM_SELECT_OPTION","NAME_FORM_SELECT_OPTION_GROUP","NAME_FORM_SPINBUTTON","NAME_FORM_TAG","NAME_FORM_TAGS","NAME_FORM_TEXT","NAME_FORM_TEXTAREA","NAME_FORM_TIMEPICKER","NAME_FORM_VALID_FEEDBACK","NAME_ICON","NAME_IMG","NAME_IMG_LAZY","NAME_INPUT_GROUP","NAME_INPUT_GROUP_ADDON","NAME_INPUT_GROUP_APPEND","NAME_INPUT_GROUP_PREPEND","NAME_INPUT_GROUP_TEXT","NAME_JUMBOTRON","NAME_LINK","NAME_LIST_GROUP","NAME_LIST_GROUP_ITEM","NAME_MEDIA","NAME_MEDIA_ASIDE","NAME_MEDIA_BODY","NAME_MODAL","NAME_NAV","NAME_NAVBAR","NAME_NAVBAR_BRAND","NAME_NAVBAR_NAV","NAME_NAVBAR_TOGGLE","NAME_NAV_FORM","NAME_NAV_ITEM","NAME_NAV_ITEM_DROPDOWN","NAME_OVERLAY","NAME_PAGINATION","NAME_PAGINATION_NAV","NAME_POPOVER","NAME_PROGRESS","NAME_PROGRESS_BAR","NAME_ROW","NAME_SIDEBAR","NAME_SKELETON","NAME_SKELETON_ICON","NAME_SKELETON_IMG","NAME_SKELETON_TABLE","NAME_SKELETON_WRAPPER","NAME_SPINNER","NAME_TAB","NAME_TABLE","NAME_TABLE_CELL","NAME_TABLE_LITE","NAME_TABLE_SIMPLE","NAME_TABS","NAME_TBODY","NAME_TFOOT","NAME_THEAD","NAME_TIME","NAME_TOAST","NAME_TOASTER","NAME_TOOLTIP","EVENT_NAME_BLUR","EVENT_NAME_CANCEL","EVENT_NAME_CHANGE","EVENT_NAME_CLICK","EVENT_NAME_CLOSE","EVENT_NAME_CONTEXT","EVENT_NAME_CONTEXT_CHANGED","EVENT_NAME_DESTROYED","EVENT_NAME_DISABLE","EVENT_NAME_DISABLED","EVENT_NAME_ENABLE","EVENT_NAME_ENABLED","EVENT_NAME_FILTERED","EVENT_NAME_FIRST","EVENT_NAME_FOCUSIN","EVENT_NAME_FOCUSOUT","EVENT_NAME_HEAD_CLICKED","EVENT_NAME_HIDDEN","EVENT_NAME_HIDE","EVENT_NAME_INPUT","EVENT_NAME_LAST","EVENT_NAME_MOUSEENTER","EVENT_NAME_MOUSELEAVE","EVENT_NAME_NEXT","EVENT_NAME_OPEN","EVENT_NAME_PAGE_CLICK","EVENT_NAME_PREV","EVENT_NAME_REFRESHED","EVENT_NAME_ROW_CLICKED","EVENT_NAME_SELECTED","EVENT_NAME_SHOW","EVENT_NAME_SHOWN","EVENT_NAME_SLIDING_END","EVENT_NAME_TOGGLE","HOOK_EVENT_NAME_BEFORE_DESTROY","HOOK_EVENT_NAME_DESTROYED","ROOT_EVENT_NAME_PREFIX","EVENT_OPTIONS_PASSIVE","EVENT_OPTIONS_NO_CAPTURE","capture","PROP_TYPE_ANY","PROP_TYPE_ARRAY","PROP_TYPE_BOOLEAN","PROP_TYPE_DATE","PROP_TYPE_FUNCTION","Function","PROP_TYPE_NUMBER","Number","PROP_TYPE_OBJECT","PROP_TYPE_REG_EXP","RegExp","PROP_TYPE_STRING","PROP_TYPE_ARRAY_FUNCTION","PROP_TYPE_ARRAY_OBJECT","PROP_TYPE_ARRAY_OBJECT_STRING","PROP_TYPE_ARRAY_STRING","PROP_TYPE_BOOLEAN_NUMBER","PROP_TYPE_BOOLEAN_NUMBER_STRING","PROP_TYPE_BOOLEAN_STRING","PROP_TYPE_DATE_STRING","PROP_TYPE_FUNCTION_STRING","PROP_TYPE_NUMBER_STRING","PROP_TYPE_NUMBER_OBJECT_STRING","PROP_TYPE_OBJECT_FUNCTION","PROP_TYPE_OBJECT_STRING","SLOT_NAME_APPEND","SLOT_NAME_BADGE","SLOT_NAME_BOTTOM_ROW","SLOT_NAME_BUTTON_CONTENT","SLOT_NAME_CUSTOM_FOOT","SLOT_NAME_DEFAULT","SLOT_NAME_EMPTY","SLOT_NAME_FILE_NAME","SLOT_NAME_FIRST","SLOT_NAME_FOOTER","SLOT_NAME_HEADER","SLOT_NAME_LABEL","SLOT_NAME_LEAD","SLOT_NAME_MODAL_CANCEL","SLOT_NAME_MODAL_OK","SLOT_NAME_MODAL_TITLE","SLOT_NAME_PREPEND","SLOT_NAME_ROW_DETAILS","SLOT_NAME_TABLE_BUSY","SLOT_NAME_TABLE_CAPTION","SLOT_NAME_TABLE_COLGROUP","SLOT_NAME_THEAD_TOP","SLOT_NAME_TITLE","SLOT_NAME_TOP_ROW","from","arrayIncludes","array","_len","args","_key","createArray","fillFn","mapFn","map","flatten","item","flattenDeep","toInteger","NaN","integer","parseInt","isNaN","toFloat","float","parseFloat","toFixed","precision","kebabCase","str","pascalCase","_","charAt","startCase","$1","$2","upperFirst","escapeRegExp","spaces","JSON","stringify","lowerCase","ELEMENT_PROTO","TABABLE_SELECTOR","matchesEl","matches","msMatchesSelector","webkitMatchesSelector","closestEl","closest","sel","el","parentElement","parentNode","nodeType","Node","ELEMENT_NODE","requestAF","requestAnimationFrame","webkitRequestAnimationFrame","mozRequestAnimationFrame","msRequestAnimationFrame","oRequestAnimationFrame","cb","setTimeout","bind","MutationObs","isElement","getActiveElement","excludes","activeElement","isTag","tag","isActiveElement","isVisible","contains","body","getStyle","bcr","getBCR","height","width","isDisabled","disabled","hasAttr","hasClass","reflow","offsetHeight","selectAll","selector","root","arrayFrom","querySelectorAll","select","querySelector","includeRoot","parent","child","getById","id","getElementById","addClass","className","classList","add","removeClass","remove","setAttr","attr","setAttribute","removeAttr","removeAttribute","getAttr","getAttribute","hasAttribute","setStyle","removeStyle","getBoundingClientRect","getCS","getComputedStyle","getSel","getSelection","offset","_offset","top","left","getClientRects","win","ownerDocument","defaultView","pageYOffset","pageXOffset","position","parentOffset","elStyles","doc","offsetParent","offsetParentStyles","borderTopWidth","borderLeftWidth","marginTop","marginLeft","getTabables","rootEl","tabIndex","attemptFocus","focus","attemptBlur","blur","_unused2","memoize","fn","cache","argsKey","VueProto","getConfigValue","bvConfig","getComponentConfig","propKey","getBreakpoints","_getBreakpointsCached","getBreakpointsUpCached","breakpoints","prefixPropName","prefix","unprefixPropName","suffixPropName","suffix","makeProp","type","requiredOrValidator","validator","required","default","copyProps","transformFn","copied","pluckProps","keysToPluck","objToPluck","memo","makePropConfigurable","componentKey","makePropsConfigurable","configurablePropDefaultFnName","hasPropFunction","makeModelMixin","_ref$type","_ref$defaultValue","_ref$validator","_ref$event","event","mixin","model","hasNormalizedSlot","names","$scopedSlots","$slots","normalizeSlot","slot","scope","normalizeSlotMixin","methods","scopedSlots","slots","vNodes","parseEventOptions","eventOn","eventName","handler","eventOff","eventOnOff","on","method","stopEvent","_ref$preventDefault","preventDefault","_ref$propagation","propagation","_ref$immediatePropaga","immediatePropagation","stopPropagation","stopImmediatePropagation","getBaseEventName","getRootEventName","getRootActionEventName","actionName","ariaLabel","content","textVariant","BButtonClose","functional","render","h","data","componentData","staticClass","class","attrs","click","domProps","innerHTML","mergeData","NO_FADE_PROPS","enterClass","enterActiveClass","enterToClass","leaveClass","leaveActiveClass","leaveToClass","FADE_PROPS","appear","mode","noFade","transProps","BVTransition","children","appearClass","appearActiveClass","appearToClass","css","_makeModelMixin$k","modelMixin","modelProps","MODEL_PROP_NAME","MODEL_EVENT_NAME","parseCountDown","show","parseShow","dismissLabel","dismissible","fade","variant","AlertPlugin","BAlert","mixins","countDown","localShow","watch","_watch$k","newValue","clearCountDownInterval","$emit","$_countDownTimeout","$nextTick","created","$_filterTimer","beforeDestroy","dismiss","clearTimeout","$alert","$dismissButton","role","mathMin","Math","min","mathMax","max","mathAbs","abs","mathCeil","ceil","mathFloor","floor","mathPow","pow","mathRound","round","CLASS_NAME","aspect","BAspect","computed","padding","ratio","_aspect$split$map2","_slicedToArray","v","$sizer","paddingBottom","$content","AspectPlugin","encodeReserveReplacer","charCodeAt","encode","encodeURIComponent","decode","decodeURIComponent","stringifyQueryObj","query","results","value2","push","parseQuery","parsed","param","parts","shift","isLink","href","to","isRouterLink","computeHref","_ref3","toFallback","hash","BASE_ATTRS","viewBox","focusable","STACKED_ATTRS","animation","flipH","flipV","fontScale","rotate","scale","shiftH","shiftV","stacked","title","BVIconBase","_class","hasScale","hasTransforms","hasShift","hasContent","$inner","transform","fontSize","xmlns","fill","iconProps","BVIconBaseProps","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","icon","BIcon","CODE_DOWN","CODE_END","CODE_ENTER","CODE_HOME","CODE_LEFT","CODE_RIGHT","CODE_SPACE","CODE_UP","compareArrays","equal","looseEqual","aValidType","bValidType","getTime","aHasKey","bHasKey","isEmpty","makePropWatcher","propName","oldValue","$delete","$data","$set","makePropCacheMixin","proxyPropName","attrsMixin","PROP","listenOnRootMixin","callback","listenOffRoot","registerRootListener","unregisterRootListener","listenOnRoot","$root","$on","listenOnRootOnce","_this2","_callback","$once","$off","emitOnRoot","_this$$root","listenersMixin","ROOT_EVENT_NAME_CLICKED","routerLinkProps","activeClass","append","exact","exactActiveClass","exactPath","exactPathActiveClass","routerTag","nuxtLinkProps","noPrefetch","prefetch","active","rel","routerComponentName","BLink","inheritAttrs","computedTag","thisOrParent","hasRouter","$router","$nuxt","computeTag","computedRel","_ref2","computeRel","computedHref","computedProps","computedAttrs","bvAttrs","tabindex","computedListeners","bvListeners","onClick","_arguments","eventIsEvent","suppliedHandler","currentTarget","__vue__","$el","linkProps","BLinkProps","block","pill","pressed","size","squared","handleFocus","isLinkStrict","isToggle","isButton","isNonStandardTag","computeClass","computeLinkProps","computeAttrs","button","link","toggle","nonStandardTag","hashLink","autocomplete","BButton","listeners","keydown","keyCode","focusin","focusout","SIZES","computeSize","alt","badge","badgeLeft","badgeOffset","badgeTop","badgeVariant","buttonType","rounded","square","src","text","BAvatar","inject","bvAvatarGroup","localSrc","computedSize","computedVariant","computedRounded","fontStyle","marginStyle","overlapScale","marginRight","badgeStyle","FONT_SIZE_SCALE","bottom","right","onImgError","_class2","error","$badge","hasBadgeSlot","badgeText","overlap","AvatarPlugin","BAvatarGroup","provide","paddingStyle","paddingLeft","paddingRight","BBadge","BadgePlugin","stripTags","htmlOrText","textContent","ariaCurrent","html","BBreadcrumbLink","suppliedProps","BBreadcrumbLinkProps","BBreadcrumbItem","items","BBreadcrumb","childNodes","activeDefined","idx","BreadcrumbPlugin","ButtonPlugin","BBtn","BBtnClose","buttonProps","ariaRole","vertical","BButtonGroup","ButtonGroupPlugin","BBtnGroup","ITEM_SELECTOR","justify","keyNav","BButtonToolbar","mounted","getItems","focusFirst","focusPrev","index","reverse","focusNext","focusLast","onFocusin","relatedTarget","onKeydown","shiftKey","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","_makeModelMixin$j","idProps","ariaControls","dateDisabledFn","dateFormatOptions","weekday","dateInfoFn","direction","headerTag","hidden","hideHeader","initialDate","labelCalendar","labelCurrentMonth","labelHelp","labelNav","labelNextDecade","labelNextMonth","labelNextYear","labelNoDateSelected","labelPrevDecade","labelPrevMonth","labelPrevYear","labelSelected","labelToday","navButtonVariant","noHighlightToday","noKeyNav","readonly","roleDescription","selectedVariant","showDecadeNav","startWeekday","todayVariant","valueAsDate","weekdayHeaderFormat","BCalendar","selected","selectedYMD","activeYMD","getToday","gridHasFocus","isLive","valueId","widgetId","navId","gridId","gridCaptionId","gridHelpId","activeId","selectedDate","activeDate","computedMin","computedMax","computedWeekStarts","computedLocale","locales","calendar","resolvedOptions","resolveLocale","computedDateDisabledFn","computedDateInfoFn","calendarLocale","fmt","calendarYear","calendarMonth","calendarFirstDay","calendarDaysInMonth","computedTodayVariant","computedNavButtonVariant","isRTL","dir","context","selectedFormatted","formatDateString","activeFormatted","dateDisabled","rtl","dateOutOfRange","rangeFn","ymd","hour","minute","second","formatYearMonth","formatWeekdayName","formatWeekdayNameShort","formatDay","nf","NumberFormat","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","notation","prevDecadeDisabled","prevYearDisabled","prevMonthDisabled","thisMonthDisabled","nextMonthDisabled","nextYearDisabled","nextDecadeDisabled","matrix","firstDay","daysInMonth","startIndex","getDay","currentDay","week","j","dayYMD","dayDisabled","dateInfo","label","isThisMonth","info","calendarHeadings","d","_watch$j","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","for","labelSelectedDate","navScope","navProps","navPrevProps","navNextProps","$prevDecadeIcon","$prevYearIcon","$prevMonthIcon","$thisMonthIcon","$nextMonthIcon","$nextYearIcon","$nextDecadeIcon","makeNavBtn","btnDisabled","shortcut","$nav","$gridCaption","$gridWeekDays","$gridBody","$cells","dIndex","isSelected","isActive","isToday","idCell","$btn","pointerEvents","$gridHelp","$grid","ref","$slot","$widget","lang","CalendarPlugin","bgVariant","borderVariant","titleTag","BCardTitle","subTitle","subTitleTag","subTitleTextVariant","BCardSubTitle","titleProps","subTitleProps","cardProps","bodyClass","overlay","BCardBody","bodyBgVariant","bodyBorderVariant","bodyTextVariant","$title","$subTitle","bodyTag","BCardProps","header","headerClass","headerHtml","BCardHeader","headerBgVariant","headerBorderVariant","headerTextVariant","footer","footerClass","footerHtml","BCardFooter","footerBgVariant","footerBorderVariant","footerTextVariant","footerTag","BLANK_TEMPLATE","blank","blankColor","center","fluid","fluidGrow","sizes","srcset","thumbnail","BImg","align","color","makeBlankImgSrc","BImgProps","end","start","BCardImg","baseClass","cardImgProps","BCardImgProps","imgSrc","BCardBodyProps","BCardHeaderProps","BCardFooterProps","noBody","BCard","imgLeft","imgRight","imgStart","imgEnd","imgBottom","slotScope","$imgFirst","$imgLast","$img","hasHeaderSlot","$footer","OBSERVER_PROP_NAME","VisibilityObserver","vnode","margin","once","observer","visible","doneOnce","createObserver","stop","IntersectionObserver","rootMargin","threshold","observe","entries","entry","isIntersecting","intersectionRatio","disconnect","destroy","modifiers","mod","_prevModifiers","VBVisible","componentUpdated","unbind","MODEL_PROP_NAME_SHOW","imgProps","blankHeight","blankSrc","blankWidth","BImgLazy","isShown","computedSrc","computedBlank","computedWidth","computedHeight","computedSrcset","computedSizes","_watch$i","updateShowProp","MODEL_EVENT_NAME_PREFIX","doShow","_modifiers","$props","BImgLazyProps","BCardImgLazy","textTag","BCardText","columns","deck","BCardGroup","CardPlugin","noop","observeDom","obs","mutations","changed","mutation","TEXT_NODE","addedNodes","removedNodes","childList","subtree","_makeModelMixin$i","DIRECTION","next","dirClass","overlayClass","prev","PointerType","TOUCH","PEN","TransitionEndEvents","WebkitTransition","MozTransition","OTransition","transition","background","controls","imgHeight","imgWidth","indicators","interval","labelGotoSlide","labelIndicators","labelNext","labelPrev","noAnimation","noHoverPause","noTouch","noWrap","BCarousel","bvCarousel","isSliding","transitionEndEvent","slides","isPaused","touchStartX","touchDeltaX","numSlides","_watch$h","setSlide","pause","doSlide","$_interval","$_animationTimeout","$_touchTimeout","$_observer","getTransitionEndEvent","updateSlides","setObserver","clearInterval","clearAnimationTimeout","clearTouchTimeout","_clearInterval","inner","attributes","attributeFilter","slide","visibilityState","setInterval","restart","isCycling","calcDirection","currentSlide","nextSlide","called","onceTransEnd","curIndex","nextIndex","handleClick","handleSwipe","absDeltaX","touchStart","pointerType","clientX","touches","touchMove","touchEnd","idInner","$controls","makeControl","handlerWrapper","$indicators","mouseenter","mouseleave","tagName","imgAlt","imgBlank","imgBlankColor","caption","captionHtml","captionTag","contentTag","contentVisibleUp","textHtml","BCarouselSlide","contentClasses","dragstart","$contentChildren","$child","CarouselPlugin","CLASS_NAME_SHOW","TRANSITION_PROPS","TRANSITION_HANDLERS","enter","scrollHeight","afterEnter","leave","afterLeave","BVCollapse","ROOT_ACTION_EVENT_NAME_TOGGLE","ROOT_ACTION_EVENT_NAME_REQUEST_STATE","ROOT_EVENT_NAME_ACCORDION","ROOT_EVENT_NAME_STATE","ROOT_EVENT_NAME_SYNC_STATE","_makeModelMixin$h","accordion","isNav","BCollapse","transitioning","classObject","collapse","close","_watch$g","emitState","handleToggleEvent","handleAccordionEvent","setWindowEvents","handleResize","emitSync","updated","onEnter","onAfterEnter","onLeave","onAfterLeave","checkDisplayBlock","restore","isBlock","display","clickHandler","openedId","openAccordion","isThis","CLASS_BV_TOGGLE_COLLAPSED","CLASS_BV_TOGGLE_NOT_COLLAPSED","BV_BASE","BV_TOGGLE_ROOT_HANDLER","BV_TOGGLE_CLICK_HANDLER","BV_TOGGLE_STATE","BV_TOGGLE_TARGETS","ATTR_ARIA_CONTROLS","ATTR_ARIA_EXPANDED","ATTR_ROLE","ATTR_TABINDEX","STYLE_OVERFLOW_ANCHOR","KEYDOWN_KEY_CODES","removeClickListener","removeRootListeners","setToggleState","state","resetProp","handleUpdate","binding","targets","arg","arr","getTargets","addClickListener","VBToggle","addRootListeners","VBTogglePlugin","CollapsePlugin","isBrowser","timeoutDuration","longerTimeoutBrowsers","debounce","resolve","then","scheduled","functionToCheck","getStyleComputedProperty","element","property","getParentNode","nodeName","host","getScrollParent","_getStyleComputedProp","overflow","overflowX","overflowY","getReferenceNode","reference","referenceNode","isIE11","MSInputMethodContext","documentMode","isIE10","isIE","version","getOffsetParent","noOffsetParent","nextElementSibling","getRoot","node","findCommonOffsetParent","element1","element2","order","compareDocumentPosition","DOCUMENT_POSITION_FOLLOWING","range","createRange","setStart","setEnd","commonAncestorContainer","firstElementChild","element1root","getScroll","side","upperSide","scrollingElement","includeScroll","rect","subtract","scrollTop","scrollLeft","modifier","getBordersSize","styles","axis","sideA","sideB","getSize","computedStyle","getWindowSizes","classCallCheck","instance","Constructor","TypeError","createClass","enumerable","configurable","writable","protoProps","staticProps","_extends","getClientRect","offsets","clientWidth","clientHeight","horizScrollbar","offsetWidth","vertScrollbar","getOffsetRectRelativeToArbitraryNode","fixedPosition","isHTML","childrenRect","parentRect","scrollParent","getViewportOffsetRectRelativeToArtbitraryNode","excludeScroll","relativeOffset","innerWidth","innerHeight","isFixed","getFixedPositionOffsetParent","getBoundaries","popper","boundariesElement","boundaries","boundariesNode","_getWindowSizes","isPaddingNumber","getArea","computeAutoPlacement","placement","refRect","rects","sortedAreas","area","filteredAreas","computedPlacement","variation","getReferenceOffsets","commonOffsetParent","getOuterSizes","marginBottom","getOppositePlacement","matched","getPopperOffsets","referenceOffsets","popperRect","popperOffsets","isHoriz","mainSide","secondarySide","measurement","secondaryMeasurement","find","check","runModifiers","ends","modifiersToRun","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","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","applyStyle","onLoad","modifierOptions","Defaults","Popper","jquery","Utils","global","PopperUtils","BvEvent","eventInit","constructor","cancelable","nativeEvent","vueTarget","componentId","defaultPrevented","_createClass","clickOutMixin","listenForClickOut","clickOutElement","clickOutEventName","_clickOutHandler","beforeCreate","isClickOut","clickOutHandler","focusInMixin","listenForFocusIn","focusInElement","_focusInHandler","focusInHandler","ROOT_EVENT_NAME_SHOWN","ROOT_EVENT_NAME_HIDDEN","SELECTOR_ITEM","boundary","dropleft","dropright","dropup","noFlip","popperOpts","dropdownMixin","bvDropdown","bvNavbar","visibleChangePrevented","inNavbar","toggler","directionClass","boundaryClass","hideDelay","bvEvent","menu","emitEvent","focusToggler","showMenu","hideMenu","$_popper","$_hideTimeout","whileOpenListen","destroyPopper","clearHideTimeout","createPopper","focusMenu","getPopperConfig","updatePopper","popperConfig","isOpen","rootCloseListener","vm","refocus","_event","onMousedown","onEsc","onSplitClick","hideHandler","up","focusItem","dropdownProps","lazy","menuClass","noCaret","splitButtonType","splitClass","splitHref","splitTo","splitVariant","toggleAttrs","toggleClass","toggleTag","toggleText","BDropdown","dropdownClasses","menuClasses","toggleClasses","commonProps","$buttonChildren","buttonContentDomProps","$split","btnProps","$toggle","includes","mousedown","$menu","linkClass","BDropdownItem","closeDropdown","buttonClass","BDropdownItemButton","BDropdownHeader","BDropdownDivider","inline","novalidate","validated","BForm","formControlProps","formClass","BDropdownForm","textClass","BDropdownText","ariaDescribedby","headerClasses","headerVariant","BDropdownGroup","headerId","ariaDescribedBy","DropdownPlugin","BDd","BDdItem","BDropdownItemBtn","BDdItemButton","BDdItemBtn","BDdHeader","BDdDivider","BDdForm","BDdText","BDdGroup","TYPES","BEmbed","EmbedPlugin","disabledField","htmlField","textField","valueField","formOptionsMixin","formOptions","normalizeOptions","normalizeOption","option","formOptionsProps","BFormDatalist","BFormText","ariaLive","forceShow","tooltip","BFormInvalidFeedback","BFormValidFeedback","BFormRow","FormPlugin","BDatalist","BFormFeedback","looseIndexOf","SELECTOR","autofocus","form","formControlMixin","handleAutofocus","plain","formCustomMixin","custom","formSizeMixin","sizeFormClass","formStateMixin","computedState","stateClass","computedAriaInvalid","ariaInvalid","_makeModelMixin$g","formSizeProps","formStateProps","formCustomProps","ariaLabelledby","buttonVariant","formRadioCheckMixin","localChecked","isGroup","bvGroup","hasFocus","computedLocalChecked","set","isChecked","isRadio","isBtnMode","buttons","isPlain","isCustom","isSwitch","switches","switch","isInline","computedName","groupName","computedForm","computedButtonVariant","buttonClasses","_watch$f","computedLocalCheckedWatcher","_methods","checked","input","$input","change","handleChange","$button","$label","MODEL_PROP_NAME_INDETERMINATE","MODEL_EVENT_NAME_INDETERMINATE","formRadioCheckProps","_objectSpread2$2","BFormCheckbox","setIndeterminate","indeterminate","_ref$target","uncheckedValue","BFormRadio","PASS_DOWN_ATTRS","_makeModelMixin$f","formRadioCheckGroupMixin","groupClasses","classes","_watch$e","isRadioGroup","$attrs","optionComponent","$inputs","formRadioCheckGroupProps","_objectSpread2$1","BFormCheckboxGroup","bvCheckGroup","FormCheckboxPlugin","BCheckbox","BCheck","BCheckboxGroup","BCheckGroup","MOUSEENTER","updateListeners","listener","_ref$value","hasListener","handlerChanged","createListener","VBHover","buttonOnly","formattedValue","placeholder","BVFormBtnLabelControl","isHovered","idButton","idLabel","idMenu","idWrapper","computedDir","setFocus","handleHover","hovered","invalid","btnScope","opened","$hidden","_makeModelMixin$e","calendarProps","BCalendarProps","formBtnLabelControlProps","BVFormBtnLabelControlProps","calendarWidth","closeButton","closeButtonVariant","dark","labelCloseButton","labelResetButton","labelTodayButton","noCloseOnSelect","resetButton","resetButtonVariant","resetValue","todayButton","todayButtonVariant","BFormDatepicker","localYMD","localLocale","calendarYM","computedLang","computedResetValue","_watch$d","control","setAndClose","onSelected","onInput","onContext","onTodayButton","onResetButton","onCloseButton","onShow","onShown","onHidden","defaultButtonFn","$createElement","$calendar","shown","FormDatepickerPlugin","BDatepicker","_makeModelMixin$d","VALUE_EMPTY_DEPRECATED_MSG","isValidValue","isFile","getDataTransferItemEntry","getAsEntry","webkitGetAsEntry","getAllFileEntriesInDirectory","directoryReader","entryPromises","readDirectoryEntries","readEntries","all","isDirectory","createReader","file","$path","accept","browseText","directory","dropPlaceholder","fileNameFormatter","multiple","noDrop","noDropPlaceholder","noTraverse","BFormFile","files","dragging","dropAllowed","computedAccept","extOrType","startMatch","endMatch","rx","computedCapture","webkitdirectory","computedFileNameFormatter","defaultFileNameFormatter","clonedFiles","flattenedFiles","fileNames","labelContent","allowed","filesTraversed","_watch$c","reset","$_form","$form","isFileValid","isFilesArrayValid","setFiles","setInputFiles","dataTransfer","ClipboardEvent","clipboardData","DataTransfer","handleFiles","isDrop","filteredFiles","focusHandler","onChange","_event$dataTransfer","dataTransferItemList","traverseDirectories","kind","getAllFileEntries","webkitRelativePath","onDragenter","_event$dataTransfer2","dropEffect","onDragover","_event$dataTransfer3","onDragleave","onDrop","zIndex","dragenter","dragover","dragleave","drop","FormFilePlugin","BFile","escapeChar","cssEscape","firstCharCode","char","charCode","ALIGN_SELF_VALUES","computeBreakpointClass","breakpoint","breakpointPropMap","BCol","breakpointCol","breakpointOffset","breakpointOrder","col","alignSelf","cols","_classList$push","hasColClasses","INPUTS","INPUT_SELECTOR","LEGEND_INTERACTIVE_ELEMENTS","BFormGroup","description","feedbackAriaLive","invalidFeedback","labelClass","labelFor","labelSize","labelSrOnly","validFeedback","contentColProps","getColProps","labelAlignClasses","getAlignClasses","labelColProps","isHorizontal","updateAriaDescribedby","propValue","newIds","oldIds","ids","onLegendClick","inputs","isFieldset","labelId","labelTag","$invalidFeedback","invalidFeedbackContent","invalidFeedbackId","$validFeedback","validFeedbackContent","validFeedbackId","$description","descriptionContent","descriptionId","FormGroupPlugin","BFormFieldset","formSelectionMixin","selectionStart","selectionEnd","selectionDirection","_this$$refs$input","setSelectionRange","_this$$refs$input2","setRangeText","_this$$refs$input3","_makeModelMixin$c","formatter","lazyFormatter","number","plaintext","formTextMixin","localValue","vModelValue","modifyValue","computedClass","isRange","isColor","computedDebounce","hasFormatter","stringifyValue","modifiedValue","clearDebounce","$_inputDebounceTimer","formatValue","force","updateValue","doUpdate","composing","onBlur","formValidityMixin","validity","validationMessage","willValidate","setCustomValidity","checkValidity","reportValidity","formTextProps","list","noWheel","BFormInput","localType","setWheelStopper","onWheelFocus","onWheelBlur","stopWheel","FormInputPlugin","BInput","BFormRadioGroup","bvRadioGroup","FormRadioPlugin","BRadio","BRadioGroup","_makeModelMixin$b","computeStars","stars","clampValue","BVFormRatingStar","focused","hasClear","rating","star","minStar","iconClear","iconEmpty","iconFull","iconHalf","noBorder","showClear","showValue","showValueMax","BFormRating","computedStars","computedRating","isInteractive","formattedRating","formatOptions","toLocaleString","_watch$b","amountRtl","onFocus","renderIcon","iconEmptyFn","iconHalfFn","iconFullFn","iconClearFn","$icon","empty","half","full","FormRatingPlugin","BRating","_makeModelMixin$a","labelField","optionsField","optionsMixin","BFormSelectOption","BFormSelectOptionGroup","selectSize","BFormSelect","computedSelectSize","inputClass","selectedValue","_value","FormSelectPlugin","BSelect","BSelectOption","BSelectOptionGroup","_makeModelMixin$9","KEY_CODES","formatterFn","labelDecrement","labelIncrement","repeatDelay","repeatInterval","repeatStepMultiplier","repeatThreshold","wrap","BFormSpinbutton","spinId","computedInline","computedReadonly","computedRequired","computedStep","computedDelay","delay","computedInterval","computedThreshold","computedStepMultiplier","computedPrecision","computedMultiplier","valueAsFixed","computedRTL","defaultFormatter","useGrouping","computedFormatter","computedSpinAttrs","hasValue","_watch$a","clearRepeat","$_autoDelayTimer","$_autoRepeatTimer","$_keyIsDown","spinner","emitChange","stepValue","multiplier","onFocusBlur","stepUp","stepDown","metaKey","resetTimers","handleStepRepeat","onKeyup","stepper","count","onMouseup","setMouseup","makeButton","IconCmp","keyRef","slotName","touchstart","$increment","$decrement","$spin","keyup","FormSpinbuttonPlugin","BSpinbutton","noRemove","removeLabel","BFormTag","onRemove","tagId","tagLabelId","$remove","$tag","_makeModelMixin$8","DEFAULT_INPUT_FOCUS_SELECTOR","cleanTags","tags","processEventValue","addButtonText","addButtonVariant","addOnChange","duplicateTagText","ignoreInputFocusSelector","inputAttrs","inputId","inputType","invalidTagText","limit","limitTagsText","noAddOnEnter","noOuterFocus","noTagRemove","removeOnDelete","separator","tagClass","tagPills","tagRemoveLabel","tagRemovedLabel","tagValidator","tagVariant","BFormTags","newTag","removedTags","tagsState","valid","duplicate","focusState","computedInputId","computedInputType","computedInputAttrs","computedInputHandlers","onInputBlur","onInputChange","onInputFocus","onInputInput","onInputKeydown","computedSeparator","computedSeparatorRegExp","computedJoiner","joiner","computeIgnoreInputFocusSelector","disableAddButton","splitTags","validateTag","duplicateTags","hasDuplicateTags","invalidTags","hasInvalidTags","isLimitReached","_watch$9","addTag","parseTags","getInput","invalidAndDuplicates","removeTag","separatorRe","ignoreFocusSelector","onFocusout","_this7","defaultRender","inputHandlers","isDuplicate","isInvalid","$tags","duplicateFeedbackId","limitFeedbackId","outline","minWidth","invisible","tagListId","$field","$ul","$feedback","$invalid","$duplicate","$limit","$output","$removed","hasTags","FormTagsPlugin","BTags","BTag","maxRows","noAutoShrink","noResize","rows","BFormTextarea","heightInPx","resize","computedRows","computedMinRows","computedMaxRows","setHeight","visibleCallback","computeHeight","$isServer","lineHeight","border","borderBottomWidth","paddingTop","minHeight","oldHeight","contentRows","FormTextareaPlugin","BTextarea","_makeModelMixin$7","NUMERIC","padLeftZeros","parseHMS","hh","mm","ss","_value$split$map2","hours","minutes","seconds","ampm","BFormSpinbuttonProps","hour12","labelAm","labelAmpm","labelHours","labelMinutes","labelNoTimeSelected","labelPm","labelSeconds","minutesStep","secondsStep","showSeconds","BTime","modelHours","modelMinutes","modelSeconds","modelAmpm","computedHMS","requireSeconds","formatHMS","resolved","hourCycle","computedHourCycle","is12Hour","formatted","formattedTimeString","computedAriaLabelledby","timeFormatter","timeZone","numberFormatter","UTC","spinScopedSlots","increment","decrement","_watch$8","_parseHMS","newHours","oldHours","spinners","formatHours","formatMinutes","formatSeconds","formatAmpm","setHours","setMinutes","setSeconds","setAmpm","onSpinLeftRight","cmp","spinIds","makeSpinbutton","spinbuttonProps","refInFor","makeColon","$spinners","$value","_makeModelMixin$6","timeProps","BTimeProps","labelNowButton","noCloseButton","nowButton","nowButtonVariant","BFormTimepicker","localHMS","_watch$7","hms","onNowButton","now","getHours","getMinutes","getSeconds","time","$time","FormTimepickerPlugin","BTimepicker","ImagePlugin","BInputGroupText","isText","BInputGroupAddon","BInputGroupAddonProps","BInputGroupAppend","BInputGroupPrepend","appendHtml","prepend","prependHtml","BInputGroup","$prepend","hasPrependSlot","$append","hasAppendSlot","InputGroupPlugin","BContainer","container","containerFluid","headerLevel","lead","leadHtml","leadTag","BJumbotron","$lead","hasLeadSlot","$children","JumbotronPlugin","COMMON_ALIGNMENT","computeRowColsClass","computeRowColsBreakpoint","rowColsPropList","BRow","rowColsProps","alignContent","alignH","alignV","noGutters","LayoutPlugin","LinkPlugin","flush","horizontal","BListGroup","actionTags","action","BListGroupItem","itemProps","ListGroupPlugin","verticalAlign","BMediaAside","BMediaBody","rightAlign","BMedia","$aside","MediaPlugin","listenOnDocumentMixin","listenOffDocument","registerDocumentListener","unregisterDocumentListener","listenDocument","listenOnDocument","listenOnWindowMixin","listenOffWindow","registerWindowListener","unregisterWindowListener","listenWindow","listenOnWindow","getScopeId","_scopeId","scopedStyleMixin","scopedStyleAttrs","scopeId","BVTransporterTarget","abstract","nodes","updatedNodes","destroyed","$nodes","BVTransporter","immediate","unmountTarget","mountTarget","$_defaultFn","$_target","beforeMount","updateTarget","getContainer","$container","createElement","appendChild","propsData","defaultFn","$destroy","BvModalEvent","_assertThisInitialized","trigger","_get","_getPrototypeOf","modalManager","modals","baseZIndex","scrollbarWidth","isBodyOverflowing","modalCount","modalsAreOpen","newCount","oldCount","getScrollbarWidth","checkScrollbar","setScrollbar","resetScrollbar","updateModals","registerModal","modal","unregisterModal","splice","_isBeingDestroyed","_isDestroyed","resetModal","getBaseZIndex","div","isTop","_getBCR","_paddingChangedForModal","_marginChangedForModal","actualPadding","actualMargin","_makeModelMixin$5","TRIGGER_FORCE","BUTTON_CANCEL","BUTTON_CLOSE","BUTTON_OK","BUTTONS","OBSERVER_CONFIG","characterData","autoFocusButton","busy","buttonSize","cancelDisabled","cancelTitle","cancelTitleHtml","cancelVariant","centered","contentClass","dialogClass","headerCloseContent","headerCloseLabel","headerCloseVariant","hideBackdrop","hideFooter","hideHeaderClose","ignoreEnforceFocusSelector","modalClass","noCloseOnBackdrop","noCloseOnEsc","noEnforceFocus","noStacking","okDisabled","okOnly","okTitle","okTitleHtml","okVariant","returnFocus","scrollable","static","titleClass","titleHtml","titleSrOnly","BModal","isHidden","isTransitioning","isShow","isOpening","isClosing","ignoreBackdropClick","isModalOverflowing","modalId","modalOuterId","modalHeaderId","modalBodyId","modalTitleId","modalContentId","modalFooterId","modalBackdropId","modalClasses","modalStyles","sbWidth","dialogClasses","titleClasses","bodyClasses","footerClasses","_ref4","modalOuterStyle","cancel","onCancel","onClose","ok","onOk","computeIgnoreEnforceFocusSelector","computedModalAttrs","$_returnFocus","showHandler","toggleHandler","modalListener","checkModalOverflow","updateModel","buildEvent","showEvent","hideEvent","triggerEl","onBeforeEnter","setResizeEvent","setEnforceFocus","onBeforeLeave","returnFocusTo","onDialogMousedown","onceModalMouseup","onClickOut","tabables","bottomTrap","topTrap","preventScroll","autoFocus","makeModal","$modalHeader","$closeButton","$body","$modalFooter","$cancelButton","$modalContent","$tabTrapTop","$tabTrapBottom","$modalDialog","$modal","beforeEnter","beforeLeave","$backdrop","ROOT_ACTION_EVENT_NAME_SHOW","PROPERTY","getTarget","_ref$modifiers","getTriggerElement","setRole","oldProp","VBModal","inserted","PROP_NAME","BASE_PROPS","modalProps","defaultResolver","propsToSlots","msgBoxContent","filterOptions","BVModalPlugin","BMsgBox","extends","handleDestroy","$route","$watch","asyncMsgBox","resolver","msgBox","reject","Error","bvModalEvent","$mount","makeMsgBox","BvModal","_vm","_root","_this$_root","_this$_root2","_len2","_key2","ModalPlugin","cardHeader","justified","pills","small","tabs","BNav","linkAttrs","linkClasses","BNavItem","BNavText","formProps","BFormProps","BNavForm","BDropdownProps","BNavItemDropdown","toggleId","menuId","NavPlugin","BNavItemDd","BNavDropdown","BNavDd","fixed","print","sticky","toggleable","BNavbar","breakpointClass","xs","BNavProps","BNavbarNav","BNavbarBrand","BNavbarToggle","toggleState","handleStateEvent","expanded","NavbarPlugin","BNavToggle","BSpinner","POSITION_COVER","bgColor","noCenter","opacity","overlayTag","spinnerSmall","spinnerType","spinnerVariant","wrapTag","BOverlay","defaultOverlayFn","$overlay","$background","backgroundColor","backdropFilter","OverlayPlugin","_makeModelMixin$4","sanitizeLimit","sanitizeCurrentPage","numberOfPages","page","onSpaceKey","ellipsisClass","ellipsisText","firstClass","firstNumber","firstText","hideEllipsis","hideGotoEndButtons","labelFirstPage","labelLastPage","labelNextPage","labelPage","labelPrevPage","lastClass","lastNumber","lastText","nextClass","nextText","pageClass","prevClass","prevText","paginationMixin","currentPage","localNumberOfPages","localLimit","btnSize","alignment","styleClass","computedCurrentPage","paginationParams","showFirstDots","showLastDots","numberOfLinks","startNumber","lastPageNumber","pageList","_this$paginationParam","pages","makePageArray","_watch$6","handleKeyNav","getButtons","btn","focusCurrent","pageNumbers","_this$paginationParam2","$buttons","isActivePage","pageNumber","noCurrentPage","makeEndBtn","linkTo","btnSlot","btnText","btnClass","pageTest","$btnContent","makeEllipsis","isLast","makePageButton","btnContent","makePage","$firstPageBtn","$lastPageBtn","$pagination","sanitizePerPage","sanitizeTotalRows","paginationProps","perPage","totalRows","BPagination","pageSizeNumberOfPages","clickEvent","pageNum","PaginationPlugin","baseUrl","linkGen","noPageDetect","pageGen","useRouter","BPaginationNav","computedValue","setNumberOfPages","guessCurrentPage","getPageInfo","makeLink","resolveLink","_link2","pathname","resolveRoute","route","guess","currentRoute","loc","location","currentLink","PaginationNavPlugin","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","TOPLEFT","TOPRIGHT","RIGHTTOP","RIGHTBOTTOM","BOTTOMLEFT","BOTTOMRIGHT","LEFTTOP","LEFTBOTTOM","OffsetMap","arrowPadding","boundaryPadding","fallbackPlacement","BVPopper","attachment","getAttachment","templateType","getOffset","popperPlacementChange","popperCreate","arrowOffset","renderTemplate","BVTooltipTemplate","customClass","interactive","templateClasses","noninteractive","templateAttributes","templateListeners","MODAL_SELECTOR","ROOT_EVENT_NAME_MODAL_HIDDEN","CONTAINER_SELECTOR","DATA_TITLE_ATTR","templateData","triggers","BVTooltip","activeTrigger","hover","computedId","computedTriggers","isWithActiveTrigger","computedTemplateData","newTriggers","oldTriggers","unListen","listen","handleTemplateUpdate","disable","enable","$_tip","$_hoverTimeout","$_hoverState","$_visibleInterval","$_enabled","$_noop","forceHide","setWhileOpenListeners","clearHoverTimeout","clearVisibilityInterval","destroyTemplate","getTemplate","updateData","titleUpdated","fixTitle","createTemplateAndShow","Template","$tip","getPlacementTarget","getBoundary","onTemplateShow","onTemplateShown","onTemplateHide","onTemplateHidden","handleEvent","hideTemplate","clearActiveTriggers","localPlacementTarget","removeAriaDescribedby","restoreTitle","getTemplateElement","dropdownOpen","addAriaDescribedby","tip","prevHoverState","getTargetId","isInModal","isDropdown","desc","setRootListener","doHide","doDisable","doEnable","setModalListener","setDropdownListener","visibleCheck","setOnTouchStartListener","_this8","_this9","eventTarget","_this10","_this11","MODEL_PROP_NAME_ENABLED","MODEL_EVENT_NAME_ENABLED","_makePropsConfigurabl","BTooltip","localTitle","localContent","templateTitleContent","_watch$5","$_toolpop","updateContent","doOpen","doClose","Component","getComponent","$toolpop","onHide","onDisabled","onEnabled","setTitle","setContent","BVPopoverTemplate","titleDomProps","contentDomProps","BVPopover","BTooltipProps","BPopover","BV_POPOVER","validTriggers","manual","htmlRE","noFadeRE","placementRE","boundaryRE","delayRE","delayShowRE","delayHideRE","offsetRE","variantRE","spacesRE","applyPopover","bindings","selectedTriggers","parseBindings","__bv_prev_data__","oldData","newData","VBPopoverPlugin","VBPopover","removePopover","PopoverPlugin","animated","labelHtml","showProgress","striped","BProgressBar","bvProgress","progressBarClasses","computedAnimated","computedStriped","progressBarStyles","computedProgress","computedShowProgress","computedShowValue","progressBarProps","BProgressBarProps","ProgressPlugin","BProgress","progressHeight","$childNodes","_makeModelMixin$3","backdrop","backdropVariant","closeLabel","noCloseOnRouteChange","noHeader","noHeaderClose","noSlide","shadow","sidebarClass","renderHeader","renderHeaderTitle","$close","renderHeaderClose","renderBody","renderFooter","renderContent","renderBackdrop","onBackdropClick","BSidebar","transitionProps","hasTitle","titleId","_watch$4","fullPath","$_returnFocusEl","handleToggle","handleSync","onTopTrapFocus","enforceFocus","onBottomTrapFocus","$sidebar","SidebarPlugin","BSkeleton","BSkeletonIcon","cardImg","noAspect","BSkeletonImg","hasListenerMixin","$listeners","$events","_events","LIGHT","DARK","BTr","bvTableTr","bvTableRowGroup","inTbody","isTbody","inThead","isThead","inTfoot","isTfoot","isDark","isStacked","isResponsive","isStickyHeader","hasStickyHeader","tableVariant","headVariant","footVariant","isRowDark","trClasses","trAttrs","bottomRowMixin","renderBottomRow","fields","computedFields","tbodyTrClass","tbodyTrAttr","parseSpan","spanValidator","colspan","rowspan","stackedHeading","stickyColumn","BTd","isStackedCell","isStickyColumn","rowVariant","computedColspan","computedRowspan","cellClasses","cellAttrs","headOrFoot","MODEL_PROP_NAME_BUSY","busyMixin","localBusy","computedBusy","stopIfBusy","renderBusy","captionMixin","captionId","renderCaption","$caption","hasCaptionSlot","colgroupMixin","renderColgroup","$colgroup","emptyFilteredHtml","emptyFilteredText","emptyHtml","emptyText","showEmpty","emptyMixin","renderEmpty","computedItems","$empty","isFiltered","stringifyObjectValues","k","FIELD_KEY_CELL_VARIANT","FIELD_KEY_ROW_VARIANT","FIELD_KEY_SHOW_DETAILS","IGNORED_FIELD_KEYS","EVENT_FILTER","sanitizeRow","row","ignoreFields","includeFields","fieldsObj","formattedRow","field","filterByFormatted","allowedKeys","filterDebounce","filterFunction","filterIgnoredFields","filterIncludedFields","filteringMixin","localFilter","filterSanitize","computedFilterIgnored","computedFilterIncluded","computedFilterDebounce","ms","localFiltering","hasProvider","noProviderFiltering","filteredCheck","filteredItems","localItems","localFilterFn","criteria","filterFn","filterFnFactory","defaultFilterFnFactory","clearFilterTimer","deep","newCriteria","timeout","regExp","pattern","lastIndex","computedFieldsObj","normalizeFields","origFields","processField","sample","_makeModelMixin$2","primaryKey","itemsMixin","paginatedItems","sortedItems","sortBy","localSortBy","sortDesc","localSortDesc","apiUrl","getFieldFormatter","localPaging","noProviderPaging","ROOT_EVENT_NAME_REFRESHED","ROOT_ACTION_EVENT_NAME_REFRESH","noProviderSorting","providerMixin","providerTriggerContext","_providerUpdate","refresh","clearSelected","_providerSetLocal","catch","SELECT_MODES","ROLE_GRID","noSelectOnClick","selectMode","selectable","selectableMixin","selectedRows","selectedLastRow","isSelectable","hasSelectableRowClick","supportsSelectableRows","selectableHasSelection","selectableIsMultiSelect","selectableTableClasses","selectableTableAttrs","setSelectionHandlers","selectRow","isRowSelected","selectedLastClicked","unselectRow","selectAllRows","selectableRowClasses","selectableRowAttrs","selectionHandler","stableSort","compareFn","normalizeValue","MODEL_PROP_NAME_SORT_BY","MODEL_PROP_NAME_SORT_DESC","SORT_DIRECTION_ASC","SORT_DIRECTION_DESC","SORT_DIRECTIONS","_props","labelSortAsc","labelSortClear","labelSortDesc","noFooterSorting","noLocalSorting","noSortReset","numeric","sortingMixin","localSorting","isSortable","sortable","sortCompareLocale","nullLast","sortNullLast","sortCompare","localeOptions","sortCompareOptions","usage","sortByFormatted","_ref$sortBy","_ref$formatter","_ref$locale","_ref$localeOptions","_ref$nullLast","aa","bb","localeCompare","defaultSortCompare","_watch$3","handleSort","isFoot","sortChanged","toggleLocalSortDesc","sortDirection","sortKey","sortTheadThClasses","sortIconLeft","sortTheadThAttrs","_field$sortKey","sortTheadThLabel","labelSorting","stackedMixin","isStackedAlways","stackedTableClasses","bordered","borderless","captionTop","noBorderCollapse","outlined","responsive","stickyHeader","tableClass","tableRendererMixin","bvTable","wrapperClasses","wrapperStyles","maxHeight","tableClasses","isTableSimple","tableAttrs","ariaAttrs","renderThead","renderTbody","renderTfoot","$table","tbodyTransitionHandlers","tbodyTransitionProps","BTbody","isTransitionGroup","tbodyAttrs","tbodyProps","nativeOn","TABLE_TAG_NAMES","filterEvent","textSelectionActive","containsNode","BTdProps","BTh","detailsTdClass","tbodyRowMixin","getTdValues","tdValue","getThValues","thValue","getFormattedValue","toggleDetailsFactory","hasDetailsSlot","rowHovered","tbodyRowEventStopped","emitTbodyRowEvent","rowUnhovered","renderTbodyRowCell","colIndex","rowIndex","isRowHeader","cellTag","cellVariant","tdClass","thAttr","tdAttr","unformatted","toggleDetails","detailsShowing","rowSelected","$_bodyFieldSlotNameCache","renderTbodyRow","rowShowDetails","hasRowClickHandler","$rows","detailsId","$tds","ariaRowIndex","primaryKeyValue","rowKey","rowId","selectableClasses","selectableAttrs","userTrClasses","userTrAttrs","detailsScope","$details","userDetailsTrClasses","userDetailsTrAttrs","getCellSlotName","BTbodyProps","tbodyRowProps","tbodyClass","tbodyMixin","getTbodyTrs","tbody","trs","tr","getTbodyTrIndex","onTbodyRowKeydown","onTBodyRowClicked","onTbodyRowMiddleMouseRowClicked","which","onTbodyRowContextmenu","onTbodyRowDblClicked","renderTopRow","$busy","defaultSlotName","lowercaseSlotName","handlers","auxclick","contextmenu","dblclick","BTfoot","tfootClasses","tfootAttrs","footClone","footRowVariant","tfootClass","tfootTrClass","tfootMixin","renderTFootCustom","BThead","theadClasses","theadAttrs","getHeadSlotName","getFootSlotName","headRowVariant","theadClass","theadTrClass","theadMixin","fieldClasses","thClass","headClicked","hasHeadClickListener","makeCell","headerTitle","sortAttrs","sortClass","sortLabel","thStyle","abbr","headerAbbr","slotNames","column","$srLabel","$trs","topRowMixin","bottomRowProps","busyProps","captionProps","colgroupProps","emptyProps","filteringProps","itemsProps","providerProps","selectableProps","sortingProps","stackedProps","tableRendererProps","tfootProps","theadProps","BTable","BTableLite","BTableSimple","TablePlugin","TableLitePlugin","TableSimplePlugin","isPositiveNumber","showFooter","tableProps","BSkeletonTable","$th","$thTr","$td","$tdTr","$tbody","$thead","$tfoot","loading","BSkeletonWrapper","SkeletonPlugin","SpinnerPlugin","_makeModelMixin$1","notDisabled","tab","BVTabButton","bvTabs","posInSet","setSize","_this$tab","localActive","titleItemClass","titleLinkClass","titleLinkAttributes","$link","activeNavItemClass","activeTabClass","card","navClass","navWrapperClass","noNavStyle","BTabs","currentTab","registeredTabs","localNavClass","_watch$2","$tab","activateTab","previousTab","nextTab","updateTabs","registerTab","unregisterTab","$t","getTabs","$tabs","_isTab","getButtonForTab","updateButton","$forceUpdate","tabEvent","deactivateTab","focusButton","emitTabClick","clickTab","firstTab","currentIndex","lastTab","$activeTab","$fallbackTab","_on","controlledBy","MODEL_PROP_NAME_ACTIVE","MODEL_EVENT_NAME_ACTIVE","_objectSpread2","TabsPlugin","BTab","tabClasses","buttonId","computedNoFade","computedLazy","_watch$1","activate","deactivate","TimePlugin","Symbol","iterator","_toConsumableArray","arr2","_arrayWithoutHoles","iter","_iterableToArray","_nonIterableSpread","inBrowser","acc","transports","sources","Wormhole","trackInstances","open","transport","passengers","_transport$order","Infinity","newTransport","freeze","$_getTransportIndex","newTransports","registerTarget","unregisterTarget","registerSource","unregisterSource","hasTarget","hasSource","hasContentFor","wormhole","_id","Portal","slim","slotProps","random","sendUpdate","clear","closer","normalizeSlots","normalizeOwnChildren","slotContent","Tag","PortalTarget","firstRender","ownTransports","newVal","oldVal","temp","newPassengers","combinePassengers","noWrapper","_id$1","portalProps","targetProps","bail","mountTo","targetSlim","targetSlotProps","targetTag","portalTarget","mountEl","VuePlugin","DefaultTransition","ariaAtomic","BToaster","doRender","dead","staticName","$toaster","$target","_makeModelMixin","appendToast","autoHideDelay","isStatus","noAutoHide","solid","toastClass","toaster","BToast","isMounted","isHiding","dismissStarted","resumeDismiss","toastClasses","computedDuration","computedToaster","transitionHandlers","_watch","ensureToaster","$_dismissTimer","clearDismissTimer","setHoverHandler","startDismissTimer","onPause","onUnPause","passed","onLinkClick","hiddenEvent","makeToast","$headerContent","isStatic","$toast","toastProps","toastContent","BVToastPlugin","BVToastPop","toast","BvToast","ToastPlugin","BV_TOOLTIP","noninteractiveRE","applyTooltip","VBTooltipPlugin","VBTooltip","removeTooltip","componentsPlugin","TooltipPlugin","VBHoverPlugin","VBModalPlugin","CLASS_NAME_ACTIVE","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_DROPDOWN_ITEMS","ROOT_EVENT_NAME_ACTIVATE","METHOD_POSITION","Default","throttle","DefaultType","objectToString","BVScrollspy","$scroller","$selector","$offsets","$targets","$activeTarget","$scrollHeight","$resizeTimeout","$scrollerObserver","$targetsObserver","$config","updateConfig","unlisten","cfg","componentName","configTypes","expectedTypes","valueType","_isVue","typeCheckConfig","Name","self","scroller","getScroller","setObservers","autoMethod","methodFn","offsetBase","getScrollTop","getScrollHeight","maxScroll","getOffsetHeight","links","dropdown","setActiveState","sibling","previousElementSibling","BV_SCROLLSPY","onlyDigitsRE","applyScrollspy","BootstrapVue","directivesPlugin","VBScrollspyPlugin","VBScrollspy","dispose","removeScrollspy","VBVisiblePlugin"],"mappings":"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","sourcesContent":["var e=function(){return(e=Object.assign||function(e){for(var t,r=1,s=arguments.length;r<s;r++)for(var a in t=arguments[r])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e}).apply(this,arguments)},t={kebab:/-(\\w)/g,styleProp:/:(.*)/,styleList:/;(?![^(]*\\))/g};function r(e,t){return t?t.toUpperCase():\"\"}function s(e){for(var s,a={},c=0,o=e.split(t.styleList);c<o.length;c++){var n=o[c].split(t.styleProp),i=n[0],l=n[1];(i=i.trim())&&(\"string\"==typeof l&&(l=l.trim()),a[(s=i,s.replace(t.kebab,r))]=l)}return a}function a(){for(var t,r,a={},c=arguments.length;c--;)for(var o=0,n=Object.keys(arguments[c]);o<n.length;o++)switch(t=n[o]){case\"class\":case\"style\":case\"directives\":if(Array.isArray(a[t])||(a[t]=[]),\"style\"===t){var i=void 0;i=Array.isArray(arguments[c].style)?arguments[c].style:[arguments[c].style];for(var l=0;l<i.length;l++){var y=i[l];\"string\"==typeof y&&(i[l]=s(y))}arguments[c].style=i}a[t]=a[t].concat(arguments[c][t]);break;case\"staticClass\":if(!arguments[c][t])break;void 0===a[t]&&(a[t]=\"\"),a[t]&&(a[t]+=\" \"),a[t]+=arguments[c][t].trim();break;case\"on\":case\"nativeOn\":a[t]||(a[t]={});for(var p=0,f=Object.keys(arguments[c][t]||{});p<f.length;p++)r=f[p],a[t][r]?a[t][r]=[].concat(a[t][r],arguments[c][t][r]):a[t][r]=arguments[c][t][r];break;case\"attrs\":case\"props\":case\"domProps\":case\"scopedSlots\":case\"staticStyle\":case\"hook\":case\"transition\":a[t]||(a[t]={}),a[t]=e({},arguments[c][t],a[t]);break;case\"slot\":case\"key\":case\"ref\":case\"tag\":case\"show\":case\"keepAlive\":default:a[t]||(a[t]=arguments[c][t])}return a}export{a as mergeData};\n//# sourceMappingURL=lib.esm.js.map\n","import Vue from 'vue'\nimport { mergeData } from 'vue-functional-data-merge'\n\n// --- Constants ---\n\nconst COMPONENT_UID_KEY = '_uid'\n\nexport { COMPONENT_UID_KEY, Vue, mergeData }\n","export const HAS_WINDOW_SUPPORT = typeof window !== 'undefined'\nexport const HAS_DOCUMENT_SUPPORT = typeof document !== 'undefined'\nexport const HAS_NAVIGATOR_SUPPORT = typeof navigator !== 'undefined'\nexport const HAS_PROMISE_SUPPORT = typeof Promise !== 'undefined'\n/* istanbul ignore next: JSDOM always returns false */\nexport const HAS_MUTATION_OBSERVER_SUPPORT =\n typeof MutationObserver !== 'undefined' ||\n typeof WebKitMutationObserver !== 'undefined' ||\n typeof MozMutationObserver !== 'undefined'\n\nexport const IS_BROWSER = HAS_WINDOW_SUPPORT && HAS_DOCUMENT_SUPPORT && HAS_NAVIGATOR_SUPPORT\n\nexport const WINDOW = HAS_WINDOW_SUPPORT ? window : {}\nexport const DOCUMENT = HAS_DOCUMENT_SUPPORT ? document : {}\nexport const NAVIGATOR = HAS_NAVIGATOR_SUPPORT ? navigator : {}\nexport const USER_AGENT = (NAVIGATOR.userAgent || '').toLowerCase()\n\nexport const IS_JSDOM = USER_AGENT.indexOf('jsdom') > 0\nexport const IS_IE = /msie|trident/.test(USER_AGENT)\n\n// Determine if the browser supports the option passive for events\nexport const HAS_PASSIVE_EVENT_SUPPORT = (() => {\n let passiveEventSupported = false\n if (IS_BROWSER) {\n try {\n const options = {\n // This function will be called when the browser\n // attempts to access the passive property\n get passive() {\n /* istanbul ignore next: will never be called in JSDOM */\n passiveEventSupported = true\n }\n }\n WINDOW.addEventListener('test', options, options)\n WINDOW.removeEventListener('test', options, options)\n } catch {\n /* istanbul ignore next: will never be called in JSDOM */\n passiveEventSupported = false\n }\n }\n return passiveEventSupported\n})()\n\nexport const HAS_TOUCH_SUPPORT =\n IS_BROWSER && ('ontouchstart' in DOCUMENT.documentElement || NAVIGATOR.maxTouchPoints > 0)\n\nexport const HAS_POINTER_EVENT_SUPPORT =\n IS_BROWSER && Boolean(WINDOW.PointerEvent || WINDOW.MSPointerEvent)\n\n/* istanbul ignore next: JSDOM only checks for 'IntersectionObserver' */\nexport const HAS_INTERACTION_OBSERVER_SUPPORT =\n IS_BROWSER &&\n 'IntersectionObserver' in WINDOW &&\n 'IntersectionObserverEntry' in WINDOW &&\n // Edge 15 and UC Browser lack support for `isIntersecting`\n // but we an use `intersectionRatio > 0` instead\n // 'isIntersecting' in window.IntersectionObserverEntry.prototype &&\n 'intersectionRatio' in WINDOW.IntersectionObserverEntry.prototype\n","import { Vue as OurVue } from '../vue'\nimport { HAS_WINDOW_SUPPORT, IS_JSDOM } from '../constants/env'\nimport { setConfig } from './config-set'\nimport { warn } from './warn'\n\n/**\n * Checks if there are multiple instances of Vue, and warns (once) about possible issues.\n * @param {object} Vue\n */\nexport const checkMultipleVue = (() => {\n let checkMultipleVueWarned = false\n\n const MULTIPLE_VUE_WARNING = [\n 'Multiple instances of Vue detected!',\n 'You may need to set up an alias for Vue in your bundler config.',\n 'See: https://bootstrap-vue.org/docs#using-module-bundlers'\n ].join('\\n')\n\n return Vue => {\n /* istanbul ignore next */\n if (!checkMultipleVueWarned && OurVue !== Vue && !IS_JSDOM) {\n warn(MULTIPLE_VUE_WARNING)\n }\n checkMultipleVueWarned = true\n }\n})()\n\n/**\n * Plugin install factory function.\n * @param {object} { components, directives }\n * @returns {function} plugin install function\n */\nexport const installFactory = ({ components, directives, plugins } = {}) => {\n const install = (Vue, config = {}) => {\n if (install.installed) {\n /* istanbul ignore next */\n return\n }\n install.installed = true\n checkMultipleVue(Vue)\n setConfig(config, Vue)\n registerComponents(Vue, components)\n registerDirectives(Vue, directives)\n registerPlugins(Vue, plugins)\n }\n\n install.installed = false\n\n return install\n}\n\n/**\n * Plugin install factory function (no plugin config option).\n * @param {object} { components, directives }\n * @returns {function} plugin install function\n */\nexport const installFactoryNoConfig = ({ components, directives, plugins } = {}) => {\n const install = Vue => {\n if (install.installed) {\n /* istanbul ignore next */\n return\n }\n install.installed = true\n checkMultipleVue(Vue)\n registerComponents(Vue, components)\n registerDirectives(Vue, directives)\n registerPlugins(Vue, plugins)\n }\n\n install.installed = false\n\n return install\n}\n\n/**\n * Plugin object factory function.\n * @param {object} { components, directives, plugins }\n * @returns {object} plugin install object\n */\nexport const pluginFactory = (options = {}, extend = {}) => ({\n ...extend,\n install: installFactory(options)\n})\n\n/**\n * Plugin object factory function (no config option).\n * @param {object} { components, directives, plugins }\n * @returns {object} plugin install object\n */\nexport const pluginFactoryNoConfig = (options = {}, extend = {}) => ({\n ...extend,\n install: installFactoryNoConfig(options)\n})\n\n/**\n * Load a group of plugins.\n * @param {object} Vue\n * @param {object} Plugin definitions\n */\nexport const registerPlugins = (Vue, plugins = {}) => {\n for (const plugin in plugins) {\n if (plugin && plugins[plugin]) {\n Vue.use(plugins[plugin])\n }\n }\n}\n\n/**\n * Load a component.\n * @param {object} Vue\n * @param {string} Component name\n * @param {object} Component definition\n */\nexport const registerComponent = (Vue, name, def) => {\n if (Vue && name && def) {\n Vue.component(name, def)\n }\n}\n\n/**\n * Load a group of components.\n * @param {object} Vue\n * @param {object} Object of component definitions\n */\nexport const registerComponents = (Vue, components = {}) => {\n for (const component in components) {\n registerComponent(Vue, component, components[component])\n }\n}\n\n/**\n * Load a directive.\n * @param {object} Vue\n * @param {string} Directive name\n * @param {object} Directive definition\n */\nexport const registerDirective = (Vue, name, def) => {\n if (Vue && name && def) {\n // Ensure that any leading V is removed from the\n // name, as Vue adds it automatically\n Vue.directive(name.replace(/^VB/, 'B'), def)\n }\n}\n\n/**\n * Load a group of directives.\n * @param {object} Vue\n * @param {object} Object of directive definitions\n */\nexport const registerDirectives = (Vue, directives = {}) => {\n for (const directive in directives) {\n registerDirective(Vue, directive, directives[directive])\n }\n}\n\n/**\n * Install plugin if window.Vue available\n * @param {object} Plugin definition\n */\nexport const vueUse = VuePlugin => {\n /* istanbul ignore next */\n if (HAS_WINDOW_SUPPORT && window.Vue) {\n window.Vue.use(VuePlugin)\n }\n /* istanbul ignore next */\n if (HAS_WINDOW_SUPPORT && VuePlugin.NAME) {\n window[VuePlugin.NAME] = VuePlugin\n }\n}\n","export const NAME = 'BvConfig'\nexport const PROP_NAME = '$bvConfig'\n\nexport const DEFAULT_BREAKPOINT = ['xs', 'sm', 'md', 'lg', 'xl']\n","// --- General ---\n\nexport const RX_ARRAY_NOTATION = /\\[(\\d+)]/g\nexport const RX_BV_PREFIX = /^(BV?)/\nexport const RX_DIGITS = /^\\d+$/\nexport const RX_EXTENSION = /^\\..+/\nexport const RX_HASH = /^#/\nexport const RX_HASH_ID = /^#[A-Za-z]+[\\w\\-:.]*$/\nexport const RX_HTML_TAGS = /(<([^>]+)>)/gi\nexport const RX_HYPHENATE = /\\B([A-Z])/g\nexport const RX_LOWER_UPPER = /([a-z])([A-Z])/g\nexport const RX_NUMBER = /^[0-9]*\\.?[0-9]+$/\nexport const RX_PLUS = /\\+/g\nexport const RX_REGEXP_REPLACE = /[-/\\\\^$*+?.()|[\\]{}]/g\nexport const RX_SPACES = /[\\s\\uFEFF\\xA0]+/g\nexport const RX_SPACE_SPLIT = /\\s+/\nexport const RX_STAR = /\\/\\*$/\nexport const RX_START_SPACE_WORD = /(\\s|^)(\\w)/g\nexport const RX_TRIM_LEFT = /^\\s+/\nexport const RX_TRIM_RIGHT = /\\s+$/\nexport const RX_UNDERSCORE = /_/g\nexport const RX_UN_KEBAB = /-(\\w)/g\n\n// --- Date ---\n\n// Loose YYYY-MM-DD matching, ignores any appended time inforation\n// Matches '1999-12-20', '1999-1-1', '1999-01-20T22:51:49.118Z', '1999-01-02 13:00:00'\nexport const RX_DATE = /^\\d+-\\d\\d?-\\d\\d?(?:\\s|T|$)/\n\n// Used to split off the date parts of the YYYY-MM-DD string\nexport const RX_DATE_SPLIT = /-|\\s|T/\n\n// Time string RegEx (optional seconds)\nexport const RX_TIME = /^([0-1]?[0-9]|2[0-3]):[0-5]?[0-9](:[0-5]?[0-9])?$/\n\n// --- URL ---\n\n// HREFs must end with a hash followed by at least one non-hash character\nexport const RX_HREF = /^.*(#[^#]+)$/\n\nexport const RX_ENCODED_COMMA = /%2C/g\nexport const RX_ENCODE_REVERSE = /[!'()*]/g\nexport const RX_QUERY_START = /^(\\?|#|&)/\n\n// --- Aspect ---\n\nexport const RX_ASPECT = /^\\d+(\\.\\d*)?[/:]\\d+(\\.\\d*)?$/\nexport const RX_ASPECT_SEPARATOR = /[/:]/\n\n// --- Grid ---\n\nexport const RX_COL_CLASS = /^col-/\n\n// --- Icon ---\n\nexport const RX_ICON_PREFIX = /^BIcon/\n\n// --- Locale ---\n\nexport const RX_STRIP_LOCALE_MODS = /-u-.+/\n","import { HAS_WINDOW_SUPPORT, WINDOW } from './env'\n\n/* istanbul ignore next */\nexport const Element = HAS_WINDOW_SUPPORT ? WINDOW.Element : class Element extends Object {}\n\n/* istanbul ignore next */\nexport const HTMLElement = HAS_WINDOW_SUPPORT\n ? WINDOW.HTMLElement\n : class HTMLElement extends Element {}\n\n/* istanbul ignore next */\nexport const SVGElement = HAS_WINDOW_SUPPORT\n ? WINDOW.SVGElement\n : class SVGElement extends Element {}\n\n/* istanbul ignore next */\nexport const File = HAS_WINDOW_SUPPORT ? WINDOW.File : class File extends Object {}\n","import { RX_NUMBER } from '../constants/regex'\nimport { File } from '../constants/safe-types'\n\n// --- Convenience inspection utilities ---\n\nexport const toType = value => typeof value\n\nexport const toRawType = value => Object.prototype.toString.call(value).slice(8, -1)\n\nexport const toRawTypeLC = value => toRawType(value).toLowerCase()\n\nexport const isUndefined = value => value === undefined\n\nexport const isNull = value => value === null\n\nexport const isEmptyString = value => value === ''\n\nexport const isUndefinedOrNull = value => isUndefined(value) || isNull(value)\n\nexport const isUndefinedOrNullOrEmpty = value => isUndefinedOrNull(value) || isEmptyString(value)\n\nexport const isFunction = value => toType(value) === 'function'\n\nexport const isBoolean = value => toType(value) === 'boolean'\n\nexport const isString = value => toType(value) === 'string'\n\nexport const isNumber = value => toType(value) === 'number'\n\nexport const isNumeric = value => RX_NUMBER.test(String(value))\n\nexport const isPrimitive = value => isBoolean(value) || isString(value) || isNumber(value)\n\nexport const isArray = value => Array.isArray(value)\n\n// Quick object check\n// This is primarily used to tell Objects from primitive values\n// when we know the value is a JSON-compliant type\n// Note object could be a complex type like array, Date, etc.\nexport const isObject = obj => obj !== null && typeof obj === 'object'\n\n// Strict object type check\n// Only returns true for plain JavaScript objects\nexport const isPlainObject = obj => Object.prototype.toString.call(obj) === '[object Object]'\n\nexport const isDate = value => value instanceof Date\n\nexport const isEvent = value => value instanceof Event\n\nexport const isFile = value => value instanceof File\n\nexport const isRegExp = value => toRawType(value) === 'RegExp'\n\nexport const isPromise = value =>\n !isUndefinedOrNull(value) && isFunction(value.then) && isFunction(value.catch)\n","import { isObject } from './inspect'\n\n// --- Static ---\n\nexport const assign = (...args) => Object.assign(...args)\nexport const create = (proto, optionalProps) => Object.create(proto, optionalProps)\nexport const defineProperties = (obj, props) => Object.defineProperties(obj, props)\nexport const defineProperty = (obj, prop, descriptor) =>\n Object.defineProperty(obj, prop, descriptor)\nexport const freeze = obj => Object.freeze(obj)\nexport const getOwnPropertyNames = obj => Object.getOwnPropertyNames(obj)\nexport const getOwnPropertyDescriptor = (obj, prop) => Object.getOwnPropertyDescriptor(obj, prop)\nexport const getOwnPropertySymbols = obj => Object.getOwnPropertySymbols(obj)\nexport const getPrototypeOf = obj => Object.getPrototypeOf(obj)\nexport const is = (value1, value2) => Object.is(value1, value2)\nexport const isFrozen = obj => Object.isFrozen(obj)\nexport const keys = obj => Object.keys(obj)\n\n// --- \"Instance\" ---\n\nexport const hasOwnProperty = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop)\nexport const toString = obj => Object.prototype.toString.call(obj)\n\n// --- Utilities ---\n\n// Shallow copy an object\nexport const clone = obj => ({ ...obj })\n\n// Return a shallow copy of object with the specified properties only\n// See: https://gist.github.com/bisubus/2da8af7e801ffd813fab7ac221aa7afc\nexport const pick = (obj, props) =>\n keys(obj)\n .filter(key => props.indexOf(key) !== -1)\n .reduce((result, key) => ({ ...result, [key]: obj[key] }), {})\n\n// Return a shallow copy of object with the specified properties omitted\n// See: https://gist.github.com/bisubus/2da8af7e801ffd813fab7ac221aa7afc\nexport const omit = (obj, props) =>\n keys(obj)\n .filter(key => props.indexOf(key) === -1)\n .reduce((result, key) => ({ ...result, [key]: obj[key] }), {})\n\n// Merges two object deeply together\n// See: https://gist.github.com/Salakar/1d7137de9cb8b704e48a\nexport const mergeDeep = (target, source) => {\n if (isObject(target) && isObject(source)) {\n keys(source).forEach(key => {\n if (isObject(source[key])) {\n if (!target[key] || !isObject(target[key])) {\n target[key] = source[key]\n }\n mergeDeep(target[key], source[key])\n } else {\n assign(target, { [key]: source[key] })\n }\n })\n }\n return target\n}\n\n// Returns a shallow copy of the object with keys in sorted order\nexport const sortKeys = obj =>\n keys(obj)\n .sort()\n .reduce((result, key) => ({ ...result, [key]: obj[key] }), {})\n\n// Convenience method to create a read-only descriptor\nexport const readonlyDescriptor = () => ({ enumerable: true, configurable: false, writable: false })\n","import { isArray, isPlainObject } from './inspect'\nimport { keys } from './object'\n\nexport const cloneDeep = (obj, defaultValue = obj) => {\n if (isArray(obj)) {\n return obj.reduce((result, val) => [...result, cloneDeep(val, val)], [])\n }\n if (isPlainObject(obj)) {\n return keys(obj).reduce(\n (result, key) => ({ ...result, [key]: cloneDeep(obj[key], obj[key]) }),\n {}\n )\n }\n return defaultValue\n}\n","export const identity = x => x\n","import { RX_ARRAY_NOTATION } from '../constants/regex'\nimport { identity } from './identity'\nimport { isArray, isNull, isObject, isUndefinedOrNull } from './inspect'\n\n/**\n * Get property defined by dot/array notation in string, returns undefined if not found\n *\n * @link https://gist.github.com/jeneg/9767afdcca45601ea44930ea03e0febf#gistcomment-1935901\n *\n * @param {Object} obj\n * @param {string|Array} path\n * @return {*}\n */\nexport const getRaw = (obj, path, defaultValue = undefined) => {\n // Handle array of path values\n path = isArray(path) ? path.join('.') : path\n\n // If no path or no object passed\n if (!path || !isObject(obj)) {\n return defaultValue\n }\n\n // Handle edge case where user has dot(s) in top-level item field key\n // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2762\n // Switched to `in` operator vs `hasOwnProperty` to handle obj.prototype getters\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/3463\n if (path in obj) {\n return obj[path]\n }\n\n // Handle string array notation (numeric indices only)\n path = String(path).replace(RX_ARRAY_NOTATION, '.$1')\n\n const steps = path.split('.').filter(identity)\n\n // Handle case where someone passes a string of only dots\n if (steps.length === 0) {\n return defaultValue\n }\n\n // Traverse path in object to find result\n // Switched to `in` operator vs `hasOwnProperty` to handle obj.prototype getters\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/3463\n return steps.every(step => isObject(obj) && step in obj && !isUndefinedOrNull((obj = obj[step])))\n ? obj\n : isNull(obj)\n ? null\n : defaultValue\n}\n\n/**\n * Get property defined by dot/array notation in string.\n *\n * @link https://gist.github.com/jeneg/9767afdcca45601ea44930ea03e0febf#gistcomment-1935901\n *\n * @param {Object} obj\n * @param {string|Array} path\n * @param {*} defaultValue (optional)\n * @return {*}\n */\nexport const get = (obj, path, defaultValue = null) => {\n const value = getRaw(obj, path)\n return isUndefinedOrNull(value) ? defaultValue : value\n}\n","/**\n * Utilities to get information about the current environment\n */\n\nexport const getEnv = (key, fallback = null) => {\n const env = typeof process !== 'undefined' && process ? process.env || {} : {}\n if (!key) {\n /* istanbul ignore next */\n return env\n }\n return env[key] || fallback\n}\n\nexport const getNoWarn = () =>\n getEnv('BOOTSTRAP_VUE_NO_WARN') || getEnv('NODE_ENV') === 'production'\n","import { IS_BROWSER, HAS_PROMISE_SUPPORT, HAS_MUTATION_OBSERVER_SUPPORT } from '../constants/env'\nimport { getNoWarn } from './env'\n\n/**\n * Log a warning message to the console with BootstrapVue formatting\n * @param {string} message\n */\nexport const warn = (message, source = null) => /* istanbul ignore next */ {\n if (!getNoWarn()) {\n console.warn(`[BootstrapVue warn]: ${source ? `${source} - ` : ''}${message}`)\n }\n}\n\n/**\n * Warn when no Promise support is given\n * @param {string} source\n * @returns {boolean} warned\n */\nexport const warnNotClient = source => {\n /* istanbul ignore else */\n if (IS_BROWSER) {\n return false\n } else {\n warn(`${source}: Can not be called during SSR.`)\n return true\n }\n}\n\n/**\n * Warn when no Promise support is given\n * @param {string} source\n * @returns {boolean} warned\n */\nexport const warnNoPromiseSupport = source => {\n /* istanbul ignore else */\n if (HAS_PROMISE_SUPPORT) {\n return false\n } else {\n warn(`${source}: Requires Promise support.`)\n return true\n }\n}\n\n/**\n * Warn when no MutationObserver support is given\n * @param {string} source\n * @returns {boolean} warned\n */\nexport const warnNoMutationObserverSupport = source => {\n /* istanbul ignore else */\n if (HAS_MUTATION_OBSERVER_SUPPORT) {\n return false\n } else {\n warn(`${source}: Requires MutationObserver support.`)\n return true\n }\n}\n","import { Vue as OurVue } from '../vue'\nimport { NAME, PROP_NAME } from '../constants/config'\nimport { cloneDeep } from './clone-deep'\nimport { getRaw } from './get'\nimport { isArray, isPlainObject, isString, isUndefined } from './inspect'\nimport { getOwnPropertyNames } from './object'\nimport { warn } from './warn'\n\n// Config manager class\nclass BvConfig {\n constructor() {\n this.$_config = {}\n }\n\n // Method to merge in user config parameters\n setConfig(config = {}) {\n /* istanbul ignore next */\n if (!isPlainObject(config)) {\n return\n }\n const configKeys = getOwnPropertyNames(config)\n configKeys.forEach(key => {\n /* istanbul ignore next */\n const subConfig = config[key]\n if (key === 'breakpoints') {\n /* istanbul ignore if */\n if (\n !isArray(subConfig) ||\n subConfig.length < 2 ||\n subConfig.some(b => !isString(b) || b.length === 0)\n ) {\n warn('\"breakpoints\" must be an array of at least 2 breakpoint names', NAME)\n } else {\n this.$_config[key] = cloneDeep(subConfig)\n }\n } else if (isPlainObject(subConfig)) {\n // Component prop defaults\n this.$_config[key] = getOwnPropertyNames(subConfig).reduce((config, prop) => {\n if (!isUndefined(subConfig[prop])) {\n config[prop] = cloneDeep(subConfig[prop])\n }\n return config\n }, this.$_config[key] || {})\n }\n })\n }\n\n // Clear the config\n resetConfig() {\n this.$_config = {}\n }\n\n // Returns a deep copy of the user config\n getConfig() {\n return cloneDeep(this.$_config)\n }\n\n // Returns a deep copy of the config value\n getConfigValue(key, defaultValue = undefined) {\n return cloneDeep(getRaw(this.$_config, key, defaultValue))\n }\n}\n\n// Method for applying a global config\nexport const setConfig = (config = {}, Vue = OurVue) => {\n // Ensure we have a `$bvConfig` Object on the Vue prototype\n // We set on Vue and OurVue just in case consumer has not set an alias of `vue`\n Vue.prototype[PROP_NAME] = OurVue.prototype[PROP_NAME] =\n Vue.prototype[PROP_NAME] || OurVue.prototype[PROP_NAME] || new BvConfig()\n // Apply the config values\n Vue.prototype[PROP_NAME].setConfig(config)\n}\n\n// Method for resetting the user config\n// Exported for testing purposes only\nexport const resetConfig = () => {\n if (OurVue.prototype[PROP_NAME] && OurVue.prototype[PROP_NAME].resetConfig) {\n OurVue.prototype[PROP_NAME].resetConfig()\n }\n}\n","// Component names\nexport const NAME_ALERT = 'BAlert'\nexport const NAME_ASPECT = 'BAspect'\nexport const NAME_AVATAR = 'BAvatar'\nexport const NAME_AVATAR_GROUP = 'BAvatarGroup'\nexport const NAME_BADGE = 'BBadge'\nexport const NAME_BREADCRUMB = 'BBreadcrumb'\nexport const NAME_BREADCRUMB_ITEM = 'BBreadcrumbItem'\nexport const NAME_BREADCRUMB_LINK = 'BBreadcrumbLink'\nexport const NAME_BUTTON = 'BButton'\nexport const NAME_BUTTON_CLOSE = 'BButtonClose'\nexport const NAME_BUTTON_GROUP = 'BButtonGroup'\nexport const NAME_BUTTON_TOOLBAR = 'BButtonToolbar'\nexport const NAME_CALENDAR = 'BCalendar'\nexport const NAME_CARD = 'BCard'\nexport const NAME_CARD_BODY = 'BCardBody'\nexport const NAME_CARD_FOOTER = 'BCardFooter'\nexport const NAME_CARD_GROUP = 'BCardGroup'\nexport const NAME_CARD_HEADER = 'BCardHeader'\nexport const NAME_CARD_IMG = 'BCardImg'\nexport const NAME_CARD_IMG_LAZY = 'BCardImgLazy'\nexport const NAME_CARD_SUB_TITLE = 'BCardSubTitle'\nexport const NAME_CARD_TEXT = 'BCardText'\nexport const NAME_CARD_TITLE = 'BCardTitle'\nexport const NAME_CAROUSEL = 'BCarousel'\nexport const NAME_CAROUSEL_SLIDE = 'BCarouselSlide'\nexport const NAME_COL = 'BCol'\nexport const NAME_COLLAPSE = 'BCollapse'\nexport const NAME_CONTAINER = 'BContainer'\nexport const NAME_DROPDOWN = 'BDropdown'\nexport const NAME_DROPDOWN_DIVIDER = 'BDropdownDivider'\nexport const NAME_DROPDOWN_FORM = 'BDropdownForm'\nexport const NAME_DROPDOWN_GROUP = 'BDropdownGroup'\nexport const NAME_DROPDOWN_HEADER = 'BDropdownHeader'\nexport const NAME_DROPDOWN_ITEM = 'BDropdownItem'\nexport const NAME_DROPDOWN_ITEM_BUTTON = 'BDropdownItemButton'\nexport const NAME_DROPDOWN_TEXT = 'BDropdownText'\nexport const NAME_EMBED = 'BEmbed'\nexport const NAME_FORM = 'BForm'\nexport const NAME_FORM_CHECKBOX = 'BFormCheckbox'\nexport const NAME_FORM_CHECKBOX_GROUP = 'BFormCheckboxGroup'\nexport const NAME_FORM_DATALIST = 'BFormDatalist'\nexport const NAME_FORM_DATEPICKER = 'BFormDatepicker'\nexport const NAME_FORM_FILE = 'BFormFile'\nexport const NAME_FORM_GROUP = 'BFormGroup'\nexport const NAME_FORM_INPUT = 'BFormInput'\nexport const NAME_FORM_INVALID_FEEDBACK = 'BFormInvalidFeedback'\nexport const NAME_FORM_RADIO = 'BFormRadio'\nexport const NAME_FORM_RADIO_GROUP = 'BFormRadioGroup'\nexport const NAME_FORM_RATING = 'BFormRating'\nexport const NAME_FORM_ROW = 'BFormRow'\nexport const NAME_FORM_SELECT = 'BFormSelect'\nexport const NAME_FORM_SELECT_OPTION = 'BFormSelectOption'\nexport const NAME_FORM_SELECT_OPTION_GROUP = 'BFormSelectOptionGroup'\nexport const NAME_FORM_SPINBUTTON = 'BFormSpinbutton'\nexport const NAME_FORM_TAG = 'BFormTag'\nexport const NAME_FORM_TAGS = 'BFormTags'\nexport const NAME_FORM_TEXT = 'BFormText'\nexport const NAME_FORM_TEXTAREA = 'BFormTextarea'\nexport const NAME_FORM_TIMEPICKER = 'BFormTimepicker'\nexport const NAME_FORM_VALID_FEEDBACK = 'BFormValidFeedback'\nexport const NAME_ICON = 'BIcon'\nexport const NAME_ICONSTACK = 'BIconstack'\nexport const NAME_ICON_BASE = 'BIconBase'\nexport const NAME_IMG = 'BImg'\nexport const NAME_IMG_LAZY = 'BImgLazy'\nexport const NAME_INPUT_GROUP = 'BInputGroup'\nexport const NAME_INPUT_GROUP_ADDON = 'BInputGroupAddon'\nexport const NAME_INPUT_GROUP_APPEND = 'BInputGroupAppend'\nexport const NAME_INPUT_GROUP_PREPEND = 'BInputGroupPrepend'\nexport const NAME_INPUT_GROUP_TEXT = 'BInputGroupText'\nexport const NAME_JUMBOTRON = 'BJumbotron'\nexport const NAME_LINK = 'BLink'\nexport const NAME_LIST_GROUP = 'BListGroup'\nexport const NAME_LIST_GROUP_ITEM = 'BListGroupItem'\nexport const NAME_MEDIA = 'BMedia'\nexport const NAME_MEDIA_ASIDE = 'BMediaAside'\nexport const NAME_MEDIA_BODY = 'BMediaBody'\nexport const NAME_MODAL = 'BModal'\nexport const NAME_MSG_BOX = 'BMsgBox'\nexport const NAME_NAV = 'BNav'\nexport const NAME_NAVBAR = 'BNavbar'\nexport const NAME_NAVBAR_BRAND = 'BNavbarBrand'\nexport const NAME_NAVBAR_NAV = 'BNavbarNav'\nexport const NAME_NAVBAR_TOGGLE = 'BNavbarToggle'\nexport const NAME_NAV_FORM = 'BNavForm'\nexport const NAME_NAV_ITEM = 'BNavItem'\nexport const NAME_NAV_ITEM_DROPDOWN = 'BNavItemDropdown'\nexport const NAME_NAV_TEXT = 'BNavText'\nexport const NAME_OVERLAY = 'BOverlay'\nexport const NAME_PAGINATION = 'BPagination'\nexport const NAME_PAGINATION_NAV = 'BPaginationNav'\nexport const NAME_POPOVER = 'BPopover'\nexport const NAME_PROGRESS = 'BProgress'\nexport const NAME_PROGRESS_BAR = 'BProgressBar'\nexport const NAME_ROW = 'BRow'\nexport const NAME_SIDEBAR = 'BSidebar'\nexport const NAME_SKELETON = 'BSkeleton'\nexport const NAME_SKELETON_ICON = 'BSkeletonIcon'\nexport const NAME_SKELETON_IMG = 'BSkeletonImg'\nexport const NAME_SKELETON_TABLE = 'BSkeletonTable'\nexport const NAME_SKELETON_WRAPPER = 'BSkeletonWrapper'\nexport const NAME_SPINNER = 'BSpinner'\nexport const NAME_TAB = 'BTab'\nexport const NAME_TABLE = 'BTable'\nexport const NAME_TABLE_CELL = 'BTableCell'\nexport const NAME_TABLE_LITE = 'BTableLite'\nexport const NAME_TABLE_SIMPLE = 'BTableSimple'\nexport const NAME_TABS = 'BTabs'\nexport const NAME_TBODY = 'BTbody'\nexport const NAME_TFOOT = 'BTfoot'\nexport const NAME_TH = 'BTh'\nexport const NAME_THEAD = 'BThead'\nexport const NAME_TIME = 'BTime'\nexport const NAME_TOAST = 'BToast'\nexport const NAME_TOASTER = 'BToaster'\nexport const NAME_TOOLTIP = 'BTooltip'\nexport const NAME_TR = 'BTr'\n\n// Helper component names\nexport const NAME_COLLAPSE_HELPER = 'BVCollapse'\nexport const NAME_FORM_BUTTON_LABEL_CONTROL = 'BVFormBtnLabelControl'\nexport const NAME_FORM_RATING_STAR = 'BVFormRatingStar'\nexport const NAME_POPOVER_HELPER = 'BVPopover'\nexport const NAME_POPOVER_TEMPLATE = 'BVPopoverTemplate'\nexport const NAME_POPPER = 'BVPopper'\nexport const NAME_TAB_BUTTON_HELPER = 'BVTabButton'\nexport const NAME_TOAST_POP = 'BVToastPop'\nexport const NAME_TOOLTIP_HELPER = 'BVTooltip'\nexport const NAME_TOOLTIP_TEMPLATE = 'BVTooltipTemplate'\nexport const NAME_TRANSITION = 'BVTransition'\nexport const NAME_TRANSPORTER = 'BVTransporter'\nexport const NAME_TRANSPORTER_TARGET = 'BVTransporterTarget'\n","export const EVENT_NAME_ACTIVATE_TAB = 'activate-tab'\nexport const EVENT_NAME_BLUR = 'blur'\nexport const EVENT_NAME_CANCEL = 'cancel'\nexport const EVENT_NAME_CHANGE = 'change'\nexport const EVENT_NAME_CHANGED = 'changed'\nexport const EVENT_NAME_CLICK = 'click'\nexport const EVENT_NAME_CLOSE = 'close'\nexport const EVENT_NAME_CONTEXT = 'context'\nexport const EVENT_NAME_CONTEXT_CHANGED = 'context-changed'\nexport const EVENT_NAME_DESTROYED = 'destroyed'\nexport const EVENT_NAME_DISABLE = 'disable'\nexport const EVENT_NAME_DISABLED = 'disabled'\nexport const EVENT_NAME_DISMISSED = 'dismissed'\nexport const EVENT_NAME_DISMISS_COUNT_DOWN = 'dismiss-count-down'\nexport const EVENT_NAME_ENABLE = 'enable'\nexport const EVENT_NAME_ENABLED = 'enabled'\nexport const EVENT_NAME_FILTERED = 'filtered'\nexport const EVENT_NAME_FIRST = 'first'\nexport const EVENT_NAME_FOCUS = 'focus'\nexport const EVENT_NAME_FOCUSIN = 'focusin'\nexport const EVENT_NAME_FOCUSOUT = 'focusout'\nexport const EVENT_NAME_HEAD_CLICKED = 'head-clicked'\nexport const EVENT_NAME_HIDDEN = 'hidden'\nexport const EVENT_NAME_HIDE = 'hide'\nexport const EVENT_NAME_IMG_ERROR = 'img-error'\nexport const EVENT_NAME_INPUT = 'input'\nexport const EVENT_NAME_LAST = 'last'\nexport const EVENT_NAME_MOUSEENTER = 'mouseenter'\nexport const EVENT_NAME_MOUSELEAVE = 'mouseleave'\nexport const EVENT_NAME_NEXT = 'next'\nexport const EVENT_NAME_OK = 'ok'\nexport const EVENT_NAME_OPEN = 'open'\nexport const EVENT_NAME_PAGE_CLICK = 'page-click'\nexport const EVENT_NAME_PAUSED = 'paused'\nexport const EVENT_NAME_PREV = 'prev'\nexport const EVENT_NAME_REFRESH = 'refresh'\nexport const EVENT_NAME_REFRESHED = 'refreshed'\nexport const EVENT_NAME_REMOVE = 'remove'\nexport const EVENT_NAME_ROW_CLICKED = 'row-clicked'\nexport const EVENT_NAME_ROW_CONTEXTMENU = 'row-contextmenu'\nexport const EVENT_NAME_ROW_DBLCLICKED = 'row-dblclicked'\nexport const EVENT_NAME_ROW_HOVERED = 'row-hovered'\nexport const EVENT_NAME_ROW_MIDDLE_CLICKED = 'row-middle-clicked'\nexport const EVENT_NAME_ROW_SELECTED = 'row-selected'\nexport const EVENT_NAME_ROW_UNHOVERED = 'row-unhovered'\nexport const EVENT_NAME_SELECTED = 'selected'\nexport const EVENT_NAME_SHOW = 'show'\nexport const EVENT_NAME_SHOWN = 'shown'\nexport const EVENT_NAME_SLIDING_END = 'sliding-end'\nexport const EVENT_NAME_SLIDING_START = 'sliding-start'\nexport const EVENT_NAME_SORT_CHANGED = 'sort-changed'\nexport const EVENT_NAME_TAG_STATE = 'tag-state'\nexport const EVENT_NAME_TOGGLE = 'toggle'\nexport const EVENT_NAME_UNPAUSED = 'unpaused'\nexport const EVENT_NAME_UPDATE = 'update'\n\nexport const HOOK_EVENT_NAME_BEFORE_DESTROY = 'hook:beforeDestroy'\nexport const HOOK_EVENT_NAME_DESTROYED = 'hook:destroyed'\n\nexport const MODEL_EVENT_NAME_PREFIX = 'update:'\n\nexport const ROOT_EVENT_NAME_PREFIX = 'bv'\nexport const ROOT_EVENT_NAME_SEPARATOR = '::'\n\nexport const EVENT_OPTIONS_PASSIVE = { passive: true }\nexport const EVENT_OPTIONS_NO_CAPTURE = { passive: true, capture: false }\n","// General types\nexport const PROP_TYPE_ANY = undefined\nexport const PROP_TYPE_ARRAY = Array\nexport const PROP_TYPE_BOOLEAN = Boolean\nexport const PROP_TYPE_DATE = Date\nexport const PROP_TYPE_FUNCTION = Function\nexport const PROP_TYPE_NUMBER = Number\nexport const PROP_TYPE_OBJECT = Object\nexport const PROP_TYPE_REG_EXP = RegExp\nexport const PROP_TYPE_STRING = String\n\n// Multiple types\nexport const PROP_TYPE_ARRAY_FUNCTION = [PROP_TYPE_ARRAY, PROP_TYPE_FUNCTION]\nexport const PROP_TYPE_ARRAY_OBJECT = [PROP_TYPE_ARRAY, PROP_TYPE_OBJECT]\nexport const PROP_TYPE_ARRAY_OBJECT_STRING = [PROP_TYPE_ARRAY, PROP_TYPE_OBJECT, PROP_TYPE_STRING]\nexport const PROP_TYPE_ARRAY_STRING = [PROP_TYPE_ARRAY, PROP_TYPE_STRING]\nexport const PROP_TYPE_BOOLEAN_NUMBER = [PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER]\nexport const PROP_TYPE_BOOLEAN_NUMBER_STRING = [\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_NUMBER,\n PROP_TYPE_STRING\n]\nexport const PROP_TYPE_BOOLEAN_STRING = [PROP_TYPE_BOOLEAN, PROP_TYPE_STRING]\nexport const PROP_TYPE_DATE_STRING = [PROP_TYPE_DATE, PROP_TYPE_STRING]\nexport const PROP_TYPE_FUNCTION_STRING = [PROP_TYPE_FUNCTION, PROP_TYPE_STRING]\nexport const PROP_TYPE_NUMBER_STRING = [PROP_TYPE_NUMBER, PROP_TYPE_STRING]\nexport const PROP_TYPE_NUMBER_OBJECT_STRING = [PROP_TYPE_NUMBER, PROP_TYPE_OBJECT, PROP_TYPE_STRING]\nexport const PROP_TYPE_OBJECT_FUNCTION = [PROP_TYPE_OBJECT, PROP_TYPE_FUNCTION]\nexport const PROP_TYPE_OBJECT_STRING = [PROP_TYPE_OBJECT, PROP_TYPE_STRING]\n","export const SLOT_NAME_ADD_BUTTON_TEXT = 'add-button-text'\nexport const SLOT_NAME_APPEND = 'append'\nexport const SLOT_NAME_ASIDE = 'aside'\nexport const SLOT_NAME_BADGE = 'badge'\nexport const SLOT_NAME_BOTTOM_ROW = 'bottom-row'\nexport const SLOT_NAME_BUTTON_CONTENT = 'button-content'\nexport const SLOT_NAME_CUSTOM_FOOT = 'custom-foot'\nexport const SLOT_NAME_DECREMENT = 'decrement'\nexport const SLOT_NAME_DEFAULT = 'default'\nexport const SLOT_NAME_DESCRIPTION = 'description'\nexport const SLOT_NAME_DISMISS = 'dismiss'\nexport const SLOT_NAME_DROP_PLACEHOLDER = 'drop-placeholder'\nexport const SLOT_NAME_ELLIPSIS_TEXT = 'ellipsis-text'\nexport const SLOT_NAME_EMPTY = 'empty'\nexport const SLOT_NAME_EMPTYFILTERED = 'emptyfiltered'\nexport const SLOT_NAME_FILE_NAME = 'file-name'\nexport const SLOT_NAME_FIRST = 'first'\nexport const SLOT_NAME_FIRST_TEXT = 'first-text'\nexport const SLOT_NAME_FOOTER = 'footer'\nexport const SLOT_NAME_HEADER = 'header'\nexport const SLOT_NAME_HEADER_CLOSE = 'header-close'\nexport const SLOT_NAME_ICON_CLEAR = 'icon-clear'\nexport const SLOT_NAME_ICON_EMPTY = 'icon-empty'\nexport const SLOT_NAME_ICON_FULL = 'icon-full'\nexport const SLOT_NAME_ICON_HALF = 'icon-half'\nexport const SLOT_NAME_IMG = 'img'\nexport const SLOT_NAME_INCREMENT = 'increment'\nexport const SLOT_NAME_INVALID_FEEDBACK = 'invalid-feedback'\nexport const SLOT_NAME_LABEL = 'label'\nexport const SLOT_NAME_LAST_TEXT = 'last-text'\nexport const SLOT_NAME_LEAD = 'lead'\nexport const SLOT_NAME_LOADING = 'loading'\nexport const SLOT_NAME_MODAL_BACKDROP = 'modal-backdrop'\nexport const SLOT_NAME_MODAL_CANCEL = 'modal-cancel'\nexport const SLOT_NAME_MODAL_FOOTER = 'modal-footer'\nexport const SLOT_NAME_MODAL_HEADER = 'modal-header'\nexport const SLOT_NAME_MODAL_HEADER_CLOSE = 'modal-header-close'\nexport const SLOT_NAME_MODAL_OK = 'modal-ok'\nexport const SLOT_NAME_MODAL_TITLE = 'modal-title'\nexport const SLOT_NAME_NAV_NEXT_DECADE = 'nav-next-decade'\nexport const SLOT_NAME_NAV_NEXT_MONTH = 'nav-next-month'\nexport const SLOT_NAME_NAV_NEXT_YEAR = 'nav-next-year'\nexport const SLOT_NAME_NAV_PEV_DECADE = 'nav-prev-decade'\nexport const SLOT_NAME_NAV_PEV_MONTH = 'nav-prev-month'\nexport const SLOT_NAME_NAV_PEV_YEAR = 'nav-prev-year'\nexport const SLOT_NAME_NAV_THIS_MONTH = 'nav-this-month'\nexport const SLOT_NAME_NEXT_TEXT = 'next-text'\nexport const SLOT_NAME_OVERLAY = 'overlay'\nexport const SLOT_NAME_PAGE = 'page'\nexport const SLOT_NAME_PLACEHOLDER = 'placeholder'\nexport const SLOT_NAME_PREPEND = 'prepend'\nexport const SLOT_NAME_PREV_TEXT = 'prev-text'\nexport const SLOT_NAME_ROW_DETAILS = 'row-details'\nexport const SLOT_NAME_TABLE_BUSY = 'table-busy'\nexport const SLOT_NAME_TABLE_CAPTION = 'table-caption'\nexport const SLOT_NAME_TABLE_COLGROUP = 'table-colgroup'\nexport const SLOT_NAME_TABS_END = 'tabs-end'\nexport const SLOT_NAME_TABS_START = 'tabs-start'\nexport const SLOT_NAME_TEXT = 'text'\nexport const SLOT_NAME_THEAD_TOP = 'thead-top'\nexport const SLOT_NAME_TITLE = 'title'\nexport const SLOT_NAME_TOAST_TITLE = 'toast-title'\nexport const SLOT_NAME_TOP_ROW = 'top-row'\nexport const SLOT_NAME_VALID_FEEDBACK = 'valid-feedback'\n","import { isFunction } from './inspect'\n\n// --- Static ---\n\nexport const from = (...args) => Array.from(...args)\n\n// --- Instance ---\n\nexport const arrayIncludes = (array, value) => array.indexOf(value) !== -1\nexport const concat = (...args) => Array.prototype.concat.apply([], args)\n\n// --- Utilities ---\n\nexport const createArray = (length, fillFn) => {\n const mapFn = isFunction(fillFn) ? fillFn : () => fillFn\n return Array.apply(null, { length }).map(mapFn)\n}\n\nexport const flatten = array => array.reduce((result, item) => concat(result, item), [])\n\nexport const flattenDeep = array =>\n array.reduce((result, item) => concat(result, Array.isArray(item) ? flattenDeep(item) : item), [])\n","// Number utilities\n\n// Converts a value (string, number, etc.) to an integer number\n// Assumes radix base 10\nexport const toInteger = (value, defaultValue = NaN) => {\n const integer = parseInt(value, 10)\n return isNaN(integer) ? defaultValue : integer\n}\n\n// Converts a value (string, number, etc.) to a number\nexport const toFloat = (value, defaultValue = NaN) => {\n const float = parseFloat(value)\n return isNaN(float) ? defaultValue : float\n}\n\n// Converts a value (string, number, etc.) to a string\n// representation with `precision` digits after the decimal\n// Returns the string 'NaN' if the value cannot be converted\nexport const toFixed = (val, precision) => toFloat(val).toFixed(toInteger(precision, 0))\n","// String utilities\nimport {\n RX_HYPHENATE,\n RX_LOWER_UPPER,\n RX_REGEXP_REPLACE,\n RX_START_SPACE_WORD,\n RX_TRIM_LEFT,\n RX_TRIM_RIGHT,\n RX_UNDERSCORE,\n RX_UN_KEBAB\n} from '../constants/regex'\nimport { isArray, isPlainObject, isString, isUndefinedOrNull } from './inspect'\n\n// --- Utilities ---\n\n// Converts PascalCase or camelCase to kebab-case\nexport const kebabCase = str => {\n return str.replace(RX_HYPHENATE, '-$1').toLowerCase()\n}\n\n// Converts a kebab-case or camelCase string to PascalCase\nexport const pascalCase = str => {\n str = kebabCase(str).replace(RX_UN_KEBAB, (_, c) => (c ? c.toUpperCase() : ''))\n return str.charAt(0).toUpperCase() + str.slice(1)\n}\n\n// Converts a string, including strings in camelCase or snake_case, into Start Case\n// It keeps original single quote and hyphen in the word\n// https://github.com/UrbanCompass/to-start-case\nexport const startCase = str =>\n str\n .replace(RX_UNDERSCORE, ' ')\n .replace(RX_LOWER_UPPER, (str, $1, $2) => $1 + ' ' + $2)\n .replace(RX_START_SPACE_WORD, (str, $1, $2) => $1 + $2.toUpperCase())\n\n// Lowercases the first letter of a string and returns a new string\nexport const lowerFirst = str => {\n str = isString(str) ? str.trim() : String(str)\n return str.charAt(0).toLowerCase() + str.slice(1)\n}\n\n// Uppercases the first letter of a string and returns a new string\nexport const upperFirst = str => {\n str = isString(str) ? str.trim() : String(str)\n return str.charAt(0).toUpperCase() + str.slice(1)\n}\n\n// Escape characters to be used in building a regular expression\nexport const escapeRegExp = str => str.replace(RX_REGEXP_REPLACE, '\\\\$&')\n\n// Convert a value to a string that can be rendered\n// `undefined`/`null` will be converted to `''`\n// Plain objects and arrays will be JSON stringified\nexport const toString = (val, spaces = 2) => {\n return isUndefinedOrNull(val)\n ? ''\n : isArray(val) || (isPlainObject(val) && val.toString === Object.prototype.toString)\n ? JSON.stringify(val, null, spaces)\n : String(val)\n}\n\n// Remove leading white space from a string\nexport const trimLeft = str => toString(str).replace(RX_TRIM_LEFT, '')\n\n// Remove Trailing white space from a string\nexport const trimRight = str => toString(str).replace(RX_TRIM_RIGHT, '')\n\n// Remove leading and trailing white space from a string\nexport const trim = str => toString(str).trim()\n\n// Lower case a string\nexport const lowerCase = str => toString(str).toLowerCase()\n\n// Upper case a string\nexport const upperCase = str => toString(str).toUpperCase()\n","import { DOCUMENT, WINDOW } from '../constants/env'\nimport { Element } from '../constants/safe-types'\nimport { from as arrayFrom } from './array'\nimport { isFunction, isNull } from './inspect'\nimport { toFloat } from './number'\nimport { toString } from './string'\n\n// --- Constants ---\n\nconst ELEMENT_PROTO = Element.prototype\n\nconst TABABLE_SELECTOR = [\n 'button',\n '[href]:not(.disabled)',\n 'input',\n 'select',\n 'textarea',\n '[tabindex]',\n '[contenteditable]'\n]\n .map(s => `${s}:not(:disabled):not([disabled])`)\n .join(', ')\n\n// --- Normalization utils ---\n\n// See: https://developer.mozilla.org/en-US/docs/Web/API/Element/matches#Polyfill\n/* istanbul ignore next */\nexport const matchesEl =\n ELEMENT_PROTO.matches || ELEMENT_PROTO.msMatchesSelector || ELEMENT_PROTO.webkitMatchesSelector\n\n// See: https://developer.mozilla.org/en-US/docs/Web/API/Element/closest\n/* istanbul ignore next */\nexport const closestEl =\n ELEMENT_PROTO.closest ||\n function(sel) {\n let el = this\n do {\n // Use our \"patched\" matches function\n if (matches(el, sel)) {\n return el\n }\n el = el.parentElement || el.parentNode\n } while (!isNull(el) && el.nodeType === Node.ELEMENT_NODE)\n return null\n }\n\n// `requestAnimationFrame()` convenience method\n/* istanbul ignore next: JSDOM always returns the first option */\nexport const requestAF = (\n WINDOW.requestAnimationFrame ||\n WINDOW.webkitRequestAnimationFrame ||\n WINDOW.mozRequestAnimationFrame ||\n WINDOW.msRequestAnimationFrame ||\n WINDOW.oRequestAnimationFrame ||\n // Fallback, but not a true polyfill\n // Only needed for Opera Mini\n /* istanbul ignore next */\n (cb => setTimeout(cb, 16))\n).bind(WINDOW)\n\nexport const MutationObs =\n WINDOW.MutationObserver || WINDOW.WebKitMutationObserver || WINDOW.MozMutationObserver || null\n\n// --- Utils ---\n\n// Remove a node from DOM\nexport const removeNode = el => el && el.parentNode && el.parentNode.removeChild(el)\n\n// Determine if an element is an HTML element\nexport const isElement = el => !!(el && el.nodeType === Node.ELEMENT_NODE)\n\n// Get the currently active HTML element\nexport const getActiveElement = (excludes = []) => {\n const { activeElement } = DOCUMENT\n return activeElement && !excludes.some(el => el === activeElement) ? activeElement : null\n}\n\n// Returns `true` if a tag's name equals `name`\nexport const isTag = (tag, name) => toString(tag).toLowerCase() === toString(name).toLowerCase()\n\n// Determine if an HTML element is the currently active element\nexport const isActiveElement = el => isElement(el) && el === getActiveElement()\n\n// Determine if an HTML element is visible - Faster than CSS check\nexport const isVisible = el => {\n if (!isElement(el) || !el.parentNode || !contains(DOCUMENT.body, el)) {\n // Note this can fail for shadow dom elements since they\n // are not a direct descendant of document.body\n return false\n }\n if (getStyle(el, 'display') === 'none') {\n // We do this check to help with vue-test-utils when using v-show\n /* istanbul ignore next */\n return false\n }\n // All browsers support getBoundingClientRect(), except JSDOM as it returns all 0's for values :(\n // So any tests that need isVisible will fail in JSDOM\n // Except when we override the getBCR prototype in some tests\n const bcr = getBCR(el)\n return !!(bcr && bcr.height > 0 && bcr.width > 0)\n}\n\n// Determine if an element is disabled\nexport const isDisabled = el =>\n !isElement(el) || el.disabled || hasAttr(el, 'disabled') || hasClass(el, 'disabled')\n\n// Cause/wait-for an element to reflow its content (adjusting its height/width)\nexport const reflow = el => {\n // Requesting an elements offsetHight will trigger a reflow of the element content\n /* istanbul ignore next: reflow doesn't happen in JSDOM */\n return isElement(el) && el.offsetHeight\n}\n\n// Select all elements matching selector. Returns `[]` if none found\nexport const selectAll = (selector, root) =>\n arrayFrom((isElement(root) ? root : DOCUMENT).querySelectorAll(selector))\n\n// Select a single element, returns `null` if not found\nexport const select = (selector, root) =>\n (isElement(root) ? root : DOCUMENT).querySelector(selector) || null\n\n// Determine if an element matches a selector\nexport const matches = (el, selector) => (isElement(el) ? matchesEl.call(el, selector) : false)\n\n// Finds closest element matching selector. Returns `null` if not found\nexport const closest = (selector, root, includeRoot = false) => {\n if (!isElement(root)) {\n return null\n }\n const el = closestEl.call(root, selector)\n\n // Native closest behaviour when `includeRoot` is truthy,\n // else emulate jQuery closest and return `null` if match is\n // the passed in root element when `includeRoot` is falsey\n return includeRoot ? el : el === root ? null : el\n}\n\n// Returns true if the parent element contains the child element\nexport const contains = (parent, child) =>\n parent && isFunction(parent.contains) ? parent.contains(child) : false\n\n// Get an element given an ID\nexport const getById = id => DOCUMENT.getElementById(/^#/.test(id) ? id.slice(1) : id) || null\n\n// Add a class to an element\nexport const addClass = (el, className) => {\n // We are checking for `el.classList` existence here since IE 11\n // returns `undefined` for some elements (e.g. SVG elements)\n // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2713\n if (className && isElement(el) && el.classList) {\n el.classList.add(className)\n }\n}\n\n// Remove a class from an element\nexport const removeClass = (el, className) => {\n // We are checking for `el.classList` existence here since IE 11\n // returns `undefined` for some elements (e.g. SVG elements)\n // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2713\n if (className && isElement(el) && el.classList) {\n el.classList.remove(className)\n }\n}\n\n// Test if an element has a class\nexport const hasClass = (el, className) => {\n // We are checking for `el.classList` existence here since IE 11\n // returns `undefined` for some elements (e.g. SVG elements)\n // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2713\n if (className && isElement(el) && el.classList) {\n return el.classList.contains(className)\n }\n return false\n}\n\n// Set an attribute on an element\nexport const setAttr = (el, attr, value) => {\n if (attr && isElement(el)) {\n el.setAttribute(attr, value)\n }\n}\n\n// Remove an attribute from an element\nexport const removeAttr = (el, attr) => {\n if (attr && isElement(el)) {\n el.removeAttribute(attr)\n }\n}\n\n// Get an attribute value from an element\n// Returns `null` if not found\nexport const getAttr = (el, attr) => (attr && isElement(el) ? el.getAttribute(attr) : null)\n\n// Determine if an attribute exists on an element\n// Returns `true` or `false`, or `null` if element not found\nexport const hasAttr = (el, attr) => (attr && isElement(el) ? el.hasAttribute(attr) : null)\n\n// Set an style property on an element\nexport const setStyle = (el, prop, value) => {\n if (prop && isElement(el)) {\n el.style[prop] = value\n }\n}\n\n// Remove an style property from an element\nexport const removeStyle = (el, prop) => {\n if (prop && isElement(el)) {\n el.style[prop] = ''\n }\n}\n\n// Get an style property value from an element\n// Returns `null` if not found\nexport const getStyle = (el, prop) => (prop && isElement(el) ? el.style[prop] || null : null)\n\n// Return the Bounding Client Rect of an element\n// Returns `null` if not an element\n/* istanbul ignore next: getBoundingClientRect() doesn't work in JSDOM */\nexport const getBCR = el => (isElement(el) ? el.getBoundingClientRect() : null)\n\n// Get computed style object for an element\n/* istanbul ignore next: getComputedStyle() doesn't work in JSDOM */\nexport const getCS = el => {\n const { getComputedStyle } = WINDOW\n return getComputedStyle && isElement(el) ? getComputedStyle(el) : {}\n}\n\n// Returns a `Selection` object representing the range of text selected\n// Returns `null` if no window support is given\n/* istanbul ignore next: getSelection() doesn't work in JSDOM */\nexport const getSel = () => {\n const { getSelection } = WINDOW\n return getSelection ? WINDOW.getSelection() : null\n}\n\n// Return an element's offset with respect to document element\n// https://j11y.io/jquery/#v=git&fn=jQuery.fn.offset\nexport const offset = el => /* istanbul ignore next: getBoundingClientRect(), getClientRects() doesn't work in JSDOM */ {\n const _offset = { top: 0, left: 0 }\n if (!isElement(el) || el.getClientRects().length === 0) {\n return _offset\n }\n const bcr = getBCR(el)\n if (bcr) {\n const win = el.ownerDocument.defaultView\n _offset.top = bcr.top + win.pageYOffset\n _offset.left = bcr.left + win.pageXOffset\n }\n return _offset\n}\n\n// Return an element's offset with respect to to its offsetParent\n// https://j11y.io/jquery/#v=git&fn=jQuery.fn.position\nexport const position = el => /* istanbul ignore next: getBoundingClientRect() doesn't work in JSDOM */ {\n let _offset = { top: 0, left: 0 }\n if (!isElement(el)) {\n return _offset\n }\n let parentOffset = { top: 0, left: 0 }\n const elStyles = getCS(el)\n if (elStyles.position === 'fixed') {\n _offset = getBCR(el) || _offset\n } else {\n _offset = offset(el)\n const doc = el.ownerDocument\n let offsetParent = el.offsetParent || doc.documentElement\n while (\n offsetParent &&\n (offsetParent === doc.body || offsetParent === doc.documentElement) &&\n getCS(offsetParent).position === 'static'\n ) {\n offsetParent = offsetParent.parentNode\n }\n if (offsetParent && offsetParent !== el && offsetParent.nodeType === Node.ELEMENT_NODE) {\n parentOffset = offset(offsetParent)\n const offsetParentStyles = getCS(offsetParent)\n parentOffset.top += toFloat(offsetParentStyles.borderTopWidth, 0)\n parentOffset.left += toFloat(offsetParentStyles.borderLeftWidth, 0)\n }\n }\n return {\n top: _offset.top - parentOffset.top - toFloat(elStyles.marginTop, 0),\n left: _offset.left - parentOffset.left - toFloat(elStyles.marginLeft, 0)\n }\n}\n\n// Find all tabable elements in the given element\n// Assumes users have not used `tabindex` > `0` on elements\nexport const getTabables = (rootEl = document) =>\n selectAll(TABABLE_SELECTOR, rootEl)\n .filter(isVisible)\n .filter(el => el.tabIndex > -1 && !el.disabled)\n\n// Attempt to focus an element, and return `true` if successful\nexport const attemptFocus = (el, options = {}) => {\n try {\n el.focus(options)\n } catch {}\n return isActiveElement(el)\n}\n\n// Attempt to blur an element, and return `true` if successful\nexport const attemptBlur = el => {\n try {\n el.blur()\n } catch {}\n return !isActiveElement(el)\n}\n","import { create } from './object'\n\nexport const memoize = fn => {\n const cache = create(null)\n\n return (...args) => {\n const argsKey = JSON.stringify(args)\n return (cache[argsKey] = cache[argsKey] || fn.apply(null, args))\n }\n}\n","import { Vue } from '../vue'\nimport { DEFAULT_BREAKPOINT, PROP_NAME } from '../constants/config'\nimport { cloneDeep } from './clone-deep'\nimport { memoize } from './memoize'\n\n// --- Constants ---\n\nconst VueProto = Vue.prototype\n\n// --- Getter methods ---\n// All methods return a deep clone (immutable) copy of the config value,\n// to prevent mutation of the user config object\n\n// Get the current config\nexport const getConfig = () => {\n const bvConfig = VueProto[PROP_NAME]\n return bvConfig ? bvConfig.getConfig() : {}\n}\n\n// Method to grab a config value based on a dotted/array notation key\nexport const getConfigValue = (key, defaultValue = undefined) => {\n const bvConfig = VueProto[PROP_NAME]\n return bvConfig ? bvConfig.getConfigValue(key, defaultValue) : cloneDeep(defaultValue)\n}\n\n// Method to grab a config value for a particular component\nexport const getComponentConfig = (key, propKey = null, defaultValue = undefined) => {\n // Return the particular config value for key if specified,\n // otherwise we return the full config (or an empty object if not found)\n return propKey ? getConfigValue(`${key}.${propKey}`, defaultValue) : getConfigValue(key, {})\n}\n\n// Get all breakpoint names\nexport const getBreakpoints = () => getConfigValue('breakpoints', DEFAULT_BREAKPOINT)\n\n// Private method for caching breakpoint names\nconst _getBreakpointsCached = memoize(() => getBreakpoints())\n\n// Get all breakpoint names (cached)\nexport const getBreakpointsCached = () => cloneDeep(_getBreakpointsCached())\n\n// Get breakpoints with the smallest breakpoint set as ''\n// Useful for components that create breakpoint specific props\nexport const getBreakpointsUp = () => {\n const breakpoints = getBreakpoints()\n breakpoints[0] = ''\n return breakpoints\n}\n\n// Get breakpoints with the smallest breakpoint set as '' (cached)\n// Useful for components that create breakpoint specific props\nexport const getBreakpointsUpCached = memoize(() => {\n const breakpoints = getBreakpointsCached()\n breakpoints[0] = ''\n return breakpoints\n})\n\n// Get breakpoints with the largest breakpoint set as ''\nexport const getBreakpointsDown = () => {\n const breakpoints = getBreakpoints()\n breakpoints[breakpoints.length - 1] = ''\n return breakpoints\n}\n\n// Get breakpoints with the largest breakpoint set as '' (cached)\n// Useful for components that create breakpoint specific props\n/* istanbul ignore next: we don't use this method anywhere, yet */\nexport const getBreakpointsDownCached = () => {\n const breakpoints = getBreakpointsCached()\n breakpoints[breakpoints.length - 1] = ''\n return breakpoints\n}\n","import { PROP_TYPE_ANY } from '../constants/props'\nimport { cloneDeep } from './clone-deep'\nimport { getComponentConfig } from './config'\nimport { identity } from './identity'\nimport { isArray, isFunction, isObject, isUndefined } from './inspect'\nimport { clone, hasOwnProperty, keys } from './object'\nimport { lowerFirst, upperFirst } from './string'\n\n// Prefix a property\nexport const prefixPropName = (prefix, value) => prefix + upperFirst(value)\n\n// Remove a prefix from a property\nexport const unprefixPropName = (prefix, value) => lowerFirst(value.replace(prefix, ''))\n\n// Suffix can be a falsey value so nothing is appended to string\n// (helps when looping over props & some shouldn't change)\n// Use data last parameters to allow for currying\nexport const suffixPropName = (suffix, value) => value + (suffix ? upperFirst(suffix) : '')\n\n// Generates a prop object\nexport const makeProp = (\n type = PROP_TYPE_ANY,\n value = undefined,\n requiredOrValidator = undefined,\n validator = undefined\n) => {\n const required = requiredOrValidator === true\n validator = required ? validator : requiredOrValidator\n\n return {\n ...(type ? { type } : {}),\n ...(required\n ? { required }\n : isUndefined(value)\n ? {}\n : { default: isObject(value) ? () => value : value }),\n ...(isUndefined(validator) ? {} : { validator })\n }\n}\n\n// Copies props from one array/object to a new array/object\n// Prop values are also cloned as new references to prevent possible\n// mutation of original prop object values\n// Optionally accepts a function to transform the prop name\nexport const copyProps = (props, transformFn = identity) => {\n if (isArray(props)) {\n return props.map(transformFn)\n }\n const copied = {}\n for (const prop in props) {\n /* istanbul ignore else */\n if (hasOwnProperty(props, prop)) {\n // If the prop value is an object, do a shallow clone\n // to prevent potential mutations to the original object\n copied[transformFn(prop)] = isObject(props[prop]) ? clone(props[prop]) : props[prop]\n }\n }\n return copied\n}\n\n// Given an array of properties or an object of property keys,\n// plucks all the values off the target object, returning a new object\n// that has props that reference the original prop values\nexport const pluckProps = (keysToPluck, objToPluck, transformFn = identity) =>\n (isArray(keysToPluck) ? keysToPluck.slice() : keys(keysToPluck)).reduce((memo, prop) => {\n memo[transformFn(prop)] = objToPluck[prop]\n return memo\n }, {})\n\n// Make a prop object configurable by global configuration\n// Replaces the current `default` key of each prop with a `getComponentConfig()`\n// call that falls back to the current default value of the prop\nexport const makePropConfigurable = (prop, key, componentKey) => ({\n ...cloneDeep(prop),\n default: function bvConfigurablePropDefault() {\n const value = getComponentConfig(componentKey, key, prop.default)\n return isFunction(value) ? value() : value\n }\n})\n\n// Make a props object configurable by global configuration\n// Replaces the current `default` key of each prop with a `getComponentConfig()`\n// call that falls back to the current default value of the prop\nexport const makePropsConfigurable = (props, componentKey) =>\n keys(props).reduce(\n (result, key) => ({ ...result, [key]: makePropConfigurable(props[key], key, componentKey) }),\n {}\n )\n\n// Get function name we use in `makePropConfigurable()`\n// for the prop default value override to compare\n// against in `hasPropFunction()`\nconst configurablePropDefaultFnName = makePropConfigurable({}, '', '').default.name\n\n// Detect wether the given value is currently a function\n// and isn't the props default function\nexport const hasPropFunction = fn =>\n isFunction(fn) && fn.name && fn.name !== configurablePropDefaultFnName\n","import { Vue } from '../vue'\nimport { EVENT_NAME_INPUT } from '../constants/events'\nimport { PROP_TYPE_ANY } from '../constants/props'\nimport { makeProp } from './props'\n\nexport const makeModelMixin = (\n prop,\n {\n type = PROP_TYPE_ANY,\n defaultValue = undefined,\n validator = undefined,\n event = EVENT_NAME_INPUT\n } = {}\n) => {\n const props = {\n [prop]: makeProp(type, defaultValue, validator)\n }\n\n // @vue/component\n const mixin = Vue.extend({\n model: {\n prop,\n event\n },\n props\n })\n\n return { mixin, props, prop, event }\n}\n","import { concat } from './array'\nimport { identity } from './identity'\nimport { isFunction } from './inspect'\n\n// Note for functional components:\n// In functional components, `slots` is a function so it must be called\n// first before passing to the below methods. `scopedSlots` is always an\n// object and may be undefined (for Vue < 2.6.x)\n\n/**\n * Returns true if either scoped or unscoped named slot exists\n *\n * @param {String, Array} name or name[]\n * @param {Object} scopedSlots\n * @param {Object} slots\n * @returns {Array|undefined} VNodes\n */\nexport const hasNormalizedSlot = (names, $scopedSlots = {}, $slots = {}) => {\n // Ensure names is an array\n names = concat(names).filter(identity)\n // Returns true if the either a $scopedSlot or $slot exists with the specified name\n return names.some(name => $scopedSlots[name] || $slots[name])\n}\n\n/**\n * Returns VNodes for named slot either scoped or unscoped\n *\n * @param {String, Array} name or name[]\n * @param {String} scope\n * @param {Object} scopedSlots\n * @param {Object} slots\n * @returns {Array|undefined} VNodes\n */\nexport const normalizeSlot = (names, scope = {}, $scopedSlots = {}, $slots = {}) => {\n // Ensure names is an array\n names = concat(names).filter(identity)\n let slot\n for (let i = 0; i < names.length && !slot; i++) {\n const name = names[i]\n slot = $scopedSlots[name] || $slots[name]\n }\n // Note: in Vue 2.6.x, all named slots are also scoped slots\n return isFunction(slot) ? slot(scope) : slot\n}\n","import { Vue } from '../vue'\nimport { SLOT_NAME_DEFAULT } from '../constants/slots'\nimport { hasNormalizedSlot, normalizeSlot } from '../utils/normalize-slot'\nimport { concat } from '../utils/array'\n\n// @vue/component\nexport const normalizeSlotMixin = Vue.extend({\n methods: {\n // Returns `true` if the either a `$scopedSlot` or `$slot` exists with the specified name\n // `name` can be a string name or an array of names\n hasNormalizedSlot(\n name = SLOT_NAME_DEFAULT,\n scopedSlots = this.$scopedSlots,\n slots = this.$slots\n ) {\n return hasNormalizedSlot(name, scopedSlots, slots)\n },\n // Returns an array of rendered VNodes if slot found, otherwise `undefined`\n // `name` can be a string name or an array of names\n normalizeSlot(\n name = SLOT_NAME_DEFAULT,\n scope = {},\n scopedSlots = this.$scopedSlots,\n slots = this.$slots\n ) {\n const vNodes = normalizeSlot(name, scope, scopedSlots, slots)\n return vNodes ? concat(vNodes) : vNodes\n }\n }\n})\n","import { HAS_PASSIVE_EVENT_SUPPORT } from '../constants/env'\nimport { ROOT_EVENT_NAME_PREFIX, ROOT_EVENT_NAME_SEPARATOR } from '../constants/events'\nimport { RX_BV_PREFIX } from '../constants/regex'\nimport { isObject } from './inspect'\nimport { kebabCase } from './string'\n\n// --- Utils ---\n\n// Normalize event options based on support of passive option\n// Exported only for testing purposes\nexport const parseEventOptions = options => {\n /* istanbul ignore else: can't test in JSDOM, as it supports passive */\n if (HAS_PASSIVE_EVENT_SUPPORT) {\n return isObject(options) ? options : { capture: !!options || false }\n } else {\n // Need to translate to actual Boolean value\n return !!(isObject(options) ? options.capture : options)\n }\n}\n\n// Attach an event listener to an element\nexport const eventOn = (el, eventName, handler, options) => {\n if (el && el.addEventListener) {\n el.addEventListener(eventName, handler, parseEventOptions(options))\n }\n}\n\n// Remove an event listener from an element\nexport const eventOff = (el, eventName, handler, options) => {\n if (el && el.removeEventListener) {\n el.removeEventListener(eventName, handler, parseEventOptions(options))\n }\n}\n\n// Utility method to add/remove a event listener based on first argument (boolean)\n// It passes all other arguments to the `eventOn()` or `eventOff` method\nexport const eventOnOff = (on, ...args) => {\n const method = on ? eventOn : eventOff\n method(...args)\n}\n\n// Utility method to prevent the default event handling and propagation\nexport const stopEvent = (\n event,\n { preventDefault = true, propagation = true, immediatePropagation = false } = {}\n) => {\n if (preventDefault) {\n event.preventDefault()\n }\n if (propagation) {\n event.stopPropagation()\n }\n if (immediatePropagation) {\n event.stopImmediatePropagation()\n }\n}\n\n// Helper method to convert a component/directive name to a base event name\n// `getBaseEventName('BNavigationItem')` => 'navigation-item'\n// `getBaseEventName('BVToggle')` => 'toggle'\nconst getBaseEventName = value => kebabCase(value.replace(RX_BV_PREFIX, ''))\n\n// Get a root event name by component/directive and event name\n// `getBaseEventName('BModal', 'show')` => 'bv::modal::show'\nexport const getRootEventName = (name, eventName) =>\n [ROOT_EVENT_NAME_PREFIX, getBaseEventName(name), eventName].join(ROOT_EVENT_NAME_SEPARATOR)\n\n// Get a root action event name by component/directive and action name\n// `getRootActionEventName('BModal', 'show')` => 'bv::show::modal'\nexport const getRootActionEventName = (name, actionName) =>\n [ROOT_EVENT_NAME_PREFIX, actionName, getBaseEventName(name)].join(ROOT_EVENT_NAME_SEPARATOR)\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BUTTON_CLOSE } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { stopEvent } from '../../utils/events'\nimport { isEvent } from '../../utils/inspect'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n ariaLabel: makeProp(PROP_TYPE_STRING, 'Close'),\n content: makeProp(PROP_TYPE_STRING, '×'),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n textVariant: makeProp(PROP_TYPE_STRING)\n },\n NAME_BUTTON_CLOSE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BButtonClose = /*#__PURE__*/ Vue.extend({\n name: NAME_BUTTON_CLOSE,\n functional: true,\n props,\n render(h, { props, data, slots, scopedSlots }) {\n const $slots = slots()\n const $scopedSlots = scopedSlots || {}\n\n const componentData = {\n staticClass: 'close',\n class: {\n [`text-${props.textVariant}`]: props.textVariant\n },\n attrs: {\n type: 'button',\n disabled: props.disabled,\n 'aria-label': props.ariaLabel ? String(props.ariaLabel) : null\n },\n on: {\n click(event) {\n // Ensure click on button HTML content is also disabled\n /* istanbul ignore if: bug in JSDOM still emits click on inner element */\n if (props.disabled && isEvent(event)) {\n stopEvent(event)\n }\n }\n }\n }\n\n // Careful not to override the default slot with innerHTML\n if (!hasNormalizedSlot(SLOT_NAME_DEFAULT, $scopedSlots, $slots)) {\n componentData.domProps = { innerHTML: props.content }\n }\n\n return h(\n 'button',\n mergeData(data, componentData),\n normalizeSlot(SLOT_NAME_DEFAULT, {}, $scopedSlots, $slots)\n )\n }\n})\n","// Generic Bootstrap v4 fade (no-fade) transition component\n//\n// Assumes that `show` class is not required when\n// the transition has finished the enter transition\n// (show and fade classes are only applied during transition)\n\nimport { Vue, mergeData } from '../../vue'\nimport { NAME_TRANSITION } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_OBJECT, PROP_TYPE_STRING } from '../../constants/props'\nimport { isPlainObject } from '../../utils/inspect'\nimport { makeProp } from '../../utils/props'\n\n// --- Constants ---\n\nconst NO_FADE_PROPS = {\n name: '',\n enterClass: '',\n enterActiveClass: '',\n enterToClass: 'show',\n leaveClass: 'show',\n leaveActiveClass: '',\n leaveToClass: ''\n}\n\nconst FADE_PROPS = {\n ...NO_FADE_PROPS,\n enterActiveClass: 'fade',\n leaveActiveClass: 'fade'\n}\n\n// --- Props ---\n\nexport const props = {\n // Has no effect if `trans-props` provided\n appear: makeProp(PROP_TYPE_BOOLEAN, false),\n // Can be overridden by user supplied `trans-props`\n mode: makeProp(PROP_TYPE_STRING),\n // Only applicable to the built in transition\n // Has no effect if `trans-props` provided\n noFade: makeProp(PROP_TYPE_BOOLEAN, false),\n // For user supplied transitions (if needed)\n transProps: makeProp(PROP_TYPE_OBJECT)\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BVTransition = /*#__PURE__*/ Vue.extend({\n name: NAME_TRANSITION,\n functional: true,\n props,\n render(h, { children, data, props }) {\n let transProps = props.transProps\n if (!isPlainObject(transProps)) {\n transProps = props.noFade ? NO_FADE_PROPS : FADE_PROPS\n if (props.appear) {\n // Default the appear classes to equal the enter classes\n transProps = {\n ...transProps,\n appear: true,\n appearClass: transProps.enterClass,\n appearActiveClass: transProps.enterActiveClass,\n appearToClass: transProps.enterToClass\n }\n }\n }\n transProps = {\n mode: props.mode,\n ...transProps,\n // We always need `css` true\n css: true\n }\n return h(\n 'transition',\n // Any transition event listeners will get merged here\n mergeData(data, { props: transProps }),\n children\n )\n }\n})\n","import { COMPONENT_UID_KEY, Vue } from '../../vue'\nimport { NAME_ALERT } from '../../constants/components'\nimport { EVENT_NAME_DISMISSED, EVENT_NAME_DISMISS_COUNT_DOWN } from '../../constants/events'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_DISMISS } from '../../constants/slots'\nimport { requestAF } from '../../utils/dom'\nimport { isBoolean, isNumeric } from '../../utils/inspect'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BButtonClose } from '../button/button-close'\nimport { BVTransition } from '../transition/bv-transition'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('show', {\n type: PROP_TYPE_BOOLEAN_NUMBER_STRING,\n defaultValue: false\n})\n\n// --- Helper methods ---\n\n// Convert `show` value to a number\nconst parseCountDown = show => {\n if (show === '' || isBoolean(show)) {\n return 0\n }\n show = toInteger(show, 0)\n return show > 0 ? show : 0\n}\n\n// Convert `show` value to a boolean\nconst parseShow = show => {\n if (show === '' || show === true) {\n return true\n }\n if (toInteger(show, 0) < 1) {\n // Boolean will always return false for the above comparison\n return false\n }\n return !!show\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...modelProps,\n dismissLabel: makeProp(PROP_TYPE_STRING, 'Close'),\n dismissible: makeProp(PROP_TYPE_BOOLEAN, false),\n fade: makeProp(PROP_TYPE_BOOLEAN, false),\n variant: makeProp(PROP_TYPE_STRING, 'info')\n }),\n NAME_ALERT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BAlert = /*#__PURE__*/ Vue.extend({\n name: NAME_ALERT,\n mixins: [modelMixin, normalizeSlotMixin],\n props,\n data() {\n return {\n countDown: 0,\n // If initially shown, we need to set these for SSR\n localShow: parseShow(this[MODEL_PROP_NAME])\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue) {\n this.countDown = parseCountDown(newValue)\n this.localShow = parseShow(newValue)\n },\n countDown(newValue) {\n this.clearCountDownInterval()\n const show = this[MODEL_PROP_NAME]\n // Ignore if `show` transitions to a boolean value\n if (isNumeric(show)) {\n this.$emit(EVENT_NAME_DISMISS_COUNT_DOWN, newValue)\n // Update the v-model if needed\n if (show !== newValue) {\n this.$emit(MODEL_EVENT_NAME, newValue)\n }\n if (newValue > 0) {\n this.localShow = true\n this.$_countDownTimeout = setTimeout(() => {\n this.countDown--\n }, 1000)\n } else {\n // Slightly delay the hide to allow any UI updates\n this.$nextTick(() => {\n requestAF(() => {\n this.localShow = false\n })\n })\n }\n }\n },\n localShow(newValue) {\n const show = this[MODEL_PROP_NAME]\n // Only emit dismissed events for dismissible or auto-dismissing alerts\n if (!newValue && (this.dismissible || isNumeric(show))) {\n this.$emit(EVENT_NAME_DISMISSED)\n }\n // Only emit booleans if we weren't passed a number via v-model\n if (!isNumeric(show) && show !== newValue) {\n this.$emit(MODEL_EVENT_NAME, newValue)\n }\n }\n },\n created() {\n // Create private non-reactive props\n this.$_filterTimer = null\n\n const show = this[MODEL_PROP_NAME]\n this.countDown = parseCountDown(show)\n this.localShow = parseShow(show)\n },\n beforeDestroy() {\n this.clearCountDownInterval()\n },\n methods: {\n dismiss() {\n this.clearCountDownInterval()\n this.countDown = 0\n this.localShow = false\n },\n clearCountDownInterval() {\n clearTimeout(this.$_countDownTimeout)\n this.$_countDownTimeout = null\n }\n },\n render(h) {\n let $alert = h()\n if (this.localShow) {\n const { dismissible, variant } = this\n\n let $dismissButton = h()\n if (dismissible) {\n // Add dismiss button\n $dismissButton = h(\n BButtonClose,\n {\n attrs: { 'aria-label': this.dismissLabel },\n on: { click: this.dismiss }\n },\n [this.normalizeSlot(SLOT_NAME_DISMISS)]\n )\n }\n\n $alert = h(\n 'div',\n {\n staticClass: 'alert',\n class: {\n 'alert-dismissible': dismissible,\n [`alert-${variant}`]: variant\n },\n attrs: {\n role: 'alert',\n 'aria-live': 'polite',\n 'aria-atomic': true\n },\n key: this[COMPONENT_UID_KEY]\n },\n [$dismissButton, this.normalizeSlot()]\n )\n }\n\n return h(BVTransition, { props: { noFade: !this.fade } }, [$alert])\n }\n})\n","import { BAlert } from './alert'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst AlertPlugin = /*#__PURE__*/ pluginFactory({\n components: { BAlert }\n})\n\nexport { AlertPlugin, BAlert }\n","// Math utilty functions\n\nexport const mathMin = Math.min\n\nexport const mathMax = Math.max\n\nexport const mathAbs = Math.abs\n\nexport const mathCeil = Math.ceil\n\nexport const mathFloor = Math.floor\n\nexport const mathPow = Math.pow\n\nexport const mathRound = Math.round\n","import { Vue } from '../../vue'\nimport { NAME_ASPECT } from '../../constants/components'\nimport { PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { RX_ASPECT, RX_ASPECT_SEPARATOR } from '../../constants/regex'\nimport { mathAbs } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst CLASS_NAME = 'b-aspect'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n // Accepts a number (i.e. `16 / 9`, `1`, `4 / 3`)\n // Or a string (i.e. '16/9', '16:9', '4:3' '1:1')\n aspect: makeProp(PROP_TYPE_NUMBER_STRING, '1:1'),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n },\n NAME_ASPECT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BAspect = /*#__PURE__*/ Vue.extend({\n name: NAME_ASPECT,\n mixins: [normalizeSlotMixin],\n props,\n computed: {\n padding() {\n const { aspect } = this\n let ratio = 1\n if (RX_ASPECT.test(aspect)) {\n // Width and/or Height can be a decimal value below `1`, so\n // we only fallback to `1` if the value is `0` or `NaN`\n const [width, height] = aspect.split(RX_ASPECT_SEPARATOR).map(v => toFloat(v) || 1)\n ratio = width / height\n } else {\n ratio = toFloat(aspect) || 1\n }\n return `${100 / mathAbs(ratio)}%`\n }\n },\n render(h) {\n const $sizer = h('div', {\n staticClass: `${CLASS_NAME}-sizer flex-grow-1`,\n style: { paddingBottom: this.padding, height: 0 }\n })\n\n const $content = h(\n 'div',\n {\n staticClass: `${CLASS_NAME}-content flex-grow-1 w-100 mw-100`,\n style: { marginLeft: '-100%' }\n },\n this.normalizeSlot()\n )\n\n return h(this.tag, { staticClass: `${CLASS_NAME} d-flex` }, [$sizer, $content])\n }\n})\n","import { BAspect } from './aspect'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst AspectPlugin = /*#__PURE__*/ pluginFactory({\n components: { BAspect }\n})\n\nexport { AspectPlugin, BAspect }\n","import { RX_ENCODED_COMMA, RX_ENCODE_REVERSE, RX_PLUS, RX_QUERY_START } from '../constants/regex'\nimport { isTag } from './dom'\nimport { isArray, isNull, isPlainObject, isString, isUndefined } from './inspect'\nimport { keys } from './object'\nimport { toString } from './string'\n\nconst ANCHOR_TAG = 'a'\n\n// Method to replace reserved chars\nconst encodeReserveReplacer = c => '%' + c.charCodeAt(0).toString(16)\n\n// Fixed encodeURIComponent which is more conformant to RFC3986:\n// - escapes [!'()*]\n// - preserve commas\nconst encode = str =>\n encodeURIComponent(toString(str))\n .replace(RX_ENCODE_REVERSE, encodeReserveReplacer)\n .replace(RX_ENCODED_COMMA, ',')\n\nconst decode = decodeURIComponent\n\n// Stringifies an object of query parameters\n// See: https://github.com/vuejs/vue-router/blob/dev/src/util/query.js\nexport const stringifyQueryObj = obj => {\n if (!isPlainObject(obj)) {\n return ''\n }\n\n const query = keys(obj)\n .map(key => {\n const value = obj[key]\n if (isUndefined(value)) {\n return ''\n } else if (isNull(value)) {\n return encode(key)\n } else if (isArray(value)) {\n return value\n .reduce((results, value2) => {\n if (isNull(value2)) {\n results.push(encode(key))\n } else if (!isUndefined(value2)) {\n // Faster than string interpolation\n results.push(encode(key) + '=' + encode(value2))\n }\n return results\n }, [])\n .join('&')\n }\n // Faster than string interpolation\n return encode(key) + '=' + encode(value)\n })\n /* must check for length, as we only want to filter empty strings, not things that look falsey! */\n .filter(x => x.length > 0)\n .join('&')\n\n return query ? `?${query}` : ''\n}\n\nexport const parseQuery = query => {\n const parsed = {}\n query = toString(query)\n .trim()\n .replace(RX_QUERY_START, '')\n\n if (!query) {\n return parsed\n }\n\n query.split('&').forEach(param => {\n const parts = param.replace(RX_PLUS, ' ').split('=')\n const key = decode(parts.shift())\n const value = parts.length > 0 ? decode(parts.join('=')) : null\n\n if (isUndefined(parsed[key])) {\n parsed[key] = value\n } else if (isArray(parsed[key])) {\n parsed[key].push(value)\n } else {\n parsed[key] = [parsed[key], value]\n }\n })\n\n return parsed\n}\n\nexport const isLink = props => !!(props.href || props.to)\n\nexport const isRouterLink = tag => !!(tag && !isTag(tag, 'a'))\n\nexport const computeTag = ({ to, disabled, routerComponentName }, thisOrParent) => {\n const hasRouter = !!thisOrParent.$router\n if (!hasRouter || (hasRouter && (disabled || !to))) {\n return ANCHOR_TAG\n }\n\n // TODO:\n // Check registered components for existence of user supplied router link component name\n // We would need to check PascalCase, kebab-case, and camelCase versions of name:\n // const name = routerComponentName\n // const names = [name, PascalCase(name), KebabCase(name), CamelCase(name)]\n // exists = names.some(name => !!thisOrParent.$options.components[name])\n // And may want to cache the result for performance or we just let the render fail\n // if the component is not registered\n return routerComponentName || (thisOrParent.$nuxt ? 'nuxt-link' : 'router-link')\n}\n\nexport const computeRel = ({ target, rel } = {}) =>\n target === '_blank' && isNull(rel) ? 'noopener' : rel || null\n\nexport const computeHref = (\n { href, to } = {},\n tag = ANCHOR_TAG,\n fallback = '#',\n toFallback = '/'\n) => {\n // Return `href` when explicitly provided\n if (href) {\n return href\n }\n\n // We've checked for `$router` in `computeTag()`, so `isRouterLink()` indicates a live router\n // When deferring to Vue Router's `<router-link>`, don't use the `href` attribute at all\n // We return `null`, and then remove `href` from the attributes passed to `<router-link>`\n if (isRouterLink(tag)) {\n return null\n }\n\n // Fallback to `to` prop (if `to` is a string)\n if (isString(to)) {\n return to || toFallback\n }\n // Fallback to `to.path' + `to.query` + `to.hash` prop (if `to` is an object)\n if (isPlainObject(to) && (to.path || to.query || to.hash)) {\n const path = toString(to.path)\n const query = stringifyQueryObj(to.query)\n let hash = toString(to.hash)\n hash = !hash || hash.charAt(0) === '#' ? hash : `#${hash}`\n return `${path}${query}${hash}` || toFallback\n }\n\n // If nothing is provided return the fallback\n return fallback\n}\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_ICON_BASE } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { identity } from '../../utils/identity'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { mathMax } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\nimport { makeProp } from '../../utils/props'\n\n// --- Constants ---\n\n// Base attributes needed on all icons\nconst BASE_ATTRS = {\n viewBox: '0 0 16 16',\n width: '1em',\n height: '1em',\n focusable: 'false',\n role: 'img',\n 'aria-label': 'icon'\n}\n\n// Attributes that are nulled out when stacked\nconst STACKED_ATTRS = {\n width: null,\n height: null,\n focusable: null,\n role: null,\n 'aria-label': null\n}\n\n// --- Props ---\n\nexport const props = {\n animation: makeProp(PROP_TYPE_STRING),\n content: makeProp(PROP_TYPE_STRING),\n flipH: makeProp(PROP_TYPE_BOOLEAN, false),\n flipV: makeProp(PROP_TYPE_BOOLEAN, false),\n fontScale: makeProp(PROP_TYPE_NUMBER_STRING, 1),\n rotate: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n scale: makeProp(PROP_TYPE_NUMBER_STRING, 1),\n shiftH: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n shiftV: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n stacked: makeProp(PROP_TYPE_BOOLEAN, false),\n title: makeProp(PROP_TYPE_STRING),\n variant: makeProp(PROP_TYPE_STRING)\n}\n\n// --- Main component ---\n\n// Shared private base component to reduce bundle/runtime size\n// @vue/component\nexport const BVIconBase = /*#__PURE__*/ Vue.extend({\n name: NAME_ICON_BASE,\n functional: true,\n props,\n render(h, { data, props, children }) {\n const { animation, content, flipH, flipV, stacked, title, variant } = props\n const fontScale = mathMax(toFloat(props.fontScale, 1), 0) || 1\n const scale = mathMax(toFloat(props.scale, 1), 0) || 1\n const rotate = toFloat(props.rotate, 0)\n const shiftH = toFloat(props.shiftH, 0)\n const shiftV = toFloat(props.shiftV, 0)\n // Compute the transforms\n // Note that order is important as SVG transforms are applied in order from\n // left to right and we want flipping/scale to occur before rotation\n // Note shifting is applied separately\n // Assumes that the viewbox is `0 0 16 16` (`8 8` is the center)\n const hasScale = flipH || flipV || scale !== 1\n const hasTransforms = hasScale || rotate\n const hasShift = shiftH || shiftV\n const hasContent = !isUndefinedOrNull(content)\n const transforms = [\n hasTransforms ? 'translate(8 8)' : null,\n hasScale ? `scale(${(flipH ? -1 : 1) * scale} ${(flipV ? -1 : 1) * scale})` : null,\n rotate ? `rotate(${rotate})` : null,\n hasTransforms ? 'translate(-8 -8)' : null\n ].filter(identity)\n\n // We wrap the content in a `<g>` for handling the transforms (except shift)\n let $inner = h(\n 'g',\n {\n attrs: { transform: transforms.join(' ') || null },\n domProps: hasContent ? { innerHTML: content || '' } : {}\n },\n children\n )\n\n // If needed, we wrap in an additional `<g>` in order to handle the shifting\n if (hasShift) {\n $inner = h(\n 'g',\n { attrs: { transform: `translate(${(16 * shiftH) / 16} ${(-16 * shiftV) / 16})` } },\n [$inner]\n )\n }\n\n // Wrap in an additional `<g>` for proper animation handling if stacked\n if (stacked) {\n $inner = h('g', [$inner])\n }\n\n const $title = title ? h('title', title) : null\n\n const $content = [$title, $inner].filter(identity)\n\n return h(\n 'svg',\n mergeData(\n {\n staticClass: 'b-icon bi',\n class: {\n [`text-${variant}`]: variant,\n [`b-icon-animation-${animation}`]: animation\n },\n attrs: BASE_ATTRS,\n style: stacked ? {} : { fontSize: fontScale === 1 ? null : `${fontScale * 100}%` }\n },\n // Merge in user supplied data\n data,\n // If icon is stacked, null-out some attrs\n stacked ? { attrs: STACKED_ATTRS } : {},\n // These cannot be overridden by users\n {\n attrs: {\n xmlns: stacked ? null : 'http://www.w3.org/2000/svg',\n fill: 'currentColor'\n }\n }\n ),\n $content\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { omit } from '../../utils/object'\nimport { kebabCase, pascalCase, trim } from '../../utils/string'\nimport { BVIconBase, props as BVIconBaseProps } from './icon-base'\n\nconst iconProps = omit(BVIconBaseProps, ['content'])\n\n/**\n * Icon component generator function\n *\n * @param {string} icon name (minus the leading `BIcon`)\n * @param {string} raw `innerHTML` for SVG\n * @return {VueComponent}\n */\nexport const makeIcon = (name, content) => {\n // For performance reason we pre-compute some values, so that\n // they are not computed on each render of the icon component\n const kebabName = kebabCase(name)\n const iconName = `BIcon${pascalCase(name)}`\n const iconNameClass = `bi-${kebabName}`\n const iconTitle = kebabName.replace(/-/g, ' ')\n const svgContent = trim(content || '')\n\n return /*#__PURE__*/ Vue.extend({\n name: iconName,\n functional: true,\n props: iconProps,\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.5.0\n// @Generated: 2022-04-17T12:11:59.345Z\n//\n// This file is generated on each build. Do not edit this file!\n\n/*!\n * BootstrapVue Icons, generated from Bootstrap Icons 1.5.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 d=\"M8.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\"/><path 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 0zM0 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 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 .5zm2.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.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.527z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAlignBottom = /*#__PURE__*/ makeIcon(\n 'AlignBottom',\n '<rect width=\"4\" height=\"12\" x=\"6\" y=\"1\" rx=\"1\"/><path d=\"M1.5 14a.5.5 0 0 0 0 1v-1zm13 1a.5.5 0 0 0 0-1v1zm-13 0h13v-1h-13v1z\"/>'\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 '<rect width=\"4\" height=\"12\" rx=\"1\" transform=\"matrix(1 0 0 -1 6 15)\"/><path d=\"M1.5 2a.5.5 0 0 1 0-1v1zm13-1a.5.5 0 0 1 0 1V1zm-13 0h13v1h-13V1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconAlt = /*#__PURE__*/ makeIcon(\n 'Alt',\n '<path 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 d=\"M11 2a3 3 0 0 1 3 3v6a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V5a3 3 0 0 1 3-3h6zM5 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 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 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 d=\"M12.643 15C13.979 15 15 13.845 15 12.5V5H1v7.5C1 13.845 2.021 15 3.357 15h9.286zM5.5 7h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1zM.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=\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8zm15 0A8 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 BIconArrowDownCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowDownCircleFill',\n '<path 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=\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8zm15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-5.904-2.854a.5.5 0 1 1 .707.708L6.707 9.95h2.768a.5.5 0 1 1 0 1H5.5a.5.5 0 0 1-.5-.5V6.475a.5.5 0 1 1 1 0v2.768l4.096-4.097z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownLeftCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowDownLeftCircleFill',\n '<path d=\"M16 8A8 8 0 1 0 0 8a8 8 0 0 0 16 0zm-5.904-2.803a.5.5 0 1 1 .707.707L6.707 10h2.768a.5.5 0 0 1 0 1H5.5a.5.5 0 0 1-.5-.5V6.525a.5.5 0 0 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=\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2zM0 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.096 3.146a.5.5 0 1 1 .707.708L6.707 9.95h2.768a.5.5 0 1 1 0 1H5.5a.5.5 0 0 1-.5-.5V6.475a.5.5 0 1 1 1 0v2.768l4.096-4.097z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownLeftSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowDownLeftSquareFill',\n '<path d=\"M2 16a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2zm8.096-10.803L6 9.293V6.525a.5.5 0 0 0-1 0V10.5a.5.5 0 0 0 .5.5h3.975a.5.5 0 0 0 0-1H6.707l4.096-4.096a.5.5 0 1 0-.707-.707z\"/>'\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=\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8zm15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.854 5.146a.5.5 0 1 0-.708.708L9.243 9.95H6.475a.5.5 0 1 0 0 1h3.975a.5.5 0 0 0 .5-.5V6.475a.5.5 0 1 0-1 0v2.768L5.854 5.146z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownRightCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowDownRightCircleFill',\n '<path d=\"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8zm5.904-2.803a.5.5 0 1 0-.707.707L9.293 10H6.525a.5.5 0 0 0 0 1H10.5a.5.5 0 0 0 .5-.5V6.525a.5.5 0 0 0-1 0v2.768L5.904 5.197z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownRightSquare = /*#__PURE__*/ makeIcon(\n 'ArrowDownRightSquare',\n '<path fill-rule=\"evenodd\" d=\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2zM0 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.854 3.146a.5.5 0 1 0-.708.708L9.243 9.95H6.475a.5.5 0 1 0 0 1h3.975a.5.5 0 0 0 .5-.5V6.475a.5.5 0 1 0-1 0v2.768L5.854 5.146z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownRightSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowDownRightSquareFill',\n '<path d=\"M14 16a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12zM5.904 5.197 10 9.293V6.525a.5.5 0 0 1 1 0V10.5a.5.5 0 0 1-.5.5H6.525a.5.5 0 0 1 0-1h2.768L5.197 5.904a.5.5 0 0 1 .707-.707z\"/>'\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=\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2zM0 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.5 2.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 BIconArrowDownSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowDownSquareFill',\n '<path 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.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 1 0z\"/>'\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=\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8zm15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-4.5-.5a.5.5 0 0 1 0 1H5.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.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeftCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowLeftCircleFill',\n '<path d=\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0zm3.5 7.5a.5.5 0 0 1 0 1H5.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.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=\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2zM0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2zm11.5 5.5a.5.5 0 0 1 0 1H5.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.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeftSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowLeftSquareFill',\n '<path d=\"M16 14a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12zm-4.5-6.5H5.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.5a.5.5 0 0 0 0-1z\"/>'\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=\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8zm15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM4.5 7.5a.5.5 0 0 0 0 1h5.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.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRightCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowRightCircleFill',\n '<path d=\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0zM4.5 7.5a.5.5 0 0 0 0 1h5.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.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=\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2zM0 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.5 5.5a.5.5 0 0 0 0 1h5.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.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRightSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowRightSquareFill',\n '<path d=\"M0 14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v12zm4.5-6.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 0-1z\"/>'\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=\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8zm15 0A8 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 BIconArrowUpCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowUpCircleFill',\n '<path d=\"M16 8A8 8 0 1 0 0 8a8 8 0 0 0 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=\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8zm15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-5.904 2.803a.5.5 0 1 0 .707-.707L6.707 6h2.768a.5.5 0 1 0 0-1H5.5a.5.5 0 0 0-.5.5v3.975a.5.5 0 0 0 1 0V6.707l4.096 4.096z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpLeftCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowUpLeftCircleFill',\n '<path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-5.904 2.803a.5.5 0 1 0 .707-.707L6.707 6h2.768a.5.5 0 1 0 0-1H5.5a.5.5 0 0 0-.5.5v3.975a.5.5 0 0 0 1 0V6.707l4.096 4.096z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpLeftSquare = /*#__PURE__*/ makeIcon(\n 'ArrowUpLeftSquare',\n '<path fill-rule=\"evenodd\" d=\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2zM0 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.096 8.803a.5.5 0 1 0 .707-.707L6.707 6h2.768a.5.5 0 1 0 0-1H5.5a.5.5 0 0 0-.5.5v3.975a.5.5 0 0 0 1 0V6.707l4.096 4.096z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpLeftSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowUpLeftSquareFill',\n '<path 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.096 10.803L6 6.707v2.768a.5.5 0 0 1-1 0V5.5a.5.5 0 0 1 .5-.5h3.975a.5.5 0 1 1 0 1H6.707l4.096 4.096a.5.5 0 1 1-.707.707z\"/>'\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=\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8zm15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.854 10.803a.5.5 0 1 1-.708-.707L9.243 6H6.475a.5.5 0 1 1 0-1h3.975a.5.5 0 0 1 .5.5v3.975a.5.5 0 1 1-1 0V6.707l-4.096 4.096z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpRightCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowUpRightCircleFill',\n '<path d=\"M0 8a8 8 0 1 0 16 0A8 8 0 0 0 0 8zm5.904 2.803a.5.5 0 1 1-.707-.707L9.293 6H6.525a.5.5 0 1 1 0-1H10.5a.5.5 0 0 1 .5.5v3.975a.5.5 0 0 1-1 0V6.707l-4.096 4.096z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpRightSquare = /*#__PURE__*/ makeIcon(\n 'ArrowUpRightSquare',\n '<path fill-rule=\"evenodd\" d=\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2zM0 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.854 8.803a.5.5 0 1 1-.708-.707L9.243 6H6.475a.5.5 0 1 1 0-1h3.975a.5.5 0 0 1 .5.5v3.975a.5.5 0 1 1-1 0V6.707l-4.096 4.096z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpRightSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowUpRightSquareFill',\n '<path d=\"M14 0a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12zM5.904 10.803 10 6.707v2.768a.5.5 0 0 0 1 0V5.5a.5.5 0 0 0-.5-.5H6.525a.5.5 0 1 0 0 1h2.768l-4.096 4.096a.5.5 0 0 0 .707.707z\"/>'\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=\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2zM0 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.5 9.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 BIconArrowUpSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowUpSquareFill',\n '<path d=\"M2 16a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2zm6.5-4.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 1 0z\"/>'\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.707-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 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=\"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 d=\"M0 12.5v-9A1.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.5zM2.5 4a.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 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 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 d=\"M9.669.864 8 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.193.684 1.365 1.086 1.072L12.387 6l.248 1.506-1.086 1.072-.684 1.365-1.51.229L8 10.874l-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 1.126l1.356.702 1.509.229z\"/><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 0 1.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 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 d=\"M5.83 5.146a.5.5 0 0 0 0 .708L7.975 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\"/><path d=\"M13.683 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.08zm-7.08 1a1 1 0 0 0-.76.35L1 8l4.844 5.65a1 1 0 0 0 .759.35h7.08a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1h-7.08z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBackspaceFill = /*#__PURE__*/ makeIcon(\n 'BackspaceFill',\n '<path 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 d=\"M9.854 5.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\"/><path d=\"M2 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.08 1a1 1 0 0 1 .76.35L14.682 8l-4.844 5.65a1 1 0 0 1-.759.35H2a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1h7.08z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBackspaceReverseFill = /*#__PURE__*/ makeIcon(\n 'BackspaceReverseFill',\n '<path 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 BIconBadge3d = /*#__PURE__*/ makeIcon(\n 'Badge3d',\n '<path d=\"M4.52 8.368h.664c.646 0 1.055.378 1.06.9.008.537-.427.919-1.086.919-.598-.004-1.037-.325-1.068-.756H3c.03.914.791 1.688 2.153 1.688 1.24 0 2.285-.66 2.272-1.798-.013-.953-.747-1.38-1.292-1.432v-.062c.44-.07 1.125-.527 1.108-1.375-.013-.906-.8-1.57-2.053-1.565-1.31.005-2.043.734-2.074 1.67h1.103c.022-.391.383-.751.936-.751.532 0 .928.33.928.813.004.479-.383.835-.928.835h-.632v.914zm3.606-3.367V11h2.189C12.125 11 13 9.893 13 7.985c0-1.894-.861-2.984-2.685-2.984H8.126zm1.187.967h.844c1.112 0 1.621.686 1.621 2.04 0 1.353-.505 2.02-1.621 2.02h-.844v-4.06z\"/><path d=\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12zM2 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 BIconBadge3dFill = /*#__PURE__*/ makeIcon(\n 'Badge3dFill',\n '<path d=\"M10.157 5.968h-.844v4.06h.844c1.116 0 1.621-.667 1.621-2.02 0-1.354-.51-2.04-1.621-2.04z\"/><path 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-2V4zm5.184 4.368c.646 0 1.055.378 1.06.9.008.537-.427.919-1.086.919-.598-.004-1.037-.325-1.068-.756H3c.03.914.791 1.688 2.153 1.688 1.24 0 2.285-.66 2.272-1.798-.013-.953-.747-1.38-1.292-1.432v-.062c.44-.07 1.125-.527 1.108-1.375-.013-.906-.8-1.57-2.053-1.565-1.31.005-2.043.734-2.074 1.67h1.103c.022-.391.383-.751.936-.751.532 0 .928.33.928.813.004.479-.383.835-.928.835h-.632v.914h.663zM8.126 11h2.189C12.125 11 13 9.893 13 7.985c0-1.894-.861-2.984-2.685-2.984H8.126V11z\"/>'\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 d=\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12zM2 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 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.715.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 d=\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12zM2 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 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 d=\"m3.7 11 .47-1.542h2.004L6.644 11h1.261L5.901 5.001H4.513L2.5 11h1.2zm1.503-4.852.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\"/><path d=\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12zM2 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 BIconBadgeAdFill = /*#__PURE__*/ makeIcon(\n 'BadgeAdFill',\n '<path d=\"M11.35 8.337c0-.699-.42-1.138-1.001-1.138-.584 0-.954.444-.954 1.239v.453c0 .8.374 1.248.972 1.248.588 0 .984-.44.984-1.2v-.602zm-5.413.237-.734-2.426H5.15l-.734 2.426h1.52z\"/><path 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-.695zm-4.04 1.138L3.7 11H2.5l2.013-5.999H5.9L7.905 11H6.644l-.47-1.542H4.17z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeAr = /*#__PURE__*/ makeIcon(\n 'BadgeAr',\n '<path d=\"m3.794 11 .47-1.542H6.27L6.739 11H8L5.996 5.001H4.607L2.595 11h1.2zm1.503-4.852.734 2.426h-1.52l.734-2.426h.052zm5.598-1.147H8.5V11h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9zm-1.222 2.87V5.933h1.05c.63 0 1.05.347 1.05.989 0 .633-.408.95-1.067.95H9.673z\"/><path d=\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12zM2 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 BIconBadgeArFill = /*#__PURE__*/ makeIcon(\n 'BadgeArFill',\n '<path d=\"m6.031 8.574-.734-2.426h-.052L4.51 8.574h1.52zm3.642-2.641v1.938h1.033c.66 0 1.068-.316 1.068-.95 0-.64-.422-.988-1.05-.988h-1.05z\"/><path 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-2V4zm4.265 5.458h2.004L6.739 11H8L5.996 5.001H4.607L2.595 11h1.2l.47-1.542zM8.5 5v6h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9H8.5z\"/>'\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 d=\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12zM2 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 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 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\"/><path d=\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12zM2 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 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 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 d=\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12zM2 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 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 d=\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12zM2 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 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 BIconBadgeVr = /*#__PURE__*/ makeIcon(\n 'BadgeVr',\n '<path d=\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2z\"/><path d=\"M4.508 11h1.429l1.99-5.999H6.61L5.277 9.708H5.22L3.875 5.001H2.5L4.508 11zm6.387-5.999H8.5V11h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9zm-1.222 2.87V5.933h1.05c.63 0 1.05.347 1.05.989 0 .633-.408.95-1.067.95H9.673z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeVrFill = /*#__PURE__*/ makeIcon(\n 'BadgeVrFill',\n '<path d=\"M9.673 5.933v1.938h1.033c.66 0 1.068-.316 1.068-.95 0-.64-.422-.988-1.05-.988h-1.05z\"/><path 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-2V4zm5.937 7 1.99-5.999H6.61L5.277 9.708H5.22L3.875 5.001H2.5L4.508 11h1.429zM8.5 5.001V11h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9H8.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeWc = /*#__PURE__*/ makeIcon(\n 'BadgeWc',\n '<path d=\"M10.348 7.643c0-1.112.488-1.754 1.318-1.754.682 0 1.139.47 1.187 1.108H14v-.11c-.053-1.187-1.024-2-2.342-2-1.604 0-2.518 1.05-2.518 2.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-.742zM4.457 11l1.02-4.184h.045L6.542 11h1.006L9 5.001H7.818l-.82 4.355h-.056L5.97 5.001h-.94l-.972 4.355h-.053l-.827-4.355H2L3.452 11h1.005z\"/><path d=\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12zM2 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 BIconBadgeWcFill = /*#__PURE__*/ makeIcon(\n 'BadgeWcFill',\n '<path 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.666 1.89c.682 0 1.139.47 1.187 1.107H14v-.11c-.053-1.187-1.024-2-2.342-2-1.604 0-2.518 1.05-2.518 2.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-.742c0-1.112.488-1.754 1.318-1.754zm-6.188.926h.044L6.542 11h1.006L9 5.001H7.818l-.82 4.355h-.056L5.97 5.001h-.94l-.972 4.355h-.053l-.827-4.355H2L3.452 11h1.005l1.02-4.184z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBag = /*#__PURE__*/ makeIcon(\n 'Bag',\n '<path d=\"M8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 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 5h12v9a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBagCheck = /*#__PURE__*/ makeIcon(\n 'BagCheck',\n '<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\"/><path d=\"M8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 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 5h12v9a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBagCheckFill = /*#__PURE__*/ makeIcon(\n 'BagCheckFill',\n '<path fill-rule=\"evenodd\" d=\"M10.5 3.5a2.5 2.5 0 0 0-5 0V4h5v-.5zm1 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=\"M5.5 10a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/><path d=\"M8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 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 5h12v9a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBagDashFill = /*#__PURE__*/ makeIcon(\n 'BagDashFill',\n '<path fill-rule=\"evenodd\" d=\"M10.5 3.5a2.5 2.5 0 0 0-5 0V4h5v-.5zm1 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 d=\"M8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 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 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\"/><path d=\"M8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 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 5h12v9a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBagPlusFill = /*#__PURE__*/ makeIcon(\n 'BagPlusFill',\n '<path fill-rule=\"evenodd\" d=\"M10.5 3.5a2.5 2.5 0 0 0-5 0V4h5v-.5zm1 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=\"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\"/><path d=\"M8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 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 5h12v9a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBagXFill = /*#__PURE__*/ makeIcon(\n 'BagXFill',\n '<path fill-rule=\"evenodd\" d=\"M10.5 3.5a2.5 2.5 0 0 0-5 0V4h5v-.5zm1 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 BIconBank = /*#__PURE__*/ makeIcon(\n 'Bank',\n '<path d=\"M8 .95 14.61 4h.89a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5H15v7a.5.5 0 0 1 .485.379l.5 2A.5.5 0 0 1 15.5 17H.5a.5.5 0 0 1-.485-.621l.5-2A.5.5 0 0 1 1 14V7H.5a.5.5 0 0 1-.5-.5v-2A.5.5 0 0 1 .5 4h.89L8 .95zM3.776 4h8.447L8 2.05 3.776 4zM2 7v7h1V7H2zm2 0v7h2.5V7H4zm3.5 0v7h1V7h-1zm2 0v7H12V7H9.5zM13 7v7h1V7h-1zm2-1V5H1v1h14zm-.39 9H1.39l-.25 1h13.72l-.25-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBank2 = /*#__PURE__*/ makeIcon(\n 'Bank2',\n '<path d=\"M8.277.084a.5.5 0 0 0-.554 0l-7.5 5A.5.5 0 0 0 .5 6h1.875v7H1.5a.5.5 0 0 0 0 1h13a.5.5 0 1 0 0-1h-.875V6H15.5a.5.5 0 0 0 .277-.916l-7.5-5zM12.375 6v7h-1.25V6h1.25zm-2.5 0v7h-1.25V6h1.25zm-2.5 0v7h-1.25V6h1.25zm-2.5 0v7h-1.25V6h1.25zM8 4a1 1 0 1 1 0-2 1 1 0 0 1 0 2zM.5 15a.5.5 0 0 0 0 1h15a.5.5 0 1 0 0-1H.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBarChart = /*#__PURE__*/ makeIcon(\n 'BarChart',\n '<path d=\"M4 11H2v3h2v-3zm5-4H7v7h2V7zm5-5v12h-2V2h2zm-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 '<path d=\"M1 11a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1v-3zm5-4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V7zm5-5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1V2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBarChartLine = /*#__PURE__*/ makeIcon(\n 'BarChartLine',\n '<path 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 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 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 0zM2 1.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-4a.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-1zm2 4a.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 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 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 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 1 1 1v2a1 1 0 1 1-2 0v-2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBasket3 = /*#__PURE__*/ makeIcon(\n 'Basket3',\n '<path 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 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-.172zM2.468 15.426.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 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 d=\"M0 6a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V6zm2-1a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1H2zm14 3a1.5 1.5 0 0 1-1.5 1.5v-3A1.5 1.5 0 0 1 16 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBatteryCharging = /*#__PURE__*/ makeIcon(\n 'BatteryCharging',\n '<path 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 d=\"M2 4h4.332l-.94 1H2a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h2.38l-.308 1H2a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2z\"/><path d=\"M2 6h2.45L2.908 7.639A1.5 1.5 0 0 0 3.313 10H2V6zm8.595-2-.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.405z\"/><path d=\"M12 10h-1.783l1.542-1.639c.097-.103.178-.218.241-.34V10zm0-3.354V6h-.646a1.5 1.5 0 0 1 .646.646zM16 8a1.5 1.5 0 0 1-1.5 1.5v-3A1.5 1.5 0 0 1 16 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBatteryFull = /*#__PURE__*/ makeIcon(\n 'BatteryFull',\n '<path d=\"M2 6h10v4H2V6z\"/><path d=\"M2 4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2H2zm10 1a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h10zm4 3a1.5 1.5 0 0 1-1.5 1.5v-3A1.5 1.5 0 0 1 16 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBatteryHalf = /*#__PURE__*/ makeIcon(\n 'BatteryHalf',\n '<path d=\"M2 6h5v4H2V6z\"/><path d=\"M2 4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2H2zm10 1a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h10zm4 3a1.5 1.5 0 0 1-1.5 1.5v-3A1.5 1.5 0 0 1 16 8z\"/>'\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 2zM8 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 BIconBellSlash = /*#__PURE__*/ makeIcon(\n 'BellSlash',\n '<path d=\"M5.164 14H15c-.299-.199-.557-.553-.78-1-.9-1.8-1.22-5.12-1.22-6 0-.264-.02-.523-.06-.776l-.938.938c.02.708.157 2.154.457 3.58.161.767.377 1.566.663 2.258H6.164l-1 1zm5.581-9.91a3.986 3.986 0 0 0-1.948-1.01L8 2.917l-.797.161A4.002 4.002 0 0 0 4 7c0 .628-.134 2.197-.459 3.742-.05.238-.105.479-.166.718l-1.653 1.653c.02-.037.04-.074.059-.113C2.679 11.2 3 7.88 3 7c0-2.42 1.72-4.44 4.005-4.901a1 1 0 1 1 1.99 0c.942.19 1.788.645 2.457 1.284l-.707.707zM10 15a2 2 0 1 1-4 0h4zm-9.375.625a.53.53 0 0 0 .75.75l14.75-14.75a.53.53 0 0 0-.75-.75L.625 15.625z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBellSlashFill = /*#__PURE__*/ makeIcon(\n 'BellSlashFill',\n '<path d=\"M5.164 14H15c-1.5-1-2-5.902-2-7 0-.264-.02-.523-.06-.776L5.164 14zm6.288-10.617A4.988 4.988 0 0 0 8.995 2.1a1 1 0 1 0-1.99 0A5.002 5.002 0 0 0 3 7c0 .898-.335 4.342-1.278 6.113l9.73-9.73zM10 15a2 2 0 1 1-4 0h4zm-9.375.625a.53.53 0 0 0 .75.75l14.75-14.75a.53.53 0 0 0-.75-.75L.625 15.625z\"/>'\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 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.443-.508.814c.5.444.85 1.054.967 1.743h1.139L5.5 6.943zM8 9.057 9.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 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 d=\"M2.5 3a.5.5 0 0 0 0 1h11a.5.5 0 0 0 0-1h-11zm5 3a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1h-6zm0 3a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1h-6zm-5 3a.5.5 0 0 0 0 1h11a.5.5 0 0 0 0-1h-11zm.79-5.373c.112-.078.26-.17.444-.275L3.524 6c-.122.074-.272.17-.452.287-.18.117-.35.26-.51.428a2.425 2.425 0 0 0-.398.562c-.11.207-.164.438-.164.692 0 .36.072.65.217.873.144.219.385.328.72.328.215 0 .383-.07.504-.211a.697.697 0 0 0 .188-.463c0-.23-.07-.404-.211-.521-.137-.121-.326-.182-.568-.182h-.282c.024-.203.065-.37.123-.498a1.38 1.38 0 0 1 .252-.37 1.94 1.94 0 0 1 .346-.298zm2.167 0c.113-.078.262-.17.445-.275L5.692 6c-.122.074-.272.17-.452.287-.18.117-.35.26-.51.428a2.425 2.425 0 0 0-.398.562c-.11.207-.164.438-.164.692 0 .36.072.65.217.873.144.219.385.328.72.328.215 0 .383-.07.504-.211a.697.697 0 0 0 .188-.463c0-.23-.07-.404-.211-.521-.137-.121-.326-.182-.568-.182h-.282a1.75 1.75 0 0 1 .118-.492c.058-.13.144-.254.257-.375a1.94 1.94 0 0 1 .346-.3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBlockquoteRight = /*#__PURE__*/ makeIcon(\n 'BlockquoteRight',\n '<path d=\"M2.5 3a.5.5 0 0 0 0 1h11a.5.5 0 0 0 0-1h-11zm0 3a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1h-6zm0 3a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1h-6zm0 3a.5.5 0 0 0 0 1h11a.5.5 0 0 0 0-1h-11zm10.113-5.373a6.59 6.59 0 0 0-.445-.275l.21-.352c.122.074.272.17.452.287.18.117.35.26.51.428.156.164.289.351.398.562.11.207.164.438.164.692 0 .36-.072.65-.216.873-.145.219-.385.328-.721.328-.215 0-.383-.07-.504-.211a.697.697 0 0 1-.188-.463c0-.23.07-.404.211-.521.137-.121.326-.182.569-.182h.281a1.686 1.686 0 0 0-.123-.498 1.379 1.379 0 0 0-.252-.37 1.94 1.94 0 0 0-.346-.298zm-2.168 0A6.59 6.59 0 0 0 10 6.352L10.21 6c.122.074.272.17.452.287.18.117.35.26.51.428.156.164.289.351.398.562.11.207.164.438.164.692 0 .36-.072.65-.216.873-.145.219-.385.328-.721.328-.215 0-.383-.07-.504-.211a.697.697 0 0 1-.188-.463c0-.23.07-.404.211-.521.137-.121.327-.182.569-.182h.281a1.749 1.749 0 0 0-.117-.492 1.402 1.402 0 0 0-.258-.375 1.94 1.94 0 0 0-.346-.3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBook = /*#__PURE__*/ makeIcon(\n 'Book',\n '<path d=\"M1 2.828c.885-.37 2.154-.769 3.388-.893 1.33-.134 2.458.063 3.112.752v9.746c-.935-.53-2.12-.603-3.213-.493-1.18.12-2.37.461-3.287.811V2.828zm7.5-.141c.654-.689 1.782-.886 3.112-.752 1.234.124 2.503.523 3.388.893v9.923c-.918-.35-2.107-.692-3.287-.81-1.094-.111-2.278-.039-3.213.492V2.687zM8 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 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 d=\"M8.5 2.687c.654-.689 1.782-.886 3.112-.752 1.234.124 2.503.523 3.388.893v9.923c-.918-.35-2.107-.692-3.287-.81-1.094-.111-2.278-.039-3.213.492V2.687zM8 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 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=\"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\"/><path 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 BIconBookmarkCheckFill = /*#__PURE__*/ makeIcon(\n 'BookmarkCheckFill',\n '<path fill-rule=\"evenodd\" d=\"M2 15.5V2a2 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.5zm8.854-9.646a.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=\"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\"/><path 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 BIconBookmarkDashFill = /*#__PURE__*/ makeIcon(\n 'BookmarkDashFill',\n '<path fill-rule=\"evenodd\" d=\"M2 15.5V2a2 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.5zM6 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 d=\"M2 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-2H4a2 2 0 0 0-2 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkHeart = /*#__PURE__*/ makeIcon(\n 'BookmarkHeart',\n '<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\"/><path 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 BIconBookmarkHeartFill = /*#__PURE__*/ makeIcon(\n 'BookmarkHeartFill',\n '<path d=\"M2 15.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-2H4a2 2 0 0 0-2 2v13.5zM8 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 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=\"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=\"M2 15.5V2a2 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.5zm6.5-11a.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 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\"/><path 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 BIconBookmarkStarFill = /*#__PURE__*/ makeIcon(\n 'BookmarkStarFill',\n '<path fill-rule=\"evenodd\" d=\"M2 15.5V2a2 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.5zM8.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=\"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\"/><path 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 BIconBookmarkXFill = /*#__PURE__*/ makeIcon(\n 'BookmarkXFill',\n '<path fill-rule=\"evenodd\" d=\"M2 15.5V2a2 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.5zM6.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 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 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 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 d=\"M4.268 1A2 2 0 0 1 6 0h6a2 2 0 0 1 2 2v11.5a.5.5 0 0 1-.777.416L13 13.768V2a1 1 0 0 0-1-1H4.268z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBookshelf = /*#__PURE__*/ makeIcon(\n 'Bookshelf',\n '<path 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 d=\"M5.062 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.762V8.162h1.822c1.236 0 1.887.463 1.887 1.348 0 .896-.627 1.377-1.811 1.377H6.375z\"/><path d=\"M0 4a4 4 0 0 1 4-4h8a4 4 0 0 1 4 4v8a4 4 0 0 1-4 4H4a4 4 0 0 1-4-4V4zm4-3a3 3 0 0 0-3 3v8a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3V4a3 3 0 0 0-3-3H4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBootstrapFill = /*#__PURE__*/ makeIcon(\n 'BootstrapFill',\n '<path d=\"M6.375 7.125V4.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\"/><path 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 12V3.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.396H5.062z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBootstrapReboot = /*#__PURE__*/ makeIcon(\n 'BootstrapReboot',\n '<path d=\"M1.161 8a6.84 6.84 0 1 0 6.842-6.84.58.58 0 1 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 8z\"/><path d=\"M6.641 11.671V8.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.141zm0-3.75V5.277h1.57c.881 0 1.416.499 1.416 1.32 0 .84-.504 1.324-1.386 1.324h-1.6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBorder = /*#__PURE__*/ makeIcon(\n 'Border',\n '<path d=\"M0 0h.969v.5H1v.469H.969V1H.5V.969H0V0zm2.844 1h-.938V0h.938v1zm1.875 0H3.78V0h.938v1zm1.875 0h-.938V0h.938v1zm.937 0V.969H7.5V.5h.031V0h.938v.5H8.5v.469h-.031V1H7.53zm2.813 0h-.938V0h.938v1zm1.875 0h-.938V0h.938v1zm1.875 0h-.938V0h.938v1zM15.5 1h-.469V.969H15V.5h.031V0H16v.969h-.5V1zM1 1.906v.938H0v-.938h1zm6.5.938v-.938h1v.938h-1zm7.5 0v-.938h1v.938h-1zM1 3.78v.938H0V3.78h1zm6.5.938V3.78h1v.938h-1zm7.5 0V3.78h1v.938h-1zM1 5.656v.938H0v-.938h1zm6.5.938v-.938h1v.938h-1zm7.5 0v-.938h1v.938h-1zM.969 8.5H.5v-.031H0V7.53h.5V7.5h.469v.031H1v.938H.969V8.5zm1.875 0h-.938v-1h.938v1zm1.875 0H3.78v-1h.938v1zm1.875 0h-.938v-1h.938v1zm1.875-.031V8.5H7.53v-.031H7.5V7.53h.031V7.5h.938v.031H8.5v.938h-.031zm1.875.031h-.938v-1h.938v1zm1.875 0h-.938v-1h.938v1zm1.875 0h-.938v-1h.938v1zm1.406 0h-.469v-.031H15V7.53h.031V7.5h.469v.031h.5v.938h-.5V8.5zM0 10.344v-.938h1v.938H0zm7.5 0v-.938h1v.938h-1zm8.5-.938v.938h-1v-.938h1zM0 12.22v-.938h1v.938H0zm7.5 0v-.938h1v.938h-1zm8.5-.938v.938h-1v-.938h1zM0 14.094v-.938h1v.938H0zm7.5 0v-.938h1v.938h-1zm8.5-.938v.938h-1v-.938h1zM.969 16H0v-.969h.5V15h.469v.031H1v.469H.969v.5zm1.875 0h-.938v-1h.938v1zm1.875 0H3.78v-1h.938v1zm1.875 0h-.938v-1h.938v1zm.937 0v-.5H7.5v-.469h.031V15h.938v.031H8.5v.469h-.031v.5H7.53zm2.813 0h-.938v-1h.938v1zm1.875 0h-.938v-1h.938v1zm1.875 0h-.938v-1h.938v1zm.937 0v-.5H15v-.469h.031V15h.469v.031h.5V16h-.969z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBorderAll = /*#__PURE__*/ makeIcon(\n 'BorderAll',\n '<path d=\"M0 0h16v16H0V0zm1 1v6.5h6.5V1H1zm7.5 0v6.5H15V1H8.5zM15 8.5H8.5V15H15V8.5zM7.5 15V8.5H1V15h6.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBorderBottom = /*#__PURE__*/ makeIcon(\n 'BorderBottom',\n '<path d=\"M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469h.031zM9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM1 2.844v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5V8.5zm1.406 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031V8.5zM0 9.406v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zM0 15h16v1H0v-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBorderCenter = /*#__PURE__*/ makeIcon(\n 'BorderCenter',\n '<path d=\"M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469h.031zM9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM1 2.844v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM0 8.5v-1h16v1H0zm0 .906v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469h.031zm1.875.5h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBorderInner = /*#__PURE__*/ makeIcon(\n 'BorderInner',\n '<path d=\"M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1z\"/><path d=\"M8.5 7.5H16v1H8.5V16h-1V8.5H0v-1h7.5V0h1v7.5z\"/><path d=\"M9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM1 2.844v-.938H0v.938h1zm14-.938v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm14-.938v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm14-.938v.938h1v-.938h-1zM0 9.406v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm3.75 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBorderLeft = /*#__PURE__*/ makeIcon(\n 'BorderLeft',\n '<path d=\"M0 0v16h1V0H0zm1.906 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469h.031zM9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM7.5 1.906v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM7.5 3.781v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM7.5 5.656v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM1.906 8.5h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031V8.5zM7.5 9.406v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-8.5.937v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-8.5.937v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zM1.906 16h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469h.031zm1.875.5h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBorderMiddle = /*#__PURE__*/ makeIcon(\n 'BorderMiddle',\n '<path d=\"M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM8.5 16h-1V0h1v16zm.906-15h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM1 2.844v-.938H0v.938h1zm14-.938v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm14-.938v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm14-.938v.938h1v-.938h-1zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5V8.5zm1.406 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm3.75 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031V8.5zM0 9.406v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm3.75 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBorderOuter = /*#__PURE__*/ makeIcon(\n 'BorderOuter',\n '<path d=\"M7.5 1.906v.938h1v-.938h-1zm0 1.875v.938h1V3.78h-1zm0 1.875v.938h1v-.938h-1zM1.906 8.5h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zM7.5 9.406v.938h1v-.938h-1zm0 1.875v.938h1v-.938h-1zm0 1.875v.938h1v-.938h-1z\"/><path d=\"M0 0v16h16V0H0zm1 1h14v14H1V1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBorderRight = /*#__PURE__*/ makeIcon(\n 'BorderRight',\n '<path d=\"M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469h.031zM9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zM16 0h-1v16h1V0zM1 2.844v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5V8.5zm1.406 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zM0 9.406v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zM0 11.281v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zM0 13.156v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469h.031zm1.875.5h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1z\"/>'\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 BIconBorderTop = /*#__PURE__*/ makeIcon(\n 'BorderTop',\n '<path d=\"M0 0v1h16V0H0zm1 2.844v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5V8.5zm1.406 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031V8.5zM0 9.406v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469h.031zm1.875.5h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z\"/>'\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 d=\"M5 2V0H0v5h2v6H0v5h5v-2h6v2h5v-5h-2V5h2V0h-5v2H5zm6 1v2h2v6h-2v2H5v-2H3V5h2V3h6zm1-2h3v3h-3V1zm3 11v3h-3v-3h3zM4 15H1v-3h3v3zM1 4V1h3v3H1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBoundingBoxCircles = /*#__PURE__*/ makeIcon(\n 'BoundingBoxCircles',\n '<path 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 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 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.7-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 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 0v2h5V1h-5zm6 0v2H15V1h-3.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 d=\"M6.5 1A1.5 1.5 0 0 0 5 2.5V3H1.5A1.5 1.5 0 0 0 0 4.5v8A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-8A1.5 1.5 0 0 0 14.5 3H11v-.5A1.5 1.5 0 0 0 9.5 1h-3zm0 1h3a.5.5 0 0 1 .5.5V3H6v-.5a.5.5 0 0 1 .5-.5zm1.886 6.914L15 7.151V12.5a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5V7.15l6.614 1.764a1.5 1.5 0 0 0 .772 0zM1.5 4h13a.5.5 0 0 1 .5.5v1.616L8.129 7.948a.5.5 0 0 1-.258 0L1 6.116V4.5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBriefcaseFill = /*#__PURE__*/ makeIcon(\n 'BriefcaseFill',\n '<path d=\"M6.5 1A1.5 1.5 0 0 0 5 2.5V3H1.5A1.5 1.5 0 0 0 0 4.5v1.384l7.614 2.03a1.5 1.5 0 0 0 .772 0L16 5.884V4.5A1.5 1.5 0 0 0 14.5 3H11v-.5A1.5 1.5 0 0 0 9.5 1h-3zm0 1h3a.5.5 0 0 1 .5.5V3H6v-.5a.5.5 0 0 1 .5-.5z\"/><path 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\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessAltHigh = /*#__PURE__*/ makeIcon(\n 'BrightnessAltHigh',\n '<path d=\"M8 3a.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.5zm-13.5.5a.5.5 0 0 0 0-1h-2a.5.5 0 0 0 0 1h2zm11.157-6.157a.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 0zm-9.9 2.121a.5.5 0 0 0 .707-.707L3.05 5.343a.5.5 0 1 0-.707.707l1.414 1.414zM8 7a4 4 0 0 0-4 4 .5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5 4 4 0 0 0-4-4zm0 1a3 3 0 0 1 2.959 2.5H5.04A3 3 0 0 1 8 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessAltHighFill = /*#__PURE__*/ makeIcon(\n 'BrightnessAltHighFill',\n '<path d=\"M8 3a.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.5zm-13.5.5a.5.5 0 0 0 0-1h-2a.5.5 0 0 0 0 1h2zm11.157-6.157a.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 0zm-9.9 2.121a.5.5 0 0 0 .707-.707L3.05 5.343a.5.5 0 1 0-.707.707l1.414 1.414zM8 7a4 4 0 0 0-4 4 .5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5 4 4 0 0 0-4-4z\"/>'\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 1zM2 11a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0zm10.243-3.536a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707zm-8.486-.707a.5.5 0 1 0 .707.707.5.5 0 0 0-.707-.707zM8 7a4 4 0 0 0-4 4 .5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5 4 4 0 0 0-4-4zm0 1a3 3 0 0 1 2.959 2.5H5.04A3 3 0 0 1 8 8z\"/>'\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 1zM2 11a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0zm10.243-3.536a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707zm-8.486-.707a.5.5 0 1 0 .707.707.5.5 0 0 0-.707-.707zM8 7a4 4 0 0 0-4 4 .5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5 4 4 0 0 0-4-4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessHigh = /*#__PURE__*/ makeIcon(\n 'BrightnessHigh',\n '<path d=\"M8 11a3 3 0 1 1 0-6 3 3 0 0 1 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 0zM8 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 d=\"M8 11a3 3 0 1 1 0-6 3 3 0 0 1 0 6zm0 1a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm.5-9.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 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 1 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-.707zM10 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 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 1 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 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.118 8.118 0 0 1-3.078.132 3.659 3.659 0 0 1-.562-.135 1.382 1.382 0 0 1-.466-.247.714.714 0 0 1-.204-.288.622.622 0 0 1 .004-.443c.095-.245.316-.38.461-.452.394-.197.625-.453.867-.826.095-.144.184-.297.287-.472l.117-.198c.151-.255.326-.54.546-.848.528-.739 1.201-.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.176-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-.246-.013-.573.05-.879.479-.197.275-.355.532-.5.777l-.105.177c-.106.181-.213.362-.32.528a3.39 3.39 0 0 1-.76.861c.69.112 1.736.111 2.657-.12.559-.139.843-.569.993-1.06a3.122 3.122 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.59 1.927-5.566 4.66-7.302 6.792-.442.543-.795 1.243-1.042 1.826-.121.288-.214.54-.275.72v.001l.575.575zm-4.973 3.04.007-.005a.031.031 0 0 1-.007.004zm3.582-3.043.002.001h-.002z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBrushFill = /*#__PURE__*/ makeIcon(\n 'BrushFill',\n '<path 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.118 8.118 0 0 1-3.078.132 3.659 3.659 0 0 1-.562-.135 1.382 1.382 0 0 1-.466-.247.714.714 0 0 1-.204-.288.622.622 0 0 1 .004-.443c.095-.245.316-.38.461-.452.394-.197.625-.453.867-.826.095-.144.184-.297.287-.472l.117-.198c.151-.255.326-.54.546-.848.528-.739 1.201-.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.176-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 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 0a4.5 4.5 0 0 1 8.945 0H3.527zm9.892 1-1.286 8.574a.5.5 0 0 1-.494.426H4.36a.5.5 0 0 1-.494-.426L2.58 6h10.838z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBucketFill = /*#__PURE__*/ makeIcon(\n 'BucketFill',\n '<path 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 0a4.5 4.5 0 0 1 8.945 0H3.527z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBug = /*#__PURE__*/ makeIcon(\n 'Bug',\n '<path 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 6a3.989 3.989 0 0 0-1.334-2.982A3.983 3.983 0 0 0 8 2a3.983 3.983 0 0 0-2.667 1.018A3.989 3.989 0 0 0 4 6h8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconBugFill = /*#__PURE__*/ makeIcon(\n 'BugFill',\n '<path 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-.956z\"/><path d=\"M13 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.694 1 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 d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M8 13A5 5 0 1 1 8 3a5 5 0 0 1 0 10zm0 1A6 6 0 1 0 8 2a6 6 0 0 0 0 12z\"/><path d=\"M8 11a3 3 0 1 1 0-6 3 3 0 0 1 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 d=\"M12 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h8zM4 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 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 .5v2a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5h-7a.5.5 0 0 0-.5.5zm0 4v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zM4.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.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zM7.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.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zm.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.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zm.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 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 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 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\"/><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-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 BIconCalendar2CheckFill = /*#__PURE__*/ makeIcon(\n 'Calendar2CheckFill',\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-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zm-2.6 5.854a.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 d=\"M6.445 12.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\"/><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-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 BIconCalendar2DateFill = /*#__PURE__*/ makeIcon(\n 'Calendar2DateFill',\n '<path d=\"M9.402 10.246c.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.2z\"/><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-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zm-4.118 9.79c1.258 0 2-1.067 2-2.872 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-.684c.047.64.594 1.406 1.703 1.406zm-2.89-5.435h-.633A12.6 12.6 0 0 0 4.5 8.16v.695c.375-.257.969-.62 1.258-.777h.012v4.61h.675V7.354z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Day = /*#__PURE__*/ makeIcon(\n 'Calendar2Day',\n '<path d=\"M4.684 12.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\"/><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-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 BIconCalendar2DayFill = /*#__PURE__*/ makeIcon(\n 'Calendar2DayFill',\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-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zm-2.24 4.855a.428.428 0 1 0 0-.855.426.426 0 0 0-.429.43c0 .238.192.425.43.425zm.337.563h-.672v4.105h.672V8.418zm-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 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-1z\"/><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-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 BIconCalendar2EventFill = /*#__PURE__*/ makeIcon(\n 'Calendar2EventFill',\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-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zM11.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 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 3h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1c0-.276.244-.5.545-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Minus = /*#__PURE__*/ makeIcon(\n 'Calendar2Minus',\n '<path 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\"/><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-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 BIconCalendar2MinusFill = /*#__PURE__*/ makeIcon(\n 'Calendar2MinusFill',\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-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.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 BIconCalendar2Month = /*#__PURE__*/ makeIcon(\n 'Calendar2Month',\n '<path d=\"m2.56 12.332.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\"/><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-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 BIconCalendar2MonthFill = /*#__PURE__*/ makeIcon(\n 'Calendar2MonthFill',\n '<path d=\"M4.104 7.805 4.9 10.18H3.284l.8-2.375h.02zm9.074 2.297c0-.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\"/><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-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zM2.561 12.332 3.1 10.73h1.984l.54 1.602h.718L4.444 7h-.696L1.85 12.332h.71zM9.85 8.227h-.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.41h-.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.023-.563 0-.91-.304-.985-.636z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Plus = /*#__PURE__*/ makeIcon(\n 'Calendar2Plus',\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-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-.5V4zM8 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 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.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5H2.545c-.3 0-.545.224-.545.5zm6.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 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 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-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zM10 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 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 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-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zM8.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.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zm3.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 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\"/><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-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 BIconCalendar2XFill = /*#__PURE__*/ makeIcon(\n 'Calendar2XFill',\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-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zm-6.6 5.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 BIconCalendar3 = /*#__PURE__*/ makeIcon(\n 'Calendar3',\n '<path 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 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 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 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-2H2zM0 14V3h16v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm12-8a1 1 0 1 0 2 0 1 1 0 0 0-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 2H0zm0 1v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3H0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3Range = /*#__PURE__*/ makeIcon(\n 'Calendar3Range',\n '<path 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 d=\"M7 10a1 1 0 0 0 0-2H1v2h6zm2-3h6V5H9a1 1 0 0 0 0 2z\"/>'\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-2H2zM0 8V3h16v2h-6a1 1 0 1 0 0 2h6v7a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-4h6a1 1 0 1 0 0-2H0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3Week = /*#__PURE__*/ makeIcon(\n 'Calendar3Week',\n '<path 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 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-2H2zM0 14V3h16v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm12-8a1 1 0 1 0 2 0 1 1 0 0 0-2 0zM5 9a1 1 0 1 0 2 0 1 1 0 0 0-2 0zm5-2a1 1 0 1 1 0-2 1 1 0 0 1 0 2zM2 9a1 1 0 1 0 2 0 1 1 0 0 0-2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar4 = /*#__PURE__*/ makeIcon(\n 'Calendar4',\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-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 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-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar4Range = /*#__PURE__*/ makeIcon(\n 'Calendar4Range',\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-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 3v1a.5.5 0 0 1-.5.5H1v-2h5.5a.5.5 0 0 1 .5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar4Week = /*#__PURE__*/ makeIcon(\n 'Calendar4Week',\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-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 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\"/><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-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 BIconCalendarCheckFill = /*#__PURE__*/ makeIcon(\n 'CalendarCheckFill',\n '<path 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.146-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.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarDate = /*#__PURE__*/ makeIcon(\n 'CalendarDate',\n '<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\"/><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-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 BIconCalendarDateFill = /*#__PURE__*/ makeIcon(\n 'CalendarDateFill',\n '<path 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.5zm5.402 9.746c.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.2z\"/><path d=\"M16 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-2.89-5.435v5.332H5.77V8.079h-.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 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\"/><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-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 BIconCalendarDayFill = /*#__PURE__*/ makeIcon(\n 'CalendarDayFill',\n '<path 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 14a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V5h16v9zm-4.785-6.145a.428.428 0 1 0 0-.855.426.426 0 0 0-.43.43c0 .238.192.425.43.425zm.336.563h-.672v4.105h.672V8.418zm-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 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\"/><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-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 BIconCalendarEventFill = /*#__PURE__*/ makeIcon(\n 'CalendarEventFill',\n '<path 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-7h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5z\"/>'\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 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\"/><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-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 BIconCalendarMinusFill = /*#__PURE__*/ makeIcon(\n 'CalendarMinusFill',\n '<path 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 10h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarMonth = /*#__PURE__*/ makeIcon(\n 'CalendarMonth',\n '<path d=\"M2.56 11.332 3.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\"/><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-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 BIconCalendarMonthFill = /*#__PURE__*/ makeIcon(\n 'CalendarMonthFill',\n '<path 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.5zm.104 7.305L4.9 10.18H3.284l.8-2.375h.02zm9.074 2.297c0-.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\"/><path d=\"M16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zM2.56 12.332h-.71L3.748 7h.696l1.898 5.332h-.719l-.539-1.602H3.1l-.54 1.602zm7.29-4.105v4.105h-.668v-.539h-.027c-.145.324-.532.605-1.188.605-.847 0-1.453-.484-1.453-1.425V8.227h.676v2.554c0 .766.441 1.012.98 1.012.59 0 1.004-.371 1.004-1.023V8.227h.676zm1.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.687z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarPlus = /*#__PURE__*/ makeIcon(\n 'CalendarPlus',\n '<path 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\"/><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-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 BIconCalendarPlusFill = /*#__PURE__*/ makeIcon(\n 'CalendarPlusFill',\n '<path 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.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 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarRange = /*#__PURE__*/ makeIcon(\n 'CalendarRange',\n '<path d=\"M9 7a1 1 0 0 1 1-1h5v2h-5a1 1 0 0 1-1-1zM1 9h4a1 1 0 0 1 0 2H1V9z\"/><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-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 BIconCalendarRangeFill = /*#__PURE__*/ makeIcon(\n 'CalendarRangeFill',\n '<path 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 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\"/><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-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 BIconCalendarWeekFill = /*#__PURE__*/ makeIcon(\n 'CalendarWeekFill',\n '<path 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 7h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5zm3 0h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5zM2 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-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarX = /*#__PURE__*/ makeIcon(\n 'CalendarX',\n '<path 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\"/><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-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 BIconCalendarXFill = /*#__PURE__*/ makeIcon(\n 'CalendarXFill',\n '<path 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.146 8 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 1 1 .708-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCamera = /*#__PURE__*/ makeIcon(\n 'Camera',\n '<path d=\"M15 12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h1.172a3 3 0 0 0 2.12-.879l.83-.828A1 1 0 0 1 6.827 3h2.344a1 1 0 0 1 .707.293l.828.828A3 3 0 0 0 12.828 5H14a1 1 0 0 1 1 1v6zM2 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 d=\"M8 11a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5zm0 1a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7zM3 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=\"M5 8c0-1.657 2.343-3 4-3V4a4 4 0 0 0-4 4z\"/><path d=\"M12.318 3h2.015C15.253 3 16 3.746 16 4.667v6.666c0 .92-.746 1.667-1.667 1.667h-2.015A5.97 5.97 0 0 1 9 14a5.972 5.972 0 0 1-3.318-1H1.667C.747 13 0 12.254 0 11.333V4.667C0 3.747.746 3 1.667 3H2a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1h.682A5.97 5.97 0 0 1 9 2c1.227 0 2.367.368 3.318 1zM2 4.5a.5.5 0 1 0-1 0 .5.5 0 0 0 1 0zM14 8A5 5 0 1 0 4 8a5 5 0 0 0 10 0z\"/>'\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 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 1 0-1 .5.5 0 0 1 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 d=\"M6 3a3 3 0 1 1-6 0 3 3 0 0 1 6 0zM1 3a2 2 0 1 0 4 0 2 2 0 0 0-4 0z\"/><path d=\"M9 6h.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-2V8a2 2 0 0 1 2-2h7zm6 8.73V7.27l-3.5 1.555v4.35l3.5 1.556zM1 8v6a1 1 0 0 0 1 1h7.5a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1z\"/><path d=\"M9 6a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM7 3a2 2 0 1 1 4 0 2 2 0 0 1-4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCameraReelsFill = /*#__PURE__*/ makeIcon(\n 'CameraReelsFill',\n '<path d=\"M6 3a3 3 0 1 1-6 0 3 3 0 0 1 6 0z\"/><path d=\"M9 6a3 3 0 1 1 0-6 3 3 0 0 1 0 6z\"/><path d=\"M9 6h.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-2V8a2 2 0 0 1 2-2h7z\"/>'\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.175 3.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.56-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.925-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.5 8 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 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 d=\"M14.5 3a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5v-9a.5.5 0 0 1 .5-.5h13zm-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 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 d=\"M14.5 3a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5v-9a.5.5 0 0 1 .5-.5h13zm-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 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-.5zm0-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 d=\"M6.002 5.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/><path 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-13zm13 1a.5.5 0 0 1 .5.5v6l-3.775-1.947a.5.5 0 0 0-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 0 0-.63.062L1.002 12v.54A.505.505 0 0 1 1 12.5v-9a.5.5 0 0 1 .5-.5h13z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCardList = /*#__PURE__*/ makeIcon(\n 'CardList',\n '<path d=\"M14.5 3a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5v-9a.5.5 0 0 1 .5-.5h13zm-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 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-.5zm-1-5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zM4 8a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm0 2.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCardText = /*#__PURE__*/ makeIcon(\n 'CardText',\n '<path d=\"M14.5 3a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5v-9a.5.5 0 0 1 .5-.5h13zm-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 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 d=\"M3.204 5h9.592L8 10.481 3.204 5zm-.753.659 4.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.14 2.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 d=\"M3.626 6.832A.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.5z\"/><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-2V2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretDownSquareFill = /*#__PURE__*/ makeIcon(\n 'CaretDownSquareFill',\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-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 d=\"M10 12.796V3.204L4.519 8 10 12.796zm-.659.753-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.753 5.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 d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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=\"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 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 10V4a.5.5 0 0 0-.832-.374l-4.5 4a.5.5 0 0 0 0 .748l4.5 4A.5.5 0 0 0 10.5 12z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCaretRight = /*#__PURE__*/ makeIcon(\n 'CaretRight',\n '<path d=\"M6 12.796V3.204L11.481 8 6 12.796zm.659.753 5.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.753-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 d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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.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 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 d=\"M3.204 11h9.592L8 5.519 3.204 11zm-.753-.659 4.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.86-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 d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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=\"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 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 9h8a.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 4 11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCart = /*#__PURE__*/ makeIcon(\n 'Cart',\n '<path 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 1 0 2 1 1 0 0 1 0-2zm7 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCart2 = /*#__PURE__*/ makeIcon(\n 'Cart2',\n '<path 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 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 1 0 2 1 1 0 0 1 0-2zm7 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCart4 = /*#__PURE__*/ makeIcon(\n 'Cart4',\n '<path 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 d=\"M11.354 6.354a.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\"/><path 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.5zm3.915 10L3.102 4h10.796l-1.313 7h-8.17zM6 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 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartCheckFill = /*#__PURE__*/ makeIcon(\n 'CartCheckFill',\n '<path 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.5zM6 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-1.646-7.646-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.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartDash = /*#__PURE__*/ makeIcon(\n 'CartDash',\n '<path d=\"M6.5 7a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1h-4z\"/><path 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.5zm3.915 10L3.102 4h10.796l-1.313 7h-8.17zM6 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 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartDashFill = /*#__PURE__*/ makeIcon(\n 'CartDashFill',\n '<path 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.5zM6 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 7h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1 0-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartFill = /*#__PURE__*/ makeIcon(\n 'CartFill',\n '<path 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 1 0 2 1 1 0 0 1 0-2zm7 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartPlus = /*#__PURE__*/ makeIcon(\n 'CartPlus',\n '<path d=\"M9 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\"/><path 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.5zm3.915 10L3.102 4h10.796l-1.313 7h-8.17zM6 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 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartPlusFill = /*#__PURE__*/ makeIcon(\n 'CartPlusFill',\n '<path 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.5zM6 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.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 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartX = /*#__PURE__*/ makeIcon(\n 'CartX',\n '<path d=\"M7.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\"/><path 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.5zm3.915 10L3.102 4h10.796l-1.313 7h-8.17zM6 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 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCartXFill = /*#__PURE__*/ makeIcon(\n 'CartXFill',\n '<path 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.5zM6 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.646 8.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 1 1 .708-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCash = /*#__PURE__*/ makeIcon(\n 'Cash',\n '<path d=\"M8 10a2 2 0 1 0 0-4 2 2 0 0 0 0 4z\"/><path d=\"M0 4a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V4zm3 0a2 2 0 0 1-2 2v4a2 2 0 0 1 2 2h10a2 2 0 0 1 2-2V6a2 2 0 0 1-2-2H3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCashCoin = /*#__PURE__*/ makeIcon(\n 'CashCoin',\n '<path fill-rule=\"evenodd\" d=\"M11 15a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm5-4a5 5 0 1 1-10 0 5 5 0 0 1 10 0z\"/><path d=\"M9.438 11.944c.047.596.518 1.06 1.363 1.116v.44h.375v-.443c.875-.061 1.386-.529 1.386-1.207 0-.618-.39-.936-1.09-1.1l-.296-.07v-1.2c.376.043.614.248.671.532h.658c-.047-.575-.54-1.024-1.329-1.073V8.5h-.375v.45c-.747.073-1.255.522-1.255 1.158 0 .562.378.92 1.007 1.066l.248.061v1.272c-.384-.058-.639-.27-.696-.563h-.668zm1.36-1.354c-.369-.085-.569-.26-.569-.522 0-.294.216-.514.572-.578v1.1h-.003zm.432.746c.449.104.655.272.655.569 0 .339-.257.571-.709.614v-1.195l.054.012z\"/><path d=\"M1 0a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h4.083c.058-.344.145-.678.258-1H3a2 2 0 0 0-2-2V3a2 2 0 0 0 2-2h10a2 2 0 0 0 2 2v3.528c.38.34.717.728 1 1.154V1a1 1 0 0 0-1-1H1z\"/><path d=\"M9.998 5.083 10 5a2 2 0 1 0-3.132 1.65 5.982 5.982 0 0 1 3.13-1.567z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCashStack = /*#__PURE__*/ makeIcon(\n 'CashStack',\n '<path d=\"M1 3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1H1zm7 8a2 2 0 1 0 0-4 2 2 0 0 0 0 4z\"/><path d=\"M0 5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V5zm3 0a2 2 0 0 1-2 2v4a2 2 0 0 1 2 2h10a2 2 0 0 1 2-2V7a2 2 0 0 1-2-2H3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCast = /*#__PURE__*/ makeIcon(\n 'Cast',\n '<path d=\"m7.646 9.354-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 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 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 0zm3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/><path d=\"m2.165 15.803.02-.004c1.83-.363 2.948-.842 3.468-1.105A9.06 9.06 0 0 0 8 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.6a10.437 10.437 0 0 1-.524 2.318l-.003.011a10.722 10.722 0 0 1-.244.637c-.079.186.074.394.273.362a21.673 21.673 0 0 0 .693-.125zm.8-3.108a1 1 0 0 0-.287-.801C1.618 10.83 1 9.468 1 8c0-3.192 3.004-6 7-6s7 2.808 7 6c0 3.193-3.004 6-7 6a8.06 8.06 0 0 1-2.088-.272 1 1 0 0 0-.711.074c-.387.196-1.24.57-2.634.893a10.97 10.97 0 0 0 .398-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatDotsFill = /*#__PURE__*/ makeIcon(\n 'ChatDotsFill',\n '<path 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 0-2 0 1 1 0 0 0 2 0zm4 0a1 1 0 1 0-2 0 1 1 0 0 0 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 d=\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H4.414A2 2 0 0 0 3 11.586l-2 2V2a1 1 0 0 1 1-1h12zM2 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 d=\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H4.414A2 2 0 0 0 3 11.586l-2 2V2a1 1 0 0 1 1-1h12zM2 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 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 0-2 0 1 1 0 0 0 2 0zm4 0a1 1 0 1 0-2 0 1 1 0 0 0 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 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 d=\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H4.414A2 2 0 0 0 3 11.586l-2 2V2a1 1 0 0 1 1-1h12zM2 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=\"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 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.766a1.688 1.688 0 0 0-.227-.272 1.467 1.467 0 0 0-.469-.324l-.008-.004A1.785 1.785 0 0 0 5.734 4C4.776 4 4 4.746 4 5.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 0 0 .011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.461 2.461 0 0 0-.227-.4zM11 7.073c-.136.389-.39.804-.81 1.22a.405.405 0 0 0 .012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.466 2.466 0 0 0-.228-.4 1.686 1.686 0 0 0-.227-.273 1.466 1.466 0 0 0-.469-.324l-.008-.004A1.785 1.785 0 0 0 10.07 4c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftText = /*#__PURE__*/ makeIcon(\n 'ChatLeftText',\n '<path d=\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H4.414A2 2 0 0 0 3 11.586l-2 2V2a1 1 0 0 1 1-1h12zM2 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=\"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 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 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.066 6.76A1.665 1.665 0 0 0 4 7.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 0 0 .6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 0 0 8 7.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 0 0 .6.58c1.486-1.54 1.293-3.214.682-4.112z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatQuoteFill = /*#__PURE__*/ makeIcon(\n 'ChatQuoteFill',\n '<path 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.766a1.688 1.688 0 0 0-.227-.272 1.467 1.467 0 0 0-.469-.324l-.008-.004A1.785 1.785 0 0 0 5.734 6C4.776 6 4 6.746 4 7.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 0 0 .011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.461 2.461 0 0 0-.227-.4zM11 9.073c-.136.389-.39.804-.81 1.22a.405.405 0 0 0 .012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.466 2.466 0 0 0-.228-.4 1.686 1.686 0 0 0-.227-.273 1.466 1.466 0 0 0-.469-.324l-.008-.004A1.785 1.785 0 0 0 10.07 6c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatRight = /*#__PURE__*/ makeIcon(\n 'ChatRight',\n '<path d=\"M2 1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h9.586a2 2 0 0 1 1.414.586l2 2V2a1 1 0 0 0-1-1H2zm12-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 d=\"M2 1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h9.586a2 2 0 0 1 1.414.586l2 2V2a1 1 0 0 0-1-1H2zm12-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 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 1 0-2 1 1 0 0 1 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightFill = /*#__PURE__*/ makeIcon(\n 'ChatRightFill',\n '<path 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 d=\"M2 1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h9.586a2 2 0 0 1 1.414.586l2 2V2a1 1 0 0 0-1-1H2zm12-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=\"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 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 d=\"M2 1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h9.586a2 2 0 0 1 1.414.586l2 2V2a1 1 0 0 0-1-1H2zm12-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=\"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 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 3h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1 0-1zm0 2.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1 0-1zm0 2.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquare = /*#__PURE__*/ makeIcon(\n 'ChatSquare',\n '<path d=\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1h-2.5a2 2 0 0 0-1.6.8L8 14.333 6.1 11.8a2 2 0 0 0-1.6-.8H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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 d=\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1h-2.5a2 2 0 0 0-1.6.8L8 14.333 6.1 11.8a2 2 0 0 0-1.6-.8H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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 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 0-2 0 1 1 0 0 0 2 0zm4 0a1 1 0 1 0-2 0 1 1 0 0 0 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 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 d=\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1h-2.5a2 2 0 0 0-1.6.8L8 14.333 6.1 11.8a2 2 0 0 0-1.6-.8H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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=\"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 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.766a1.688 1.688 0 0 0-.227-.272 1.467 1.467 0 0 0-.469-.324l-.008-.004A1.785 1.785 0 0 0 5.734 4C4.776 4 4 4.746 4 5.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 0 0 .011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.461 2.461 0 0 0-.227-.4zM11 7.073c-.136.389-.39.804-.81 1.22a.405.405 0 0 0 .012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.466 2.466 0 0 0-.228-.4 1.686 1.686 0 0 0-.227-.273 1.466 1.466 0 0 0-.469-.324l-.008-.004A1.785 1.785 0 0 0 10.07 4c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareText = /*#__PURE__*/ makeIcon(\n 'ChatSquareText',\n '<path d=\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1h-2.5a2 2 0 0 0-1.6.8L8 14.333 6.1 11.8a2 2 0 0 0-1.6-.8H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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=\"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 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 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=\"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 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 d=\"M10.97 4.97a.75.75 0 0 1 1.07 1.05l-3.99 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.267.267 0 0 1 .02-.022z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheck2 = /*#__PURE__*/ makeIcon(\n 'Check2',\n '<path 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 d=\"M12.354 4.354a.5.5 0 0 0-.708-.708L5 10.293 1.854 7.146a.5.5 0 1 0-.708.708l3.5 3.5a.5.5 0 0 0 .708 0l7-7zm-4.208 7-.896-.897.707-.707.543.543 6.646-6.647a.5.5 0 0 1 .708.708l-7 7a.5.5 0 0 1-.708 0z\"/><path d=\"m5.354 7.146.896.897-.707.707-.897-.896a.5.5 0 1 1 .708-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheck2Circle = /*#__PURE__*/ makeIcon(\n 'Check2Circle',\n '<path d=\"M2.5 8a5.5 5.5 0 0 1 8.25-4.764.5.5 0 0 0 .5-.866A6.5 6.5 0 1 0 14.5 8a.5.5 0 0 0-1 0 5.5 5.5 0 1 1-11 0z\"/><path d=\"M15.354 3.354a.5.5 0 0 0-.708-.708L8 9.293 5.354 6.646a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0l7-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheck2Square = /*#__PURE__*/ makeIcon(\n 'Check2Square',\n '<path d=\"M3 14.5A1.5 1.5 0 0 1 1.5 13V3A1.5 1.5 0 0 1 3 1.5h8a.5.5 0 0 1 0 1H3a.5.5 0 0 0-.5.5v10a.5.5 0 0 0 .5.5h10a.5.5 0 0 0 .5-.5V8a.5.5 0 0 1 1 0v5a1.5 1.5 0 0 1-1.5 1.5H3z\"/><path d=\"m8.354 10.354 7-7a.5.5 0 0 0-.708-.708L8 9.293 5.354 6.646a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheckAll = /*#__PURE__*/ makeIcon(\n 'CheckAll',\n '<path d=\"M8.97 4.97a.75.75 0 0 1 1.07 1.05l-3.99 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.14.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 d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M10.97 4.97a.235.235 0 0 0-.02.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-1.071-1.05z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheckCircleFill = /*#__PURE__*/ makeIcon(\n 'CheckCircleFill',\n '<path 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 BIconCheckLg = /*#__PURE__*/ makeIcon(\n 'CheckLg',\n '<path d=\"M13.485 1.431a1.473 1.473 0 0 1 2.104 2.062l-7.84 9.801a1.473 1.473 0 0 1-2.12.04L.431 8.138a1.473 1.473 0 0 1 2.084-2.083l4.111 4.112 6.82-8.69a.486.486 0 0 1 .04-.045z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheckSquare = /*#__PURE__*/ makeIcon(\n 'CheckSquare',\n '<path d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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=\"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.235.235 0 0 1 .02-.022z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCheckSquareFill = /*#__PURE__*/ makeIcon(\n 'CheckSquareFill',\n '<path 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 1 .011 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.75.75 0 0 1 1.08-.022z\"/>'\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 d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 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 d=\"M8 15A7 7 0 1 0 8 1v14zm0 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 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 d=\"M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-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=\"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\"/><path 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 d=\"M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-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 BIconClipboardData = /*#__PURE__*/ makeIcon(\n 'ClipboardData',\n '<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\"/><path 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 d=\"M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-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 BIconClipboardMinus = /*#__PURE__*/ makeIcon(\n 'ClipboardMinus',\n '<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\"/><path 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 d=\"M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-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 BIconClipboardPlus = /*#__PURE__*/ makeIcon(\n 'ClipboardPlus',\n '<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\"/><path 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 d=\"M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-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 BIconClipboardX = /*#__PURE__*/ makeIcon(\n 'ClipboardX',\n '<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\"/><path 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 d=\"M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-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 BIconClock = /*#__PURE__*/ makeIcon(\n 'Clock',\n '<path d=\"M8 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\"/><path d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zm7-8A7 7 0 1 1 1 8a7 7 0 0 1 14 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconClockFill = /*#__PURE__*/ makeIcon(\n 'ClockFill',\n '<path 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 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 d=\"M8 1a7 7 0 1 0 4.95 11.95l.707.707A8.001 8.001 0 1 1 8 0v1z\"/><path 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 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=\"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\"/><path 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 BIconCloudArrowDownFill = /*#__PURE__*/ makeIcon(\n 'CloudArrowDownFill',\n '<path 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.854-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=\"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\"/><path 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 BIconCloudArrowUpFill = /*#__PURE__*/ makeIcon(\n 'CloudArrowUpFill',\n '<path 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.146a.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-2a.5.5 0 0 1 .708 0l2 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudCheck = /*#__PURE__*/ makeIcon(\n 'CloudCheck',\n '<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\"/><path 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 BIconCloudCheckFill = /*#__PURE__*/ makeIcon(\n 'CloudCheckFill',\n '<path 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.854-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.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudDownload = /*#__PURE__*/ makeIcon(\n 'CloudDownload',\n '<path 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 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 BIconCloudDrizzle = /*#__PURE__*/ makeIcon(\n 'CloudDrizzle',\n '<path d=\"M4.158 12.025a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317zm6 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317zm-3.5 1.5a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317zm6 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317zm.747-8.498a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 11H13a3 3 0 0 0 .405-5.973zM8.5 2a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4.002 4.002 0 0 1 8.5 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudDrizzleFill = /*#__PURE__*/ makeIcon(\n 'CloudDrizzleFill',\n '<path d=\"M4.158 12.025a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317zm6 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317zm-3.5 1.5a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317zm6 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317zm.747-8.498a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 11H13a3 3 0 0 0 .405-5.973z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudFill = /*#__PURE__*/ makeIcon(\n 'CloudFill',\n '<path 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 BIconCloudFog = /*#__PURE__*/ makeIcon(\n 'CloudFog',\n '<path d=\"M3 13.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-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm10.405-9.473a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 12H13a3 3 0 0 0 .405-5.973zM8.5 3a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4.002 4.002 0 0 1 8.5 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudFog2 = /*#__PURE__*/ makeIcon(\n 'CloudFog2',\n '<path d=\"M8.5 4a4.002 4.002 0 0 0-3.8 2.745.5.5 0 1 1-.949-.313 5.002 5.002 0 0 1 9.654.595A3 3 0 0 1 13 13H.5a.5.5 0 0 1 0-1H13a2 2 0 0 0 .001-4h-.026a.5.5 0 0 1-.5-.445A4 4 0 0 0 8.5 4zM0 8.5A.5.5 0 0 1 .5 8h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zm0 2a.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 BIconCloudFog2Fill = /*#__PURE__*/ makeIcon(\n 'CloudFog2Fill',\n '<path d=\"M8.5 3a5.001 5.001 0 0 1 4.905 4.027A3 3 0 0 1 13 13h-1.5a.5.5 0 0 0 0-1H1.05a3.51 3.51 0 0 1-.713-1H9.5a.5.5 0 0 0 0-1H.035a3.53 3.53 0 0 1 0-1H7.5a.5.5 0 0 0 0-1H.337a3.5 3.5 0 0 1 3.57-1.977A5.001 5.001 0 0 1 8.5 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudFogFill = /*#__PURE__*/ makeIcon(\n 'CloudFogFill',\n '<path d=\"M3 13.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-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm10.405-9.473a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 12H13a3 3 0 0 0 .405-5.973z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudHail = /*#__PURE__*/ makeIcon(\n 'CloudHail',\n '<path d=\"M13.405 4.527a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10.5H13a3 3 0 0 0 .405-5.973zM8.5 1.5a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1-.001 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4.002 4.002 0 0 1 8.5 1.5zM3.75 15.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0zm.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316zM7.75 15.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0zm.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316zm3.592 3.724a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0zm.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudHailFill = /*#__PURE__*/ makeIcon(\n 'CloudHailFill',\n '<path d=\"M3.75 15.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0zm.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316zM7.75 15.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0zm.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316zm3.592 3.724a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0zm.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316zm1.247-6.999a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10.5H13a3 3 0 0 0 .405-5.973z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudHaze = /*#__PURE__*/ makeIcon(\n 'CloudHaze',\n '<path d=\"M8.5 3a4.002 4.002 0 0 0-3.8 2.745.5.5 0 1 1-.949-.313 5.002 5.002 0 0 1 9.654.595A3 3 0 0 1 13 12H4.5a.5.5 0 0 1 0-1H13a2 2 0 0 0 .001-4h-.026a.5.5 0 0 1-.5-.445A4 4 0 0 0 8.5 3zM0 7.5A.5.5 0 0 1 .5 7h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm2 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm-2 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 BIconCloudHaze1 = /*#__PURE__*/ makeIcon(\n 'CloudHaze1',\n '<path d=\"M4 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm-3 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm2 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zM13.405 4.027a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973zM8.5 1a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4.002 4.002 0 0 1 8.5 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudHaze2Fill = /*#__PURE__*/ makeIcon(\n 'CloudHaze2Fill',\n '<path d=\"M8.5 2a5.001 5.001 0 0 1 4.905 4.027A3 3 0 0 1 13 12H3.5A3.5 3.5 0 0 1 .035 9H5.5a.5.5 0 0 0 0-1H.035a3.5 3.5 0 0 1 3.871-2.977A5.001 5.001 0 0 1 8.5 2zm-6 8a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1h-9zM0 13.5a.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 BIconCloudHazeFill = /*#__PURE__*/ makeIcon(\n 'CloudHazeFill',\n '<path d=\"M4 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm-3 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm2 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zM13.405 4.027a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudLightning = /*#__PURE__*/ makeIcon(\n 'CloudLightning',\n '<path d=\"M13.405 4.027a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973zM8.5 1a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4.002 4.002 0 0 1 8.5 1zM7.053 11.276A.5.5 0 0 1 7.5 11h1a.5.5 0 0 1 .474.658l-.28.842H9.5a.5.5 0 0 1 .39.812l-2 2.5a.5.5 0 0 1-.875-.433L7.36 14H6.5a.5.5 0 0 1-.447-.724l1-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudLightningFill = /*#__PURE__*/ makeIcon(\n 'CloudLightningFill',\n '<path d=\"M7.053 11.276A.5.5 0 0 1 7.5 11h1a.5.5 0 0 1 .474.658l-.28.842H9.5a.5.5 0 0 1 .39.812l-2 2.5a.5.5 0 0 1-.875-.433L7.36 14H6.5a.5.5 0 0 1-.447-.724l1-2zm6.352-7.249a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudLightningRain = /*#__PURE__*/ makeIcon(\n 'CloudLightningRain',\n '<path d=\"M2.658 11.026a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316zm9.5 0a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316zm-7.5 1.5a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316zm9.5 0a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316zm-.753-8.499a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973zM8.5 1a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4.002 4.002 0 0 1 8.5 1zM7.053 11.276A.5.5 0 0 1 7.5 11h1a.5.5 0 0 1 .474.658l-.28.842H9.5a.5.5 0 0 1 .39.812l-2 2.5a.5.5 0 0 1-.875-.433L7.36 14H6.5a.5.5 0 0 1-.447-.724l1-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudLightningRainFill = /*#__PURE__*/ makeIcon(\n 'CloudLightningRainFill',\n '<path d=\"M2.658 11.026a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316zm9.5 0a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316zm-7.5 1.5a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316zm9.5 0a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316zm-7.105-1.25A.5.5 0 0 1 7.5 11h1a.5.5 0 0 1 .474.658l-.28.842H9.5a.5.5 0 0 1 .39.812l-2 2.5a.5.5 0 0 1-.875-.433L7.36 14H6.5a.5.5 0 0 1-.447-.724l1-2zm6.352-7.249a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudMinus = /*#__PURE__*/ makeIcon(\n 'CloudMinus',\n '<path 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 BIconCloudMinusFill = /*#__PURE__*/ makeIcon(\n 'CloudMinusFill',\n '<path 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.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudMoon = /*#__PURE__*/ makeIcon(\n 'CloudMoon',\n '<path d=\"M7 8a3.5 3.5 0 0 1 3.5 3.555.5.5 0 0 0 .625.492A1.503 1.503 0 0 1 13 13.5a1.5 1.5 0 0 1-1.5 1.5H3a2 2 0 1 1 .1-3.998.5.5 0 0 0 .509-.375A3.502 3.502 0 0 1 7 8zm4.473 3a4.5 4.5 0 0 0-8.72-.99A3 3 0 0 0 3 16h8.5a2.5 2.5 0 0 0 0-5h-.027z\"/><path d=\"M11.286 1.778a.5.5 0 0 0-.565-.755 4.595 4.595 0 0 0-3.18 5.003 5.46 5.46 0 0 1 1.055.209A3.603 3.603 0 0 1 9.83 2.617a4.593 4.593 0 0 0 4.31 5.744 3.576 3.576 0 0 1-2.241.634c.162.317.295.652.394 1a4.59 4.59 0 0 0 3.624-2.04.5.5 0 0 0-.565-.755 3.593 3.593 0 0 1-4.065-5.422z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudMoonFill = /*#__PURE__*/ makeIcon(\n 'CloudMoonFill',\n '<path d=\"M11.473 11a4.5 4.5 0 0 0-8.72-.99A3 3 0 0 0 3 16h8.5a2.5 2.5 0 0 0 0-5h-.027z\"/><path d=\"M11.286 1.778a.5.5 0 0 0-.565-.755 4.595 4.595 0 0 0-3.18 5.003 5.46 5.46 0 0 1 1.055.209A3.603 3.603 0 0 1 9.83 2.617a4.593 4.593 0 0 0 4.31 5.744 3.576 3.576 0 0 1-2.241.634c.162.317.295.652.394 1a4.59 4.59 0 0 0 3.624-2.04.5.5 0 0 0-.565-.755 3.593 3.593 0 0 1-4.065-5.422z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudPlus = /*#__PURE__*/ makeIcon(\n 'CloudPlus',\n '<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\"/><path 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 BIconCloudPlusFill = /*#__PURE__*/ makeIcon(\n 'CloudPlusFill',\n '<path 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 4v1.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 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudRain = /*#__PURE__*/ makeIcon(\n 'CloudRain',\n '<path d=\"M4.158 12.025a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317zm3 0a.5.5 0 0 1 .316.633l-1 3a.5.5 0 0 1-.948-.316l1-3a.5.5 0 0 1 .632-.317zm3 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317zm3 0a.5.5 0 0 1 .316.633l-1 3a.5.5 0 1 1-.948-.316l1-3a.5.5 0 0 1 .632-.317zm.247-6.998a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 11H13a3 3 0 0 0 .405-5.973zM8.5 2a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4.002 4.002 0 0 1 8.5 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudRainFill = /*#__PURE__*/ makeIcon(\n 'CloudRainFill',\n '<path d=\"M4.158 12.025a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317zm3 0a.5.5 0 0 1 .316.633l-1 3a.5.5 0 1 1-.948-.316l1-3a.5.5 0 0 1 .632-.317zm3 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317zm3 0a.5.5 0 0 1 .316.633l-1 3a.5.5 0 1 1-.948-.316l1-3a.5.5 0 0 1 .632-.317zm.247-6.998a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 11H13a3 3 0 0 0 .405-5.973z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudRainHeavy = /*#__PURE__*/ makeIcon(\n 'CloudRainHeavy',\n '<path d=\"M4.176 11.032a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 1 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293zm3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 1 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293zm3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 1 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293zm3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 0 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293zm.229-7.005a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973zM8.5 1a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4.002 4.002 0 0 1 8.5 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudRainHeavyFill = /*#__PURE__*/ makeIcon(\n 'CloudRainHeavyFill',\n '<path d=\"M4.176 11.032a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 0 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293zm3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 0 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293zm3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 0 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293zm3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 0 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293zm.229-7.005a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973z\"/>'\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.45-.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.661z\"/><path d=\"m13.646 14.354-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.87-12-12 .708-.708 12 12-.707.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudSleet = /*#__PURE__*/ makeIcon(\n 'CloudSleet',\n '<path d=\"M13.405 4.027a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973zM8.5 1a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4.002 4.002 0 0 1 8.5 1zM2.375 13.5a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 1 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223zM6.375 13.5a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 1 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223zm2.151 2.447a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 1 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudSleetFill = /*#__PURE__*/ makeIcon(\n 'CloudSleetFill',\n '<path d=\"M2.375 13.5a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 1 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 1 1-.248-.434l.495-.283-.495-.283a.25.25 0 1 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 0 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223zM6.375 13.5a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 1 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 1 1-.248-.434l.495-.283-.495-.283a.25.25 0 1 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 0 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223zm2.151 2.447a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 1 1-.248.434l-.501-.286v.569a.25.25 0 0 1-.5 0v-.57l-.501.287a.25.25 0 1 1-.248-.434l.495-.283-.495-.283a.25.25 0 1 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 1 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223zm1.181-7.026a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudSnow = /*#__PURE__*/ makeIcon(\n 'CloudSnow',\n '<path d=\"M13.405 4.277a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10.25H13a3 3 0 0 0 .405-5.973zM8.5 1.25a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1-.001 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4.002 4.002 0 0 1 8.5 1.25zM2.625 11.5a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm2.75 2a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm5.5 0a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm-2.75-2a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm5.5 0a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudSnowFill = /*#__PURE__*/ makeIcon(\n 'CloudSnowFill',\n '<path d=\"M2.625 11.5a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm2.75 2a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm5.5 0a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 0 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm-2.75-2a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm5.5 0a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 0 1-.5 0v-.57l-.501.287a.25.25 0 1 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25zm-.22-7.223a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10.25H13a3 3 0 0 0 .405-5.973z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudSun = /*#__PURE__*/ makeIcon(\n 'CloudSun',\n '<path d=\"M7 8a3.5 3.5 0 0 1 3.5 3.555.5.5 0 0 0 .624.492A1.503 1.503 0 0 1 13 13.5a1.5 1.5 0 0 1-1.5 1.5H3a2 2 0 1 1 .1-3.998.5.5 0 0 0 .51-.375A3.502 3.502 0 0 1 7 8zm4.473 3a4.5 4.5 0 0 0-8.72-.99A3 3 0 0 0 3 16h8.5a2.5 2.5 0 0 0 0-5h-.027z\"/><path d=\"M10.5 1.5a.5.5 0 0 0-1 0v1a.5.5 0 0 0 1 0v-1zm3.743 1.964a.5.5 0 1 0-.707-.707l-.708.707a.5.5 0 0 0 .708.708l.707-.708zm-7.779-.707a.5.5 0 0 0-.707.707l.707.708a.5.5 0 1 0 .708-.708l-.708-.707zm1.734 3.374a2 2 0 1 1 3.296 2.198c.199.281.372.582.516.898a3 3 0 1 0-4.84-3.225c.352.011.696.055 1.028.129zm4.484 4.074c.6.215 1.125.59 1.522 1.072a.5.5 0 0 0 .039-.742l-.707-.707a.5.5 0 0 0-.854.377zM14.5 6.5a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudSunFill = /*#__PURE__*/ makeIcon(\n 'CloudSunFill',\n '<path d=\"M11.473 11a4.5 4.5 0 0 0-8.72-.99A3 3 0 0 0 3 16h8.5a2.5 2.5 0 0 0 0-5h-.027z\"/><path d=\"M10.5 1.5a.5.5 0 0 0-1 0v1a.5.5 0 0 0 1 0v-1zm3.743 1.964a.5.5 0 1 0-.707-.707l-.708.707a.5.5 0 0 0 .708.708l.707-.708zm-7.779-.707a.5.5 0 0 0-.707.707l.707.708a.5.5 0 1 0 .708-.708l-.708-.707zm1.734 3.374a2 2 0 1 1 3.296 2.198c.199.281.372.582.516.898a3 3 0 1 0-4.84-3.225c.352.011.696.055 1.028.129zm4.484 4.074c.6.215 1.125.59 1.522 1.072a.5.5 0 0 0 .039-.742l-.707-.707a.5.5 0 0 0-.854.377zM14.5 6.5a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z\"/>'\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 BIconClouds = /*#__PURE__*/ makeIcon(\n 'Clouds',\n '<path d=\"M16 7.5a2.5 2.5 0 0 1-1.456 2.272 3.513 3.513 0 0 0-.65-.824 1.5 1.5 0 0 0-.789-2.896.5.5 0 0 1-.627-.421 3 3 0 0 0-5.22-1.625 5.587 5.587 0 0 0-1.276.088 4.002 4.002 0 0 1 7.392.91A2.5 2.5 0 0 1 16 7.5z\"/><path d=\"M7 5a4.5 4.5 0 0 1 4.473 4h.027a2.5 2.5 0 0 1 0 5H3a3 3 0 0 1-.247-5.99A4.502 4.502 0 0 1 7 5zm3.5 4.5a3.5 3.5 0 0 0-6.89-.873.5.5 0 0 1-.51.375A2 2 0 1 0 3 13h8.5a1.5 1.5 0 1 0-.376-2.953.5.5 0 0 1-.624-.492V9.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudsFill = /*#__PURE__*/ makeIcon(\n 'CloudsFill',\n '<path d=\"M11.473 9a4.5 4.5 0 0 0-8.72-.99A3 3 0 0 0 3 14h8.5a2.5 2.5 0 1 0-.027-5z\"/><path d=\"M14.544 9.772a3.506 3.506 0 0 0-2.225-1.676 5.502 5.502 0 0 0-6.337-4.002 4.002 4.002 0 0 1 7.392.91 2.5 2.5 0 0 1 1.17 4.769z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudy = /*#__PURE__*/ makeIcon(\n 'Cloudy',\n '<path d=\"M13.405 8.527a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 14.5H13a3 3 0 0 0 .405-5.973zM8.5 5.5a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1-.001 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4.002 4.002 0 0 1 8.5 5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCloudyFill = /*#__PURE__*/ makeIcon(\n 'CloudyFill',\n '<path d=\"M13.405 7.027a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 13H13a3 3 0 0 0 .405-5.973z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCode = /*#__PURE__*/ makeIcon(\n 'Code',\n '<path d=\"M5.854 4.854a.5.5 0 1 0-.708-.708l-3.5 3.5a.5.5 0 0 0 0 .708l3.5 3.5a.5.5 0 0 0 .708-.708L2.707 8l3.147-3.146zm4.292 0a.5.5 0 0 1 .708-.708l3.5 3.5a.5.5 0 0 1 0 .708l-3.5 3.5a.5.5 0 0 1-.708-.708L13.293 8l-3.147-3.146z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCodeSlash = /*#__PURE__*/ makeIcon(\n 'CodeSlash',\n '<path d=\"M10.478 1.647a.5.5 0 1 0-.956-.294l-4 13a.5.5 0 0 0 .956.294l4-13zM4.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 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCodeSquare = /*#__PURE__*/ makeIcon(\n 'CodeSquare',\n '<path d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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=\"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 BIconCoin = /*#__PURE__*/ makeIcon(\n 'Coin',\n '<path d=\"M5.5 9.511c.076.954.83 1.697 2.182 1.785V12h.6v-.709c1.4-.098 2.218-.846 2.218-1.932 0-.987-.626-1.496-1.745-1.76l-.473-.112V5.57c.6.068.982.396 1.074.85h1.052c-.076-.919-.864-1.638-2.126-1.716V4h-.6v.719c-1.195.117-2.01.836-2.01 1.853 0 .9.606 1.472 1.613 1.707l.397.098v2.034c-.615-.093-1.022-.43-1.114-.9H5.5zm2.177-2.166c-.59-.137-.91-.416-.91-.836 0-.47.345-.822.915-.925v1.76h-.005zm.692 1.193c.717.166 1.048.435 1.048.91 0 .542-.412.914-1.135.982V8.518l.087.02z\"/><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 13.5a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11zm0 .5A6 6 0 1 0 8 2a6 6 0 0 0 0 12z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCollection = /*#__PURE__*/ makeIcon(\n 'Collection',\n '<path d=\"M2.5 3.5a.5.5 0 0 1 0-1h11a.5.5 0 0 1 0 1h-11zm2-2a.5.5 0 0 1 0-1h7a.5.5 0 0 1 0 1h-7zM0 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 6v7zm1.5.5A.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.5h-13z\"/>'\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 6v7zM2 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 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 1zm2.765 5.576A.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.5z\"/><path 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-13zm13-1a.5.5 0 0 0 .5-.5V6a.5.5 0 0 0-.5-.5h-13A.5.5 0 0 0 1 6v7a.5.5 0 0 0 .5.5h13z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCollectionPlayFill = /*#__PURE__*/ makeIcon(\n 'CollectionPlayFill',\n '<path d=\"M2.5 3.5a.5.5 0 0 1 0-1h11a.5.5 0 0 1 0 1h-11zm2-2a.5.5 0 0 1 0-1h7a.5.5 0 0 1 0 1h-7zM0 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 6v7zm6.258-6.437a.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 BIconColumns = /*#__PURE__*/ makeIcon(\n 'Columns',\n '<path d=\"M0 2a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V2zm8.5 0v8H15V2H8.5zm0 9v3H15v-3H8.5zm-1-9H1v3h6.5V2zM1 14h6.5V6H1v8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconColumnsGap = /*#__PURE__*/ makeIcon(\n 'ColumnsGap',\n '<path d=\"M6 1v3H1V1h5zM1 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 12v3h-5v-3h5zm-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 8v7H1V8h5zM1 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-6v7h-5V1h5zm-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 d=\"M3.5 2A1.5 1.5 0 0 1 5 3.5V5H3.5a1.5 1.5 0 1 1 0-3zM6 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 1v4H6V6h4zm1-1V3.5A1.5 1.5 0 1 1 12.5 5H11zm0 6h1.5a1.5 1.5 0 1 1-1.5 1.5V11zm-6 0v1.5A1.5 1.5 0 1 1 3.5 11H5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCompass = /*#__PURE__*/ makeIcon(\n 'Compass',\n '<path 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.44 4.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 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.88.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 d=\"M11.5 6.027a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm-1.5 1.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zm2.5-.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm-1.5 1.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zm-6.5-3h1v1h1v1h-1v1h-1v-1h-1v-1h1v-1z\"/><path d=\"M3.051 3.26a.5.5 0 0 1 .354-.613l1.932-.518a.5.5 0 0 1 .62.39c.655-.079 1.35-.117 2.043-.117.72 0 1.443.041 2.12.126a.5.5 0 0 1 .622-.399l1.932.518a.5.5 0 0 1 .306.729c.14.09.266.19.373.297.408.408.78 1.05 1.095 1.772.32.733.599 1.591.805 2.466.206.875.34 1.78.364 2.606.024.816-.059 1.602-.328 2.21a1.42 1.42 0 0 1-1.445.83c-.636-.067-1.115-.394-1.513-.773-.245-.232-.496-.526-.739-.808-.126-.148-.25-.292-.368-.423-.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.423-.243.282-.494.575-.739.808-.398.38-.877.706-1.513.773a1.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.772a2.34 2.34 0 0 1 .433-.335.504.504 0 0 1-.028-.079zm2.036.412c-.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-.504C4.861 9.969 5.978 9.027 8 9.027s3.139.942 3.965 1.855c.164.181.307.348.44.504.214.251.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\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCpu = /*#__PURE__*/ makeIcon(\n 'Cpu',\n '<path 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 d=\"M6.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\"/><path 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.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-3A1.5 1.5 0 0 1 6.5 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCreditCard = /*#__PURE__*/ makeIcon(\n 'CreditCard',\n '<path 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 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-1z\"/><path 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-2H2zm13 2v5H1V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1zm-1 9H2a1 1 0 0 1-1-1v-1h14v1a1 1 0 0 1-1 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCreditCard2BackFill = /*#__PURE__*/ makeIcon(\n 'CreditCard2BackFill',\n '<path 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-2zM0 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 d=\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12zM2 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-1zm0 3a.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 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 2v1H0V4zm0 3v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7H0zm3 2h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCrop = /*#__PURE__*/ makeIcon(\n 'Crop',\n '<path 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 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 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 d=\"M13.902.334a.5.5 0 0 1-.28.65l-2.254.902-.4 1.927c.376.095.715.215.972.367.228.135.56.396.56.82 0 .046-.004.09-.011.132l-.962 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 5.132A.78.78 0 0 1 3.5 5c0-.424.332-.685.56-.82.262-.154.607-.276.99-.372C5.824 3.614 6.867 3.5 8 3.5c.712 0 1.389.045 1.985.127l.464-2.215a.5.5 0 0 1 .303-.356l2.5-1a.5.5 0 0 1 .65.278zM9.768 4.607A13.991 13.991 0 0 0 8 4.5c-1.076 0-2.033.11-2.707.278A3.284 3.284 0 0 0 4.645 5c.146.073.362.15.648.222C5.967 5.39 6.924 5.5 8 5.5c.571 0 1.109-.03 1.588-.085l.18-.808zm.292 1.756C9.445 6.45 8.742 6.5 8 6.5c-1.133 0-2.176-.114-2.95-.308a5.514 5.514 0 0 1-.435-.127l.838 8.03c.013.121.06.186.102.215.357.249 1.168.69 2.438.69 1.27 0 2.081-.441 2.438-.69.042-.029.09-.094.102-.215l.852-8.03a5.517 5.517 0 0 1-.435.127 8.88 8.88 0 0 1-.89.17zM4.467 4.884s.003.002.005.006l-.005-.006zm7.066 0-.005.006c.002-.004.005-.006.005-.006zM11.354 5a3.174 3.174 0 0 0-.604-.21l-.099.445.055-.013c.286-.072.502-.149.648-.222z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCurrencyBitcoin = /*#__PURE__*/ makeIcon(\n 'CurrencyBitcoin',\n '<path d=\"M5.5 13v1.25c0 .138.112.25.25.25h1a.25.25 0 0 0 .25-.25V13h.5v1.25c0 .138.112.25.25.25h1a.25.25 0 0 0 .25-.25V13h.084c1.992 0 3.416-1.033 3.416-2.82 0-1.502-1.007-2.323-2.186-2.44v-.088c.97-.242 1.683-.974 1.683-2.19C11.997 3.93 10.847 3 9.092 3H9V1.75a.25.25 0 0 0-.25-.25h-1a.25.25 0 0 0-.25.25V3h-.573V1.75a.25.25 0 0 0-.25-.25H5.75a.25.25 0 0 0-.25.25V3l-1.998.011a.25.25 0 0 0-.25.25v.989c0 .137.11.25.248.25l.755-.005a.75.75 0 0 1 .745.75v5.505a.75.75 0 0 1-.75.75l-.748.011a.25.25 0 0 0-.25.25v1c0 .138.112.25.25.25L5.5 13zm1.427-8.513h1.719c.906 0 1.438.498 1.438 1.312 0 .871-.575 1.362-1.877 1.362h-1.28V4.487zm0 4.051h1.84c1.137 0 1.756.58 1.756 1.524 0 .953-.626 1.45-2.158 1.45H6.927V8.539z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCurrencyDollar = /*#__PURE__*/ makeIcon(\n 'CurrencyDollar',\n '<path d=\"M4 10.781c.148 1.667 1.513 2.85 3.591 3.003V15h1.043v-1.216c2.27-.179 3.678-1.438 3.678-3.3 0-1.59-.947-2.51-2.956-3.028l-.722-.187V3.467c1.122.11 1.879.714 2.07 1.616h1.47c-.166-1.6-1.54-2.748-3.54-2.875V1H7.591v1.233c-1.939.23-3.27 1.472-3.27 3.156 0 1.454.966 2.483 2.661 2.917l.61.162v4.031c-1.149-.17-1.94-.8-2.131-1.718H4zm3.391-3.836c-1.043-.263-1.6-.825-1.6-1.616 0-.944.704-1.641 1.8-1.828v3.495l-.2-.05zm1.591 1.872c1.287.323 1.852.859 1.852 1.769 0 1.097-.826 1.828-2.2 1.939V8.73l.348.086z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCurrencyEuro = /*#__PURE__*/ makeIcon(\n 'CurrencyEuro',\n '<path d=\"M4 9.42h1.063C5.4 12.323 7.317 14 10.34 14c.622 0 1.167-.068 1.659-.185v-1.3c-.484.119-1.045.17-1.659.17-2.1 0-3.455-1.198-3.775-3.264h4.017v-.928H6.497v-.936c0-.11 0-.219.008-.329h4.078v-.927H6.618c.388-1.898 1.719-2.985 3.723-2.985.614 0 1.175.05 1.659.177V2.194A6.617 6.617 0 0 0 10.341 2c-2.928 0-4.82 1.569-5.244 4.3H4v.928h1.01v1.265H4v.928z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCurrencyExchange = /*#__PURE__*/ makeIcon(\n 'CurrencyExchange',\n '<path d=\"M0 5a5.002 5.002 0 0 0 4.027 4.905 6.46 6.46 0 0 1 .544-2.073C3.695 7.536 3.132 6.864 3 5.91h-.5v-.426h.466V5.05c0-.046 0-.093.004-.135H2.5v-.427h.511C3.236 3.24 4.213 2.5 5.681 2.5c.316 0 .59.031.819.085v.733a3.46 3.46 0 0 0-.815-.082c-.919 0-1.538.466-1.734 1.252h1.917v.427h-1.98c-.003.046-.003.097-.003.147v.422h1.983v.427H3.93c.118.602.468 1.03 1.005 1.229a6.5 6.5 0 0 1 4.97-3.113A5.002 5.002 0 0 0 0 5zm16 5.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0zm-7.75 1.322c.069.835.746 1.485 1.964 1.562V14h.54v-.62c1.259-.086 1.996-.74 1.996-1.69 0-.865-.563-1.31-1.57-1.54l-.426-.1V8.374c.54.06.884.347.966.745h.948c-.07-.804-.779-1.433-1.914-1.502V7h-.54v.629c-1.076.103-1.808.732-1.808 1.622 0 .787.544 1.288 1.45 1.493l.358.085v1.78c-.554-.08-.92-.376-1.003-.787H8.25zm1.96-1.895c-.532-.12-.82-.364-.82-.732 0-.41.311-.719.824-.809v1.54h-.005zm.622 1.044c.645.145.943.38.943.796 0 .474-.37.8-1.02.86v-1.674l.077.018z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCurrencyPound = /*#__PURE__*/ makeIcon(\n 'CurrencyPound',\n '<path d=\"M4 8.585h1.969c.115.465.186.939.186 1.43 0 1.385-.736 2.496-2.075 2.771V14H12v-1.24H6.492v-.129c.825-.525 1.135-1.446 1.135-2.694 0-.465-.07-.913-.168-1.352h3.29v-.972H7.22c-.186-.723-.372-1.455-.372-2.247 0-1.274 1.047-2.066 2.58-2.066a5.32 5.32 0 0 1 2.103.465V2.456A5.629 5.629 0 0 0 9.348 2C6.865 2 5.322 3.291 5.322 5.366c0 .775.195 1.515.399 2.247H4v.972z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCurrencyYen = /*#__PURE__*/ makeIcon(\n 'CurrencyYen',\n '<path d=\"M8.75 14v-2.629h2.446v-.967H8.75v-1.31h2.445v-.967H9.128L12.5 2h-1.699L8.047 7.327h-.086L5.207 2H3.5l3.363 6.127H4.778v.968H7.25v1.31H4.78v.966h2.47V14h1.502z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconCursor = /*#__PURE__*/ makeIcon(\n 'Cursor',\n '<path 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 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 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 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 d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path 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 BIconDashCircleDotted = /*#__PURE__*/ makeIcon(\n 'DashCircleDotted',\n '<path d=\"M8 0c-.176 0-.35.006-.523.017l.064.998a7.117 7.117 0 0 1 .918 0l.064-.998A8.113 8.113 0 0 0 8 0zM6.44.152c-.346.069-.684.16-1.012.27l.321.948c.287-.098.582-.177.884-.237L6.44.153zm4.132.271a7.946 7.946 0 0 0-1.011-.27l-.194.98c.302.06.597.14.884.237l.321-.947zm1.873.925a8 8 0 0 0-.906-.524l-.443.896c.275.136.54.29.793.459l.556-.831zM4.46.824c-.314.155-.616.33-.905.524l.556.83a7.07 7.07 0 0 1 .793-.458L4.46.824zM2.725 1.985c-.262.23-.51.478-.74.74l.752.66c.202-.23.418-.446.648-.648l-.66-.752zm11.29.74a8.058 8.058 0 0 0-.74-.74l-.66.752c.23.202.447.418.648.648l.752-.66zm1.161 1.735a7.98 7.98 0 0 0-.524-.905l-.83.556c.169.253.322.518.458.793l.896-.443zM1.348 3.555c-.194.289-.37.591-.524.906l.896.443c.136-.275.29-.54.459-.793l-.831-.556zM.423 5.428a7.945 7.945 0 0 0-.27 1.011l.98.194c.06-.302.14-.597.237-.884l-.947-.321zM15.848 6.44a7.943 7.943 0 0 0-.27-1.012l-.948.321c.098.287.177.582.237.884l.98-.194zM.017 7.477a8.113 8.113 0 0 0 0 1.046l.998-.064a7.117 7.117 0 0 1 0-.918l-.998-.064zM16 8a8.1 8.1 0 0 0-.017-.523l-.998.064a7.11 7.11 0 0 1 0 .918l.998.064A8.1 8.1 0 0 0 16 8zM.152 9.56c.069.346.16.684.27 1.012l.948-.321a6.944 6.944 0 0 1-.237-.884l-.98.194zm15.425 1.012c.112-.328.202-.666.27-1.011l-.98-.194c-.06.302-.14.597-.237.884l.947.321zM.824 11.54a8 8 0 0 0 .524.905l.83-.556a6.999 6.999 0 0 1-.458-.793l-.896.443zm13.828.905c.194-.289.37-.591.524-.906l-.896-.443c-.136.275-.29.54-.459.793l.831.556zm-12.667.83c.23.262.478.51.74.74l.66-.752a7.047 7.047 0 0 1-.648-.648l-.752.66zm11.29.74c.262-.23.51-.478.74-.74l-.752-.66c-.201.23-.418.447-.648.648l.66.752zm-1.735 1.161c.314-.155.616-.33.905-.524l-.556-.83a7.07 7.07 0 0 1-.793.458l.443.896zm-7.985-.524c.289.194.591.37.906.524l.443-.896a6.998 6.998 0 0 1-.793-.459l-.556.831zm1.873.925c.328.112.666.202 1.011.27l.194-.98a6.953 6.953 0 0 1-.884-.237l-.321.947zm4.132.271a7.944 7.944 0 0 0 1.012-.27l-.321-.948a6.954 6.954 0 0 1-.884.237l.194.98zm-2.083.135a8.1 8.1 0 0 0 1.046 0l-.064-.998a7.11 7.11 0 0 1-.918 0l-.064.998zM4.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 BIconDashCircleFill = /*#__PURE__*/ makeIcon(\n 'DashCircleFill',\n '<path 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 BIconDashLg = /*#__PURE__*/ makeIcon(\n 'DashLg',\n '<path d=\"M0 8a1 1 0 0 1 1-1h14a1 1 0 1 1 0 2H1a1 1 0 0 1-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDashSquare = /*#__PURE__*/ makeIcon(\n 'DashSquare',\n '<path d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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=\"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 BIconDashSquareDotted = /*#__PURE__*/ makeIcon(\n 'DashSquareDotted',\n '<path d=\"M2.5 0c-.166 0-.33.016-.487.048l.194.98A1.51 1.51 0 0 1 2.5 1h.458V0H2.5zm2.292 0h-.917v1h.917V0zm1.833 0h-.917v1h.917V0zm1.833 0h-.916v1h.916V0zm1.834 0h-.917v1h.917V0zm1.833 0h-.917v1h.917V0zM13.5 0h-.458v1h.458c.1 0 .199.01.293.029l.194-.981A2.51 2.51 0 0 0 13.5 0zm2.079 1.11a2.511 2.511 0 0 0-.69-.689l-.556.831c.164.11.305.251.415.415l.83-.556zM1.11.421a2.511 2.511 0 0 0-.689.69l.831.556c.11-.164.251-.305.415-.415L1.11.422zM16 2.5c0-.166-.016-.33-.048-.487l-.98.194c.018.094.028.192.028.293v.458h1V2.5zM.048 2.013A2.51 2.51 0 0 0 0 2.5v.458h1V2.5c0-.1.01-.199.029-.293l-.981-.194zM0 3.875v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zM0 5.708v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zM0 7.542v.916h1v-.916H0zm15 .916h1v-.916h-1v.916zM0 9.375v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zm-16 .916v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zm-16 .917v.458c0 .166.016.33.048.487l.98-.194A1.51 1.51 0 0 1 1 13.5v-.458H0zm16 .458v-.458h-1v.458c0 .1-.01.199-.029.293l.981.194c.032-.158.048-.32.048-.487zM.421 14.89c.183.272.417.506.69.689l.556-.831a1.51 1.51 0 0 1-.415-.415l-.83.556zm14.469.689c.272-.183.506-.417.689-.69l-.831-.556c-.11.164-.251.305-.415.415l.556.83zm-12.877.373c.158.032.32.048.487.048h.458v-1H2.5c-.1 0-.199-.01-.293-.029l-.194.981zM13.5 16c.166 0 .33-.016.487-.048l-.194-.98A1.51 1.51 0 0 1 13.5 15h-.458v1h.458zm-9.625 0h.917v-1h-.917v1zm1.833 0h.917v-1h-.917v1zm1.834 0h.916v-1h-.916v1zm1.833 0h.917v-1h-.917v1zm1.833 0h.917v-1h-.917v1zM4.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 BIconDashSquareFill = /*#__PURE__*/ makeIcon(\n 'DashSquareFill',\n '<path 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.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1z\"/>'\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 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 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 '<circle cx=\"8\" cy=\"8\" r=\"1.5\"/><path d=\"M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h10zM3 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\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice1Fill = /*#__PURE__*/ makeIcon(\n 'Dice1Fill',\n '<path 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 1 0-3 1.5 1.5 0 0 1 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice2 = /*#__PURE__*/ makeIcon(\n 'Dice2',\n '<path d=\"M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h10zM3 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\"/><path d=\"M5.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 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice2Fill = /*#__PURE__*/ makeIcon(\n 'Dice2Fill',\n '<path 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 0-3 0 1.5 1.5 0 0 0 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 d=\"M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h10zM3 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\"/><path d=\"M5.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 0zm-4-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 BIconDice3Fill = /*#__PURE__*/ makeIcon(\n 'Dice3Fill',\n '<path 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 1 0-3 1.5 1.5 0 0 1 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice4 = /*#__PURE__*/ makeIcon(\n 'Dice4',\n '<path d=\"M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h10zM3 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\"/><path d=\"M5.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 0zm0 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm-8 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 BIconDice4Fill = /*#__PURE__*/ makeIcon(\n 'Dice4Fill',\n '<path 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 1 0-3 1.5 1.5 0 0 1 0 3zm8 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 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 1 0-3 1.5 1.5 0 0 1 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice5 = /*#__PURE__*/ makeIcon(\n 'Dice5',\n '<path d=\"M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h10zM3 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\"/><path d=\"M5.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 0zm0 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm-8 0a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm4-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 BIconDice5Fill = /*#__PURE__*/ makeIcon(\n 'Dice5Fill',\n '<path 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 1 0-3 1.5 1.5 0 0 1 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 1 0-3 1.5 1.5 0 0 1 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice6 = /*#__PURE__*/ makeIcon(\n 'Dice6',\n '<path d=\"M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h10zM3 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\"/><path d=\"M5.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 0zm0 8a1.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 0zm-8 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\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDice6Fill = /*#__PURE__*/ makeIcon(\n 'Dice6Fill',\n '<path 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 1 0-3 1.5 1.5 0 0 1 0 3zm8 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 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 1 0-3 1.5 1.5 0 0 1 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 1 0-3 1.5 1.5 0 0 1 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDisc = /*#__PURE__*/ makeIcon(\n 'Disc',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M10 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0zM8 4a4 4 0 0 0-4 4 .5.5 0 0 1-1 0 5 5 0 0 1 5-5 .5.5 0 0 1 0 1zm4.5 3.5a.5.5 0 0 1 .5.5 5 5 0 0 1-5 5 .5.5 0 0 1 0-1 4 4 0 0 0 4-4 .5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDiscFill = /*#__PURE__*/ makeIcon(\n 'DiscFill',\n '<path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-6 0a2 2 0 1 0-4 0 2 2 0 0 0 4 0zM4 8a4 4 0 0 1 4-4 .5.5 0 0 0 0-1 5 5 0 0 0-5 5 .5.5 0 0 0 1 0zm9 0a.5.5 0 1 0-1 0 4 4 0 0 1-4 4 .5.5 0 0 0 0 1 5 5 0 0 0 5-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDiscord = /*#__PURE__*/ makeIcon(\n 'Discord',\n '<path d=\"M6.552 6.712c-.456 0-.816.4-.816.888s.368.888.816.888c.456 0 .816-.4.816-.888.008-.488-.36-.888-.816-.888zm2.92 0c-.456 0-.816.4-.816.888s.368.888.816.888c.456 0 .816-.4.816-.888s-.36-.888-.816-.888z\"/><path d=\"M13.36 0H2.64C1.736 0 1 .736 1 1.648v10.816c0 .912.736 1.648 1.64 1.648h9.072l-.424-1.48 1.024.952.968.896L15 16V1.648C15 .736 14.264 0 13.36 0zm-3.088 10.448s-.288-.344-.528-.648c1.048-.296 1.448-.952 1.448-.952-.328.216-.64.368-.92.472-.4.168-.784.28-1.16.344a5.604 5.604 0 0 1-2.072-.008 6.716 6.716 0 0 1-1.176-.344 4.688 4.688 0 0 1-.584-.272c-.024-.016-.048-.024-.072-.04-.016-.008-.024-.016-.032-.024-.144-.08-.224-.136-.224-.136s.384.64 1.4.944c-.24.304-.536.664-.536.664-1.768-.056-2.44-1.216-2.44-1.216 0-2.576 1.152-4.664 1.152-4.664 1.152-.864 2.248-.84 2.248-.84l.08.096c-1.44.416-2.104 1.048-2.104 1.048s.176-.096.472-.232c.856-.376 1.536-.48 1.816-.504.048-.008.088-.016.136-.016a6.521 6.521 0 0 1 4.024.752s-.632-.6-1.992-1.016l.112-.128s1.096-.024 2.248.84c0 0 1.152 2.088 1.152 4.664 0 0-.68 1.16-2.448 1.216z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDisplay = /*#__PURE__*/ makeIcon(\n 'Display',\n '<path d=\"M0 4s0-2 2-2h12s2 0 2 2v6s0 2-2 2h-4c0 .667.083 1.167.25 1.5H11a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1h.75c.167-.333.25-.833.25-1.5H2s-2 0-2-2V4zm1.398-.855a.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 3H2c-.325 0-.502.078-.602.145z\"/>'\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 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 d=\"M12 1a1 1 0 0 1 1 1v13h1.5a.5.5 0 0 1 0 1h-13a.5.5 0 0 1 0-1H3V2a1 1 0 0 1 1-1h8zm-2 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 d=\"M8.5 10c-.276 0-.5-.448-.5-1s.224-1 .5-1 .5.448.5 1-.224 1-.5 1z\"/><path d=\"M10.828.122A.5.5 0 0 1 11 .5V1h.5A1.5 1.5 0 0 1 13 2.5V15h1.5a.5.5 0 0 1 0 1h-13a.5.5 0 0 1 0-1H3V1.5a.5.5 0 0 1 .43-.495l7-1a.5.5 0 0 1 .398.117zM11.5 2H11v13h1V2.5a.5.5 0 0 0-.5-.5zM4 1.934V15h6V1.077l-6 .857z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconDoorOpenFill = /*#__PURE__*/ makeIcon(\n 'DoorOpenFill',\n '<path 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 2h.5a.5.5 0 0 1 .5.5V15h-1V2zm-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 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 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 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 0a.5.5 0 0 1 .473.337L9.046 2H14a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1h-1.85l1.323 3.837a.5.5 0 1 1-.946.326L11.092 11H8.5v3a.5.5 0 0 1-1 0v-3H4.908l-1.435 4.163a.5.5 0 1 1-.946-.326L3.85 11H2a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1h4.954L7.527.337A.5.5 0 0 1 8 0zM2 3v7h12V3H2z\"/>'\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 2H2a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h1.85l-1.323 3.837a.5.5 0 1 0 .946.326L4.908 11H7.5v2.5a.5.5 0 0 0 1 0V11h2.592l1.435 4.163a.5.5 0 0 0 .946-.326L12.15 11H14a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H9.046L8.473.337z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEgg = /*#__PURE__*/ makeIcon(\n 'Egg',\n '<path d=\"M8 15a5 5 0 0 1-5-5c0-1.956.69-4.286 1.742-6.12.524-.913 1.112-1.658 1.704-2.164C7.044 1.206 7.572 1 8 1c.428 0 .956.206 1.554.716.592.506 1.18 1.251 1.704 2.164C12.31 5.714 13 8.044 13 10a5 5 0 0 1-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 d=\"M8 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/><path d=\"M13.997 5.17a5 5 0 0 0-8.101-4.09A5 5 0 0 0 1.28 9.342a5 5 0 0 0 8.336 5.109 3.5 3.5 0 0 0 5.201-4.065 3.001 3.001 0 0 0-.822-5.216zm-1-.034a1 1 0 0 0 .668.977 2.001 2.001 0 0 1 .547 3.478 1 1 0 0 0-.341 1.113 2.5 2.5 0 0 1-3.715 2.905 1 1 0 0 0-1.262.152 4 4 0 0 1-6.67-4.087 1 1 0 0 0-.2-1 4 4 0 0 1 3.693-6.61 1 1 0 0 0 .8-.2 4 4 0 0 1 6.48 3.273z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEject = /*#__PURE__*/ makeIcon(\n 'Eject',\n '<path 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.5 8 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 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 d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path 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.683zm6.991-8.38a.5.5 0 1 1 .448.894l-1.009.504c.176.27.285.64.285 1.049 0 .828-.448 1.5-1 1.5s-1-.672-1-1.5c0-.247.04-.48.11-.686a.502.502 0 0 1 .166-.761l2-1zm-6.552 0a.5.5 0 0 0-.448.894l1.009.504A1.94 1.94 0 0 0 5 6.5C5 7.328 5.448 8 6 8s1-.672 1-1.5c0-.247-.04-.48-.11-.686a.502.502 0 0 0-.166-.761l-2-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiAngryFill = /*#__PURE__*/ makeIcon(\n 'EmojiAngryFill',\n '<path 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 1-.183-.683A4.498 4.498 0 0 1 8 9.5a4.5 4.5 0 0 1 3.898 2.25.5.5 0 1 1-.866.5A3.498 3.498 0 0 0 8 10.5a3.498 3.498 0 0 0-3.032 1.75.5.5 0 0 1-.683.183zM10 8c-.552 0-1-.672-1-1.5 0-.247.04-.48.11-.686a.502.502 0 0 1 .166-.761l2-1a.5.5 0 1 1 .448.894l-1.009.504c.176.27.285.64.285 1.049 0 .828-.448 1.5-1 1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiDizzy = /*#__PURE__*/ makeIcon(\n 'EmojiDizzy',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path 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-.708zM10 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 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 1 0-4 2 2 0 0 1 0 4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiExpressionless = /*#__PURE__*/ makeIcon(\n 'EmojiExpressionless',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path 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 d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zM4.5 6h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm5 0h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm-5 4h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiFrown = /*#__PURE__*/ makeIcon(\n 'EmojiFrown',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path 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.683zM7 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 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 1-.183-.683A4.498 4.498 0 0 1 8 9.5a4.5 4.5 0 0 1 3.898 2.25.5.5 0 0 1-.866.5A3.498 3.498 0 0 0 8 10.5a3.498 3.498 0 0 0-3.032 1.75.5.5 0 0 1-.683.183zM10 8c-.552 0-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiHeartEyes = /*#__PURE__*/ makeIcon(\n 'EmojiHeartEyes',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path 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 d=\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 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 d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path 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.5zM7 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 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.42 6.629 10.218 6.5 10 6.5c-.218 0-.42.13-.585.235C9.164 6.896 9 7 9 6.5c0-.828.448-1.5 1-1.5s1 .672 1 1.5c0 .501-.164.396-.415.235z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiNeutral = /*#__PURE__*/ makeIcon(\n 'EmojiNeutral',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M4 10.5a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7a.5.5 0 0 0-.5.5zm3-4C7 5.672 6.552 5 6 5s-1 .672-1 1.5S5.448 8 6 8s1-.672 1-1.5zm4 0c0-.828-.448-1.5-1-1.5s-1 .672-1 1.5S9.448 8 10 8s1-.672 1-1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiNeutralFill = /*#__PURE__*/ makeIcon(\n 'EmojiNeutralFill',\n '<path 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.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSmile = /*#__PURE__*/ makeIcon(\n 'EmojiSmile',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path 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-.683zM7 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 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.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSmileUpsideDown = /*#__PURE__*/ makeIcon(\n 'EmojiSmileUpsideDown',\n '<path d=\"M8 1a7 7 0 1 0 0 14A7 7 0 0 0 8 1zm0-1a8 8 0 1 1 0 16A8 8 0 0 1 8 0z\"/><path 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.683zM7 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 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.5S10.552 8 10 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSunglasses = /*#__PURE__*/ makeIcon(\n 'EmojiSunglasses',\n '<path d=\"M4.968 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.75zM7 5.116V5a1 1 0 0 0-1-1H3.28a1 1 0 0 0-.97 1.243l.311 1.242A2 2 0 0 0 4.561 8H5a2 2 0 0 0 1.994-1.839A2.99 2.99 0 0 1 8 6c.393 0 .74.064 1.006.161A2 2 0 0 0 11 8h.438a2 2 0 0 0 1.94-1.515l.311-1.242A1 1 0 0 0 12.72 4H10a1 1 0 0 0-1 1v.116A4.22 4.22 0 0 0 8 5c-.35 0-.69.04-1 .116z\"/><path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-1 0A7 7 0 1 0 1 8a7 7 0 0 0 14 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSunglassesFill = /*#__PURE__*/ makeIcon(\n 'EmojiSunglassesFill',\n '<path 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.75A3.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 .866-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiWink = /*#__PURE__*/ makeIcon(\n 'EmojiWink',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path 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-.683zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm1.757-.437a.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 d=\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0zM7 6.5C7 5.672 6.552 5 6 5s-1 .672-1 1.5S5.448 8 6 8s1-.672 1-1.5zM4.285 9.567a.5.5 0 0 0-.183.683A4.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.75.5.5 0 0 0-.683-.183zm5.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 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.383-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 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 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 BIconEraser = /*#__PURE__*/ makeIcon(\n 'Eraser',\n '<path d=\"M8.086 2.207a2 2 0 0 1 2.828 0l3.879 3.879a2 2 0 0 1 0 2.828l-5.5 5.5A2 2 0 0 1 7.879 15H5.12a2 2 0 0 1-1.414-.586l-2.5-2.5a2 2 0 0 1 0-2.828l6.879-6.879zm2.121.707a1 1 0 0 0-1.414 0L4.16 7.547l5.293 5.293 4.633-4.633a1 1 0 0 0 0-1.414l-3.879-3.879zM8.746 13.547 3.453 8.254 1.914 9.793a1 1 0 0 0 0 1.414l2.5 2.5a1 1 0 0 0 .707.293H7.88a1 1 0 0 0 .707-.293l.16-.16z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEraserFill = /*#__PURE__*/ makeIcon(\n 'EraserFill',\n '<path d=\"M8.086 2.207a2 2 0 0 1 2.828 0l3.879 3.879a2 2 0 0 1 0 2.828l-5.5 5.5A2 2 0 0 1 7.879 15H5.12a2 2 0 0 1-1.414-.586l-2.5-2.5a2 2 0 0 1 0-2.828l6.879-6.879zm.66 11.34L3.453 8.254 1.914 9.793a1 1 0 0 0 0 1.414l2.5 2.5a1 1 0 0 0 .707.293H7.88a1 1 0 0 0 .707-.293l.16-.16z\"/>'\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.553.553 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 d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 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 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 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 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 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995A.905.905 0 0 1 8 4zm.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationLg = /*#__PURE__*/ makeIcon(\n 'ExclamationLg',\n '<path d=\"M6.002 14a2 2 0 1 1 4 0 2 2 0 0 1-4 0zm.195-12.01a1.81 1.81 0 1 1 3.602 0l-.701 7.015a1.105 1.105 0 0 1-2.2 0l-.7-7.015z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationOctagon = /*#__PURE__*/ makeIcon(\n 'ExclamationOctagon',\n '<path 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 1 1 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 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 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995A.905.905 0 0 1 8 4zm.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationSquare = /*#__PURE__*/ makeIcon(\n 'ExclamationSquare',\n '<path d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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 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 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995A.905.905 0 0 1 8 4zm.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationTriangle = /*#__PURE__*/ makeIcon(\n 'ExclamationTriangle',\n '<path d=\"M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016.146.146 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 0 1-.054.06.116.116 0 0 1-.066.017H1.146a.115.115 0 0 1-.066-.017.163.163 0 0 1-.054-.06.176.176 0 0 1 .002-.183L7.884 2.073a.147.147 0 0 1 .054-.057zm1.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 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 5c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995A.905.905 0 0 1 8 5zm.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconExclude = /*#__PURE__*/ makeIcon(\n 'Exclude',\n '<path 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 2H5a1 1 0 0 0-1 1v7h7a1 1 0 0 0 1-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEye = /*#__PURE__*/ makeIcon(\n 'Eye',\n '<path d=\"M16 8s-3-5.5-8-5.5S0 8 0 8s3 5.5 8 5.5S16 8 16 8zM1.173 8a13.133 13.133 0 0 1 1.66-2.043C4.12 4.668 5.88 3.5 8 3.5c2.12 0 3.879 1.168 5.168 2.457A13.133 13.133 0 0 1 14.828 8c-.058.087-.122.183-.195.288-.335.48-.83 1.12-1.465 1.755C11.879 11.332 10.119 12.5 8 12.5c-2.12 0-3.879-1.168-5.168-2.457A13.134 13.134 0 0 1 1.172 8z\"/><path 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 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.299.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.709zm10.296 8.884-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.912-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.708-2.829-2.83a2.5 2.5 0 0 1 2.829 2.829zm3.171 6-12-12 .708-.708 12 12-.708.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEyedropper = /*#__PURE__*/ makeIcon(\n 'Eyedropper',\n '<path d=\"M13.354.646a1.207 1.207 0 0 0-1.708 0L8.5 3.793l-.646-.647a.5.5 0 1 0-.708.708L8.293 5l-7.147 7.146A.5.5 0 0 0 1 12.5v1.793l-.854.853a.5.5 0 1 0 .708.707L1.707 15H3.5a.5.5 0 0 0 .354-.146L11 7.707l1.146 1.147a.5.5 0 0 0 .708-.708l-.647-.646 3.147-3.146a1.207 1.207 0 0 0 0-1.708l-2-2zM2 12.707l7-7L10.293 7l-7 7H2v-1.293z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconEyeglasses = /*#__PURE__*/ makeIcon(\n 'Eyeglasses',\n '<path d=\"M4 6a2 2 0 1 1 0 4 2 2 0 0 1 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 1-4 0 2 2 0 0 1 4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFacebook = /*#__PURE__*/ makeIcon(\n 'Facebook',\n '<path d=\"M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFile = /*#__PURE__*/ makeIcon(\n 'File',\n '<path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileArrowDown = /*#__PURE__*/ makeIcon(\n 'FileArrowDown',\n '<path 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\"/><path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileArrowDownFill = /*#__PURE__*/ makeIcon(\n 'FileArrowDownFill',\n '<path 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 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\"/><path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileArrowUpFill = /*#__PURE__*/ makeIcon(\n 'FileArrowUpFill',\n '<path 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.707 6.354 7.854a.5.5 0 1 1-.708-.708l2-2a.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.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileBarGraph = /*#__PURE__*/ makeIcon(\n 'FileBarGraph',\n '<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\"/><path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileBarGraphFill = /*#__PURE__*/ makeIcon(\n 'FileBarGraphFill',\n '<path 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.5v-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm-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 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\"/><path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileBinaryFill = /*#__PURE__*/ makeIcon(\n 'FileBinaryFill',\n '<path d=\"M5.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.146z\"/><path 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.203zm3.805 1.52V13h-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 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-.5zM12 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 d=\"M4 0h8a2 2 0 0 1 2 2v7H2V2a2 2 0 0 1 2-2zM2 12h12v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-2zM.5 10a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1H.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileCheck = /*#__PURE__*/ makeIcon(\n 'FileCheck',\n '<path 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\"/><path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileCheckFill = /*#__PURE__*/ makeIcon(\n 'FileCheckFill',\n '<path 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.854-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.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileCode = /*#__PURE__*/ makeIcon(\n 'FileCode',\n '<path d=\"M6.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\"/><path 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-2V2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileCodeFill = /*#__PURE__*/ makeIcon(\n 'FileCodeFill',\n '<path 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 0 2 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 1 1 .708-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileDiff = /*#__PURE__*/ makeIcon(\n 'FileDiff',\n '<path 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 4zm-2.5 6.5A.5.5 0 0 1 6 10h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/><path 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-2V2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileDiffFill = /*#__PURE__*/ makeIcon(\n 'FileDiffFill',\n '<path 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.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 1 0zM6 10h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmark = /*#__PURE__*/ makeIcon(\n 'FileEarmark',\n '<path d=\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5L14 4.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkArrowDown = /*#__PURE__*/ makeIcon(\n 'FileEarmarkArrowDown',\n '<path d=\"M8.5 6.5a.5.5 0 0 0-1 0v3.793L6.354 9.146a.5.5 0 1 0-.708.708l2 2a.5.5 0 0 0 .708 0l2-2a.5.5 0 0 0-.708-.708L8.5 10.293V6.5z\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkArrowDownFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkArrowDownFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zm-1 4v3.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 11.293V7.5a.5.5 0 0 1 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkArrowUp = /*#__PURE__*/ makeIcon(\n 'FileEarmarkArrowUp',\n '<path d=\"M8.5 11.5a.5.5 0 0 1-1 0V7.707L6.354 8.854a.5.5 0 1 1-.708-.708l2-2a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 7.707V11.5z\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkArrowUpFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkArrowUpFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.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=\"M10 13.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\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBarGraphFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkBarGraphFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zm.5 10v-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm-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=\"M7.05 11.885c0 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\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBinaryFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkBinaryFill',\n '<path d=\"M5.526 10.273c-.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.146z\"/><path d=\"M9.293 0H4a2 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 0zM9.5 3.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.203zm3.805 1.52V14h-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 d=\"M14 4.5V9h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v7H2V2a2 2 0 0 1 2-2h5.5L14 4.5zM13 12h1v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-2h1v2a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1v-2zM.5 10a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1H.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBreakFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkBreakFill',\n '<path d=\"M4 0h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V9H2V2a2 2 0 0 1 2-2zm5.5 1.5v2a1 1 0 0 0 1 1h2l-3-3zM2 12h12v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-2zM.5 10a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1H.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkCheck = /*#__PURE__*/ makeIcon(\n 'FileEarmarkCheck',\n '<path d=\"M10.854 7.854a.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\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkCheckFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkCheckFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zm1.354 4.354-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.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkCode = /*#__PURE__*/ makeIcon(\n 'FileEarmarkCode',\n '<path d=\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5L14 4.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h-2z\"/><path 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 d=\"M9.293 0H4a2 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 0zM9.5 3.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 0 2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 10 8.646 8.354a.5.5 0 1 1 .708-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkDiff = /*#__PURE__*/ makeIcon(\n 'FileEarmarkDiff',\n '<path d=\"M8 5a.5.5 0 0 1 .5.5V7H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V8H6a.5.5 0 0 1 0-1h1.5V5.5A.5.5 0 0 1 8 5zm-2.5 6.5A.5.5 0 0 1 6 11h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5z\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkDiffFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkDiffFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.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=\"M8.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\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkEaselFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkEaselFill',\n '<path d=\"M5 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\"/><path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM8.5 6h2A1.5 1.5 0 0 1 12 7.5v2a1.5 1.5 0 0 1-1.5 1.5h-.473l.447 1.342a.5.5 0 0 1-.948.316L8.973 11H8.5v1a.5.5 0 0 1-1 0v-1h-.473l-.553 1.658a.5.5 0 1 1-.948-.316L5.973 11H5.5A1.5 1.5 0 0 1 4 9.5v-2A1.5 1.5 0 0 1 5.5 6h2a.5.5 0 0 1 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkExcel = /*#__PURE__*/ makeIcon(\n 'FileEarmarkExcel',\n '<path d=\"M5.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\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkExcelFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkExcelFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM5.884 6.68 8 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 1 1 .768-.64z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkFill',\n '<path d=\"M4 0h5.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-2V2a2 2 0 0 1 2-2zm5.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=\"M10.943 6H5.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\"/><path d=\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5L14 4.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkFontFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkFontFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.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 d=\"M6.502 7a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/><path d=\"M14 14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5L14 4.5V14zM4 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 10V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkImageFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkImageFill',\n '<path d=\"M4 0h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707v5.586l-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-2zm5.5 1.5v2a1 1 0 0 0 1 1h2l-3-3zm-1.498 4a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0z\"/><path d=\"M10.564 8.27 14 11.708V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-.293l3.578-3.577 2.56 1.536 2.426-3.395z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkLock = /*#__PURE__*/ makeIcon(\n 'FileEarmarkLock',\n '<path d=\"M10 7v1.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 0zM7 7v1h2V7a1 1 0 0 0-2 0zM6 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.125C6.02 9.193 6 9.258 6 9.3z\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkLock2 = /*#__PURE__*/ makeIcon(\n 'FileEarmarkLock2',\n '<path d=\"M10 7v1.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 0zM7 7v1h2V7a1 1 0 0 0-2 0z\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkLock2Fill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkLock2Fill',\n '<path d=\"M7 7a1 1 0 0 1 2 0v1H7V7z\"/><path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM10 7v1.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 d=\"M7 7a1 1 0 0 1 2 0v1H7V7zM6 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\"/><path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM10 7v1.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 BIconFileEarmarkMedical = /*#__PURE__*/ makeIcon(\n 'FileEarmarkMedical',\n '<path d=\"M7.5 5.5a.5.5 0 0 0-1 0v.634l-.549-.317a.5.5 0 1 0-.5.866L6 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-.866L8 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\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMedicalFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkMedicalFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zm-3 2v.634l.549-.317a.5.5 0 1 1 .5.866L7 7l.549.317a.5.5 0 1 1-.5.866L6.5 7.866V8.5a.5.5 0 0 1-1 0v-.634l-.549.317a.5.5 0 1 1-.5-.866L5 7l-.549-.317a.5.5 0 0 1 .5-.866l.549.317V5.5a.5.5 0 1 1 1 0zm-2 4.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1zm0 2h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMinus = /*#__PURE__*/ makeIcon(\n 'FileEarmarkMinus',\n '<path 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\"/><path d=\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5L14 4.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMinusFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkMinusFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM6 8.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMusic = /*#__PURE__*/ makeIcon(\n 'FileEarmarkMusic',\n '<path d=\"M11 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\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMusicFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkMusicFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM11 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-.25A1 1 0 0 1 11 6.64z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPdf = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPdf',\n '<path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/><path d=\"M4.603 14.087a.81.81 0 0 1-.438-.42c-.195-.388-.13-.776.08-1.102.198-.307.526-.568.897-.787a7.68 7.68 0 0 1 1.482-.645 19.697 19.697 0 0 0 1.062-2.227 7.269 7.269 0 0 1-.43-1.295c-.086-.4-.119-.796-.046-1.136.075-.354.274-.672.65-.823.192-.077.4-.12.602-.077a.7.7 0 0 1 .477.365c.088.164.12.356.127.538.007.188-.012.396-.047.614-.084.51-.27 1.134-.52 1.794a10.954 10.954 0 0 0 .98 1.686 5.753 5.753 0 0 1 1.334.05c.364.066.734.195.96.465.12.144.193.32.2.518.007.192-.047.382-.138.563a1.04 1.04 0 0 1-.354.416.856.856 0 0 1-.51.138c-.331-.014-.654-.196-.933-.417a5.712 5.712 0 0 1-.911-.95 11.651 11.651 0 0 0-1.997.406 11.307 11.307 0 0 1-1.02 1.51c-.292.35-.609.656-.927.787a.793.793 0 0 1-.58.029zm1.379-1.901c-.166.076-.32.156-.459.238-.328.194-.541.383-.647.547-.094.145-.096.25-.04.361.01.022.02.036.026.044a.266.266 0 0 0 .035-.012c.137-.056.355-.235.635-.572a8.18 8.18 0 0 0 .45-.606zm1.64-1.33a12.71 12.71 0 0 1 1.01-.193 11.744 11.744 0 0 1-.51-.858 20.801 20.801 0 0 1-.5 1.05zm2.446.45c.15.163.296.3.435.41.24.19.407.253.498.256a.107.107 0 0 0 .07-.015.307.307 0 0 0 .094-.125.436.436 0 0 0 .059-.2.095.095 0 0 0-.026-.063c-.052-.062-.2-.152-.518-.209a3.876 3.876 0 0 0-.612-.053zM8.078 7.8a6.7 6.7 0 0 0 .2-.828c.031-.188.043-.343.038-.465a.613.613 0 0 0-.032-.198.517.517 0 0 0-.145.04c-.087.035-.158.106-.196.283-.04.192-.03.469.046.822.024.111.054.227.09.346z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPdfFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPdfFill',\n '<path d=\"M5.523 12.424c.14-.082.293-.162.459-.238a7.878 7.878 0 0 1-.45.606c-.28.337-.498.516-.635.572a.266.266 0 0 1-.035.012.282.282 0 0 1-.026-.044c-.056-.11-.054-.216.04-.36.106-.165.319-.354.647-.548zm2.455-1.647c-.119.025-.237.05-.356.078a21.148 21.148 0 0 0 .5-1.05 12.045 12.045 0 0 0 .51.858c-.217.032-.436.07-.654.114zm2.525.939a3.881 3.881 0 0 1-.435-.41c.228.005.434.022.612.054.317.057.466.147.518.209a.095.095 0 0 1 .026.064.436.436 0 0 1-.06.2.307.307 0 0 1-.094.124.107.107 0 0 1-.069.015c-.09-.003-.258-.066-.498-.256zM8.278 6.97c-.04.244-.108.524-.2.829a4.86 4.86 0 0 1-.089-.346c-.076-.353-.087-.63-.046-.822.038-.177.11-.248.196-.283a.517.517 0 0 1 .145-.04c.013.03.028.092.032.198.005.122-.007.277-.038.465z\"/><path fill-rule=\"evenodd\" d=\"M4 0h5.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-2V2a2 2 0 0 1 2-2zm5.5 1.5v2a1 1 0 0 0 1 1h2l-3-3zM4.165 13.668c.09.18.23.343.438.419.207.075.412.04.58-.03.318-.13.635-.436.926-.786.333-.401.683-.927 1.021-1.51a11.651 11.651 0 0 1 1.997-.406c.3.383.61.713.91.95.28.22.603.403.934.417a.856.856 0 0 0 .51-.138c.155-.101.27-.247.354-.416.09-.181.145-.37.138-.563a.844.844 0 0 0-.2-.518c-.226-.27-.596-.4-.96-.465a5.76 5.76 0 0 0-1.335-.05 10.954 10.954 0 0 1-.98-1.686c.25-.66.437-1.284.52-1.794.036-.218.055-.426.048-.614a1.238 1.238 0 0 0-.127-.538.7.7 0 0 0-.477-.365c-.202-.043-.41 0-.601.077-.377.15-.576.47-.651.823-.073.34-.04.736.046 1.136.088.406.238.848.43 1.295a19.697 19.697 0 0 1-1.062 2.227 7.662 7.662 0 0 0-1.482.645c-.37.22-.699.48-.897.787-.21.326-.275.714-.08 1.103z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPerson = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPerson',\n '<path d=\"M11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0z\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2v9.255S12 12 8 12s-5 1.755-5 1.755V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPersonFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPersonFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.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.755V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-.245S4 12 8 12s5 1.755 5 1.755z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPlay = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPlay',\n '<path d=\"M6 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\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPlayFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPlayFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM6 6.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-.43V6.884z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPlus = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPlus',\n '<path 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\"/><path d=\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5L14 4.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPlusFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPlusFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM8.5 7v1.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 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPost = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPost',\n '<path d=\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5L14 4.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h-2z\"/><path d=\"M4 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-7zm0-3a.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 d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zm-5-.5H7a.5.5 0 0 1 0 1H4.5a.5.5 0 0 1 0-1zm0 3h7a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-7a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPpt = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPpt',\n '<path d=\"M7 5.5a1 1 0 0 0-1 1V13a.5.5 0 0 0 1 0v-2h1.188a2.75 2.75 0 0 0 0-5.5H7zM8.188 10H7V6.5h1.188a1.75 1.75 0 1 1 0 3.5z\"/><path d=\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5L14 4.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPptFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPptFill',\n '<path d=\"M8.188 10H7V6.5h1.188a1.75 1.75 0 1 1 0 3.5z\"/><path d=\"M4 0h5.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-2V2a2 2 0 0 1 2-2zm5.5 1.5v2a1 1 0 0 0 1 1h2l-3-3zM7 5.5a1 1 0 0 0-1 1V13a.5.5 0 0 0 1 0v-2h1.188a2.75 2.75 0 0 0 0-5.5H7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkRichtext = /*#__PURE__*/ makeIcon(\n 'FileEarmarkRichtext',\n '<path d=\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5L14 4.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h-2z\"/><path 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.708 1.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 d=\"M9.293 0H4a2 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 0zM9.5 3.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.542 1.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 11h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1zm0 2h3a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkRuled = /*#__PURE__*/ makeIcon(\n 'FileEarmarkRuled',\n '<path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V9H3V2a1 1 0 0 1 1-1h5.5v2zM3 12v-2h2v2H3zm0 1h2v2H4a1 1 0 0 1-1-1v-1zm3 2v-2h7v1a1 1 0 0 1-1 1H6zm7-3H6v-2h7v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkRuledFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkRuledFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM3 9h10v1H6v2h7v1H6v2H5v-2H3v-1h2v-2H3V9z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkSlides = /*#__PURE__*/ makeIcon(\n 'FileEarmarkSlides',\n '<path d=\"M5 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\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkSlidesFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkSlidesFill',\n '<path d=\"M7 9.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\"/><path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM5 6h6a.5.5 0 0 1 .496.438l.5 4A.5.5 0 0 1 11.5 11h-3v2.016c.863.055 1.5.251 1.5.484 0 .276-.895.5-2 .5s-2-.224-2-.5c0-.233.637-.429 1.5-.484V11h-3a.5.5 0 0 1-.496-.562l.5-4A.5.5 0 0 1 5 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkSpreadsheet = /*#__PURE__*/ makeIcon(\n 'FileEarmarkSpreadsheet',\n '<path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V9H3V2a1 1 0 0 1 1-1h5.5v2zM3 12v-2h2v2H3zm0 1h2v2H4a1 1 0 0 1-1-1v-1zm3 2v-2h3v2H6zm4 0v-2h3v1a1 1 0 0 1-1 1h-2zm3-3h-3v-2h3v2zm-7 0v-2h3v2H6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkSpreadsheetFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkSpreadsheetFill',\n '<path d=\"M6 12v-2h3v2H6z\"/><path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM3 9h10v1h-3v2h3v1h-3v2H9v-2H6v2H5v-2H3v-1h2v-2H3V9z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkText = /*#__PURE__*/ makeIcon(\n 'FileEarmarkText',\n '<path d=\"M5.5 7a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zM5 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-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5z\"/><path d=\"M9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.5L9.5 0zm0 1v2A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkTextFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkTextFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM4.5 9a.5.5 0 0 1 0-1h7a.5.5 0 0 1 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-.5zm.5 2.5a.5.5 0 0 1 0-1h4a.5.5 0 0 1 0 1h-4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkWord = /*#__PURE__*/ makeIcon(\n 'FileEarmarkWord',\n '<path d=\"M5.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\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkWordFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkWordFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM5.485 6.879l1.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 1 1 .97-.242z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkX = /*#__PURE__*/ makeIcon(\n 'FileEarmarkX',\n '<path d=\"M6.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\"/><path d=\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5v2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkXFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkXFill',\n '<path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zM6.854 7.146 8 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 1 1 .708-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkZip = /*#__PURE__*/ makeIcon(\n 'FileEarmarkZip',\n '<path 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=\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5L14 4.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1h-2v1h-1v1h1v1h-1v1h1v1H6V5H5V4h1V3H5V2h1V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5h-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkZipFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkZipFill',\n '<path d=\"M5.5 9.438V8.5h1v.938a1 1 0 0 0 .03.243l.4 1.598-.93.62-.93-.62.4-1.598a1 1 0 0 0 .03-.243z\"/><path d=\"M9.293 0H4a2 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 0zM9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1zm-4-.5V2h-1V1H6v1h1v1H6v1h1v1H6v1h1v1H5.5V6h-1V5h1V4h-1V3h1zm0 4.5h1a1 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.5a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEasel = /*#__PURE__*/ makeIcon(\n 'FileEasel',\n '<path d=\"M8.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\"/><path 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-2V2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileEaselFill = /*#__PURE__*/ makeIcon(\n 'FileEaselFill',\n '<path d=\"M5 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\"/><path 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 5h2A1.5 1.5 0 0 1 12 6.5v2a1.5 1.5 0 0 1-1.5 1.5h-.473l.447 1.342a.5.5 0 0 1-.948.316L8.973 10H8.5v1a.5.5 0 0 1-1 0v-1h-.473l-.553 1.658a.5.5 0 1 1-.948-.316L5.973 10H5.5A1.5 1.5 0 0 1 4 8.5v-2A1.5 1.5 0 0 1 5.5 5h2a.5.5 0 0 1 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileExcel = /*#__PURE__*/ makeIcon(\n 'FileExcel',\n '<path 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\"/><path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileExcelFill = /*#__PURE__*/ makeIcon(\n 'FileExcelFill',\n '<path 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.68 8 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 1 1 .768-.64z\"/>'\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 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\"/><path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileFontFill = /*#__PURE__*/ makeIcon(\n 'FileFontFill',\n '<path 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 d=\"M8.002 5.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/><path 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-2zM3 2a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v8l-2.083-2.083a.5.5 0 0 0-.76.063L8 11 5.835 9.7a.5.5 0 0 0-.611.076L3 12V2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileImageFill = /*#__PURE__*/ makeIcon(\n 'FileImageFill',\n '<path 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-2zm4.002 5.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0z\"/><path d=\"M10.564 8.27 14 11.708V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-.293l3.578-3.577 2.56 1.536 2.426-3.395z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileLock = /*#__PURE__*/ makeIcon(\n 'FileLock',\n '<path d=\"M8 5a1 1 0 0 1 1 1v1H7V6a1 1 0 0 1 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.125A.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.3c0-.042.02-.107.105-.175z\"/><path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileLock2 = /*#__PURE__*/ makeIcon(\n 'FileLock2',\n '<path d=\"M8 5a1 1 0 0 1 1 1v1H7V6a1 1 0 0 1 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\"/><path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileLock2Fill = /*#__PURE__*/ makeIcon(\n 'FileLock2Fill',\n '<path d=\"M7 6a1 1 0 0 1 2 0v1H7V6z\"/><path 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 6v1.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 d=\"M7 6a1 1 0 0 1 2 0v1H7V6zM6 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\"/><path 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 6v1.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 BIconFileMedical = /*#__PURE__*/ makeIcon(\n 'FileMedical',\n '<path d=\"M8.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\"/><path 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-2V2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileMedicalFill = /*#__PURE__*/ makeIcon(\n 'FileMedicalFill',\n '<path 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.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 1 1 1 0zM5.5 9h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1zm0 2h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileMinus = /*#__PURE__*/ makeIcon(\n 'FileMinus',\n '<path 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 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileMinusFill = /*#__PURE__*/ makeIcon(\n 'FileMinusFill',\n '<path 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.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileMusic = /*#__PURE__*/ makeIcon(\n 'FileMusic',\n '<path 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\"/><path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileMusicFill = /*#__PURE__*/ makeIcon(\n 'FileMusicFill',\n '<path 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.11v1.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-.3a1 1 0 0 1 1.196.98z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePdf = /*#__PURE__*/ makeIcon(\n 'FilePdf',\n '<path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/><path d=\"M4.603 12.087a.81.81 0 0 1-.438-.42c-.195-.388-.13-.776.08-1.102.198-.307.526-.568.897-.787a7.68 7.68 0 0 1 1.482-.645 19.701 19.701 0 0 0 1.062-2.227 7.269 7.269 0 0 1-.43-1.295c-.086-.4-.119-.796-.046-1.136.075-.354.274-.672.65-.823.192-.077.4-.12.602-.077a.7.7 0 0 1 .477.365c.088.164.12.356.127.538.007.187-.012.395-.047.614-.084.51-.27 1.134-.52 1.794a10.954 10.954 0 0 0 .98 1.686 5.753 5.753 0 0 1 1.334.05c.364.065.734.195.96.465.12.144.193.32.2.518.007.192-.047.382-.138.563a1.04 1.04 0 0 1-.354.416.856.856 0 0 1-.51.138c-.331-.014-.654-.196-.933-.417a5.716 5.716 0 0 1-.911-.95 11.642 11.642 0 0 0-1.997.406 11.311 11.311 0 0 1-1.021 1.51c-.29.35-.608.655-.926.787a.793.793 0 0 1-.58.029zm1.379-1.901c-.166.076-.32.156-.459.238-.328.194-.541.383-.647.547-.094.145-.096.25-.04.361.01.022.02.036.026.044a.27.27 0 0 0 .035-.012c.137-.056.355-.235.635-.572a8.18 8.18 0 0 0 .45-.606zm1.64-1.33a12.647 12.647 0 0 1 1.01-.193 11.666 11.666 0 0 1-.51-.858 20.741 20.741 0 0 1-.5 1.05zm2.446.45c.15.162.296.3.435.41.24.19.407.253.498.256a.107.107 0 0 0 .07-.015.307.307 0 0 0 .094-.125.436.436 0 0 0 .059-.2.095.095 0 0 0-.026-.063c-.052-.062-.2-.152-.518-.209a3.881 3.881 0 0 0-.612-.053zM8.078 5.8a6.7 6.7 0 0 0 .2-.828c.031-.188.043-.343.038-.465a.613.613 0 0 0-.032-.198.517.517 0 0 0-.145.04c-.087.035-.158.106-.196.283-.04.192-.03.469.046.822.024.111.054.227.09.346z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePdfFill = /*#__PURE__*/ makeIcon(\n 'FilePdfFill',\n '<path d=\"M5.523 10.424c.14-.082.293-.162.459-.238a7.878 7.878 0 0 1-.45.606c-.28.337-.498.516-.635.572a.266.266 0 0 1-.035.012.282.282 0 0 1-.026-.044c-.056-.11-.054-.216.04-.36.106-.165.319-.354.647-.548zm2.455-1.647c-.119.025-.237.05-.356.078a21.035 21.035 0 0 0 .5-1.05 11.96 11.96 0 0 0 .51.858c-.217.032-.436.07-.654.114zm2.525.939a3.888 3.888 0 0 1-.435-.41c.228.005.434.022.612.054.317.057.466.147.518.209a.095.095 0 0 1 .026.064.436.436 0 0 1-.06.2.307.307 0 0 1-.094.124.107.107 0 0 1-.069.015c-.09-.003-.258-.066-.498-.256zM8.278 4.97c-.04.244-.108.524-.2.829a4.86 4.86 0 0 1-.089-.346c-.076-.353-.087-.63-.046-.822.038-.177.11-.248.196-.283a.517.517 0 0 1 .145-.04c.013.03.028.092.032.198.005.122-.007.277-.038.465z\"/><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-2zm.165 11.668c.09.18.23.343.438.419.207.075.412.04.58-.03.318-.13.635-.436.926-.786.333-.401.683-.927 1.021-1.51a11.64 11.64 0 0 1 1.997-.406c.3.383.61.713.91.95.28.22.603.403.934.417a.856.856 0 0 0 .51-.138c.155-.101.27-.247.354-.416.09-.181.145-.37.138-.563a.844.844 0 0 0-.2-.518c-.226-.27-.596-.4-.96-.465a5.76 5.76 0 0 0-1.335-.05 10.954 10.954 0 0 1-.98-1.686c.25-.66.437-1.284.52-1.794.036-.218.055-.426.048-.614a1.238 1.238 0 0 0-.127-.538.7.7 0 0 0-.477-.365c-.202-.043-.41 0-.601.077-.377.15-.576.47-.651.823-.073.34-.04.736.046 1.136.088.406.238.848.43 1.295a19.707 19.707 0 0 1-1.062 2.227 7.662 7.662 0 0 0-1.482.645c-.37.22-.699.48-.897.787-.21.326-.275.714-.08 1.103z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePerson = /*#__PURE__*/ makeIcon(\n 'FilePerson',\n '<path d=\"M12 1a1 1 0 0 1 1 1v10.755S12 11 8 11s-5 1.755-5 1.755V2a1 1 0 0 1 1-1h8zM4 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=\"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 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 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\"/><path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePlayFill = /*#__PURE__*/ makeIcon(\n 'FilePlayFill',\n '<path 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.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-.43V5.884z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePlus = /*#__PURE__*/ makeIcon(\n 'FilePlus',\n '<path d=\"M8.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\"/><path 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-2V2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePlusFill = /*#__PURE__*/ makeIcon(\n 'FilePlusFill',\n '<path 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 6v1.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 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePost = /*#__PURE__*/ makeIcon(\n 'FilePost',\n '<path 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-.5zm0 2a.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 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-2V2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePostFill = /*#__PURE__*/ makeIcon(\n 'FilePostFill',\n '<path 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 3h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1zm0 2h7a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-8a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePpt = /*#__PURE__*/ makeIcon(\n 'FilePpt',\n '<path 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-2V2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"/><path d=\"M6 5a1 1 0 0 1 1-1h1.188a2.75 2.75 0 0 1 0 5.5H7v2a.5.5 0 0 1-1 0V5zm1 3.5h1.188a1.75 1.75 0 1 0 0-3.5H7v3.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilePptFill = /*#__PURE__*/ makeIcon(\n 'FilePptFill',\n '<path d=\"M8.188 8.5H7V5h1.188a1.75 1.75 0 1 1 0 3.5z\"/><path 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-2zm3 4a1 1 0 0 0-1 1v6.5a.5.5 0 0 0 1 0v-2h1.188a2.75 2.75 0 0 0 0-5.5H7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileRichtext = /*#__PURE__*/ makeIcon(\n 'FileRichtext',\n '<path d=\"M7 4.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0zm-.861 1.542 1.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\"/><path 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-2V2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileRichtextFill = /*#__PURE__*/ makeIcon(\n 'FileRichtextFill',\n '<path 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.542 1.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 9h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1zm0 2h3a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileRuled = /*#__PURE__*/ makeIcon(\n 'FileRuled',\n '<path 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 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 d=\"M5 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\"/><path 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-2V2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileSlidesFill = /*#__PURE__*/ makeIcon(\n 'FileSlidesFill',\n '<path d=\"M7 7.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\"/><path 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 4h6a.5.5 0 0 1 .496.438l.5 4A.5.5 0 0 1 11.5 9h-3v2.016c.863.055 1.5.251 1.5.484 0 .276-.895.5-2 .5s-2-.224-2-.5c0-.233.637-.429 1.5-.484V9h-3a.5.5 0 0 1-.496-.562l.5-4A.5.5 0 0 1 5 4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileSpreadsheet = /*#__PURE__*/ makeIcon(\n 'FileSpreadsheet',\n '<path 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 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 d=\"M5 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\"/><path 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-2V2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileTextFill = /*#__PURE__*/ makeIcon(\n 'FileTextFill',\n '<path 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 4h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1zm-.5 2.5A.5.5 0 0 1 5 6h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zM5 8h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1zm0 2h3a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileWord = /*#__PURE__*/ makeIcon(\n 'FileWord',\n '<path 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\"/><path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileWordFill = /*#__PURE__*/ makeIcon(\n 'FileWordFill',\n '<path 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.879l1.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 1 1 .97-.242z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileX = /*#__PURE__*/ makeIcon(\n 'FileX',\n '<path 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\"/><path 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-2H4zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileXFill = /*#__PURE__*/ makeIcon(\n 'FileXFill',\n '<path 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.146 8 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 1 1 .708-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileZip = /*#__PURE__*/ makeIcon(\n 'FileZip',\n '<path 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=\"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-2V2zm5.5-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H9v1H8v1h1v1H8v1h1v1H7.5V5h-1V4h1V3h-1V2h1V1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFileZipFill = /*#__PURE__*/ makeIcon(\n 'FileZipFill',\n '<path d=\"M8.5 9.438V8.5h-1v.938a1 1 0 0 1-.03.243l-.4 1.598.93.62.93-.62-.4-1.598a1 1 0 0 1-.03-.243z\"/><path 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.5v.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-1a1 1 0 0 0-1 1zm1-5.5h-1v1h1v1h-1v1h1v1H9V6H8V5h1V4H8V3h1V2H8V1H6.5v1h1v1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFiles = /*#__PURE__*/ makeIcon(\n 'Files',\n '<path d=\"M13 0H6a2 2 0 0 0-2 2 2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h7a2 2 0 0 0 2-2 2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 13V4a2 2 0 0 0-2-2H5a1 1 0 0 1 1-1h7a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1zM3 4a1 1 0 0 1 1-1h7a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilesAlt = /*#__PURE__*/ makeIcon(\n 'FilesAlt',\n '<path d=\"M11 0H3a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2 2 2 0 0 0 2-2V4a2 2 0 0 0-2-2 2 2 0 0 0-2-2zm2 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1V3zM2 2a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilm = /*#__PURE__*/ makeIcon(\n 'Film',\n '<path 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 0v6h8V1H4zm8 8H4v6h8V9zM1 1v2h2V1H1zm2 3H1v2h2V4zM1 7v2h2V7H1zm2 3H1v2h2v-2zm-2 3v2h2v-2H1zM15 1h-2v2h2V1zm-2 3v2h2V4h-2zm2 3h-2v2h2V7zm-2 3v2h2v-2h-2zm2 3h-2v2h2v-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFilter = /*#__PURE__*/ makeIcon(\n 'Filter',\n '<path 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 d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path 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 d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zM3.5 5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1 0-1zM5 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 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 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 d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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=\"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 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 5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1 0-1zM4 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 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 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 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 0-.998 1.03l.01.091c.012.077.029.176.054.296.049.241.122.542.213.887.182.688.428 1.513.676 2.314L8 5.762l.045-.144c.248-.8.494-1.626.676-2.314.091-.345.164-.646.213-.887a4.997 4.997 0 0 0 .064-.386L9 2a1 1 0 0 0-1-1zM2 9l.03-.002.091-.01a4.99 4.99 0 0 0 .296-.054c.241-.049.542-.122.887-.213a60.59 60.59 0 0 0 2.314-.676L5.762 8l-.144-.045a60.59 60.59 0 0 0-2.314-.676 16.705 16.705 0 0 0-.887-.213 4.99 4.99 0 0 0-.386-.064L2 7a1 1 0 1 0 0 2zm7 5-.002-.03a5.005 5.005 0 0 0-.064-.386 16.398 16.398 0 0 0-.213-.888 60.582 60.582 0 0 0-.676-2.314L8 10.238l-.045.144c-.248.8-.494 1.626-.676 2.314-.091.345-.164.646-.213.887a4.996 4.996 0 0 0-.064.386L7 14a1 1 0 1 0 2 0zm-5.696-2.134.025-.017a5.001 5.001 0 0 0 .303-.248c.184-.164.408-.377.661-.629A60.614 60.614 0 0 0 5.96 9.23l.103-.111-.147.033a60.88 60.88 0 0 0-2.343.572c-.344.093-.64.18-.874.258a5.063 5.063 0 0 0-.367.138l-.027.014a1 1 0 1 0 1 1.732zM4.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 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.875a60.62 60.62 0 0 0-.572 2.342l-.033.147.11-.102a60.848 60.848 0 0 0 1.743-1.667c.252-.253.465-.477.629-.66a5.001 5.001 0 0 0 .248-.304l.017-.025a1 1 0 0 0-.366-1.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.196.017.025a4.996 4.996 0 0 0 .248.303c.164.184.377.408.629.661A60.597 60.597 0 0 0 6.77 5.96l.111.102-.033-.147a60.602 60.602 0 0 0-.572-2.342c-.093-.345-.18-.642-.258-.875a5.006 5.006 0 0 0-.138-.367l-.014-.027a1 1 0 1 0-1.732 1zm9.928 8.196a1 1 0 0 0-.366-1.366l-.027-.014a5 5 0 0 0-.367-.138c-.233-.078-.53-.165-.875-.258a60.619 60.619 0 0 0-2.342-.572l-.147-.033.102.111a60.73 60.73 0 0 0 1.667 1.742c.253.252.477.465.66.629a4.946 4.946 0 0 0 .304.248l.025.017a1 1 0 0 0 1.366-.366zm-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 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-12c0 .073-.01.155-.03.247-.544.241-1.091.638-1.598 1.084A2.987 2.987 0 0 0 8 5c-.494 0-.96.12-1.372.331-.507-.446-1.054-.843-1.597-1.084A1.117 1.117 0 0 1 5 4a3 3 0 0 1 6 0zm-.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 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.468 1.468 0 0 1-.045.205c-.039.132-.1.295-.183.484a12.88 12.88 0 0 1-.637 1.223L8 6.142a21.73 21.73 0 0 1-.135-.23 12.88 12.88 0 0 1-.637-1.223 4.216 4.216 0 0 1-.183-.484A1.473 1.473 0 0 1 7 4a1 1 0 1 1 2 0zM3.67 5.5a1 1 0 0 1 1.366-.366 1.472 1.472 0 0 1 .156.142c.094.1.204.233.326.4.245.333.502.747.742 1.163l.13.232a21.86 21.86 0 0 1-.265.002 12.88 12.88 0 0 1-1.379-.06 4.214 4.214 0 0 1-.51-.083 1.47 1.47 0 0 1-.2-.064A1 1 0 0 1 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.494 1.494 0 0 1-.155-.141 4.225 4.225 0 0 1-.327-.4A12.88 12.88 0 0 1 9.74 9.16a22 22 0 0 1-.13-.232l.265-.002c.48-.001.967.015 1.379.06.205.023.376.051.51.083.066.016.116.031.153.044l.048.02a1 1 0 1 1-1 1.732zM8 9a1 1 0 1 1 0-2 1 1 0 0 1 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFolder = /*#__PURE__*/ makeIcon(\n 'Folder',\n '<path d=\"M.54 3.87.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.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.31zM2.19 4a1 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 4H2.19zm4.69-1.707A1 1 0 0 0 6.172 2H2.5a1 1 0 0 0-1 .981l.006.139C1.72 3.042 1.95 3 2.19 3h5.396l-.707-.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFolder2 = /*#__PURE__*/ makeIcon(\n 'Folder2',\n '<path 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 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 d=\"m.5 3 .04.87a1.99 1.99 0 0 0-.342 1.311l.637 7A2 2 0 0 0 2.826 14H9v-1H2.826a1 1 0 0 1-.995-.91l-.637-7A1 1 0 0 1 2.19 4h11.62a1 1 0 0 1 .996 1.09L14.54 8h1.005l.256-2.819A2 2 0 0 0 13.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 2zm5.672-1a1 1 0 0 1 .707.293L7.586 3H2.19c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 0 1 1-.98h3.672z\"/><path d=\"M15.854 10.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.707 0l-1.5-1.5a.5.5 0 0 1 .707-.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 d=\"M9.828 3h3.982a2 2 0 0 1 1.992 2.181l-.637 7A2 2 0 0 1 13.174 14H2.825a2 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 d=\"m.5 3 .04.87a1.99 1.99 0 0 0-.342 1.311l.637 7A2 2 0 0 0 2.826 14H9v-1H2.826a1 1 0 0 1-.995-.91l-.637-7A1 1 0 0 1 2.19 4h11.62a1 1 0 0 1 .996 1.09L14.54 8h1.005l.256-2.819A2 2 0 0 0 13.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 2zm5.672-1a1 1 0 0 1 .707.293L7.586 3H2.19c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 0 1 1-.98h3.672z\"/><path d=\"M11 11.5a.5.5 0 0 1 .5-.5h4a.5.5 0 1 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 d=\"m.5 3 .04.87a1.99 1.99 0 0 0-.342 1.311l.637 7A2 2 0 0 0 2.826 14H9v-1H2.826a1 1 0 0 1-.995-.91l-.637-7A1 1 0 0 1 2.19 4h11.62a1 1 0 0 1 .996 1.09L14.54 8h1.005l.256-2.819A2 2 0 0 0 13.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 2zm5.672-1a1 1 0 0 1 .707.293L7.586 3H2.19c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 0 1 1-.98h3.672z\"/><path d=\"M13.5 10a.5.5 0 0 1 .5.5V12h1.5a.5.5 0 1 1 0 1H14v1.5a.5.5 0 1 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=\"m11.798 8.271-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\"/><path d=\"m.5 3 .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 3H9.828a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 6.172 1H2.5a2 2 0 0 0-2 2zm.694 2.09A1 1 0 0 1 2.19 4h11.62a1 1 0 0 1 .996 1.09l-.636 7a1 1 0 0 1-.996.91H2.826a1 1 0 0 1-.995-.91l-.637-7zM6.172 2a1 1 0 0 1 .707.293L7.586 3H2.19c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 0 1 1-.98h3.672z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFolderSymlinkFill = /*#__PURE__*/ makeIcon(\n 'FolderSymlinkFill',\n '<path 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-.683.12L1.5 2.98a1 1 0 0 1 1-.98h3.672a1 1 0 0 1 .707.293L7.586 3H2.19zm9.608 5.271-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 d=\"M.54 3.87.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 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.31zm6.339-1.577A1 1 0 0 0 6.172 2H2.5a1 1 0 0 0-1 .981l.006.139C1.72 3.042 1.95 3 2.19 3h5.396l-.707-.707z\"/><path d=\"M11.854 10.146a.5.5 0 0 0-.707.708L12.293 12l-1.146 1.146a.5.5 0 0 0 .707.708L13 12.707l1.146 1.147a.5.5 0 0 0 .708-.708L13.707 12l1.147-1.146a.5.5 0 0 0-.707-.708L13 11.293l-1.146-1.147z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconFonts = /*#__PURE__*/ makeIcon(\n 'Fonts',\n '<path d=\"M12.258 3h-8.51l-.083 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.431.013c1.934.062 2.434.301 2.693 1.846h.479L12.258 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconForward = /*#__PURE__*/ makeIcon(\n 'Forward',\n '<path 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.11 4.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 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 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 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 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 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 d=\"M8 4.754a3.246 3.246 0 1 0 0 6.492 3.246 3.246 0 0 0 0-6.492zM5.754 8a2.246 2.246 0 1 1 4.492 0 2.246 2.246 0 0 1-4.492 0z\"/><path d=\"M9.796 1.343c-.527-1.79-3.065-1.79-3.592 0l-.094.319a.873.873 0 0 1-1.255.52l-.292-.16c-1.64-.892-3.433.902-2.54 2.541l.159.292a.873.873 0 0 1-.52 1.255l-.319.094c-1.79.527-1.79 3.065 0 3.592l.319.094a.873.873 0 0 1 .52 1.255l-.16.292c-.892 1.64.901 3.434 2.541 2.54l.292-.159a.873.873 0 0 1 1.255.52l.094.319c.527 1.79 3.065 1.79 3.592 0l.094-.319a.873.873 0 0 1 1.255-.52l.292.16c1.64.893 3.434-.902 2.54-2.541l-.159-.292a.873.873 0 0 1 .52-1.255l.319-.094c1.79-.527 1.79-3.065 0-3.592l-.319-.094a.873.873 0 0 1-.52-1.255l.16-.292c.893-1.64-.902-3.433-2.541-2.54l-.292.159a.873.873 0 0 1-1.255-.52l-.094-.319zm-2.633.283c.246-.835 1.428-.835 1.674 0l.094.319a1.873 1.873 0 0 0 2.693 1.115l.291-.16c.764-.415 1.6.42 1.184 1.185l-.159.292a1.873 1.873 0 0 0 1.116 2.692l.318.094c.835.246.835 1.428 0 1.674l-.319.094a1.873 1.873 0 0 0-1.115 2.693l.16.291c.415.764-.42 1.6-1.185 1.184l-.291-.159a1.873 1.873 0 0 0-2.693 1.116l-.094.318c-.246.835-1.428.835-1.674 0l-.094-.319a1.873 1.873 0 0 0-2.692-1.115l-.292.16c-.764.415-1.6-.42-1.184-1.185l.159-.291A1.873 1.873 0 0 0 1.945 8.93l-.319-.094c-.835-.246-.835-1.428 0-1.674l.319-.094A1.873 1.873 0 0 0 3.06 4.377l-.16-.292c-.415-.764.42-1.6 1.185-1.184l.292.159a1.873 1.873 0 0 0 2.692-1.115l.094-.319z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGearFill = /*#__PURE__*/ makeIcon(\n 'GearFill',\n '<path 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 1 0-5.86 2.929 2.929 0 0 1 0 5.858z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGearWide = /*#__PURE__*/ makeIcon(\n 'GearWide',\n '<path 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 1 0-9.995 4.998 4.998 0 0 1 0 9.996z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGearWideConnected = /*#__PURE__*/ makeIcon(\n 'GearWideConnected',\n '<path d=\"M7.068.727c.243-.97 1.62-.97 1.864 0l.071.286a.96.96 0 0 0 1.622.434l.205-.211c.695-.719 1.888-.03 1.613.931l-.08.284a.96.96 0 0 0 1.187 1.187l.283-.081c.96-.275 1.65.918.931 1.613l-.211.205a.96.96 0 0 0 .434 1.622l.286.071c.97.243.97 1.62 0 1.864l-.286.071a.96.96 0 0 0-.434 1.622l.211.205c.719.695.03 1.888-.931 1.613l-.284-.08a.96.96 0 0 0-1.187 1.187l.081.283c.275.96-.918 1.65-1.613.931l-.205-.211a.96.96 0 0 0-1.622.434l-.071.286c-.243.97-1.62.97-1.864 0l-.071-.286a.96.96 0 0 0-1.622-.434l-.205.211c-.695.719-1.888.03-1.613-.931l.08-.284a.96.96 0 0 0-1.186-1.187l-.284.081c-.96.275-1.65-.918-.931-1.613l.211-.205a.96.96 0 0 0-.434-1.622l-.286-.071c-.97-.243-.97-1.62 0-1.864l.286-.071a.96.96 0 0 0 .434-1.622l-.211-.205c-.719-.695-.03-1.888.931-1.613l.284.08a.96.96 0 0 0 1.187-1.186l-.081-.284c-.275-.96.918-1.65 1.613-.931l.205.211a.96.96 0 0 0 1.622-.434l.071-.286zM12.973 8.5H8.25l-2.834 3.779A4.998 4.998 0 0 0 12.973 8.5zm0-1a4.998 4.998 0 0 0-7.557-3.779l2.834 3.78h4.723zM5.048 3.967c-.03.021-.058.043-.087.065l.087-.065zm-.431.355A4.984 4.984 0 0 0 3.002 8c0 1.455.622 2.765 1.615 3.678L7.375 8 4.617 4.322zm.344 7.646.087.065-.087-.065z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGem = /*#__PURE__*/ makeIcon(\n 'Gem',\n '<path 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.785-1.806-2.41-.776 2.413 2.582-.003zm-3.633.004.961-2.989H4.186l.963 2.995 5.704-.006zM5.47 5.495 8 13.366l2.532-7.876-5.062.005zm-1.371-.999-.78-2.422-1.818 2.425 2.598-.003zM1.499 5.5l5.113 6.817-2.192-6.82L1.5 5.5zm7.889 6.817 5.123-6.83-2.928.002-2.195 6.828z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGenderAmbiguous = /*#__PURE__*/ makeIcon(\n 'GenderAmbiguous',\n '<path fill-rule=\"evenodd\" d=\"M11.5 1a.5.5 0 0 1 0-1h4a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V1.707l-3.45 3.45A4 4 0 0 1 8.5 10.97V13H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V14H6a.5.5 0 0 1 0-1h1.5v-2.03a4 4 0 1 1 3.471-6.648L14.293 1H11.5zm-.997 4.346a3 3 0 1 0-5.006 3.309 3 3 0 0 0 5.006-3.31z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGenderFemale = /*#__PURE__*/ makeIcon(\n 'GenderFemale',\n '<path fill-rule=\"evenodd\" d=\"M8 1a4 4 0 1 0 0 8 4 4 0 0 0 0-8zM3 5a5 5 0 1 1 5.5 4.975V12h2a.5.5 0 0 1 0 1h-2v2.5a.5.5 0 0 1-1 0V13h-2a.5.5 0 0 1 0-1h2V9.975A5 5 0 0 1 3 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGenderMale = /*#__PURE__*/ makeIcon(\n 'GenderMale',\n '<path fill-rule=\"evenodd\" d=\"M9.5 2a.5.5 0 0 1 0-1h5a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-1 0V2.707L9.871 6.836a5 5 0 1 1-.707-.707L13.293 2H9.5zM6 6a4 4 0 1 0 0 8 4 4 0 0 0 0-8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGenderTrans = /*#__PURE__*/ makeIcon(\n 'GenderTrans',\n '<path fill-rule=\"evenodd\" d=\"M0 .5A.5.5 0 0 1 .5 0h3a.5.5 0 0 1 0 1H1.707L3.5 2.793l.646-.647a.5.5 0 1 1 .708.708l-.647.646.822.822A3.99 3.99 0 0 1 8 3c1.18 0 2.239.51 2.971 1.322L14.293 1H11.5a.5.5 0 0 1 0-1h4a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V1.707l-3.45 3.45A4 4 0 0 1 8.5 10.97V13H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V14H6a.5.5 0 0 1 0-1h1.5v-2.03a4 4 0 0 1-3.05-5.814l-.95-.949-.646.647a.5.5 0 1 1-.708-.708l.647-.646L1 1.707V3.5a.5.5 0 0 1-1 0v-3zm5.49 4.856a3 3 0 1 0 5.02 3.288 3 3 0 0 0-5.02-3.288z\"/>'\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 d=\"M12.166 8.94c-.524 1.062-1.234 2.12-1.96 3.07A31.493 31.493 0 0 1 8 14.58a31.481 31.481 0 0 1-2.206-2.57c-.726-.95-1.436-2.008-1.96-3.07C3.304 7.867 3 6.862 3 6a5 5 0 0 1 10 0c0 .862-.305 1.867-.834 2.94zM8 16s6-5.686 6-10A6 6 0 0 0 2 6c0 4.314 6 10 6 10z\"/><path d=\"M8 8a2 2 0 1 1 0-4 2 2 0 0 1 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 d=\"M8 16s6-5.686 6-10A6 6 0 0 0 2 6c0 4.314 6 10 6 10zm0-7a3 3 0 1 1 0-6 3 3 0 0 1 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 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 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 0V3zm6 4v7.5a1.5 1.5 0 0 1-1.5 1.5H9V7h6zM2.5 16A1.5 1.5 0 0 1 1 14.5V7h6v9H2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGithub = /*#__PURE__*/ makeIcon(\n 'Github',\n '<path d=\"M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGlobe = /*#__PURE__*/ makeIcon(\n 'Globe',\n '<path 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 4a9.267 9.267 0 0 1 .64-1.539 6.7 6.7 0 0 1 .597-.933A7.025 7.025 0 0 0 2.255 4H4.09zm-.582 3.5c.03-.877.138-1.718.312-2.5H1.674a6.958 6.958 0 0 0-.656 2.5h2.49zM4.847 5a12.5 12.5 0 0 0-.338 2.5H7.5V5H4.847zM8.5 5v2.5h2.99a12.495 12.495 0 0 0-.337-2.5H8.5zM4.51 8.5a12.5 12.5 0 0 0 .337 2.5H7.5V8.5H4.51zm3.99 0V11h2.653c.187-.765.306-1.608.338-2.5H8.5zM5.145 12c.138.386.295.744.468 1.068.552 1.035 1.218 1.65 1.887 1.855V12H5.145zm.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 11a13.652 13.652 0 0 1-.312-2.5h-2.49c.062.89.291 1.733.656 2.5H3.82zm6.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 12v2.923c.67-.204 1.335-.82 1.887-1.855.173-.324.33-.682.468-1.068H8.5zm3.68-1h2.146c.365-.767.594-1.61.656-2.5h-2.49a13.65 13.65 0 0 1-.312 2.5zm2.802-3.5a6.959 6.959 0 0 0-.656-2.5H12.18c.174.782.282 1.623.312 2.5h2.49zM11.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 4a7.966 7.966 0 0 0-.468-1.068C9.835 1.897 9.17 1.282 8.5 1.077V4h2.355z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGlobe2 = /*#__PURE__*/ makeIcon(\n 'Globe2',\n '<path 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.539c.142-.384.304-.744.481-1.078a6.7 6.7 0 0 1 .597-.933A7.01 7.01 0 0 0 3.051 3.05c.362.184.763.349 1.198.49zM3.509 7.5c.036-1.07.188-2.087.436-3.008a9.124 9.124 0 0 1-1.565-.667A6.964 6.964 0 0 0 1.018 7.5h2.49zm1.4-2.741a12.344 12.344 0 0 0-.4 2.741H7.5V5.091c-.91-.03-1.783-.145-2.591-.332zM8.5 5.09V7.5h2.99a12.342 12.342 0 0 0-.399-2.741c-.808.187-1.681.301-2.591.332zM4.51 8.5c.035.987.176 1.914.399 2.741A13.612 13.612 0 0 1 7.5 10.91V8.5H4.51zm3.99 0v2.409c.91.03 1.783.145 2.591.332.223-.827.364-1.754.4-2.741H8.5zm-3.282 3.696c.12.312.252.604.395.872.552 1.035 1.218 1.65 1.887 1.855V11.91c-.81.03-1.577.13-2.282.287zm.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.964A13.36 13.36 0 0 1 3.508 8.5h-2.49a6.963 6.963 0 0 0 1.362 3.675c.47-.258.995-.482 1.565-.667zm6.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.909v3.014c.67-.204 1.335-.82 1.887-1.855.143-.268.276-.56.395-.872A12.63 12.63 0 0 0 8.5 11.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.5a6.963 6.963 0 0 0-1.362-3.675c-.47.258-.995.482-1.565.667.248.92.4 1.938.437 3.008h2.49zM11.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.343a7.765 7.765 0 0 0-.395-.872C9.835 1.897 9.17 1.282 8.5 1.077V4.09c.81-.03 1.577-.13 2.282-.287z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGoogle = /*#__PURE__*/ makeIcon(\n 'Google',\n '<path d=\"M15.545 6.558a9.42 9.42 0 0 1 .139 1.626c0 2.434-.87 4.492-2.384 5.885h.002C11.978 15.292 10.158 16 8 16A8 8 0 1 1 8 0a7.689 7.689 0 0 1 5.352 2.082l-2.284 2.284A4.347 4.347 0 0 0 8 3.166c-2.087 0-3.86 1.408-4.492 3.304a4.792 4.792 0 0 0 0 3.063h.003c.635 1.893 2.405 3.301 4.492 3.301 1.078 0 2.004-.276 2.722-.764h-.003a3.702 3.702 0 0 0 1.599-2.431H8v-3.08h7.545z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGraphDown = /*#__PURE__*/ makeIcon(\n 'GraphDown',\n '<path fill-rule=\"evenodd\" d=\"M0 0h1v15h15v1H0V0zm10 11.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-4a.5.5 0 0 0-1 0v2.6l-3.613-4.417a.5.5 0 0 0-.74-.037L7.06 8.233 3.404 3.206a.5.5 0 0 0-.808.588l4 5.5a.5.5 0 0 0 .758.06l2.609-2.61L13.445 11H10.5a.5.5 0 0 0-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGraphUp = /*#__PURE__*/ makeIcon(\n 'GraphUp',\n '<path fill-rule=\"evenodd\" d=\"M0 0h1v15h15v1H0V0zm10 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V4.9l-3.613 4.417a.5.5 0 0 1-.74.037L7.06 6.767l-3.656 5.027a.5.5 0 0 1-.808-.588l4-5.5a.5.5 0 0 1 .758-.06l2.609 2.61L13.445 4H10.5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGrid = /*#__PURE__*/ makeIcon(\n 'Grid',\n '<path 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 d=\"M6 1H1v14h5V1zm9 0h-5v5h5V1zm0 9v5h-5v-5h5zM0 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 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 0v4h4V8H6zm4-1V3H6v4h4zm1 1v4h3.5a.5.5 0 0 0 .5-.5V8h-4zm0-1h4V3.5a.5.5 0 0 0-.5-.5H11v4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGrid3x2Gap = /*#__PURE__*/ makeIcon(\n 'Grid3x2Gap',\n '<path d=\"M4 4v2H2V4h2zm1 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 4v2H7V4h2zm5 0h-2v2h2V4zM4 9v2H2V9h2zm5 0v2H7V9h2zm5 0v2h-2V9h2zm-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 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 4h4V6H6v4zm-1 1H1v3.5a.5.5 0 0 0 .5.5H5v-4zm1 0v4h4v-4H6zm5 0v4h3.5a.5.5 0 0 0 .5-.5V11h-4zm0-1h4V6h-4v4zm0-5h4V1.5a.5.5 0 0 0-.5-.5H11v4zm-1 0V1H6v4h4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconGrid3x3Gap = /*#__PURE__*/ makeIcon(\n 'Grid3x3Gap',\n '<path d=\"M4 2v2H2V2h2zm1 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 2v2H7V2h2zm5 0v2h-2V2h2zM4 7v2H2V7h2zm5 0v2H7V7h2zm5 0h-2v2h2V7zM4 12v2H2v-2h2zm5 0v2H7v-2h2zm5 0v2h-2v-2h2zM12 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 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.972 2.508a.5.5 0 0 0-.16-.556l-.178-.129a5.009 5.009 0 0 0-2.076-.783C6.215.862 4.504 1.229 2.84 3.133H1.786a.5.5 0 0 0-.354.147L.146 4.567a.5.5 0 0 0 0 .706l2.571 2.579a.5.5 0 0 0 .708 0l1.286-1.29a.5.5 0 0 0 .146-.353V5.57l8.387 8.873A.5.5 0 0 0 14 14.5l1.5-1.5a.5.5 0 0 0 .017-.689l-9.129-8.63c.747-.456 1.772-.839 3.112-.839a.5.5 0 0 0 .472-.334z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHandIndex = /*#__PURE__*/ makeIcon(\n 'HandIndex',\n '<path d=\"M6.75 1a.75.75 0 0 1 .75.75V8a.5.5 0 0 0 1 0V5.467l.086-.004c.317-.012.637-.008.816.027.134.027.294.096.448.182.077.042.15.147.15.314V8a.5.5 0 1 0 1 0V6.435a4.9 4.9 0 0 1 .106-.01c.316-.024.584-.01.708.04.118.046.3.207.486.43.081.096.15.19.2.259V8.5a.5.5 0 0 0 1 0v-1h.342a1 1 0 0 1 .995 1.1l-.271 2.715a2.5 2.5 0 0 1-.317.991l-1.395 2.442a.5.5 0 0 1-.434.252H6.035a.5.5 0 0 1-.416-.223l-1.433-2.15a1.5 1.5 0 0 1-.243-.666l-.345-3.105a.5.5 0 0 1 .399-.546L5 8.11V9a.5.5 0 0 0 1 0V1.75A.75.75 0 0 1 6.75 1zM8.5 4.466V1.75a1.75 1.75 0 1 0-3.5 0v5.34l-1.2.24a1.5 1.5 0 0 0-1.196 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.271-2.715a2 2 0 0 0-1.99-2.199h-.581a5.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.632 2.632 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 BIconHandIndexFill = /*#__PURE__*/ makeIcon(\n 'HandIndexFill',\n '<path d=\"M8.5 4.466V1.75a1.75 1.75 0 1 0-3.5 0v5.34l-1.2.24a1.5 1.5 0 0 0-1.196 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.271-2.715a2 2 0 0 0-1.99-2.199h-.581a5.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.632 2.632 0 0 0-.738-.288c-.31-.062-.739-.058-1.05-.046l-.048.002z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHandIndexThumb = /*#__PURE__*/ makeIcon(\n 'HandIndexThumb',\n '<path d=\"M6.75 1a.75.75 0 0 1 .75.75V8a.5.5 0 0 0 1 0V5.467l.086-.004c.317-.012.637-.008.816.027.134.027.294.096.448.182.077.042.15.147.15.314V8a.5.5 0 0 0 1 0V6.435l.106-.01c.316-.024.584-.01.708.04.118.046.3.207.486.43.081.096.15.19.2.259V8.5a.5.5 0 1 0 1 0v-1h.342a1 1 0 0 1 .995 1.1l-.271 2.715a2.5 2.5 0 0 1-.317.991l-1.395 2.442a.5.5 0 0 1-.434.252H6.118a.5.5 0 0 1-.447-.276l-1.232-2.465-2.512-4.185a.517.517 0 0 1 .809-.631l2.41 2.41A.5.5 0 0 0 6 9.5V1.75A.75.75 0 0 1 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.271-2.715a2 2 0 0 0-1.99-2.199h-.581a5.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.632 2.632 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 BIconHandIndexThumbFill = /*#__PURE__*/ makeIcon(\n 'HandIndexThumbFill',\n '<path d=\"M8.5 1.75v2.716l.047-.002c.312-.012.742-.016 1.051.046.28.056.543.18.738.288.273.152.456.385.56.642l.132-.012c.312-.024.794-.038 1.158.108.37.148.689.487.88.716.075.09.141.175.195.248h.582a2 2 0 0 1 1.99 2.199l-.272 2.715a3.5 3.5 0 0 1-.444 1.389l-1.395 2.441A1.5 1.5 0 0 1 12.42 16H6.118a1.5 1.5 0 0 1-1.342-.83l-1.215-2.43L1.07 8.589a1.517 1.517 0 0 1 2.373-1.852L5 8.293V1.75a1.75 1.75 0 0 1 3.5 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHandThumbsDown = /*#__PURE__*/ makeIcon(\n 'HandThumbsDown',\n '<path d=\"M8.864 15.674c-.956.24-1.843-.484-1.908-1.42-.072-1.05-.23-2.015-.428-2.59-.125-.36-.479-1.012-1.04-1.638-.557-.624-1.282-1.179-2.131-1.41C2.685 8.432 2 7.85 2 7V3c0-.845.682-1.464 1.448-1.546 1.07-.113 1.564-.415 2.068-.723l.048-.029c.272-.166.578-.349.97-.484C6.931.08 7.395 0 8 0h3.5c.937 0 1.599.478 1.934 1.064.164.287.254.607.254.913 0 .152-.023.312-.077.464.201.262.38.577.488.9.11.33.172.762.004 1.15.069.13.12.268.159.403.077.27.113.567.113.856 0 .289-.036.586-.113.856-.035.12-.08.244-.138.363.394.571.418 1.2.234 1.733-.206.592-.682 1.1-1.2 1.272-.847.283-1.803.276-2.516.211a9.877 9.877 0 0 1-.443-.05 9.364 9.364 0 0 1-.062 4.51c-.138.508-.55.848-1.012.964l-.261.065zM11.5 1H8c-.51 0-.863.068-1.14.163-.281.097-.506.229-.776.393l-.04.025c-.555.338-1.198.73-2.49.868-.333.035-.554.29-.554.55V7c0 .255.226.543.62.65 1.095.3 1.977.997 2.614 1.709.635.71 1.064 1.475 1.238 1.977.243.7.407 1.768.482 2.85.025.362.36.595.667.518l.262-.065c.16-.04.258-.144.288-.255a8.34 8.34 0 0 0-.145-4.726.5.5 0 0 1 .595-.643h.003l.014.004.058.013a8.912 8.912 0 0 0 1.036.157c.663.06 1.457.054 2.11-.163.175-.059.45-.301.57-.651.107-.308.087-.67-.266-1.021L12.793 7l.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-.315l-.353-.354.353-.354c.047-.047.109-.176.005-.488a2.224 2.224 0 0 0-.505-.804l-.353-.354.353-.354c.006-.005.041-.05.041-.17a.866.866 0 0 0-.121-.415C12.4 1.272 12.063 1 11.5 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHandThumbsDownFill = /*#__PURE__*/ makeIcon(\n 'HandThumbsDownFill',\n '<path 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-.856 0-.29-.036-.586-.113-.857a2.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.28H8c-.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 d=\"M8.864.046C7.908-.193 7.02.53 6.956 1.466c-.072 1.051-.23 2.016-.428 2.59-.125.36-.479 1.013-1.04 1.639-.557.623-1.282 1.178-2.131 1.41C2.685 7.288 2 7.87 2 8.72v4.001c0 .845.682 1.464 1.448 1.545 1.07.114 1.564.415 2.068.723l.048.03c.272.165.578.348.97.484.397.136.861.217 1.466.217h3.5c.937 0 1.599-.477 1.934-1.064a1.86 1.86 0 0 0 .254-.912c0-.152-.023-.312-.077-.464.201-.263.38-.578.488-.901.11-.33.172-.762.004-1.149.069-.13.12-.269.159-.403.077-.27.113-.568.113-.857 0-.288-.036-.585-.113-.856a2.144 2.144 0 0 0-.138-.362 1.9 1.9 0 0 0 .234-1.734c-.206-.592-.682-1.1-1.2-1.272-.847-.282-1.803-.276-2.516-.211a9.84 9.84 0 0 0-.443.05 9.365 9.365 0 0 0-.062-4.509A1.38 1.38 0 0 0 9.125.111L8.864.046zM11.5 14.721H8c-.51 0-.863-.069-1.14-.164-.281-.097-.506-.228-.776-.393l-.04-.024c-.555-.339-1.198-.731-2.49-.868-.333-.036-.554-.29-.554-.55V8.72c0-.254.226-.543.62-.65 1.095-.3 1.977-.996 2.614-1.708.635-.71 1.064-1.475 1.238-1.978.243-.7.407-1.768.482-2.85.025-.362.36-.594.667-.518l.262.066c.16.04.258.143.288.255a8.34 8.34 0 0 1-.145 4.725.5.5 0 0 0 .595.644l.003-.001.014-.003.058-.014a8.908 8.908 0 0 1 1.036-.157c.663-.06 1.457-.054 2.11.164.175.058.45.3.57.65.107.308.087.67-.266 1.022l-.353.353.353.354c.043.043.105.141.154.315.048.167.075.37.075.581 0 .212-.027.414-.075.582-.05.174-.111.272-.154.315l-.353.353.353.354c.047.047.109.177.005.488a2.224 2.224 0 0 1-.505.805l-.353.353.353.354c.006.005.041.05.041.17a.866.866 0 0 1-.121.416c-.165.288-.503.56-1.066.56z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHandThumbsUpFill = /*#__PURE__*/ makeIcon(\n 'HandThumbsUpFill',\n '<path 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 16H8c-.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 d=\"M8 1a2 2 0 0 1 2 2v2H6V3a2 2 0 0 1 2-2zm3 4V3a3 3 0 1 0-6 0v2H3.36a1.5 1.5 0 0 0-1.483 1.277L.85 13.13A2.5 2.5 0 0 0 3.322 16h9.355a2.5 2.5 0 0 0 2.473-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 1 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 1 1 6 0v2h-1V3a2 2 0 0 0-2-2zM5 5H3.36a1.5 1.5 0 0 0-1.483 1.277L.85 13.13A2.5 2.5 0 0 0 3.322 16h9.355a2.5 2.5 0 0 0 2.473-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 d=\"M4.5 11a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zM3 10.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0z\"/><path d=\"M16 11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V9.51c0-.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.198V11zM3.655 4.26 1.592 8.043C1.724 8.014 1.86 8 2 8h12c.14 0 .276.014.408.042L12.345 4.26a.5.5 0 0 0-.439-.26H4.094a.5.5 0 0 0-.44.26zM1 10v1a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHddFill = /*#__PURE__*/ makeIcon(\n 'HddFill',\n '<path 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 1zM.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 d=\"M4.5 5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zM3 4.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0z\"/><path d=\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v1a2 2 0 0 1-2 2H8.5v3a1.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 10V7H2a2 2 0 0 1-2-2V4zm1 0v1a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1zm6 7.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHddNetworkFill = /*#__PURE__*/ makeIcon(\n 'HddNetworkFill',\n '<path 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 1 0-1 .5.5 0 0 1 0 1zm2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHddRack = /*#__PURE__*/ makeIcon(\n 'HddRack',\n '<path d=\"M4.5 5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zM3 4.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm2 7a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm-2.5.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1z\"/><path d=\"M2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h1v2H2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1a2 2 0 0 0-2-2h-1V7h1a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm13 2v1a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1zm0 7v1a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1zm-3-4v2H4V7h8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHddRackFill = /*#__PURE__*/ makeIcon(\n 'HddRackFill',\n '<path d=\"M2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h1v2H2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1a2 2 0 0 0-2-2h-1V7h1a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2zm.5 3a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm-2 7a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zM12 7v2H4V7h8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHddStack = /*#__PURE__*/ makeIcon(\n 'HddStack',\n '<path d=\"M14 10a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h12zM2 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 0zM14 3a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12zM2 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 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 1 0-1 .5.5 0 0 1 0 1zm2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 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 1 0-1 .5.5 0 0 1 0 1zm2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHeadphones = /*#__PURE__*/ makeIcon(\n 'Headphones',\n '<path d=\"M8 3a5 5 0 0 0-5 5v1h1a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V8a6 6 0 1 1 12 0v5a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1v-3a1 1 0 0 1 1-1h1V8a5 5 0 0 0-5-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHeadset = /*#__PURE__*/ makeIcon(\n 'Headset',\n '<path d=\"M8 1a5 5 0 0 0-5 5v1h1a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V6a6 6 0 1 1 12 0v6a2.5 2.5 0 0 1-2.5 2.5H9.366a1 1 0 0 1-.866.5h-1a1 1 0 1 1 0-2h1a1 1 0 0 1 .866.5H11.5A1.5 1.5 0 0 0 13 12h-1a1 1 0 0 1-1-1V8a1 1 0 0 1 1-1h1V6a5 5 0 0 0-5-5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHeadsetVr = /*#__PURE__*/ makeIcon(\n 'HeadsetVr',\n '<path d=\"M8 1.248c1.857 0 3.526.641 4.65 1.794a4.978 4.978 0 0 1 2.518 1.09C13.907 1.482 11.295 0 8 0 4.75 0 2.12 1.48.844 4.122a4.979 4.979 0 0 1 2.289-1.047C4.236 1.872 5.974 1.248 8 1.248z\"/><path d=\"M12 12a3.988 3.988 0 0 1-2.786-1.13l-.002-.002a1.612 1.612 0 0 0-.276-.167A2.164 2.164 0 0 0 8 10.5c-.414 0-.729.103-.935.201a1.612 1.612 0 0 0-.277.167l-.002.002A4 4 0 1 1 4 4h8a4 4 0 0 1 0 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHeart = /*#__PURE__*/ makeIcon(\n 'Heart',\n '<path d=\"m8 2.748-.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 d=\"M8 2.748v11.047c3.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 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 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 d=\"M14 4.577v6.846L8 15l-6-3.577V4.577L8 1l6 3.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 d=\"M14 4.577v6.846L8 15V1l6 3.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 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 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 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 0v3.17c2.134.181 3 1.48 3 1.48a3.5 3.5 0 0 0-1.989-3.158C8.978 9.586 8.5 9.052 8.5 8.351z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHourglassTop = /*#__PURE__*/ makeIcon(\n 'HourglassTop',\n '<path 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 d=\"M8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4.5a.5.5 0 0 0 .5-.5v-4h2v4a.5.5 0 0 0 .5.5H14a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146zM2.5 14V7.707l5.5-5.5 5.5 5.5V14H10v-4a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v4H2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHouseDoorFill = /*#__PURE__*/ makeIcon(\n 'HouseDoorFill',\n '<path d=\"M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHouseFill = /*#__PURE__*/ makeIcon(\n 'HouseFill',\n '<path fill-rule=\"evenodd\" d=\"m8 3.293 6 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 d=\"M12 3H4a1 1 0 0 0-1 1v2.5H2V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v2.5h-1V4a1 1 0 0 0-1-1zM2 9.5h1V12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V9.5h1V12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9.5zm-1.5-2a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1H.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconHurricane = /*#__PURE__*/ makeIcon(\n 'Hurricane',\n '<path d=\"M6.999 2.6A5.5 5.5 0 0 1 15 7.5a.5.5 0 0 0 1 0 6.5 6.5 0 1 0-13 0 5 5 0 0 0 6.001 4.9A5.5 5.5 0 0 1 1 7.5a.5.5 0 0 0-1 0 6.5 6.5 0 1 0 13 0 5 5 0 0 0-6.001-4.9zM10 7.5a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconImage = /*#__PURE__*/ makeIcon(\n 'Image',\n '<path d=\"M6.002 5.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/><path d=\"M2.002 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-12zm12 1a1 1 0 0 1 1 1v6.5l-3.777-1.947a.5.5 0 0 0-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 0 0-.63.062L1.002 12V3a1 1 0 0 1 1-1h12z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconImageAlt = /*#__PURE__*/ makeIcon(\n 'ImageAlt',\n '<path d=\"M7 2.5a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0zm4.225 4.053a.5.5 0 0 0-.577.093l-3.71 4.71-2.66-2.772a.5.5 0 0 0-.63.062L.002 13v2a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-4.5l-4.777-3.947z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconImageFill = /*#__PURE__*/ makeIcon(\n 'ImageFill',\n '<path 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 9v1a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V9.5l-3.777-1.947a.5.5 0 0 0-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 0 0-.63.062L1.002 12zm5-6.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconImages = /*#__PURE__*/ makeIcon(\n 'Images',\n '<path d=\"M4.502 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/><path d=\"M14.002 13a2 2 0 0 1-2 2h-10a2 2 0 0 1-2-2V5A2 2 0 0 1 2 3a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v8a2 2 0 0 1-1.998 2zM14 2H4a1 1 0 0 0-1 1h9.002a2 2 0 0 1 2 2v7A1 1 0 0 0 15 11V3a1 1 0 0 0-1-1zM2.002 4a1 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-1h-10z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInbox = /*#__PURE__*/ makeIcon(\n 'Inbox',\n '<path 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 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 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.83.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 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.588-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.588zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInfoCircle = /*#__PURE__*/ makeIcon(\n 'InfoCircle',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"m8.93 6.588-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.588zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInfoCircleFill = /*#__PURE__*/ makeIcon(\n 'InfoCircleFill',\n '<path d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zm.93-9.412-1 4.705c-.07.34.029.533.304.533.194 0 .487-.07.686-.246l-.088.416c-.287.346-.92.598-1.465.598-.703 0-1.002-.422-.808-1.319l.738-3.468c.064-.293.006-.399-.287-.47l-.451-.081.082-.381 2.29-.287zM8 5.5a1 1 0 1 1 0-2 1 1 0 0 1 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInfoLg = /*#__PURE__*/ makeIcon(\n 'InfoLg',\n '<path d=\"m10.277 5.433-4.031.505-.145.67.794.145c.516.123.619.309.505.824L6.101 13.68c-.34 1.578.186 2.32 1.423 2.32.959 0 2.072-.443 2.577-1.052l.155-.732c-.35.31-.866.434-1.206.434-.485 0-.66-.34-.536-.939l1.763-8.278zm.122-3.673a1.76 1.76 0 1 1-3.52 0 1.76 1.76 0 0 1 3.52 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInfoSquare = /*#__PURE__*/ makeIcon(\n 'InfoSquare',\n '<path d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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.588-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.588zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInfoSquareFill = /*#__PURE__*/ makeIcon(\n 'InfoSquareFill',\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-2V2zm8.93 4.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533L8.93 6.588zM8 5.5a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInputCursor = /*#__PURE__*/ makeIcon(\n 'InputCursor',\n '<path d=\"M10 5h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4v1h4a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-4v1zM6 5V4H2a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h4v-1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h4z\"/><path fill-rule=\"evenodd\" d=\"M8 1a.5.5 0 0 1 .5.5v13a.5.5 0 0 1-1 0v-13A.5.5 0 0 1 8 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInputCursorText = /*#__PURE__*/ makeIcon(\n 'InputCursorText',\n '<path fill-rule=\"evenodd\" d=\"M5 2a.5.5 0 0 1 .5-.5c.862 0 1.573.287 2.06.566.174.099.321.198.44.286.119-.088.266-.187.44-.286A4.165 4.165 0 0 1 10.5 1.5a.5.5 0 0 1 0 1c-.638 0-1.177.213-1.564.434a3.49 3.49 0 0 0-.436.294V7.5H9a.5.5 0 0 1 0 1h-.5v4.272c.1.08.248.187.436.294.387.221.926.434 1.564.434a.5.5 0 0 1 0 1 4.165 4.165 0 0 1-2.06-.566A4.561 4.561 0 0 1 8 13.65a4.561 4.561 0 0 1-.44.285 4.165 4.165 0 0 1-2.06.566.5.5 0 0 1 0-1c.638 0 1.177-.213 1.564-.434.188-.107.335-.214.436-.294V8.5H7a.5.5 0 0 1 0-1h.5V3.228a3.49 3.49 0 0 0-.436-.294A3.166 3.166 0 0 0 5.5 2.5.5.5 0 0 1 5 2z\"/><path d=\"M10 5h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4v1h4a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-4v1zM6 5V4H2a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h4v-1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconInstagram = /*#__PURE__*/ makeIcon(\n 'Instagram',\n '<path d=\"M8 0C5.829 0 5.556.01 4.703.048 3.85.088 3.269.222 2.76.42a3.917 3.917 0 0 0-1.417.923A3.927 3.927 0 0 0 .42 2.76C.222 3.268.087 3.85.048 4.7.01 5.555 0 5.827 0 8.001c0 2.172.01 2.444.048 3.297.04.852.174 1.433.372 1.942.205.526.478.972.923 1.417.444.445.89.719 1.416.923.51.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.444-.01 3.298-.048c.851-.04 1.434-.174 1.943-.372a3.916 3.916 0 0 0 1.416-.923c.445-.445.718-.891.923-1.417.197-.509.332-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.299c-.04-.851-.175-1.433-.372-1.941a3.926 3.926 0 0 0-.923-1.417A3.911 3.911 0 0 0 13.24.42c-.51-.198-1.092-.333-1.943-.372C10.443.01 10.172 0 7.998 0h.003zm-.717 1.442h.718c2.136 0 2.389.007 3.232.046.78.035 1.204.166 1.486.275.373.145.64.319.92.599.28.28.453.546.598.92.11.281.24.705.275 1.485.039.843.047 1.096.047 3.231s-.008 2.389-.047 3.232c-.035.78-.166 1.203-.275 1.485a2.47 2.47 0 0 1-.599.919c-.28.28-.546.453-.92.598-.28.11-.704.24-1.485.276-.843.038-1.096.047-3.232.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.478 2.478 0 0 1-.92-.598 2.48 2.48 0 0 1-.6-.92c-.109-.281-.24-.705-.275-1.485-.038-.843-.046-1.096-.046-3.233 0-2.136.008-2.388.046-3.231.036-.78.166-1.204.276-1.486.145-.373.319-.64.599-.92.28-.28.546-.453.92-.598.282-.11.705-.24 1.485-.276.738-.034 1.024-.044 2.515-.045v.002zm4.988 1.328a.96.96 0 1 0 0 1.92.96.96 0 0 0 0-1.92zm-4.27 1.122a4.109 4.109 0 1 0 0 8.217 4.109 4.109 0 0 0 0-8.217zm0 1.441a2.667 2.667 0 1 1 0 5.334 2.667 2.667 0 0 1 0-5.334z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconIntersect = /*#__PURE__*/ makeIcon(\n 'Intersect',\n '<path 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-8V2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h2V6a2 2 0 0 1 2-2h5z\"/>'\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=\"M5.5 4a.5.5 0 0 0-.5.5v5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-5a.5.5 0 0 0-.5-.5h-5zm1 7a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3z\"/><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 BIconJournalArrowDown = /*#__PURE__*/ makeIcon(\n 'JournalArrowDown',\n '<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\"/><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 BIconJournalArrowUp = /*#__PURE__*/ makeIcon(\n 'JournalArrowUp',\n '<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\"/><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 BIconJournalBookmark = /*#__PURE__*/ makeIcon(\n 'JournalBookmark',\n '<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\"/><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 BIconJournalBookmarkFill = /*#__PURE__*/ makeIcon(\n 'JournalBookmarkFill',\n '<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\"/><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 BIconJournalCheck = /*#__PURE__*/ makeIcon(\n 'JournalCheck',\n '<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\"/><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 BIconJournalCode = /*#__PURE__*/ makeIcon(\n 'JournalCode',\n '<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\"/><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 BIconJournalMedical = /*#__PURE__*/ makeIcon(\n 'JournalMedical',\n '<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\"/><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 BIconJournalMinus = /*#__PURE__*/ makeIcon(\n 'JournalMinus',\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 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 BIconJournalPlus = /*#__PURE__*/ makeIcon(\n 'JournalPlus',\n '<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\"/><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 BIconJournalRichtext = /*#__PURE__*/ makeIcon(\n 'JournalRichtext',\n '<path d=\"M7.5 3.75a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0zm-.861 1.542 1.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.208zM5 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-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5z\"/><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 BIconJournalText = /*#__PURE__*/ makeIcon(\n 'JournalText',\n '<path 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\"/><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 BIconJournalX = /*#__PURE__*/ makeIcon(\n 'JournalX',\n '<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\"/><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 BIconJournals = /*#__PURE__*/ makeIcon(\n 'Journals',\n '<path d=\"M5 0h8a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2 2 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-2h8a2 2 0 0 1 2 2v9a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H5a1 1 0 0 0-1 1H3a2 2 0 0 1 2-2z\"/><path d=\"M1 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 2.5v.5H.5a.5.5 0 0 0 0 1h2a.5.5 0 0 0 0-1H2v-.5a.5.5 0 0 0-1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconJoystick = /*#__PURE__*/ makeIcon(\n 'Joystick',\n '<path d=\"M10 2a2 2 0 0 1-1.5 1.937v5.087c.863.083 1.5.377 1.5.726 0 .414-.895.75-2 .75s-2-.336-2-.75c0-.35.637-.643 1.5-.726V3.937A2 2 0 1 1 10 2z\"/><path d=\"M0 9.665v1.717a1 1 0 0 0 .553.894l6.553 3.277a2 2 0 0 0 1.788 0l6.553-3.277a1 1 0 0 0 .553-.894V9.665c0-.1-.06-.19-.152-.23L9.5 6.715v.993l5.227 2.178a.125.125 0 0 1 .001.23l-5.94 2.546a2 2 0 0 1-1.576 0l-5.94-2.546a.125.125 0 0 1 .001-.23L6.5 7.708l-.013-.988L.152 9.435a.25.25 0 0 0-.152.23z\"/>'\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 d=\"M13.5 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1h-11a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h11zm-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 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 2h1a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3a1 1 0 0 1 1-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-1h1a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconKey = /*#__PURE__*/ makeIcon(\n 'Key',\n '<path 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 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 d=\"M14 5a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h12zM2 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 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 .25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM2.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.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 5 8.75v-.5A.25.25 0 0 0 4.75 8h-.5a.25.25 0 0 0-.25.25zM6.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.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 9 8.75v-.5A.25.25 0 0 0 8.75 8h-.5a.25.25 0 0 0-.25.25zM13.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.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM11.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.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5A.25.25 0 0 0 9.75 6h-.5a.25.25 0 0 0-.25.25zM7.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.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 6 6.75v-.5A.25.25 0 0 0 5.75 6h-.5a.25.25 0 0 0-.25.25zM2.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.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM4.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 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 d=\"M13 3v4H3V3h10zM3 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-1 .276-.553a.25.25 0 0 1 .448 0L8.5 1h-1zm-.012 9h1.024c.337.646.677 1.33.95 1.949.176.396.318.75.413 1.042.048.146.081.266.102.36A1.347 1.347 0 0 1 10 13.5c0 .665-.717 1.5-2 1.5s-2-.835-2-1.5c0 0 0-.013.004-.039.003-.027.01-.063.02-.11.02-.094.053-.214.1-.36.096-.291.238-.646.413-1.042.274-.62.614-1.303.95-1.949zm1.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-1V3zm5.5-2 .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 d=\"M13.5 3a.5.5 0 0 1 .5.5V11H2V3.5a.5.5 0 0 1 .5-.5h11zm-11-1A1.5 1.5 0 0 0 1 3.5V12h14V3.5A1.5 1.5 0 0 0 13.5 2h-11zM0 12.5h16a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 12.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLaptopFill = /*#__PURE__*/ makeIcon(\n 'LaptopFill',\n '<path d=\"M2.5 2A1.5 1.5 0 0 0 1 3.5V12h14V3.5A1.5 1.5 0 0 0 13.5 2h-11zM0 12.5h16a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 12.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayerBackward = /*#__PURE__*/ makeIcon(\n 'LayerBackward',\n '<path d=\"M8.354 15.854a.5.5 0 0 1-.708 0l-3-3a.5.5 0 0 1 0-.708l1-1a.5.5 0 0 1 .708 0l.646.647V4H1a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H9v7.793l.646-.647a.5.5 0 0 1 .708 0l1 1a.5.5 0 0 1 0 .708l-3 3z\"/><path d=\"M1 9a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h4.5a.5.5 0 0 1 0 1H1v2h4.5a.5.5 0 0 1 0 1H1zm9.5 0a.5.5 0 0 1 0-1H15V6h-4.5a.5.5 0 0 1 0-1H15a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-4.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayerForward = /*#__PURE__*/ makeIcon(\n 'LayerForward',\n '<path d=\"M8.354.146a.5.5 0 0 0-.708 0l-3 3a.5.5 0 0 0 0 .708l1 1a.5.5 0 0 0 .708 0L7 4.207V12H1a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1H9V4.207l.646.647a.5.5 0 0 0 .708 0l1-1a.5.5 0 0 0 0-.708l-3-3z\"/><path d=\"M1 7a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h4.5a.5.5 0 0 0 0-1H1V8h4.5a.5.5 0 0 0 0-1H1zm9.5 0a.5.5 0 0 0 0 1H15v2h-4.5a.5.5 0 0 0 0 1H15a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1h-4.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayers = /*#__PURE__*/ makeIcon(\n 'Layers',\n '<path d=\"M8.235 1.559a.5.5 0 0 0-.47 0l-7.5 4a.5.5 0 0 0 0 .882L3.188 8 .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 8l2.922-1.559a.5.5 0 0 0 0-.882l-7.5-4zm3.515 7.008L14.438 10 8 13.433 1.562 10 4.25 8.567l3.515 1.874a.5.5 0 0 0 .47 0l3.515-1.874zM8 9.433 1.562 6 8 2.567 14.438 6 8 9.433z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayersFill = /*#__PURE__*/ makeIcon(\n 'LayersFill',\n '<path 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 d=\"m2.125 8.567-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 d=\"M8.235 1.559a.5.5 0 0 0-.47 0l-7.5 4a.5.5 0 0 0 0 .882L3.188 8 .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 8l2.922-1.559a.5.5 0 0 0 0-.882l-7.5-4zM8 9.433 1.562 6 8 2.567 14.438 6 8 9.433z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutSidebar = /*#__PURE__*/ makeIcon(\n 'LayoutSidebar',\n '<path 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-2V3zm5-1v12h9a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H5zM4 2H2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h2V2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutSidebarInset = /*#__PURE__*/ makeIcon(\n 'LayoutSidebarInset',\n '<path d=\"M14 2a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1h12zM2 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 d=\"M2 2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H2zm12-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 d=\"M16 3a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3zm-5-1v12H2a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1h9zm1 0h2a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-2V2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutSplit = /*#__PURE__*/ makeIcon(\n 'LayoutSplit',\n '<path 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-2V3zm8.5-1v12H14a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H8.5zm-1 0H2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h5.5V2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutTextSidebar = /*#__PURE__*/ makeIcon(\n 'LayoutTextSidebar',\n '<path d=\"M3.5 3a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zM3 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm.5 2.5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5z\"/><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-2V2zm12-1v14h2a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1h-2zm-1 0H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h9V1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutTextSidebarReverse = /*#__PURE__*/ makeIcon(\n 'LayoutTextSidebarReverse',\n '<path d=\"M12.5 3a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1h5zm0 3a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1h5zm.5 3.5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 .5-.5zm-.5 2.5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1h5z\"/><path d=\"M16 2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2zM4 1v14H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h2zm1 0h9a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H5V1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutTextWindow = /*#__PURE__*/ makeIcon(\n 'LayoutTextWindow',\n '<path d=\"M3 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-.5zm.5 2.5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5z\"/><path 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-2H2zm12 1a1 1 0 0 1 1 1v1H1V2a1 1 0 0 1 1-1h12zm1 3v10a1 1 0 0 1-1 1h-2V4h3zm-4 0v11H2a1 1 0 0 1-1-1V4h10z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutTextWindowReverse = /*#__PURE__*/ makeIcon(\n 'LayoutTextWindowReverse',\n '<path d=\"M13 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-.5zm-.5 2.5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1h5z\"/><path d=\"M14 0a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12zM2 1a1 1 0 0 0-1 1v1h14V2a1 1 0 0 0-1-1H2zM1 4v10a1 1 0 0 0 1 1h2V4H1zm4 0v11h9a1 1 0 0 0 1-1V4H5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutThreeColumns = /*#__PURE__*/ makeIcon(\n 'LayoutThreeColumns',\n '<path 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.5v13a.5.5 0 0 0 .5.5H5V1H1.5zM10 15V1H6v14h4zm1 0h3.5a.5.5 0 0 0 .5-.5v-13a.5.5 0 0 0-.5-.5H11v14z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutWtf = /*#__PURE__*/ makeIcon(\n 'LayoutWtf',\n '<path d=\"M5 1v8H1V1h4zM1 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 2v5H9V2h5zM9 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 13v2H3v-2h2zm-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-1v2H9v-2h6zm-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 d=\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zm6.43-5.228a7.025 7.025 0 0 1-3.658 3.658l-1.115-2.788a4.015 4.015 0 0 0 1.985-1.985l2.788 1.115zM5.228 14.43a7.025 7.025 0 0 1-3.658-3.658l2.788-1.115a4.015 4.015 0 0 0 1.985 1.985L5.228 14.43zm9.202-9.202-2.788 1.115a4.015 4.015 0 0 0-1.985-1.985l1.115-2.788a7.025 7.025 0 0 1 3.658 3.658zm-8.087-.87a4.015 4.015 0 0 0-1.985 1.985L1.57 5.228A7.025 7.025 0 0 1 5.228 1.57l1.115 2.788zM8 11a3 3 0 1 1 0-6 3 3 0 0 1 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLightbulb = /*#__PURE__*/ makeIcon(\n 'Lightbulb',\n '<path d=\"M2 6a6 6 0 1 1 10.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0 1 10.5 13a.5.5 0 0 1 0 1 .5.5 0 0 1 0 1l-.224.447a1 1 0 0 1-.894.553H6.618a1 1 0 0 1-.894-.553L5.5 15a.5.5 0 0 1 0-1 .5.5 0 0 1 0-1 .5.5 0 0 1-.46-.302l-.761-1.77a1.964 1.964 0 0 0-.453-.618A5.984 5.984 0 0 1 2 6zm6-5a5 5 0 0 0-3.479 8.592c.263.254.514.564.676.941L5.83 12h4.342l.632-1.467c.162-.377.413-.687.676-.941A5 5 0 0 0 8 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLightbulbFill = /*#__PURE__*/ makeIcon(\n 'LightbulbFill',\n '<path d=\"M2 6a6 6 0 1 1 10.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0 1 10.5 13h-5a.5.5 0 0 1-.46-.302l-.761-1.77a1.964 1.964 0 0 0-.453-.618A5.984 5.984 0 0 1 2 6zm3 8.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1l-.224.447a1 1 0 0 1-.894.553H6.618a1 1 0 0 1-.894-.553L5.5 15a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLightbulbOff = /*#__PURE__*/ makeIcon(\n 'LightbulbOff',\n '<path fill-rule=\"evenodd\" d=\"M2.23 4.35A6.004 6.004 0 0 0 2 6c0 1.691.7 3.22 1.826 4.31.203.196.359.4.453.619l.762 1.769A.5.5 0 0 0 5.5 13a.5.5 0 0 0 0 1 .5.5 0 0 0 0 1l.224.447a1 1 0 0 0 .894.553h2.764a1 1 0 0 0 .894-.553L10.5 15a.5.5 0 0 0 0-1 .5.5 0 0 0 0-1 .5.5 0 0 0 .288-.091L9.878 12H5.83l-.632-1.467a2.954 2.954 0 0 0-.676-.941 4.984 4.984 0 0 1-1.455-4.405l-.837-.836zm1.588-2.653.708.707a5 5 0 0 1 7.07 7.07l.707.707a6 6 0 0 0-8.484-8.484zm-2.172-.051a.5.5 0 0 1 .708 0l12 12a.5.5 0 0 1-.708.708l-12-12a.5.5 0 0 1 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLightbulbOffFill = /*#__PURE__*/ makeIcon(\n 'LightbulbOffFill',\n '<path d=\"M2 6c0-.572.08-1.125.23-1.65l8.558 8.559A.5.5 0 0 1 10.5 13h-5a.5.5 0 0 1-.46-.302l-.761-1.77a1.964 1.964 0 0 0-.453-.618A5.984 5.984 0 0 1 2 6zm10.303 4.181L3.818 1.697a6 6 0 0 1 8.484 8.484zM5 14.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1l-.224.447a1 1 0 0 1-.894.553H6.618a1 1 0 0 1-.894-.553L5.5 15a.5.5 0 0 1-.5-.5zM2.354 1.646a.5.5 0 1 0-.708.708l12 12a.5.5 0 0 0 .708-.708l-12-12z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLightning = /*#__PURE__*/ makeIcon(\n 'Lightning',\n '<path d=\"M5.52.359A.5.5 0 0 1 6 0h4a.5.5 0 0 1 .474.658L8.694 6H12.5a.5.5 0 0 1 .395.807l-7 9a.5.5 0 0 1-.873-.454L6.823 9.5H3.5a.5.5 0 0 1-.48-.641l2.5-8.5zM6.374 1 4.168 8.5H7.5a.5.5 0 0 1 .478.647L6.78 13.04 11.478 7H8a.5.5 0 0 1-.474-.658L9.306 1H6.374z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLightningCharge = /*#__PURE__*/ makeIcon(\n 'LightningCharge',\n '<path 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 BIconLightningChargeFill = /*#__PURE__*/ makeIcon(\n 'LightningChargeFill',\n '<path 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 BIconLightningFill = /*#__PURE__*/ makeIcon(\n 'LightningFill',\n '<path d=\"M5.52.359A.5.5 0 0 1 6 0h4a.5.5 0 0 1 .474.658L8.694 6H12.5a.5.5 0 0 1 .395.807l-7 9a.5.5 0 0 1-.873-.454L6.823 9.5H3.5a.5.5 0 0 1-.48-.641l2.5-8.5z\"/>'\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.542 3.343 7.914a3 3 0 1 0 4.243 4.243l1.828-1.829A3 3 0 0 0 8.586 5.5L8 6.086a1.002 1.002 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 1 1 2.83 2.83l-.793.792c.112.42.155.855.128 1.287l1.372-1.372a3 3 0 1 0-4.243-4.243L6.586 4.672z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLinkedin = /*#__PURE__*/ makeIcon(\n 'Linkedin',\n '<path d=\"M0 1.146C0 .513.526 0 1.175 0h13.65C15.474 0 16 .513 16 1.146v13.708c0 .633-.526 1.146-1.175 1.146H1.175C.526 16 0 15.487 0 14.854V1.146zm4.943 12.248V6.169H2.542v7.225h2.401zm-1.2-8.212c.837 0 1.358-.554 1.358-1.248-.015-.709-.52-1.248-1.342-1.248-.822 0-1.359.54-1.359 1.248 0 .694.521 1.248 1.327 1.248h.016zm4.908 8.212V9.359c0-.216.016-.432.08-.586.173-.431.568-.878 1.232-.878.869 0 1.216.662 1.216 1.634v3.865h2.401V9.25c0-2.22-1.184-3.252-2.764-3.252-1.274 0-1.845.7-2.165 1.193v.025h-.016a5.54 5.54 0 0 1 .016-.025V6.169h-2.4c.03.678 0 7.225 0 7.225h2.4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconList = /*#__PURE__*/ makeIcon(\n 'List',\n '<path fill-rule=\"evenodd\" d=\"M2.5 12a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h10a.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 d=\"M8 1a2 2 0 0 1 2 2v4H6V3a2 2 0 0 1 2-2zm3 6V3a3 3 0 0 0-6 0v4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2zM5 8h6a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconLockFill = /*#__PURE__*/ makeIcon(\n 'LockFill',\n '<path d=\"M8 1a2 2 0 0 1 2 2v4H6V3a2 2 0 0 1 2-2zm3 6V3a3 3 0 0 0-6 0v4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMailbox = /*#__PURE__*/ makeIcon(\n 'Mailbox',\n '<path 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 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-.854zM5 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 d=\"M9 8.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-.5H9v1z\"/><path 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 3v6H8V7zm-3.415.157C4.42 7.087 4.218 7 4 7c-.218 0-.42.086-.585.157C3.164 7.264 3 7.334 3 7a1 1 0 0 1 2 0c0 .334-.164.264-.415.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.98 4-.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 d=\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12zM2 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 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 0-.5.5v3.793L9.854 8.146a.5.5 0 1 0-.708.708l2 2a.5.5 0 0 0 .708 0l2-2a.5.5 0 0 0-.708-.708L12 9.293V5.5a.5.5 0 0 0-.5-.5zM3.56 7.01h.056l1.428 3.239h.774l1.42-3.24h.056V11h1.073V5.001h-1.2l-1.71 3.894h-.039l-1.71-3.894H2.5V11h1.06V7.01z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMask = /*#__PURE__*/ makeIcon(\n 'Mask',\n '<path d=\"M6.225 1.227A7.5 7.5 0 0 1 10.5 8a7.5 7.5 0 0 1-4.275 6.773 7 7 0 1 0 0-13.546zM4.187.966a8 8 0 1 1 7.627 14.069A8 8 0 0 1 4.186.964z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMastodon = /*#__PURE__*/ makeIcon(\n 'Mastodon',\n '<path d=\"M11.19 12.195c2.016-.24 3.77-1.475 3.99-2.603.348-1.778.32-4.339.32-4.339 0-3.47-2.286-4.488-2.286-4.488C12.062.238 10.083.017 8.027 0h-.05C5.92.017 3.942.238 2.79.765c0 0-2.285 1.017-2.285 4.488l-.002.662c-.004.64-.007 1.35.011 2.091.083 3.394.626 6.74 3.78 7.57 1.454.383 2.703.463 3.709.408 1.823-.1 2.847-.647 2.847-.647l-.06-1.317s-1.303.41-2.767.36c-1.45-.05-2.98-.156-3.215-1.928a3.614 3.614 0 0 1-.033-.496s1.424.346 3.228.428c1.103.05 2.137-.064 3.188-.189zm1.613-2.47H11.13v-4.08c0-.859-.364-1.295-1.091-1.295-.804 0-1.207.517-1.207 1.541v2.233H7.168V5.89c0-1.024-.403-1.541-1.207-1.541-.727 0-1.091.436-1.091 1.296v4.079H3.197V5.522c0-.859.22-1.541.66-2.046.456-.505 1.052-.764 1.793-.764.856 0 1.504.328 1.933.983L8 4.39l.417-.695c.429-.655 1.077-.983 1.934-.983.74 0 1.336.259 1.791.764.442.505.661 1.187.661 2.046v4.203z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMegaphone = /*#__PURE__*/ makeIcon(\n 'Megaphone',\n '<path d=\"M13 2.5a1.5 1.5 0 0 1 3 0v11a1.5 1.5 0 0 1-3 0v-.214c-2.162-1.241-4.49-1.843-6.912-2.083l.405 2.712A1 1 0 0 1 5.51 15.1h-.548a1 1 0 0 1-.916-.599l-1.85-3.49a68.14 68.14 0 0 0-.202-.003A2.014 2.014 0 0 1 0 9V7a2.02 2.02 0 0 1 1.992-2.013 74.663 74.663 0 0 0 2.483-.075c3.043-.154 6.148-.849 8.525-2.199V2.5zm1 0v11a.5.5 0 0 0 1 0v-11a.5.5 0 0 0-1 0zm-1 1.35c-2.344 1.205-5.209 1.842-8 2.033v4.233c.18.01.359.022.537.036 2.568.189 5.093.744 7.463 1.993V3.85zm-9 6.215v-4.13a95.09 95.09 0 0 1-1.992.052A1.02 1.02 0 0 0 1 7v2c0 .55.448 1.002 1.006 1.009A60.49 60.49 0 0 1 4 10.065zm-.657.975 1.609 3.037.01.024h.548l-.002-.014-.443-2.966a68.019 68.019 0 0 0-1.722-.082z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMegaphoneFill = /*#__PURE__*/ makeIcon(\n 'MegaphoneFill',\n '<path d=\"M13 2.5a1.5 1.5 0 0 1 3 0v11a1.5 1.5 0 0 1-3 0v-11zm-1 .724c-2.067.95-4.539 1.481-7 1.656v6.237a25.222 25.222 0 0 1 1.088.085c2.053.204 4.038.668 5.912 1.56V3.224zm-8 7.841V4.934c-.68.027-1.399.043-2.008.053A2.02 2.02 0 0 0 0 7v2c0 1.106.896 1.996 1.994 2.009a68.14 68.14 0 0 1 .496.008 64 64 0 0 1 1.51.048zm1.39 1.081c.285.021.569.047.85.078l.253 1.69a1 1 0 0 1-.983 1.187h-.548a1 1 0 0 1-.916-.599l-1.314-2.48a65.81 65.81 0 0 1 1.692.064c.327.017.65.037.966.06z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMenuApp = /*#__PURE__*/ makeIcon(\n 'MenuApp',\n '<path 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-2zM0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V8zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2H1zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2h14zM2 8.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-.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 BIconMenuAppFill = /*#__PURE__*/ makeIcon(\n 'MenuAppFill',\n '<path 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-2zM0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V8zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2H1zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2h14zM2 8.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-.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 BIconMenuButton = /*#__PURE__*/ makeIcon(\n 'MenuButton',\n '<path 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-8z\"/><path d=\"m7.823 2.823-.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 0zM0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V8zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2H1zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2h14zM2 8.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-.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 BIconMenuButtonFill = /*#__PURE__*/ makeIcon(\n 'MenuButtonFill',\n '<path d=\"M1.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.427A.25.25 0 0 1 7.604 2h.792a.25.25 0 0 1 .177.427l-.396.396a.25.25 0 0 1-.354 0l-.396-.396zM0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V8zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2H1zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2h14zM2 8.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-.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 BIconMenuButtonWide = /*#__PURE__*/ makeIcon(\n 'MenuButtonWide',\n '<path 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-13z\"/><path d=\"M2 2.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5zm10.823.323-.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 0zM0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V8zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2H1zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2h14zM2 8.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-.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 BIconMenuButtonWideFill = /*#__PURE__*/ makeIcon(\n 'MenuButtonWideFill',\n '<path d=\"M1.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 2h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1zm9.927.427A.25.25 0 0 1 12.604 2h.792a.25.25 0 0 1 .177.427l-.396.396a.25.25 0 0 1-.354 0l-.396-.396zM0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V8zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2H1zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2h14zM2 8.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-.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 BIconMenuDown = /*#__PURE__*/ makeIcon(\n 'MenuDown',\n '<path d=\"M7.646.146a.5.5 0 0 1 .708 0L10.207 2H14a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h3.793L7.646.146zM1 7v3h14V7H1zm14-1V4a1 1 0 0 0-1-1h-3.793a1 1 0 0 1-.707-.293L8 1.207l-1.5 1.5A1 1 0 0 1 5.793 3H2a1 1 0 0 0-1 1v2h14zm0 5H1v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2zM2 4.5a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 0 1h-8a.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-.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 BIconMenuUp = /*#__PURE__*/ makeIcon(\n 'MenuUp',\n '<path d=\"M7.646 15.854a.5.5 0 0 0 .708 0L10.207 14H14a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h3.793l1.853 1.854zM1 9V6h14v3H1zm14 1v2a1 1 0 0 1-1 1h-3.793a1 1 0 0 0-.707.293l-1.5 1.5-1.5-1.5A1 1 0 0 0 5.793 13H2a1 1 0 0 1-1-1v-2h14zm0-5H1V3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v2zM2 11.5a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 0-1h-8a.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.5h6a.5.5 0 0 0 0-1h-6a.5.5 0 0 0-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMessenger = /*#__PURE__*/ makeIcon(\n 'Messenger',\n '<path d=\"M0 7.76C0 3.301 3.493 0 8 0s8 3.301 8 7.76-3.493 7.76-8 7.76c-.81 0-1.586-.107-2.316-.307a.639.639 0 0 0-.427.03l-1.588.702a.64.64 0 0 1-.898-.566l-.044-1.423a.639.639 0 0 0-.215-.456C.956 12.108 0 10.092 0 7.76zm5.546-1.459-2.35 3.728c-.225.358.214.761.551.506l2.525-1.916a.48.48 0 0 1 .578-.002l1.869 1.402a1.2 1.2 0 0 0 1.735-.32l2.35-3.728c.226-.358-.214-.761-.551-.506L9.728 7.381a.48.48 0 0 1-.578.002L7.281 5.98a1.2 1.2 0 0 0-1.735.32z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMic = /*#__PURE__*/ makeIcon(\n 'Mic',\n '<path 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 d=\"M10 8a2 2 0 1 1-4 0V3a2 2 0 1 1 4 0v5zM8 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 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 d=\"M13 8c0 .564-.094 1.107-.266 1.613l-.814-.814A4.02 4.02 0 0 0 12 8V7a.5.5 0 0 1 1 0v1zm-5 4c.818 0 1.578-.245 2.212-.667l.718.719a4.973 4.973 0 0 1-2.43.923V15h3a.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 1 0v1a4 4 0 0 0 4 4zm3-9v4.879l-1-1V3a2 2 0 0 0-3.997-.118l-.845-.845A3.001 3.001 0 0 1 11 3z\"/><path d=\"m9.486 10.607-.748-.748A2 2 0 0 1 6 8v-.878l-1-1V8a3 3 0 0 0 4.486 2.607zm-7.84-9.253 12 12 .708-.708-12-12-.708.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMicMuteFill = /*#__PURE__*/ makeIcon(\n 'MicMuteFill',\n '<path d=\"M13 8c0 .564-.094 1.107-.266 1.613l-.814-.814A4.02 4.02 0 0 0 12 8V7a.5.5 0 0 1 1 0v1zm-5 4c.818 0 1.578-.245 2.212-.667l.718.719a4.973 4.973 0 0 1-2.43.923V15h3a.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 1 0v1a4 4 0 0 0 4 4zm3-9v4.879L5.158 2.037A3.001 3.001 0 0 1 11 3z\"/><path d=\"M9.486 10.607 5 6.12V8a3 3 0 0 0 4.486 2.607zm-7.84-9.253 12 12 .708-.708-12-12-.708.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMinecart = /*#__PURE__*/ makeIcon(\n 'Minecart',\n '<path d=\"M4 15a1 1 0 1 1 0-2 1 1 0 0 1 0 2zm0 1a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm8-1a1 1 0 1 1 0-2 1 1 0 0 1 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.82 1.313 7h11.17l1.313-7H1.102z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMinecartLoaded = /*#__PURE__*/ makeIcon(\n 'MinecartLoaded',\n '<path d=\"M4 15a1 1 0 1 1 0-2 1 1 0 0 1 0 2zm0 1a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm8-1a1 1 0 1 1 0-2 1 1 0 0 1 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.82 1.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 BIconMoisture = /*#__PURE__*/ makeIcon(\n 'Moisture',\n '<path d=\"M13.5 0a.5.5 0 0 0 0 1H15v2.75h-.5a.5.5 0 0 0 0 1h.5V7.5h-1.5a.5.5 0 0 0 0 1H15v2.75h-.5a.5.5 0 0 0 0 1h.5V15h-1.5a.5.5 0 0 0 0 1h2a.5.5 0 0 0 .5-.5V.5a.5.5 0 0 0-.5-.5h-2zM7 1.5l.364-.343a.5.5 0 0 0-.728 0l-.002.002-.006.007-.022.023-.08.088a28.458 28.458 0 0 0-1.274 1.517c-.769.983-1.714 2.325-2.385 3.727C2.368 7.564 2 8.682 2 9.733 2 12.614 4.212 15 7 15s5-2.386 5-5.267c0-1.05-.368-2.169-.867-3.212-.671-1.402-1.616-2.744-2.385-3.727a28.458 28.458 0 0 0-1.354-1.605l-.022-.023-.006-.007-.002-.001L7 1.5zm0 0-.364-.343L7 1.5zm-.016.766L7 2.247l.016.019c.24.274.572.667.944 1.144.611.781 1.32 1.776 1.901 2.827H4.14c.58-1.051 1.29-2.046 1.9-2.827.373-.477.706-.87.945-1.144zM3 9.733c0-.755.244-1.612.638-2.496h6.724c.395.884.638 1.741.638 2.496C11 12.117 9.182 14 7 14s-4-1.883-4-4.267z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMoon = /*#__PURE__*/ makeIcon(\n 'Moon',\n '<path d=\"M6 .278a.768.768 0 0 1 .08.858 7.208 7.208 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 0 1 .81.316.733.733 0 0 1-.031.893A8.349 8.349 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 0 1 6 .278zM4.858 1.311A7.269 7.269 0 0 0 1.025 7.71c0 4.02 3.279 7.276 7.319 7.276a7.316 7.316 0 0 0 5.205-2.162c-.337.042-.68.063-1.029.063-4.61 0-8.343-3.714-8.343-8.29 0-1.167.242-2.278.681-3.286z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMoonFill = /*#__PURE__*/ makeIcon(\n 'MoonFill',\n '<path d=\"M6 .278a.768.768 0 0 1 .08.858 7.208 7.208 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 0 1 .81.316.733.733 0 0 1-.031.893A8.349 8.349 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 0 1 6 .278z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMoonStars = /*#__PURE__*/ makeIcon(\n 'MoonStars',\n '<path d=\"M6 .278a.768.768 0 0 1 .08.858 7.208 7.208 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 0 1 .81.316.733.733 0 0 1-.031.893A8.349 8.349 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 0 1 6 .278zM4.858 1.311A7.269 7.269 0 0 0 1.025 7.71c0 4.02 3.279 7.276 7.319 7.276a7.316 7.316 0 0 0 5.205-2.162c-.337.042-.68.063-1.029.063-4.61 0-8.343-3.714-8.343-8.29 0-1.167.242-2.278.681-3.286z\"/><path d=\"M10.794 3.148a.217.217 0 0 1 .412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 0 1 0 .412l-1.162.387a1.734 1.734 0 0 0-1.097 1.097l-.387 1.162a.217.217 0 0 1-.412 0l-.387-1.162A1.734 1.734 0 0 0 9.31 6.593l-1.162-.387a.217.217 0 0 1 0-.412l1.162-.387a1.734 1.734 0 0 0 1.097-1.097l.387-1.162zM13.863.099a.145.145 0 0 1 .274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 0 1 0 .274l-.774.258a1.156 1.156 0 0 0-.732.732l-.258.774a.145.145 0 0 1-.274 0l-.258-.774a1.156 1.156 0 0 0-.732-.732l-.774-.258a.145.145 0 0 1 0-.274l.774-.258c.346-.115.617-.386.732-.732L13.863.1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMoonStarsFill = /*#__PURE__*/ makeIcon(\n 'MoonStarsFill',\n '<path d=\"M6 .278a.768.768 0 0 1 .08.858 7.208 7.208 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 0 1 .81.316.733.733 0 0 1-.031.893A8.349 8.349 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 0 1 6 .278z\"/><path d=\"M10.794 3.148a.217.217 0 0 1 .412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 0 1 0 .412l-1.162.387a1.734 1.734 0 0 0-1.097 1.097l-.387 1.162a.217.217 0 0 1-.412 0l-.387-1.162A1.734 1.734 0 0 0 9.31 6.593l-1.162-.387a.217.217 0 0 1 0-.412l1.162-.387a1.734 1.734 0 0 0 1.097-1.097l.387-1.162zM13.863.099a.145.145 0 0 1 .274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 0 1 0 .274l-.774.258a1.156 1.156 0 0 0-.732.732l-.258.774a.145.145 0 0 1-.274 0l-.258-.774a1.156 1.156 0 0 0-.732-.732l-.774-.258a.145.145 0 0 1 0-.274l.774-.258c.346-.115.617-.386.732-.732L13.863.1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMouse = /*#__PURE__*/ makeIcon(\n 'Mouse',\n '<path 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 8a4 4 0 0 1-8 0V5a4 4 0 1 1 8 0v6zM8 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 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 BIconMouse2Fill = /*#__PURE__*/ makeIcon(\n 'Mouse2Fill',\n '<path d=\"M7.5.026C4.958.286 3 2.515 3 5.188V5.5h4.5V.026zm1 0V5.5H13v-.312C13 2.515 11.042.286 8.5.026zM13 6.5H3v4.313C3 13.658 5.22 16 8 16s5-2.342 5-5.188V6.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMouse3 = /*#__PURE__*/ makeIcon(\n 'Mouse3',\n '<path d=\"M7 0c-.593 0-1.104.157-1.527.463-.418.302-.717.726-.93 1.208C4.123 2.619 4 3.879 4 5.187v.504L3.382 6A2.5 2.5 0 0 0 2 8.236v2.576C2 13.659 4.22 16 7 16h2c2.78 0 5-2.342 5-5.188V7.51a.71.71 0 0 0 0-.02V5.186c0-1.13-.272-2.044-.748-2.772-.474-.726-1.13-1.235-1.849-1.59C9.981.123 8.26 0 7 0zm2.5 6.099V1.232c.51.11 1.008.267 1.46.49.596.293 1.099.694 1.455 1.24.355.543.585 1.262.585 2.225v1.69l-3.5-.778zm-1-5.025v4.803L5 5.099c.006-1.242.134-2.293.457-3.024.162-.366.363-.63.602-.801C6.292 1.105 6.593 1 7 1c.468 0 .98.018 1.5.074zM5 6.124 13 7.9v2.912C13 13.145 11.19 15 9 15H7c-2.19 0-4-1.855-4-4.188V8.236a1.5 1.5 0 0 1 .83-1.342l.187-.093c.01.265.024.58.047.92.062.938.19 2.12.462 2.937a.5.5 0 1 0 .948-.316c-.227-.683-.35-1.75-.413-2.688a29.17 29.17 0 0 1-.06-1.528v-.002z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMouse3Fill = /*#__PURE__*/ makeIcon(\n 'Mouse3Fill',\n '<path d=\"M8.5.069A15.328 15.328 0 0 0 7 0c-.593 0-1.104.157-1.527.463-.418.302-.717.726-.93 1.208-.386.873-.522 2.01-.54 3.206l4.497 1V.069zM3.71 5.836 3.381 6A2.5 2.5 0 0 0 2 8.236v2.576C2 13.659 4.22 16 7 16h2c2.78 0 5-2.342 5-5.188V8.123l-9-2v.003l.008.353c.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.937A30.16 30.16 0 0 1 4 6.003c0-.034.003-.067.01-.1l-.3-.067zM14 7.1V5.187c0-1.13-.272-2.044-.748-2.772-.474-.726-1.13-1.235-1.849-1.59A7.495 7.495 0 0 0 9.5.212v5.887l4.5 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconMouseFill = /*#__PURE__*/ makeIcon(\n 'MouseFill',\n '<path d=\"M3 5a5 5 0 0 1 10 0v6a5 5 0 0 1-10 0V5zm5.5-1.5a.5.5 0 0 0-1 0v2a.5.5 0 0 0 1 0v-2z\"/>'\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 d=\"M4 3a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V3zm1 0v3h6V3H5zm3 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/><path d=\"M11 11a3 3 0 1 1-6 0 3 3 0 0 1 6 0zm-3 2a2 2 0 1 0 0-4 2 2 0 0 0 0 4z\"/><path 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 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 BIconMusicPlayerFill = /*#__PURE__*/ makeIcon(\n 'MusicPlayerFill',\n '<path d=\"M8 12a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"/><path 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-2H4zm1 2h6a1 1 0 0 1 1 1v2.5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1zm3 12a3 3 0 1 1 0-6 3 3 0 0 1 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconNewspaper = /*#__PURE__*/ makeIcon(\n 'Newspaper',\n '<path 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 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.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 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconNut = /*#__PURE__*/ makeIcon(\n 'Nut',\n '<path d=\"m11.42 2 3.428 6-3.428 6H4.58L1.152 8 4.58 2h6.84zM4.58 1a1 1 0 0 0-.868.504l-3.428 6a1 1 0 0 0 0 .992l3.428 6A1 1 0 0 0 4.58 15h6.84a1 1 0 0 0 .868-.504l3.429-6a1 1 0 0 0 0-.992l-3.429-6A1 1 0 0 0 11.42 1H4.58z\"/><path 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.33zm-1.78 3.915a3.5 3.5 0 1 1 6.061-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 d=\"M4.58 1a1 1 0 0 0-.868.504l-3.428 6a1 1 0 0 0 0 .992l3.428 6A1 1 0 0 0 4.58 15h6.84a1 1 0 0 0 .868-.504l3.429-6a1 1 0 0 0 0-.992l-3.429-6A1 1 0 0 0 11.42 1H4.58zm5.018 9.696a3 3 0 1 1-3-5.196 3 3 0 0 1 3 5.196z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconOctagon = /*#__PURE__*/ makeIcon(\n 'Octagon',\n '<path 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 1 1 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 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 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 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 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-.5zM7 10v1h2v-1a1 1 0 0 0-2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPaintBucket = /*#__PURE__*/ makeIcon(\n 'PaintBucket',\n '<path d=\"M6.192 2.78c-.458-.677-.927-1.248-1.35-1.643a2.972 2.972 0 0 0-.71-.515c-.217-.104-.56-.205-.882-.02-.367.213-.427.63-.43.896-.003.304.064.664.173 1.044.196.687.556 1.528 1.035 2.402L.752 8.22c-.277.277-.269.656-.218.918.055.283.187.593.36.903.348.627.92 1.361 1.626 2.068.707.707 1.441 1.278 2.068 1.626.31.173.62.305.903.36.262.05.64.059.918-.218l5.615-5.615c.118.257.092.512.05.939-.03.292-.068.665-.073 1.176v.123h.003a1 1 0 0 0 1.993 0H14v-.057a1.01 1.01 0 0 0-.004-.117c-.055-1.25-.7-2.738-1.86-3.494a4.322 4.322 0 0 0-.211-.434c-.349-.626-.92-1.36-1.627-2.067-.707-.707-1.441-1.279-2.068-1.627-.31-.172-.62-.304-.903-.36-.262-.05-.64-.058-.918.219l-.217.216zM4.16 1.867c.381.356.844.922 1.311 1.632l-.704.705c-.382-.727-.66-1.402-.813-1.938a3.283 3.283 0 0 1-.131-.673c.091.061.204.15.337.274zm.394 3.965c.54.852 1.107 1.567 1.607 2.033a.5.5 0 1 0 .682-.732c-.453-.422-1.017-1.136-1.564-2.027l1.088-1.088c.054.12.115.243.183.365.349.627.92 1.361 1.627 2.068.706.707 1.44 1.278 2.068 1.626.122.068.244.13.365.183l-4.861 4.862a.571.571 0 0 1-.068-.01c-.137-.027-.342-.104-.608-.252-.524-.292-1.186-.8-1.846-1.46-.66-.66-1.168-1.32-1.46-1.846-.147-.265-.225-.47-.251-.607a.573.573 0 0 1-.01-.068l3.048-3.047zm2.87-1.935a2.44 2.44 0 0 1-.241-.561c.135.033.324.11.562.241.524.292 1.186.8 1.846 1.46.45.45.83.901 1.118 1.31a3.497 3.497 0 0 0-1.066.091 11.27 11.27 0 0 1-.76-.694c-.66-.66-1.167-1.322-1.458-1.847z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPalette = /*#__PURE__*/ makeIcon(\n 'Palette',\n '<path d=\"M8 5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm4 3a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zM5.5 7a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm.5 6a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/><path d=\"M16 8c0 3.15-1.866 2.585-3.567 2.07C11.42 9.763 10.465 9.473 10 10c-.603.683-.475 1.819-.351 2.92C9.826 14.495 9.996 16 8 16a8 8 0 1 1 8-8zm-8 7c.611 0 .654-.171.655-.176.078-.146.124-.464.07-1.119-.014-.168-.037-.37-.061-.591-.052-.464-.112-1.005-.118-1.462-.01-.707.083-1.61.704-2.314.369-.417.845-.578 1.272-.618.404-.038.812.026 1.16.104.343.077.702.186 1.025.284l.028.008c.346.105.658.199.953.266.653.148.904.083.991.024C14.717 9.38 15 9.161 15 8a7 7 0 1 0-7 7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPalette2 = /*#__PURE__*/ makeIcon(\n 'Palette2',\n '<path d=\"M0 .5A.5.5 0 0 1 .5 0h5a.5.5 0 0 1 .5.5v5.277l4.147-4.131a.5.5 0 0 1 .707 0l3.535 3.536a.5.5 0 0 1 0 .708L10.261 10H15.5a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5H3a2.99 2.99 0 0 1-2.121-.879A2.99 2.99 0 0 1 0 13.044m6-.21 7.328-7.3-2.829-2.828L6 7.188v5.647zM4.5 13a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0zM15 15v-4H9.258l-4.015 4H15zM0 .5v12.495V.5z\"/><path d=\"M0 12.995V13a3.07 3.07 0 0 0 0-.005z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPaletteFill = /*#__PURE__*/ makeIcon(\n 'PaletteFill',\n '<path d=\"M12.433 10.07C14.133 10.585 16 11.15 16 8a8 8 0 1 0-8 8c1.996 0 1.826-1.504 1.649-3.08-.124-1.101-.252-2.237.351-2.92.465-.527 1.42-.237 2.433.07zM8 5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm4.5 3a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zM5 6.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm.5 6.5a1.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 BIconPaperclip = /*#__PURE__*/ makeIcon(\n 'Paperclip',\n '<path 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 d=\"M10.5 15a.5.5 0 0 1-.5-.5V2H9v12.5a.5.5 0 0 1-1 0V9H7a4 4 0 1 1 0-8h5.5a.5.5 0 0 1 0 1H11v12.5a.5.5 0 0 1-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchCheck = /*#__PURE__*/ makeIcon(\n 'PatchCheck',\n '<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\"/><path d=\"m10.273 2.513-.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 BIconPatchCheckFill = /*#__PURE__*/ makeIcon(\n 'PatchCheckFill',\n '<path 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.984-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.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchExclamation = /*#__PURE__*/ makeIcon(\n 'PatchExclamation',\n '<path d=\"M7.001 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.553.553 0 0 1-1.1 0L7.1 4.995z\"/><path d=\"m10.273 2.513-.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 BIconPatchExclamationFill = /*#__PURE__*/ makeIcon(\n 'PatchExclamationFill',\n '<path 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 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995A.905.905 0 0 1 8 4zm.002 6a1 1 0 1 1 0 2 1 1 0 0 1 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 d=\"m10.273 2.513-.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 BIconPatchMinusFill = /*#__PURE__*/ makeIcon(\n 'PatchMinusFill',\n '<path 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.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchPlus = /*#__PURE__*/ makeIcon(\n 'PatchPlus',\n '<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\"/><path d=\"m10.273 2.513-.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 BIconPatchPlusFill = /*#__PURE__*/ makeIcon(\n 'PatchPlusFill',\n '<path 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 6v1.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 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchQuestion = /*#__PURE__*/ makeIcon(\n 'PatchQuestion',\n '<path d=\"M8.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 d=\"m10.273 2.513-.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 d=\"M7.001 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPatchQuestionFill = /*#__PURE__*/ makeIcon(\n 'PatchQuestionFill',\n '<path 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 0 2 0 1 1 0 0 0-2 0zm1.602-2.027c.04-.534.198-.815.846-1.26.674-.475 1.05-1.09 1.05-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.745.336 0 .504-.24.554-.627z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPause = /*#__PURE__*/ makeIcon(\n 'Pause',\n '<path d=\"M6 3.5a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V4a.5.5 0 0 1 .5-.5zm4 0a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V4a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPauseBtn = /*#__PURE__*/ makeIcon(\n 'PauseBtn',\n '<path d=\"M6.25 5C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C7.5 5.56 6.94 5 6.25 5zm3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C11 5.56 10.44 5 9.75 5z\"/><path 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-2V4zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPauseBtnFill = /*#__PURE__*/ makeIcon(\n 'PauseBtnFill',\n '<path d=\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm6.25-7C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C7.5 5.56 6.94 5 6.25 5zm3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C11 5.56 10.44 5 9.75 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPauseCircle = /*#__PURE__*/ makeIcon(\n 'PauseCircle',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M5 6.25a1.25 1.25 0 1 1 2.5 0v3.5a1.25 1.25 0 1 1-2.5 0v-3.5zm3.5 0a1.25 1.25 0 1 1 2.5 0v3.5a1.25 1.25 0 1 1-2.5 0v-3.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPauseCircleFill = /*#__PURE__*/ makeIcon(\n 'PauseCircleFill',\n '<path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM6.25 5C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C7.5 5.56 6.94 5 6.25 5zm3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C11 5.56 10.44 5 9.75 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPauseFill = /*#__PURE__*/ makeIcon(\n 'PauseFill',\n '<path d=\"M5.5 3.5A1.5 1.5 0 0 1 7 5v6a1.5 1.5 0 0 1-3 0V5a1.5 1.5 0 0 1 1.5-1.5zm5 0A1.5 1.5 0 0 1 12 5v6a1.5 1.5 0 0 1-3 0V5a1.5 1.5 0 0 1 1.5-1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPeace = /*#__PURE__*/ makeIcon(\n 'Peace',\n '<path 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 d=\"m13.498.795.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 d=\"m13.498.795.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 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.5 13.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.175-.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 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.456-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 d=\"m8 1.288 6.842 5.56L12.267 15H3.733L1.158 6.847 8 1.288zM16 6.5 8 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 0 8 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 d=\"m8 1.288 6.842 5.56L12.267 15H8V1.288zM16 6.5 8 0 0 6.5 3 16h10l3-9.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPeople = /*#__PURE__*/ makeIcon(\n 'People',\n '<path d=\"M15 14s1 0 1-1-1-4-5-4-5 3-5 4 1 1 1 1h8zm-7.978-1A.261.261 0 0 1 7 12.996c.001-.264.167-1.03.76-1.72C8.312 10.629 9.282 10 11 10c1.717 0 2.687.63 3.24 1.276.593.69.758 1.457.76 1.72l-.008.002a.274.274 0 0 1-.014.002H7.022zM11 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 10A5.493 5.493 0 0 0 4 13H1c0-.26.164-1.03.76-1.724.545-.636 1.492-1.256 3.16-1.275zM1.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 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 6z\"/><path fill-rule=\"evenodd\" d=\"M5.216 14A2.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.216z\"/><path d=\"M4.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 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 1 0-3 1.5 1.5 0 0 1 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 1 0-3 1.5 1.5 0 0 1 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 d=\"M8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm4 8c0 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 d=\"M6.5 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0z\"/><path d=\"M4.5 0A2.5 2.5 0 0 0 2 2.5V14a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2.5A2.5 2.5 0 0 0 11.5 0h-7zM3 2.5A1.5 1.5 0 0 1 4.5 1h7A1.5 1.5 0 0 1 13 2.5v10.795a4.2 4.2 0 0 0-.776-.492C11.392 12.387 10.063 12 8 12s-3.392.387-4.224.803a4.2 4.2 0 0 0-.776.492V2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonBadgeFill = /*#__PURE__*/ makeIcon(\n 'PersonBadgeFill',\n '<path 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 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 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3zm8-9a3 3 0 1 1-6 0 3 3 0 0 1 6 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonCheck = /*#__PURE__*/ makeIcon(\n 'PersonCheck',\n '<path d=\"M6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm4 8c0 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.664h10z\"/><path fill-rule=\"evenodd\" d=\"M15.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 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=\"M15.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 0 1 .708-.708L12.5 7.793l2.646-2.647a.5.5 0 0 1 .708 0z\"/><path 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 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonCircle = /*#__PURE__*/ makeIcon(\n 'PersonCircle',\n '<path d=\"M11 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0z\"/><path fill-rule=\"evenodd\" d=\"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8zm8-7a7 7 0 0 0-5.468 11.37C3.242 11.226 4.805 10 8 10s4.757 1.225 5.468 2.37A7 7 0 0 0 8 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonDash = /*#__PURE__*/ makeIcon(\n 'PersonDash',\n '<path d=\"M6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm4 8c0 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.664h10z\"/><path fill-rule=\"evenodd\" d=\"M11 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=\"M11 7.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5z\"/><path 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 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonFill = /*#__PURE__*/ makeIcon(\n 'PersonFill',\n '<path 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 d=\"M6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-5 6s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zM11 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5zm.5 2.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1h-4zm2 3a.5.5 0 0 0 0 1h2a.5.5 0 0 0 0-1h-2zm0 3a.5.5 0 0 0 0 1h2a.5.5 0 0 0 0-1h-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonPlus = /*#__PURE__*/ makeIcon(\n 'PersonPlus',\n '<path d=\"M6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm4 8c0 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.664h10z\"/><path fill-rule=\"evenodd\" d=\"M13.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 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 6z\"/><path fill-rule=\"evenodd\" d=\"M13.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 BIconPersonSquare = /*#__PURE__*/ makeIcon(\n 'PersonSquare',\n '<path d=\"M11 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0z\"/><path 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-2H2zm12 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1v-1c0-1-1-4-6-4s-6 3-6 4v1a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPersonX = /*#__PURE__*/ makeIcon(\n 'PersonX',\n '<path d=\"M6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm4 8c0 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.664h10z\"/><path fill-rule=\"evenodd\" d=\"M12.146 5.146a.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 d=\"M11 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h6zM5 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 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 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 0-2 0 1 1 0 0 0 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPhoneLandscape = /*#__PURE__*/ makeIcon(\n 'PhoneLandscape',\n '<path d=\"M1 4.5a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1v-6zm-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 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 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 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPhoneVibrate = /*#__PURE__*/ makeIcon(\n 'PhoneVibrate',\n '<path d=\"M10 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h4zM6 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 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 BIconPhoneVibrateFill = /*#__PURE__*/ makeIcon(\n 'PhoneVibrateFill',\n '<path d=\"M4 4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4zm5 7a1 1 0 1 0-2 0 1 1 0 0 0 2 0zM1.807 4.734a.5.5 0 1 0-.884-.468A7.967 7.967 0 0 0 0 8c0 1.347.334 2.618.923 3.734a.5.5 0 1 0 .884-.468A6.967 6.967 0 0 1 1 8c0-1.18.292-2.292.807-3.266zm13.27-.468a.5.5 0 0 0-.884.468C14.708 5.708 15 6.819 15 8c0 1.18-.292 2.292-.807 3.266a.5.5 0 0 0 .884.468A7.967 7.967 0 0 0 16 8a7.967 7.967 0 0 0-.923-3.734zM3.34 6.182a.5.5 0 1 0-.93-.364A5.986 5.986 0 0 0 2 8c0 .769.145 1.505.41 2.182a.5.5 0 1 0 .93-.364A4.986 4.986 0 0 1 3 8c0-.642.12-1.255.34-1.818zm10.25-.364a.5.5 0 0 0-.93.364c.22.563.34 1.176.34 1.818 0 .642-.12 1.255-.34 1.818a.5.5 0 0 0 .93.364C13.856 9.505 14 8.769 14 8c0-.769-.145-1.505-.41-2.182z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPieChart = /*#__PURE__*/ makeIcon(\n 'PieChart',\n '<path d=\"M7.5 1.018a7 7 0 0 0-4.79 11.566L7.5 7.793V1.018zm1 0V7.5h6.482A7.001 7.001 0 0 0 8.5 1.018zM14.982 8.5H8.207l-4.79 4.79A7 7 0 0 0 14.982 8.5zM0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8z\"/>'\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 BIconPiggyBank = /*#__PURE__*/ makeIcon(\n 'PiggyBank',\n '<path d=\"M5 6.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0zm1.138-1.496A6.613 6.613 0 0 1 7.964 4.5c.666 0 1.303.097 1.893.273a.5.5 0 0 0 .286-.958A7.602 7.602 0 0 0 7.964 3.5c-.734 0-1.441.103-2.102.292a.5.5 0 1 0 .276.962z\"/><path fill-rule=\"evenodd\" d=\"M7.964 1.527c-2.977 0-5.571 1.704-6.32 4.125h-.55A1 1 0 0 0 .11 6.824l.254 1.46a1.5 1.5 0 0 0 1.478 1.243h.263c.3.513.688.978 1.145 1.382l-.729 2.477a.5.5 0 0 0 .48.641h2a.5.5 0 0 0 .471-.332l.482-1.351c.635.173 1.31.267 2.011.267.707 0 1.388-.095 2.028-.272l.543 1.372a.5.5 0 0 0 .465.316h2a.5.5 0 0 0 .478-.645l-.761-2.506C13.81 9.895 14.5 8.559 14.5 7.069c0-.145-.007-.29-.02-.431.261-.11.508-.266.705-.444.315.306.815.306.815-.417 0 .223-.5.223-.461-.026a.95.95 0 0 0 .09-.255.7.7 0 0 0-.202-.645.58.58 0 0 0-.707-.098.735.735 0 0 0-.375.562c-.024.243.082.48.32.654a2.112 2.112 0 0 1-.259.153c-.534-2.664-3.284-4.595-6.442-4.595zM2.516 6.26c.455-2.066 2.667-3.733 5.448-3.733 3.146 0 5.536 2.114 5.536 4.542 0 1.254-.624 2.41-1.67 3.248a.5.5 0 0 0-.165.535l.66 2.175h-.985l-.59-1.487a.5.5 0 0 0-.629-.288c-.661.23-1.39.359-2.157.359a6.558 6.558 0 0 1-2.157-.359.5.5 0 0 0-.635.304l-.525 1.471h-.979l.633-2.15a.5.5 0 0 0-.17-.534 4.649 4.649 0 0 1-1.284-1.541.5.5 0 0 0-.446-.275h-.56a.5.5 0 0 1-.492-.414l-.254-1.46h.933a.5.5 0 0 0 .488-.393zm12.621-.857a.565.565 0 0 1-.098.21.704.704 0 0 1-.044-.025c-.146-.09-.157-.175-.152-.223a.236.236 0 0 1 .117-.173c.049-.027.08-.021.113.012a.202.202 0 0 1 .064.199z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPiggyBankFill = /*#__PURE__*/ makeIcon(\n 'PiggyBankFill',\n '<path fill-rule=\"evenodd\" d=\"M7.964 1.527c-2.977 0-5.571 1.704-6.32 4.125h-.55A1 1 0 0 0 .11 6.824l.254 1.46a1.5 1.5 0 0 0 1.478 1.243h.263c.3.513.688.978 1.145 1.382l-.729 2.477a.5.5 0 0 0 .48.641h2a.5.5 0 0 0 .471-.332l.482-1.351c.635.173 1.31.267 2.011.267.707 0 1.388-.095 2.028-.272l.543 1.372a.5.5 0 0 0 .465.316h2a.5.5 0 0 0 .478-.645l-.761-2.506C13.81 9.895 14.5 8.559 14.5 7.069c0-.145-.007-.29-.02-.431.261-.11.508-.266.705-.444.315.306.815.306.815-.417 0 .223-.5.223-.461-.026a.95.95 0 0 0 .09-.255.7.7 0 0 0-.202-.645.58.58 0 0 0-.707-.098.735.735 0 0 0-.375.562c-.024.243.082.48.32.654a2.112 2.112 0 0 1-.259.153c-.534-2.664-3.284-4.595-6.442-4.595zm7.173 3.876a.565.565 0 0 1-.098.21.704.704 0 0 1-.044-.025c-.146-.09-.157-.175-.152-.223a.236.236 0 0 1 .117-.173c.049-.027.08-.021.113.012a.202.202 0 0 1 .064.199zm-8.999-.65A6.613 6.613 0 0 1 7.964 4.5c.666 0 1.303.097 1.893.273a.5.5 0 1 0 .286-.958A7.601 7.601 0 0 0 7.964 3.5c-.734 0-1.441.103-2.102.292a.5.5 0 1 0 .276.962zM5 6.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPin = /*#__PURE__*/ makeIcon(\n 'Pin',\n '<path d=\"M4.146.146A.5.5 0 0 1 4.5 0h7a.5.5 0 0 1 .5.5c0 .68-.342 1.174-.646 1.479-.126.125-.25.224-.354.298v4.431l.078.048c.203.127.476.314.751.555C12.36 7.775 13 8.527 13 9.5a.5.5 0 0 1-.5.5h-4v4.5c0 .276-.224 1.5-.5 1.5s-.5-1.224-.5-1.5V10h-4a.5.5 0 0 1-.5-.5c0-.973.64-1.725 1.17-2.189A5.921 5.921 0 0 1 5 6.708V2.277a2.77 2.77 0 0 1-.354-.298C4.342 1.674 4 1.179 4 .5a.5.5 0 0 1 .146-.354zm1.58 1.408-.002-.001.002.001zm-.002-.001.002.001A.5.5 0 0 1 6 2v5a.5.5 0 0 1-.276.447h-.002l-.012.007-.054.03a4.922 4.922 0 0 0-.827.58c-.318.278-.585.596-.725.936h7.792c-.14-.34-.407-.658-.725-.936a4.915 4.915 0 0 0-.881-.61l-.012-.006h-.002A.5.5 0 0 1 10 7V2a.5.5 0 0 1 .295-.458 1.775 1.775 0 0 0 .351-.271c.08-.08.155-.17.214-.271H5.14c.06.1.133.191.214.271a1.78 1.78 0 0 0 .37.282z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPinAngle = /*#__PURE__*/ makeIcon(\n 'PinAngle',\n '<path d=\"M9.828.722a.5.5 0 0 1 .354.146l4.95 4.95a.5.5 0 0 1 0 .707c-.48.48-1.072.588-1.503.588-.177 0-.335-.018-.46-.039l-3.134 3.134a5.927 5.927 0 0 1 .16 1.013c.046.702-.032 1.687-.72 2.375a.5.5 0 0 1-.707 0l-2.829-2.828-3.182 3.182c-.195.195-1.219.902-1.414.707-.195-.195.512-1.22.707-1.414l3.182-3.182-2.828-2.829a.5.5 0 0 1 0-.707c.688-.688 1.673-.767 2.375-.72a5.922 5.922 0 0 1 1.013.16l3.134-3.133a2.772 2.772 0 0 1-.04-.461c0-.43.108-1.022.589-1.503a.5.5 0 0 1 .353-.146zm.122 2.112v-.002.002zm0-.002v.002a.5.5 0 0 1-.122.51L6.293 6.878a.5.5 0 0 1-.511.12H5.78l-.014-.004a4.507 4.507 0 0 0-.288-.076 4.922 4.922 0 0 0-.765-.116c-.422-.028-.836.008-1.175.15l5.51 5.509c.141-.34.177-.753.149-1.175a4.924 4.924 0 0 0-.192-1.054l-.004-.013v-.001a.5.5 0 0 1 .12-.512l3.536-3.535a.5.5 0 0 1 .532-.115l.096.022c.087.017.208.034.344.034.114 0 .23-.011.343-.04L9.927 2.028c-.029.113-.04.23-.04.343a1.779 1.779 0 0 0 .062.46z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPinAngleFill = /*#__PURE__*/ makeIcon(\n 'PinAngleFill',\n '<path d=\"M9.828.722a.5.5 0 0 1 .354.146l4.95 4.95a.5.5 0 0 1 0 .707c-.48.48-1.072.588-1.503.588-.177 0-.335-.018-.46-.039l-3.134 3.134a5.927 5.927 0 0 1 .16 1.013c.046.702-.032 1.687-.72 2.375a.5.5 0 0 1-.707 0l-2.829-2.828-3.182 3.182c-.195.195-1.219.902-1.414.707-.195-.195.512-1.22.707-1.414l3.182-3.182-2.828-2.829a.5.5 0 0 1 0-.707c.688-.688 1.673-.767 2.375-.72a5.922 5.922 0 0 1 1.013.16l3.134-3.133a2.772 2.772 0 0 1-.04-.461c0-.43.108-1.022.589-1.503a.5.5 0 0 1 .353-.146z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPinFill = /*#__PURE__*/ makeIcon(\n 'PinFill',\n '<path d=\"M4.146.146A.5.5 0 0 1 4.5 0h7a.5.5 0 0 1 .5.5c0 .68-.342 1.174-.646 1.479-.126.125-.25.224-.354.298v4.431l.078.048c.203.127.476.314.751.555C12.36 7.775 13 8.527 13 9.5a.5.5 0 0 1-.5.5h-4v4.5c0 .276-.224 1.5-.5 1.5s-.5-1.224-.5-1.5V10h-4a.5.5 0 0 1-.5-.5c0-.973.64-1.725 1.17-2.189A5.921 5.921 0 0 1 5 6.708V2.277a2.77 2.77 0 0 1-.354-.298C4.342 1.674 4 1.179 4 .5a.5.5 0 0 1 .146-.354z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPinMap = /*#__PURE__*/ makeIcon(\n 'PinMap',\n '<path fill-rule=\"evenodd\" d=\"M3.1 11.2a.5.5 0 0 1 .4-.2H6a.5.5 0 0 1 0 1H3.75L1.5 15h13l-2.25-3H10a.5.5 0 0 1 0-1h2.5a.5.5 0 0 1 .4.2l3 4a.5.5 0 0 1-.4.8H.5a.5.5 0 0 1-.4-.8l3-4z\"/><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.999z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPinMapFill = /*#__PURE__*/ makeIcon(\n 'PinMapFill',\n '<path fill-rule=\"evenodd\" d=\"M3.1 11.2a.5.5 0 0 1 .4-.2H6a.5.5 0 0 1 0 1H3.75L1.5 15h13l-2.25-3H10a.5.5 0 0 1 0-1h2.5a.5.5 0 0 1 .4.2l3 4a.5.5 0 0 1-.4.8H.5a.5.5 0 0 1-.4-.8l3-4z\"/><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.999z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPip = /*#__PURE__*/ makeIcon(\n 'Pip',\n '<path 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 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 6h5a.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-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlay = /*#__PURE__*/ makeIcon(\n 'Play',\n '<path d=\"M10.804 8 5 4.633v6.734L10.804 8zm.792-.696a.802.802 0 0 1 0 1.392l-6.363 3.692C4.713 12.69 4 12.345 4 11.692V4.308c0-.653.713-.998 1.233-.696l6.363 3.692z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlayBtn = /*#__PURE__*/ makeIcon(\n 'PlayBtn',\n '<path d=\"M6.79 5.093A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407l3.5-2.5a.5.5 0 0 0 0-.814l-3.5-2.5z\"/><path 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-2V4zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlayBtnFill = /*#__PURE__*/ makeIcon(\n 'PlayBtnFill',\n '<path d=\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm6.79-6.907A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407l3.5-2.5a.5.5 0 0 0 0-.814l-3.5-2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlayCircle = /*#__PURE__*/ makeIcon(\n 'PlayCircle',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M6.271 5.055a.5.5 0 0 1 .52.038l3.5 2.5a.5.5 0 0 1 0 .814l-3.5 2.5A.5.5 0 0 1 6 10.5v-5a.5.5 0 0 1 .271-.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlayCircleFill = /*#__PURE__*/ makeIcon(\n 'PlayCircleFill',\n '<path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM6.79 5.093A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407l3.5-2.5a.5.5 0 0 0 0-.814l-3.5-2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlayFill = /*#__PURE__*/ makeIcon(\n 'PlayFill',\n '<path d=\"m11.596 8.697-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 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 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 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 d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path 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 BIconPlusCircleDotted = /*#__PURE__*/ makeIcon(\n 'PlusCircleDotted',\n '<path d=\"M8 0c-.176 0-.35.006-.523.017l.064.998a7.117 7.117 0 0 1 .918 0l.064-.998A8.113 8.113 0 0 0 8 0zM6.44.152c-.346.069-.684.16-1.012.27l.321.948c.287-.098.582-.177.884-.237L6.44.153zm4.132.271a7.946 7.946 0 0 0-1.011-.27l-.194.98c.302.06.597.14.884.237l.321-.947zm1.873.925a8 8 0 0 0-.906-.524l-.443.896c.275.136.54.29.793.459l.556-.831zM4.46.824c-.314.155-.616.33-.905.524l.556.83a7.07 7.07 0 0 1 .793-.458L4.46.824zM2.725 1.985c-.262.23-.51.478-.74.74l.752.66c.202-.23.418-.446.648-.648l-.66-.752zm11.29.74a8.058 8.058 0 0 0-.74-.74l-.66.752c.23.202.447.418.648.648l.752-.66zm1.161 1.735a7.98 7.98 0 0 0-.524-.905l-.83.556c.169.253.322.518.458.793l.896-.443zM1.348 3.555c-.194.289-.37.591-.524.906l.896.443c.136-.275.29-.54.459-.793l-.831-.556zM.423 5.428a7.945 7.945 0 0 0-.27 1.011l.98.194c.06-.302.14-.597.237-.884l-.947-.321zM15.848 6.44a7.943 7.943 0 0 0-.27-1.012l-.948.321c.098.287.177.582.237.884l.98-.194zM.017 7.477a8.113 8.113 0 0 0 0 1.046l.998-.064a7.117 7.117 0 0 1 0-.918l-.998-.064zM16 8a8.1 8.1 0 0 0-.017-.523l-.998.064a7.11 7.11 0 0 1 0 .918l.998.064A8.1 8.1 0 0 0 16 8zM.152 9.56c.069.346.16.684.27 1.012l.948-.321a6.944 6.944 0 0 1-.237-.884l-.98.194zm15.425 1.012c.112-.328.202-.666.27-1.011l-.98-.194c-.06.302-.14.597-.237.884l.947.321zM.824 11.54a8 8 0 0 0 .524.905l.83-.556a6.999 6.999 0 0 1-.458-.793l-.896.443zm13.828.905c.194-.289.37-.591.524-.906l-.896-.443c-.136.275-.29.54-.459.793l.831.556zm-12.667.83c.23.262.478.51.74.74l.66-.752a7.047 7.047 0 0 1-.648-.648l-.752.66zm11.29.74c.262-.23.51-.478.74-.74l-.752-.66c-.201.23-.418.447-.648.648l.66.752zm-1.735 1.161c.314-.155.616-.33.905-.524l-.556-.83a7.07 7.07 0 0 1-.793.458l.443.896zm-7.985-.524c.289.194.591.37.906.524l.443-.896a6.998 6.998 0 0 1-.793-.459l-.556.831zm1.873.925c.328.112.666.202 1.011.27l.194-.98a6.953 6.953 0 0 1-.884-.237l-.321.947zm4.132.271a7.944 7.944 0 0 0 1.012-.27l-.321-.948a6.954 6.954 0 0 1-.884.237l.194.98zm-2.083.135a8.1 8.1 0 0 0 1.046 0l-.064-.998a7.11 7.11 0 0 1-.918 0l-.064.998zM8.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 BIconPlusCircleFill = /*#__PURE__*/ makeIcon(\n 'PlusCircleFill',\n '<path 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 BIconPlusLg = /*#__PURE__*/ makeIcon(\n 'PlusLg',\n '<path d=\"M8 0a1 1 0 0 1 1 1v6h6a1 1 0 1 1 0 2H9v6a1 1 0 1 1-2 0V9H1a1 1 0 0 1 0-2h6V1a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPlusSquare = /*#__PURE__*/ makeIcon(\n 'PlusSquare',\n '<path d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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 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 BIconPlusSquareDotted = /*#__PURE__*/ makeIcon(\n 'PlusSquareDotted',\n '<path d=\"M2.5 0c-.166 0-.33.016-.487.048l.194.98A1.51 1.51 0 0 1 2.5 1h.458V0H2.5zm2.292 0h-.917v1h.917V0zm1.833 0h-.917v1h.917V0zm1.833 0h-.916v1h.916V0zm1.834 0h-.917v1h.917V0zm1.833 0h-.917v1h.917V0zM13.5 0h-.458v1h.458c.1 0 .199.01.293.029l.194-.981A2.51 2.51 0 0 0 13.5 0zm2.079 1.11a2.511 2.511 0 0 0-.69-.689l-.556.831c.164.11.305.251.415.415l.83-.556zM1.11.421a2.511 2.511 0 0 0-.689.69l.831.556c.11-.164.251-.305.415-.415L1.11.422zM16 2.5c0-.166-.016-.33-.048-.487l-.98.194c.018.094.028.192.028.293v.458h1V2.5zM.048 2.013A2.51 2.51 0 0 0 0 2.5v.458h1V2.5c0-.1.01-.199.029-.293l-.981-.194zM0 3.875v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zM0 5.708v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zM0 7.542v.916h1v-.916H0zm15 .916h1v-.916h-1v.916zM0 9.375v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zm-16 .916v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zm-16 .917v.458c0 .166.016.33.048.487l.98-.194A1.51 1.51 0 0 1 1 13.5v-.458H0zm16 .458v-.458h-1v.458c0 .1-.01.199-.029.293l.981.194c.032-.158.048-.32.048-.487zM.421 14.89c.183.272.417.506.69.689l.556-.831a1.51 1.51 0 0 1-.415-.415l-.83.556zm14.469.689c.272-.183.506-.417.689-.69l-.831-.556c-.11.164-.251.305-.415.415l.556.83zm-12.877.373c.158.032.32.048.487.048h.458v-1H2.5c-.1 0-.199-.01-.293-.029l-.194.981zM13.5 16c.166 0 .33-.016.487-.048l-.194-.98A1.51 1.51 0 0 1 13.5 15h-.458v1h.458zm-9.625 0h.917v-1h-.917v1zm1.833 0h.917v-1h-.917v1zm1.834-1v1h.916v-1h-.916zm1.833 1h.917v-1h-.917v1zm1.833 0h.917v-1h-.917v1zM8.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 BIconPlusSquareFill = /*#__PURE__*/ makeIcon(\n 'PlusSquareFill',\n '<path 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.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 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPower = /*#__PURE__*/ makeIcon(\n 'Power',\n '<path d=\"M7.5 1v7h1V1h-1z\"/><path d=\"M3 8.812a4.999 4.999 0 0 1 2.578-4.375l-.485-.874A6 6 0 1 0 11 3.616l-.501.865A5 5 0 1 1 3 8.812z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPrinter = /*#__PURE__*/ makeIcon(\n 'Printer',\n '<path d=\"M2.5 8a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1z\"/><path d=\"M5 1a2 2 0 0 0-2 2v2H2a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h1v1a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2v-1h1a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-1V3a2 2 0 0 0-2-2H5zM4 3a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v2H4V3zm1 5a2 2 0 0 0-2 2v1H2a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-1v-1a2 2 0 0 0-2-2H5zm7 2v3a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-3a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1z\"/>'\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-2H5zm6 8H5a1 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 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=\"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 .039-.063v-.009a.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-.003a.214.214 0 0 0-.039-.064.859.859 0 0 0-.27-.193C8.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-.039.063v.003l.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.855zM4.605 3a.5.5 0 0 0-.498.55l.001.007.29 3.4A.5.5 0 0 1 3.9 7.5h-.782c-.696 0-1.182-.497-1.469-.872a.459.459 0 0 0-.118-.115.112.112 0 0 0-.025-.012L1.5 6.5h-.003a.213.213 0 0 0-.064.039.86.86 0 0 0-.193.27C1.1 7.09 1 7.51 1 8c0 .491.1.912.24 1.19.07.14.14.225.194.271a.213.213 0 0 0 .063.039H1.5l.006-.001a.112.112 0 0 0 .025-.012.459.459 0 0 0 .118-.115c.287-.375.773-.872 1.469-.872H3.9a.5.5 0 0 1 .498.542l-.29 3.408a.5.5 0 0 0 .497.55h1.878c-.048-.166-.195-.352-.463-.557-.274-.21-.52-.528-.52-.943 0-.568.447-.947.862-1.154C6.807 10.123 7.387 10 8 10s1.193.123 1.638.346c.415.207.862.586.862 1.154 0 .415-.246.733-.52.943-.268.205-.415.39-.463.557h1.878a.5.5 0 0 0 .498-.55l-.001-.007-.29-3.4A.5.5 0 0 1 12.1 8.5h.782c.696 0 1.182.497 1.469.872.05.065.091.099.118.115.013.008.021.01.025.012a.02.02 0 0 0 .006.001h.003a.214.214 0 0 0 .064-.039.86.86 0 0 0 .193-.27c.14-.28.24-.7.24-1.191 0-.492-.1-.912-.24-1.19a.86.86 0 0 0-.194-.271.215.215 0 0 0-.063-.039H14.5l-.006.001a.113.113 0 0 0-.025.012.459.459 0 0 0-.118.115c-.287.375-.773.872-1.469.872H12.1a.5.5 0 0 1-.498-.543l.29-3.407a.5.5 0 0 0-.497-.55H9.517c.048.166.195.352.463.557.274.21.52.528.52.943 0 .568-.447.947-.862 1.154C9.193 5.877 8.613 6 8 6s-1.193-.123-1.638-.346C5.947 5.447 5.5 5.068 5.5 4.5c0-.415.246-.733.52-.943.268-.205.415-.39.463-.557H4.605z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconPuzzleFill = /*#__PURE__*/ makeIcon(\n 'PuzzleFill',\n '<path 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 d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 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 d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.496 6.033h.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.286a.237.237 0 0 0 .241.247zm2.325 6.443c.61 0 1.029-.394 1.029-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94 0 .533.425.927 1.01.927z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionDiamond = /*#__PURE__*/ makeIcon(\n 'QuestionDiamond',\n '<path 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 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 BIconQuestionLg = /*#__PURE__*/ makeIcon(\n 'QuestionLg',\n '<path d=\"M3 4.075a.423.423 0 0 0 .43.44H4.9c.247 0 .442-.2.475-.445.159-1.17.962-2.022 2.393-2.022 1.222 0 2.342.611 2.342 2.082 0 1.132-.668 1.652-1.72 2.444-1.2.872-2.15 1.89-2.082 3.542l.005.386c.003.244.202.44.446.44h1.445c.247 0 .446-.2.446-.446v-.188c0-1.278.487-1.652 1.8-2.647 1.086-.826 2.217-1.743 2.217-3.667C12.667 1.301 10.393 0 7.903 0 5.645 0 3.17 1.053 3.001 4.075zm2.776 10.273c0 .95.758 1.652 1.8 1.652 1.085 0 1.832-.702 1.832-1.652 0-.985-.747-1.675-1.833-1.675-1.04 0-1.799.69-1.799 1.675z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionOctagon = /*#__PURE__*/ makeIcon(\n 'QuestionOctagon',\n '<path 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 1 1 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 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 d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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 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 BIconRainbow = /*#__PURE__*/ makeIcon(\n 'Rainbow',\n '<path d=\"M8 4.5a7 7 0 0 0-7 7 .5.5 0 0 1-1 0 8 8 0 1 1 16 0 .5.5 0 0 1-1 0 7 7 0 0 0-7-7zm0 2a5 5 0 0 0-5 5 .5.5 0 0 1-1 0 6 6 0 1 1 12 0 .5.5 0 0 1-1 0 5 5 0 0 0-5-5zm0 2a3 3 0 0 0-3 3 .5.5 0 0 1-1 0 4 4 0 1 1 8 0 .5.5 0 0 1-1 0 3 3 0 0 0-3-3zm0 2a1 1 0 0 0-1 1 .5.5 0 0 1-1 0 2 2 0 1 1 4 0 .5.5 0 0 1-1 0 1 1 0 0 0-1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReceipt = /*#__PURE__*/ makeIcon(\n 'Receipt',\n '<path 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 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 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-.5zM11.5 4a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1zm0 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1zm0 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1zm0 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1zm0 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z\"/><path d=\"M2.354.646a.5.5 0 0 0-.801.13l-.5 1A.5.5 0 0 0 1 2v13H.5a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1H15V2a.5.5 0 0 0-.053-.224l-.5-1a.5.5 0 0 0-.8-.13L13 1.293l-.646-.647a.5.5 0 0 0-.708 0L11 1.293l-.646-.647a.5.5 0 0 0-.708 0L9 1.293 8.354.646a.5.5 0 0 0-.708 0L7 1.293 6.354.646a.5.5 0 0 0-.708 0L5 1.293 4.354.646a.5.5 0 0 0-.708 0L3 1.293 2.354.646zm-.217 1.198.51.51a.5.5 0 0 0 .707 0L4 1.707l.646.647a.5.5 0 0 0 .708 0L6 1.707l.646.647a.5.5 0 0 0 .708 0L8 1.707l.646.647a.5.5 0 0 0 .708 0L10 1.707l.646.647a.5.5 0 0 0 .708 0L12 1.707l.646.647a.5.5 0 0 0 .708 0l.509-.51.137.274V15H2V2.118l.137-.274z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReception0 = /*#__PURE__*/ makeIcon(\n 'Reception0',\n '<path d=\"M0 13.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReception1 = /*#__PURE__*/ makeIcon(\n 'Reception1',\n '<path d=\"M0 11.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-2zm4 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReception2 = /*#__PURE__*/ makeIcon(\n 'Reception2',\n '<path d=\"M0 11.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-2zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-5zm4 5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5zm4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReception3 = /*#__PURE__*/ makeIcon(\n 'Reception3',\n '<path d=\"M0 11.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-2zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-5zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-8zm4 8a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReception4 = /*#__PURE__*/ makeIcon(\n 'Reception4',\n '<path d=\"M0 11.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-2zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-5zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-8zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v11a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecord = /*#__PURE__*/ makeIcon(\n 'Record',\n '<path d=\"M8 12a4 4 0 1 1 0-8 4 4 0 0 1 0 8zm0 1A5 5 0 1 0 8 3a5 5 0 0 0 0 10z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecord2 = /*#__PURE__*/ makeIcon(\n 'Record2',\n '<path d=\"M8 12a4 4 0 1 1 0-8 4 4 0 0 1 0 8zm0 1A5 5 0 1 0 8 3a5 5 0 0 0 0 10z\"/><path d=\"M10 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecord2Fill = /*#__PURE__*/ makeIcon(\n 'Record2Fill',\n '<path d=\"M10 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"/><path d=\"M8 13A5 5 0 1 0 8 3a5 5 0 0 0 0 10zm0-2a3 3 0 1 1 0-6 3 3 0 0 1 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecordBtn = /*#__PURE__*/ makeIcon(\n 'RecordBtn',\n '<path d=\"M8 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/><path 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-2V4zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecordBtnFill = /*#__PURE__*/ makeIcon(\n 'RecordBtnFill',\n '<path d=\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm8-1a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecordCircle = /*#__PURE__*/ makeIcon(\n 'RecordCircle',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecordCircleFill = /*#__PURE__*/ makeIcon(\n 'RecordCircleFill',\n '<path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-8 3a3 3 0 1 0 0-6 3 3 0 0 0 0 6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecordFill = /*#__PURE__*/ makeIcon(\n 'RecordFill',\n '<path fill-rule=\"evenodd\" d=\"M8 13A5 5 0 1 0 8 3a5 5 0 0 0 0 10z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconRecycle = /*#__PURE__*/ makeIcon(\n 'Recycle',\n '<path d=\"M9.302 1.256a1.5 1.5 0 0 0-2.604 0l-1.704 2.98a.5.5 0 0 0 .869.497l1.703-2.981a.5.5 0 0 1 .868 0l2.54 4.444-1.256-.337a.5.5 0 1 0-.26.966l2.415.647a.5.5 0 0 0 .613-.353l.647-2.415a.5.5 0 1 0-.966-.259l-.333 1.242-2.532-4.431zM2.973 7.773l-1.255.337a.5.5 0 1 1-.26-.966l2.416-.647a.5.5 0 0 1 .612.353l.647 2.415a.5.5 0 0 1-.966.259l-.333-1.242-2.545 4.454a.5.5 0 0 0 .434.748H5a.5.5 0 0 1 0 1H1.723A1.5 1.5 0 0 1 .421 12.24l2.552-4.467zm10.89 1.463a.5.5 0 1 0-.868.496l1.716 3.004a.5.5 0 0 1-.434.748h-5.57l.647-.646a.5.5 0 1 0-.708-.707l-1.5 1.5a.498.498 0 0 0 0 .707l1.5 1.5a.5.5 0 1 0 .708-.707l-.647-.647h5.57a1.5 1.5 0 0 0 1.302-2.244l-1.716-3.004z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReddit = /*#__PURE__*/ makeIcon(\n 'Reddit',\n '<path d=\"M6.167 8a.831.831 0 0 0-.83.83c0 .459.372.84.83.831a.831.831 0 0 0 0-1.661zm1.843 3.647c.315 0 1.403-.038 1.976-.611a.232.232 0 0 0 0-.306.213.213 0 0 0-.306 0c-.353.363-1.126.487-1.67.487-.545 0-1.308-.124-1.671-.487a.213.213 0 0 0-.306 0 .213.213 0 0 0 0 .306c.564.563 1.652.61 1.977.61zm.992-2.807c0 .458.373.83.831.83.458 0 .83-.381.83-.83a.831.831 0 0 0-1.66 0z\"/><path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.828-1.165c-.315 0-.602.124-.812.325-.801-.573-1.9-.945-3.121-.993l.534-2.501 1.738.372a.83.83 0 1 0 .83-.869.83.83 0 0 0-.744.468l-1.938-.41a.203.203 0 0 0-.153.028.186.186 0 0 0-.086.134l-.592 2.788c-1.24.038-2.358.41-3.17.992-.21-.2-.496-.324-.81-.324a1.163 1.163 0 0 0-.478 2.224c-.02.115-.029.23-.029.353 0 1.795 2.091 3.256 4.669 3.256 2.577 0 4.668-1.451 4.668-3.256 0-.114-.01-.238-.029-.353.401-.181.688-.592.688-1.069 0-.65-.525-1.165-1.165-1.165z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReply = /*#__PURE__*/ makeIcon(\n 'Reply',\n '<path d=\"M6.598 5.013a.144.144 0 0 1 .202.134V6.3a.5.5 0 0 0 .5.5c.667 0 2.013.005 3.3.822.984.624 1.99 1.76 2.595 3.876-1.02-.983-2.185-1.516-3.205-1.799a8.74 8.74 0 0 0-1.921-.306 7.404 7.404 0 0 0-.798.008h-.013l-.005.001h-.001L7.3 9.9l-.05-.498a.5.5 0 0 0-.45.498v1.153c0 .108-.11.176-.202.134L2.614 8.254a.503.503 0 0 0-.042-.028.147.147 0 0 1 0-.252.499.499 0 0 0 .042-.028l3.984-2.933zM7.8 10.386c.068 0 .143.003.223.006.434.02 1.034.086 1.7.271 1.326.368 2.896 1.202 3.94 3.08a.5.5 0 0 0 .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 0-1.767-.96l-3.994 2.94a1.147 1.147 0 0 0 0 1.946l3.994 2.94a1.144 1.144 0 0 0 1.767-.96v-.667z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReplyAll = /*#__PURE__*/ makeIcon(\n 'ReplyAll',\n '<path d=\"M8.098 5.013a.144.144 0 0 1 .202.134V6.3a.5.5 0 0 0 .5.5c.667 0 2.013.005 3.3.822.984.624 1.99 1.76 2.595 3.876-1.02-.983-2.185-1.516-3.205-1.799a8.74 8.74 0 0 0-1.921-.306 7.404 7.404 0 0 0-.798.008h-.013l-.005.001h-.001L8.8 9.9l-.05-.498a.5.5 0 0 0-.45.498v1.153c0 .108-.11.176-.202.134L4.114 8.254a.502.502 0 0 0-.042-.028.147.147 0 0 1 0-.252.497.497 0 0 0 .042-.028l3.984-2.933zM9.3 10.386c.068 0 .143.003.223.006.434.02 1.034.086 1.7.271 1.326.368 2.896 1.202 3.94 3.08a.5.5 0 0 0 .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 0-1.767-.96l-3.994 2.94a1.147 1.147 0 0 0 0 1.946l3.994 2.94a1.144 1.144 0 0 0 1.767-.96v-.667z\"/><path d=\"M5.232 4.293a.5.5 0 0 0-.7-.106L.54 7.127a1.147 1.147 0 0 0 0 1.946l3.994 2.94a.5.5 0 1 0 .593-.805L1.114 8.254a.503.503 0 0 0-.042-.028.147.147 0 0 1 0-.252.5.5 0 0 0 .042-.028l4.012-2.954a.5.5 0 0 0 .106-.699z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReplyAllFill = /*#__PURE__*/ makeIcon(\n 'ReplyAllFill',\n '<path d=\"M8.021 11.9 3.453 8.62a.719.719 0 0 1 0-1.238L8.021 4.1a.716.716 0 0 1 1.079.619V6c1.5 0 6 0 7 8-2.5-4.5-7-4-7-4v1.281c0 .56-.606.898-1.079.62z\"/><path d=\"M5.232 4.293a.5.5 0 0 1-.106.7L1.114 7.945a.5.5 0 0 1-.042.028.147.147 0 0 0 0 .252.503.503 0 0 1 .042.028l4.012 2.954a.5.5 0 1 1-.593.805L.539 9.073a1.147 1.147 0 0 1 0-1.946l3.994-2.94a.5.5 0 0 1 .699.106z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconReplyFill = /*#__PURE__*/ makeIcon(\n 'ReplyFill',\n '<path d=\"M5.921 11.9 1.353 8.62a.719.719 0 0 1 0-1.238L5.921 4.1A.716.716 0 0 1 7 4.719V6c1.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 d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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 0zm-3-8.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 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.5c5.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 0-2zm0 4a6 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 0-2zm.5 7a1.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 BIconRulers = /*#__PURE__*/ makeIcon(\n 'Rulers',\n '<path d=\"M1 0a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h5v-1H2v-1h4v-1H4v-1h2v-1H2v-1h4V9H4V8h2V7H2V6h4V2h1v4h1V4h1v2h1V2h1v4h1V4h1v2h1V2h1v4h1V1a1 1 0 0 0-1-1H1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSafe = /*#__PURE__*/ makeIcon(\n 'Safe',\n '<path d=\"M1 1.5A1.5 1.5 0 0 1 2.5 0h12A1.5 1.5 0 0 1 16 1.5v13a1.5 1.5 0 0 1-1.5 1.5h-12A1.5 1.5 0 0 1 1 14.5V13H.5a.5.5 0 0 1 0-1H1V8.5H.5a.5.5 0 0 1 0-1H1V4H.5a.5.5 0 0 1 0-1H1V1.5zM2.5 1a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 .5.5h12a.5.5 0 0 0 .5-.5v-13a.5.5 0 0 0-.5-.5h-12z\"/><path d=\"M13.5 6a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 1 .5-.5zM4.828 4.464a.5.5 0 0 1 .708 0l1.09 1.09a3.003 3.003 0 0 1 3.476 0l1.09-1.09a.5.5 0 1 1 .707.708l-1.09 1.09c.74 1.037.74 2.44 0 3.476l1.09 1.09a.5.5 0 1 1-.707.708l-1.09-1.09a3.002 3.002 0 0 1-3.476 0l-1.09 1.09a.5.5 0 1 1-.708-.708l1.09-1.09a3.003 3.003 0 0 1 0-3.476l-1.09-1.09a.5.5 0 0 1 0-.708zM6.95 6.586a2 2 0 1 0 2.828 2.828A2 2 0 0 0 6.95 6.586z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSafe2 = /*#__PURE__*/ makeIcon(\n 'Safe2',\n '<path d=\"M1 2.5A1.5 1.5 0 0 1 2.5 1h12A1.5 1.5 0 0 1 16 2.5v12a1.5 1.5 0 0 1-1.5 1.5h-12A1.5 1.5 0 0 1 1 14.5V14H.5a.5.5 0 0 1 0-1H1V9H.5a.5.5 0 0 1 0-1H1V4H.5a.5.5 0 0 1 0-1H1v-.5zM2.5 2a.5.5 0 0 0-.5.5v12a.5.5 0 0 0 .5.5h12a.5.5 0 0 0 .5-.5v-12a.5.5 0 0 0-.5-.5h-12z\"/><path d=\"M5.035 8h1.528c.047-.184.12-.357.214-.516l-1.08-1.08A3.482 3.482 0 0 0 5.035 8zm1.369-2.303 1.08 1.08c.16-.094.332-.167.516-.214V5.035a3.482 3.482 0 0 0-1.596.662zM9 5.035v1.528c.184.047.357.12.516.214l1.08-1.08A3.482 3.482 0 0 0 9 5.035zm2.303 1.369-1.08 1.08c.094.16.167.332.214.516h1.528a3.483 3.483 0 0 0-.662-1.596zM11.965 9h-1.528c-.047.184-.12.357-.214.516l1.08 1.08A3.483 3.483 0 0 0 11.965 9zm-1.369 2.303-1.08-1.08c-.16.094-.332.167-.516.214v1.528a3.483 3.483 0 0 0 1.596-.662zM8 11.965v-1.528a1.989 1.989 0 0 1-.516-.214l-1.08 1.08A3.483 3.483 0 0 0 8 11.965zm-2.303-1.369 1.08-1.08A1.988 1.988 0 0 1 6.563 9H5.035c.085.593.319 1.138.662 1.596zM4 8.5a4.5 4.5 0 1 1 9 0 4.5 4.5 0 0 1-9 0zm4.5-1a1 1 0 1 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSafe2Fill = /*#__PURE__*/ makeIcon(\n 'Safe2Fill',\n '<path d=\"M6.563 8H5.035a3.482 3.482 0 0 1 .662-1.596l1.08 1.08c-.094.16-.167.332-.214.516zm.921-1.223-1.08-1.08A3.482 3.482 0 0 1 8 5.035v1.528c-.184.047-.357.12-.516.214zM9 6.563V5.035a3.482 3.482 0 0 1 1.596.662l-1.08 1.08A1.988 1.988 0 0 0 9 6.563zm1.223.921 1.08-1.08c.343.458.577 1.003.662 1.596h-1.528a1.989 1.989 0 0 0-.214-.516zM10.437 9h1.528a3.483 3.483 0 0 1-.662 1.596l-1.08-1.08c.094-.16.167-.332.214-.516zm-.921 1.223 1.08 1.08A3.483 3.483 0 0 1 9 11.965v-1.528c.184-.047.357-.12.516-.214zM8 10.437v1.528a3.483 3.483 0 0 1-1.596-.662l1.08-1.08c.16.094.332.167.516.214zm-1.223-.921-1.08 1.08A3.482 3.482 0 0 1 5.035 9h1.528c.047.184.12.357.214.516zM7.5 8.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0z\"/><path d=\"M2.5 1A1.5 1.5 0 0 0 1 2.5V3H.5a.5.5 0 0 0 0 1H1v4H.5a.5.5 0 0 0 0 1H1v4H.5a.5.5 0 0 0 0 1H1v.5A1.5 1.5 0 0 0 2.5 16h12a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 14.5 1h-12zm6 3a4.5 4.5 0 1 1 0 9 4.5 4.5 0 0 1 0-9z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSafeFill = /*#__PURE__*/ makeIcon(\n 'SafeFill',\n '<path d=\"M9.778 9.414A2 2 0 1 1 6.95 6.586a2 2 0 0 1 2.828 2.828z\"/><path d=\"M2.5 0A1.5 1.5 0 0 0 1 1.5V3H.5a.5.5 0 0 0 0 1H1v3.5H.5a.5.5 0 0 0 0 1H1V12H.5a.5.5 0 0 0 0 1H1v1.5A1.5 1.5 0 0 0 2.5 16h12a1.5 1.5 0 0 0 1.5-1.5v-13A1.5 1.5 0 0 0 14.5 0h-12zm3.036 4.464 1.09 1.09a3.003 3.003 0 0 1 3.476 0l1.09-1.09a.5.5 0 1 1 .707.708l-1.09 1.09c.74 1.037.74 2.44 0 3.476l1.09 1.09a.5.5 0 1 1-.707.708l-1.09-1.09a3.002 3.002 0 0 1-3.476 0l-1.09 1.09a.5.5 0 1 1-.708-.708l1.09-1.09a3.003 3.003 0 0 1 0-3.476l-1.09-1.09a.5.5 0 1 1 .708-.708zM14 6.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 1 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSave = /*#__PURE__*/ makeIcon(\n 'Save',\n '<path d=\"M2 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H9.5a1 1 0 0 0-1 1v7.293l2.646-2.647a.5.5 0 0 1 .708.708l-3.5 3.5a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L7.5 9.293V2a2 2 0 0 1 2-2H14a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h2.5a.5.5 0 0 1 0 1H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSave2 = /*#__PURE__*/ makeIcon(\n 'Save2',\n '<path d=\"M2 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H9.5a1 1 0 0 0-1 1v4.5h2a.5.5 0 0 1 .354.854l-2.5 2.5a.5.5 0 0 1-.708 0l-2.5-2.5A.5.5 0 0 1 5.5 6.5h2V2a2 2 0 0 1 2-2H14a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h2.5a.5.5 0 0 1 0 1H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSave2Fill = /*#__PURE__*/ makeIcon(\n 'Save2Fill',\n '<path d=\"M8.5 1.5A1.5 1.5 0 0 1 10 0h4a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h6c-.314.418-.5.937-.5 1.5v6h-2a.5.5 0 0 0-.354.854l2.5 2.5a.5.5 0 0 0 .708 0l2.5-2.5A.5.5 0 0 0 10.5 7.5h-2v-6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSaveFill = /*#__PURE__*/ makeIcon(\n 'SaveFill',\n '<path d=\"M8.5 1.5A1.5 1.5 0 0 1 10 0h4a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h6c-.314.418-.5.937-.5 1.5v7.793L4.854 6.646a.5.5 0 1 0-.708.708l3.5 3.5a.5.5 0 0 0 .708 0l3.5-3.5a.5.5 0 0 0-.708-.708L8.5 9.293V1.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconScissors = /*#__PURE__*/ makeIcon(\n 'Scissors',\n '<path 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 0-3 0 1.5 1.5 0 0 0 3 0zm7 0a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconScrewdriver = /*#__PURE__*/ makeIcon(\n 'Screwdriver',\n '<path d=\"m0 1 1-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 BIconSdCard = /*#__PURE__*/ makeIcon(\n 'SdCard',\n '<path d=\"M6.25 3.5a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0v-2zm2 0a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0v-2zm2 0a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0v-2zm2 0a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0v-2z\"/><path fill-rule=\"evenodd\" d=\"M5.914 0H12.5A1.5 1.5 0 0 1 14 1.5v13a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5V3.914c0-.398.158-.78.44-1.06L4.853.439A1.5 1.5 0 0 1 5.914 0zM13 1.5a.5.5 0 0 0-.5-.5H5.914a.5.5 0 0 0-.353.146L3.146 3.561A.5.5 0 0 0 3 3.914V14.5a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-13z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSdCardFill = /*#__PURE__*/ makeIcon(\n 'SdCardFill',\n '<path fill-rule=\"evenodd\" d=\"M12.5 0H5.914a1.5 1.5 0 0 0-1.06.44L2.439 2.853A1.5 1.5 0 0 0 2 3.914V14.5A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-13A1.5 1.5 0 0 0 12.5 0zm-7 2.75a.75.75 0 0 1 .75.75v2a.75.75 0 0 1-1.5 0v-2a.75.75 0 0 1 .75-.75zm2 0a.75.75 0 0 1 .75.75v2a.75.75 0 0 1-1.5 0v-2a.75.75 0 0 1 .75-.75zm2.75.75a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0v-2zm1.25-.75a.75.75 0 0 1 .75.75v2a.75.75 0 0 1-1.5 0v-2a.75.75 0 0 1 .75-.75z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSearch = /*#__PURE__*/ makeIcon(\n 'Search',\n '<path d=\"M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.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-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSegmentedNav = /*#__PURE__*/ makeIcon(\n 'SegmentedNav',\n '<path d=\"M0 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v2a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V6zm6 3h4V5H6v4zm9-1V6a1 1 0 0 0-1-1h-3v4h3a1 1 0 0 0 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconServer = /*#__PURE__*/ makeIcon(\n 'Server',\n '<path d=\"M1.333 2.667C1.333 1.194 4.318 0 8 0s6.667 1.194 6.667 2.667V4c0 1.473-2.985 2.667-6.667 2.667S1.333 5.473 1.333 4V2.667z\"/><path d=\"M1.333 6.334v3C1.333 10.805 4.318 12 8 12s6.667-1.194 6.667-2.667V6.334a6.51 6.51 0 0 1-1.458.79C11.81 7.684 9.967 8 8 8c-1.966 0-3.809-.317-5.208-.876a6.508 6.508 0 0 1-1.458-.79z\"/><path d=\"M14.667 11.668a6.51 6.51 0 0 1-1.458.789c-1.4.56-3.242.876-5.21.876-1.966 0-3.809-.316-5.208-.876a6.51 6.51 0 0 1-1.458-.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 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 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 d=\"M5.338 1.59a61.44 61.44 0 0 0-2.837.856.481.481 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 0 0 2.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 0 0 .101.025.615.615 0 0 0 .1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 0 1-2.517 2.453 7.159 7.159 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 0 1-1.048-.625 11.777 11.777 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 62.456 62.456 0 0 1 5.072.56z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldCheck = /*#__PURE__*/ makeIcon(\n 'ShieldCheck',\n '<path d=\"M5.338 1.59a61.44 61.44 0 0 0-2.837.856.481.481 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 0 0 2.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 0 0 .101.025.615.615 0 0 0 .1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 0 1-2.517 2.453 7.159 7.159 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 0 1-1.048-.625 11.777 11.777 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 62.456 62.456 0 0 1 5.072.56z\"/><path 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 BIconShieldExclamation = /*#__PURE__*/ makeIcon(\n 'ShieldExclamation',\n '<path d=\"M5.338 1.59a61.44 61.44 0 0 0-2.837.856.481.481 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 0 0 2.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 0 0 .101.025.615.615 0 0 0 .1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 0 1-2.517 2.453 7.159 7.159 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 0 1-1.048-.625 11.777 11.777 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 62.456 62.456 0 0 1 5.072.56z\"/><path d=\"M7.001 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.553.553 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 d=\"M5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 0 1-2.517 2.453 7.159 7.159 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 0 1-1.048-.625 11.777 11.777 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 62.456 62.456 0 0 1 5.072.56z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillCheck = /*#__PURE__*/ makeIcon(\n 'ShieldFillCheck',\n '<path fill-rule=\"evenodd\" d=\"M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 0 0 1.048-.625 11.775 11.775 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 0 0-1.044-1.263 62.467 62.467 0 0 0-2.887-.87C9.843.266 8.69 0 8 0zm2.146 5.146a.5.5 0 0 1 .708.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.647z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillExclamation = /*#__PURE__*/ makeIcon(\n 'ShieldFillExclamation',\n '<path fill-rule=\"evenodd\" d=\"M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 0 0 1.048-.625 11.775 11.775 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 0 0-1.044-1.263 62.467 62.467 0 0 0-2.887-.87C9.843.266 8.69 0 8 0zm-.55 8.502L7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0zM8.002 12a1 1 0 1 1 0-2 1 1 0 0 1 0 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillMinus = /*#__PURE__*/ makeIcon(\n 'ShieldFillMinus',\n '<path fill-rule=\"evenodd\" d=\"M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 0 0 1.048-.625 11.775 11.775 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 0 0-1.044-1.263 62.467 62.467 0 0 0-2.887-.87C9.843.266 8.69 0 8 0zM6 7.5a.5.5 0 0 1 0-1h4a.5.5 0 0 1 0 1H6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillPlus = /*#__PURE__*/ makeIcon(\n 'ShieldFillPlus',\n '<path fill-rule=\"evenodd\" d=\"M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 0 0 1.048-.625 11.775 11.775 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 0 0-1.044-1.263 62.467 62.467 0 0 0-2.887-.87C9.843.266 8.69 0 8 0zm-.5 5a.5.5 0 0 1 1 0v1.5H10a.5.5 0 0 1 0 1H8.5V9a.5.5 0 0 1-1 0V7.5H6a.5.5 0 0 1 0-1h1.5V5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillX = /*#__PURE__*/ makeIcon(\n 'ShieldFillX',\n '<path d=\"M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 0 0 1.048-.625 11.775 11.775 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 0 0-1.044-1.263 62.467 62.467 0 0 0-2.887-.87C9.843.266 8.69 0 8 0zM6.854 5.146 8 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 1 1 .708-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldLock = /*#__PURE__*/ makeIcon(\n 'ShieldLock',\n '<path d=\"M5.338 1.59a61.44 61.44 0 0 0-2.837.856.481.481 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 0 0 2.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 0 0 .101.025.615.615 0 0 0 .1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 0 1-2.517 2.453 7.159 7.159 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 0 1-1.048-.625 11.777 11.777 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 62.456 62.456 0 0 1 5.072.56z\"/><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 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 0 0 1.048-.625 11.775 11.775 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 0 0-1.044-1.263 62.467 62.467 0 0 0-2.887-.87C9.843.266 8.69 0 8 0zm0 5a1.5 1.5 0 0 1 .5 2.915l.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 0 1 8 5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldMinus = /*#__PURE__*/ makeIcon(\n 'ShieldMinus',\n '<path d=\"M5.338 1.59a61.44 61.44 0 0 0-2.837.856.481.481 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 0 0 2.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 0 0 .101.025.615.615 0 0 0 .1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 0 1-2.517 2.453 7.159 7.159 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 0 1-1.048-.625 11.777 11.777 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 62.456 62.456 0 0 1 5.072.56z\"/><path d=\"M5.5 7a.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 d=\"M5.338 1.59a61.44 61.44 0 0 0-2.837.856.481.481 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 0 0 2.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 0 0 .101.025.615.615 0 0 0 .1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 0 1-2.517 2.453 7.159 7.159 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 0 1-1.048-.625 11.777 11.777 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 62.456 62.456 0 0 1 5.072.56z\"/><path d=\"M8 4.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V9a.5.5 0 0 1-1 0V7.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 BIconShieldShaded = /*#__PURE__*/ makeIcon(\n 'ShieldShaded',\n '<path fill-rule=\"evenodd\" d=\"M8 14.933a.615.615 0 0 0 .1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067v13.866zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 0 1-2.517 2.453 7.159 7.159 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 0 1-1.048-.625 11.777 11.777 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 62.456 62.456 0 0 1 5.072.56z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldSlash = /*#__PURE__*/ makeIcon(\n 'ShieldSlash',\n '<path fill-rule=\"evenodd\" d=\"M1.093 3.093c-.465 4.275.885 7.46 2.513 9.589a11.777 11.777 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 0 0 1.048-.625 11.32 11.32 0 0 0 1.733-1.525l-.745-.745a10.27 10.27 0 0 1-1.578 1.392c-.346.244-.652.42-.893.533-.12.057-.218.095-.293.118a.55.55 0 0 1-.101.025.615.615 0 0 1-.1-.025 2.348 2.348 0 0 1-.294-.118 6.141 6.141 0 0 1-.893-.533 10.725 10.725 0 0 1-2.287-2.233C3.053 10.228 1.879 7.594 2.06 4.06l-.967-.967zM3.98 1.98l-.852-.852A58.935 58.935 0 0 1 5.072.559C6.157.266 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.483 3.626-.332 6.491-1.551 8.616l-.77-.77c1.042-1.915 1.72-4.469 1.29-7.702a.48.48 0 0 0-.33-.39c-.65-.213-1.75-.56-2.836-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524a49.7 49.7 0 0 0-1.357.39zm9.666 12.374-13-13 .708-.708 13 13-.707.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldSlashFill = /*#__PURE__*/ makeIcon(\n 'ShieldSlashFill',\n '<path fill-rule=\"evenodd\" d=\"M1.093 3.093c-.465 4.275.885 7.46 2.513 9.589a11.777 11.777 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 0 0 1.048-.625 11.32 11.32 0 0 0 1.733-1.525L1.093 3.093zm12.215 8.215L3.128 1.128A61.369 61.369 0 0 1 5.073.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.483 3.626-.332 6.491-1.551 8.616zm.338 3.046-13-13 .708-.708 13 13-.707.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconShieldX = /*#__PURE__*/ makeIcon(\n 'ShieldX',\n '<path d=\"M5.338 1.59a61.44 61.44 0 0 0-2.837.856.481.481 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 0 0 2.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 0 0 .101.025.615.615 0 0 0 .1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 0 1-2.517 2.453 7.159 7.159 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 0 1-1.048-.625 11.777 11.777 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 62.456 62.456 0 0 1 5.072.56z\"/><path 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 BIconShift = /*#__PURE__*/ makeIcon(\n 'Shift',\n '<path 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.5 8 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 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 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 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.414V4H2a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h5v6h2v-6h3.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-.36H9V1.414a1 1 0 0 0-2 0zM12.532 5l1.666 2-1.666 2H2V5h10.532z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSignpost2 = /*#__PURE__*/ makeIcon(\n 'Signpost2',\n '<path d=\"M7 1.414V2H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h5v1H2.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.4H7v5h2v-5h5a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1H9V6h4.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-.4H9v-.586a1 1 0 0 0-2 0zM13.5 3l.75 1-.75 1H2V3h11.5zm.5 5v2H2.5l-.75-1 .75-1H14z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSignpost2Fill = /*#__PURE__*/ makeIcon(\n 'Signpost2Fill',\n '<path d=\"M7.293.707A1 1 0 0 0 7 1.414V2H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h5v1H2.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.4H7v5h2v-5h5a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1H9V6h4.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-.4H9v-.586A1 1 0 0 0 7.293.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSignpostFill = /*#__PURE__*/ makeIcon(\n 'SignpostFill',\n '<path d=\"M7.293.707A1 1 0 0 0 7 1.414V4H2a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h5v6h2v-6h3.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-.36H9V1.414A1 1 0 0 0 7.293.707z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSignpostSplit = /*#__PURE__*/ makeIcon(\n 'SignpostSplit',\n '<path d=\"M7 7V1.414a1 1 0 0 1 2 0V2h5a1 1 0 0 1 .8.4l.975 1.3a.5.5 0 0 1 0 .6L14.8 5.6a1 1 0 0 1-.8.4H9v10H7v-5H2a1 1 0 0 1-.8-.4L.225 9.3a.5.5 0 0 1 0-.6L1.2 7.4A1 1 0 0 1 2 7h5zm1 3V8H2l-.75 1L2 10h6zm0-5h6l.75-1L14 3H8v2z\"/>'\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 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 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 d=\"M5 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.5z\"/><path 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.5zm2 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-7A1.5 1.5 0 0 1 5.5 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackward = /*#__PURE__*/ makeIcon(\n 'SkipBackward',\n '<path d=\"M.5 3.5A.5.5 0 0 1 1 4v3.248l6.267-3.636c.52-.302 1.233.043 1.233.696v2.94l6.267-3.636c.52-.302 1.233.043 1.233.696v7.384c0 .653-.713.998-1.233.696L8.5 8.752v2.94c0 .653-.713.998-1.233.696L1 8.752V12a.5.5 0 0 1-1 0V4a.5.5 0 0 1 .5-.5zm7 1.133L1.696 8 7.5 11.367V4.633zm7.5 0L9.196 8 15 11.367V4.633z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardBtn = /*#__PURE__*/ makeIcon(\n 'SkipBackwardBtn',\n '<path d=\"M11.21 5.093A.5.5 0 0 1 12 5.5v5a.5.5 0 0 1-.79.407L8.5 8.972V10.5a.5.5 0 0 1-.79.407L5 8.972V10.5a.5.5 0 0 1-1 0v-5a.5.5 0 0 1 1 0v1.528l2.71-1.935a.5.5 0 0 1 .79.407v1.528l2.71-1.935z\"/><path 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-2V4zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardBtnFill = /*#__PURE__*/ makeIcon(\n 'SkipBackwardBtnFill',\n '<path d=\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm11.21-6.907L8.5 7.028V5.5a.5.5 0 0 0-.79-.407L5 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407V8.972l2.71 1.935A.5.5 0 0 0 12 10.5v-5a.5.5 0 0 0-.79-.407z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardCircle = /*#__PURE__*/ makeIcon(\n 'SkipBackwardCircle',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M11.729 5.055a.5.5 0 0 0-.52.038L8.5 7.028V5.5a.5.5 0 0 0-.79-.407L5 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407V8.972l2.71 1.935A.5.5 0 0 0 12 10.5v-5a.5.5 0 0 0-.271-.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardCircleFill = /*#__PURE__*/ makeIcon(\n 'SkipBackwardCircleFill',\n '<path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-4.79-2.907L8.5 7.028V5.5a.5.5 0 0 0-.79-.407L5 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407V8.972l2.71 1.935A.5.5 0 0 0 12 10.5v-5a.5.5 0 0 0-.79-.407z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardFill = /*#__PURE__*/ makeIcon(\n 'SkipBackwardFill',\n '<path d=\"M.5 3.5A.5.5 0 0 0 0 4v8a.5.5 0 0 0 1 0V8.753l6.267 3.636c.54.313 1.233-.066 1.233-.697v-2.94l6.267 3.636c.54.314 1.233-.065 1.233-.696V4.308c0-.63-.693-1.01-1.233-.696L8.5 7.248v-2.94c0-.63-.692-1.01-1.233-.696L1 7.248V4a.5.5 0 0 0-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEnd = /*#__PURE__*/ makeIcon(\n 'SkipEnd',\n '<path d=\"M12.5 4a.5.5 0 0 0-1 0v3.248L5.233 3.612C4.713 3.31 4 3.655 4 4.308v7.384c0 .653.713.998 1.233.696L11.5 8.752V12a.5.5 0 0 0 1 0V4zM5 4.633 10.804 8 5 11.367V4.633z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndBtn = /*#__PURE__*/ makeIcon(\n 'SkipEndBtn',\n '<path d=\"M6.79 5.093 9.5 7.028V5.5a.5.5 0 0 1 1 0v5a.5.5 0 0 1-1 0V8.972l-2.71 1.935A.5.5 0 0 1 6 10.5v-5a.5.5 0 0 1 .79-.407z\"/><path 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-2V4zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndBtnFill = /*#__PURE__*/ makeIcon(\n 'SkipEndBtnFill',\n '<path d=\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm6.79-6.907A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407L9.5 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L6.79 5.093z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndCircle = /*#__PURE__*/ makeIcon(\n 'SkipEndCircle',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M6.271 5.055a.5.5 0 0 1 .52.038L9.5 7.028V5.5a.5.5 0 0 1 1 0v5a.5.5 0 0 1-1 0V8.972l-2.71 1.935A.5.5 0 0 1 6 10.5v-5a.5.5 0 0 1 .271-.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndCircleFill = /*#__PURE__*/ makeIcon(\n 'SkipEndCircleFill',\n '<path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM6.79 5.093A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407L9.5 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L6.79 5.093z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndFill = /*#__PURE__*/ makeIcon(\n 'SkipEndFill',\n '<path d=\"M12.5 4a.5.5 0 0 0-1 0v3.248L5.233 3.612C4.693 3.3 4 3.678 4 4.308v7.384c0 .63.692 1.01 1.233.697L11.5 8.753V12a.5.5 0 0 0 1 0V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForward = /*#__PURE__*/ makeIcon(\n 'SkipForward',\n '<path d=\"M15.5 3.5a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V8.752l-6.267 3.636c-.52.302-1.233-.043-1.233-.696v-2.94l-6.267 3.636C.713 12.69 0 12.345 0 11.692V4.308c0-.653.713-.998 1.233-.696L7.5 7.248v-2.94c0-.653.713-.998 1.233-.696L15 7.248V4a.5.5 0 0 1 .5-.5zM1 4.633v6.734L6.804 8 1 4.633zm7.5 0v6.734L14.304 8 8.5 4.633z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardBtn = /*#__PURE__*/ makeIcon(\n 'SkipForwardBtn',\n '<path d=\"M4.79 5.093A.5.5 0 0 0 4 5.5v5a.5.5 0 0 0 .79.407L7.5 8.972V10.5a.5.5 0 0 0 .79.407L11 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L8.29 5.093a.5.5 0 0 0-.79.407v1.528L4.79 5.093z\"/><path 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-2V4zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardBtnFill = /*#__PURE__*/ makeIcon(\n 'SkipForwardBtnFill',\n '<path d=\"M0 10V2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm4.79-6.907A.5.5 0 0 0 4 3.5v5a.5.5 0 0 0 .79.407L7.5 6.972V8.5a.5.5 0 0 0 .79.407L11 6.972V8.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L8.29 3.093a.5.5 0 0 0-.79.407v1.528L4.79 3.093z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardCircle = /*#__PURE__*/ makeIcon(\n 'SkipForwardCircle',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M4.271 5.055a.5.5 0 0 1 .52.038L7.5 7.028V5.5a.5.5 0 0 1 .79-.407L11 7.028V5.5a.5.5 0 0 1 1 0v5a.5.5 0 0 1-1 0V8.972l-2.71 1.935a.5.5 0 0 1-.79-.407V8.972l-2.71 1.935A.5.5 0 0 1 4 10.5v-5a.5.5 0 0 1 .271-.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardCircleFill = /*#__PURE__*/ makeIcon(\n 'SkipForwardCircleFill',\n '<path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM4.79 5.093A.5.5 0 0 0 4 5.5v5a.5.5 0 0 0 .79.407L7.5 8.972V10.5a.5.5 0 0 0 .79.407L11 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L8.29 5.093a.5.5 0 0 0-.79.407v1.528L4.79 5.093z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardFill = /*#__PURE__*/ makeIcon(\n 'SkipForwardFill',\n '<path d=\"M15.5 3.5a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V8.753l-6.267 3.636c-.54.313-1.233-.066-1.233-.697v-2.94l-6.267 3.636C.693 12.703 0 12.324 0 11.693V4.308c0-.63.693-1.01 1.233-.696L7.5 7.248v-2.94c0-.63.693-1.01 1.233-.696L15 7.248V4a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStart = /*#__PURE__*/ makeIcon(\n 'SkipStart',\n '<path d=\"M4 4a.5.5 0 0 1 1 0v3.248l6.267-3.636c.52-.302 1.233.043 1.233.696v7.384c0 .653-.713.998-1.233.696L5 8.752V12a.5.5 0 0 1-1 0V4zm7.5.633L5.696 8l5.804 3.367V4.633z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartBtn = /*#__PURE__*/ makeIcon(\n 'SkipStartBtn',\n '<path d=\"M9.71 5.093a.5.5 0 0 1 .79.407v5a.5.5 0 0 1-.79.407L7 8.972V10.5a.5.5 0 0 1-1 0v-5a.5.5 0 0 1 1 0v1.528l2.71-1.935z\"/><path 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-2V4zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartBtnFill = /*#__PURE__*/ makeIcon(\n 'SkipStartBtnFill',\n '<path d=\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm9.71-6.907L7 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407v-5a.5.5 0 0 0-.79-.407z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartCircle = /*#__PURE__*/ makeIcon(\n 'SkipStartCircle',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M10.229 5.055a.5.5 0 0 0-.52.038L7 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407v-5a.5.5 0 0 0-.271-.445z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartCircleFill = /*#__PURE__*/ makeIcon(\n 'SkipStartCircleFill',\n '<path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM9.71 5.093 7 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407v-5a.5.5 0 0 0-.79-.407z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartFill = /*#__PURE__*/ makeIcon(\n 'SkipStartFill',\n '<path d=\"M4 4a.5.5 0 0 1 1 0v3.248l6.267-3.636c.54-.313 1.232.066 1.232.696v7.384c0 .63-.692 1.01-1.232.697L5 8.753V12a.5.5 0 0 1-1 0V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSkype = /*#__PURE__*/ makeIcon(\n 'Skype',\n '<path d=\"M4.671 0c.88 0 1.733.247 2.468.702a7.423 7.423 0 0 1 6.02 2.118 7.372 7.372 0 0 1 2.167 5.215c0 .344-.024.687-.072 1.026a4.662 4.662 0 0 1 .6 2.281 4.645 4.645 0 0 1-1.37 3.294A4.673 4.673 0 0 1 11.18 16c-.84 0-1.658-.226-2.37-.644a7.423 7.423 0 0 1-6.114-2.107A7.374 7.374 0 0 1 .529 8.035c0-.363.026-.724.08-1.081a4.644 4.644 0 0 1 .76-5.59A4.68 4.68 0 0 1 4.67 0zm.447 7.01c.18.309.43.572.729.769a7.07 7.07 0 0 0 1.257.653c.492.205.873.38 1.145.523.229.112.437.264.615.448.135.142.21.331.21.528a.872.872 0 0 1-.335.723c-.291.196-.64.289-.99.264a2.618 2.618 0 0 1-1.048-.206 11.44 11.44 0 0 1-.532-.253 1.284 1.284 0 0 0-.587-.15.717.717 0 0 0-.501.176.63.63 0 0 0-.195.491.796.796 0 0 0 .148.482 1.2 1.2 0 0 0 .456.354 5.113 5.113 0 0 0 2.212.419 4.554 4.554 0 0 0 1.624-.265 2.296 2.296 0 0 0 1.08-.801c.267-.39.402-.855.386-1.327a2.09 2.09 0 0 0-.279-1.101 2.53 2.53 0 0 0-.772-.792A7.198 7.198 0 0 0 8.486 7.3a1.05 1.05 0 0 0-.145-.058 18.182 18.182 0 0 1-1.013-.447 1.827 1.827 0 0 1-.54-.387.727.727 0 0 1-.2-.508.805.805 0 0 1 .385-.723 1.76 1.76 0 0 1 .968-.247c.26-.003.52.03.772.096.274.079.542.177.802.293.105.049.22.075.336.076a.6.6 0 0 0 .453-.19.69.69 0 0 0 .18-.496.717.717 0 0 0-.17-.476 1.374 1.374 0 0 0-.556-.354 3.69 3.69 0 0 0-.708-.183 5.963 5.963 0 0 0-1.022-.078 4.53 4.53 0 0 0-1.536.258 2.71 2.71 0 0 0-1.174.784 1.91 1.91 0 0 0-.45 1.287c-.01.37.076.736.25 1.063z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSlack = /*#__PURE__*/ makeIcon(\n 'Slack',\n '<path d=\"M3.362 10.11c0 .926-.756 1.681-1.681 1.681S0 11.036 0 10.111C0 9.186.756 8.43 1.68 8.43h1.682v1.68zm.846 0c0-.924.756-1.68 1.681-1.68s1.681.756 1.681 1.68v4.21c0 .924-.756 1.68-1.68 1.68a1.685 1.685 0 0 1-1.682-1.68v-4.21zM5.89 3.362c-.926 0-1.682-.756-1.682-1.681S4.964 0 5.89 0s1.68.756 1.68 1.68v1.682H5.89zm0 .846c.924 0 1.68.756 1.68 1.681S6.814 7.57 5.89 7.57H1.68C.757 7.57 0 6.814 0 5.89c0-.926.756-1.682 1.68-1.682h4.21zm6.749 1.682c0-.926.755-1.682 1.68-1.682.925 0 1.681.756 1.681 1.681s-.756 1.681-1.68 1.681h-1.681V5.89zm-.848 0c0 .924-.755 1.68-1.68 1.68A1.685 1.685 0 0 1 8.43 5.89V1.68C8.43.757 9.186 0 10.11 0c.926 0 1.681.756 1.681 1.68v4.21zm-1.681 6.748c.926 0 1.682.756 1.682 1.681S11.036 16 10.11 16s-1.681-.756-1.681-1.68v-1.682h1.68zm0-.847c-.924 0-1.68-.755-1.68-1.68 0-.925.756-1.681 1.68-1.681h4.21c.924 0 1.68.756 1.68 1.68 0 .926-.756 1.681-1.68 1.681h-4.21z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSlash = /*#__PURE__*/ makeIcon(\n 'Slash',\n '<path 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 d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M11.354 4.646a.5.5 0 0 0-.708 0l-6 6a.5.5 0 0 0 .708.708l6-6a.5.5 0 0 0 0-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSlashCircleFill = /*#__PURE__*/ makeIcon(\n 'SlashCircleFill',\n '<path 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 BIconSlashLg = /*#__PURE__*/ makeIcon(\n 'SlashLg',\n '<path d=\"M14.707 1.293a1 1 0 0 1 0 1.414l-12 12a1 1 0 0 1-1.414-1.414l12-12a1 1 0 0 1 1.414 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSlashSquare = /*#__PURE__*/ makeIcon(\n 'SlashSquare',\n '<path d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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=\"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 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.354-6 6a.5.5 0 0 1-.708-.708l6-6a.5.5 0 0 1 .708.708z\"/>'\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=\"M9 5a.5.5 0 0 0-1 0v3H6a.5.5 0 0 0 0 1h2.5a.5.5 0 0 0 .5-.5V5z\"/><path d=\"M4 1.667v.383A2.5 2.5 0 0 0 2 4.5v7a2.5 2.5 0 0 0 2 2.45v.383C4 15.253 4.746 16 5.667 16h4.666c.92 0 1.667-.746 1.667-1.667v-.383a2.5 2.5 0 0 0 2-2.45V8h.5a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5H14v-.5a2.5 2.5 0 0 0-2-2.45v-.383C12 .747 11.254 0 10.333 0H5.667C4.747 0 4 .746 4 1.667zM4.5 3h7A1.5 1.5 0 0 1 13 4.5v7a1.5 1.5 0 0 1-1.5 1.5h-7A1.5 1.5 0 0 1 3 11.5v-7A1.5 1.5 0 0 1 4.5 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSnow = /*#__PURE__*/ makeIcon(\n 'Snow',\n '<path d=\"M8 16a.5.5 0 0 1-.5-.5v-1.293l-.646.647a.5.5 0 0 1-.707-.708L7.5 12.793V8.866l-3.4 1.963-.496 1.85a.5.5 0 1 1-.966-.26l.237-.882-1.12.646a.5.5 0 0 1-.5-.866l1.12-.646-.884-.237a.5.5 0 1 1 .26-.966l1.848.495L7 8 3.6 6.037l-1.85.495a.5.5 0 0 1-.258-.966l.883-.237-1.12-.646a.5.5 0 1 1 .5-.866l1.12.646-.237-.883a.5.5 0 1 1 .966-.258l.495 1.849L7.5 7.134V3.207L6.147 1.854a.5.5 0 1 1 .707-.708l.646.647V.5a.5.5 0 1 1 1 0v1.293l.647-.647a.5.5 0 1 1 .707.708L8.5 3.207v3.927l3.4-1.963.496-1.85a.5.5 0 1 1 .966.26l-.236.882 1.12-.646a.5.5 0 0 1 .5.866l-1.12.646.883.237a.5.5 0 1 1-.26.966l-1.848-.495L9 8l3.4 1.963 1.849-.495a.5.5 0 0 1 .259.966l-.883.237 1.12.646a.5.5 0 0 1-.5.866l-1.12-.646.236.883a.5.5 0 1 1-.966.258l-.495-1.849-3.4-1.963v3.927l1.353 1.353a.5.5 0 0 1-.707.708l-.647-.647V15.5a.5.5 0 0 1-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSnow2 = /*#__PURE__*/ makeIcon(\n 'Snow2',\n '<path d=\"M8 16a.5.5 0 0 1-.5-.5v-1.293l-.646.647a.5.5 0 0 1-.707-.708L7.5 12.793v-1.086l-.646.647a.5.5 0 0 1-.707-.708L7.5 10.293V8.866l-1.236.713-.495 1.85a.5.5 0 1 1-.966-.26l.237-.882-.94.542-.496 1.85a.5.5 0 1 1-.966-.26l.237-.882-1.12.646a.5.5 0 0 1-.5-.866l1.12-.646-.884-.237a.5.5 0 1 1 .26-.966l1.848.495.94-.542-.882-.237a.5.5 0 1 1 .258-.966l1.85.495L7 8l-1.236-.713-1.849.495a.5.5 0 1 1-.258-.966l.883-.237-.94-.542-1.85.495a.5.5 0 0 1-.258-.966l.883-.237-1.12-.646a.5.5 0 1 1 .5-.866l1.12.646-.237-.883a.5.5 0 0 1 .966-.258l.495 1.849.94.542-.236-.883a.5.5 0 0 1 .966-.258l.495 1.849 1.236.713V5.707L6.147 4.354a.5.5 0 1 1 .707-.708l.646.647V3.207L6.147 1.854a.5.5 0 1 1 .707-.708l.646.647V.5a.5.5 0 0 1 1 0v1.293l.647-.647a.5.5 0 1 1 .707.708L8.5 3.207v1.086l.647-.647a.5.5 0 1 1 .707.708L8.5 5.707v1.427l1.236-.713.495-1.85a.5.5 0 1 1 .966.26l-.236.882.94-.542.495-1.85a.5.5 0 1 1 .966.26l-.236.882 1.12-.646a.5.5 0 0 1 .5.866l-1.12.646.883.237a.5.5 0 1 1-.26.966l-1.848-.495-.94.542.883.237a.5.5 0 1 1-.26.966l-1.848-.495L9 8l1.236.713 1.849-.495a.5.5 0 0 1 .259.966l-.883.237.94.542 1.849-.495a.5.5 0 0 1 .259.966l-.883.237 1.12.646a.5.5 0 0 1-.5.866l-1.12-.646.236.883a.5.5 0 1 1-.966.258l-.495-1.849-.94-.542.236.883a.5.5 0 0 1-.966.258L9.736 9.58 8.5 8.866v1.427l1.354 1.353a.5.5 0 0 1-.707.708l-.647-.647v1.086l1.354 1.353a.5.5 0 0 1-.707.708l-.647-.647V15.5a.5.5 0 0 1-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSnow3 = /*#__PURE__*/ makeIcon(\n 'Snow3',\n '<path d=\"M8 7.5a.5.5 0 1 0 0 1 .5.5 0 0 0 0-1z\"/><path d=\"M8 16a.5.5 0 0 1-.5-.5v-1.293l-.646.647a.5.5 0 0 1-.707-.708L7.5 12.793v-1.51l-2.053-1.232-1.348.778-.495 1.85a.5.5 0 1 1-.966-.26l.237-.882-1.12.646a.5.5 0 0 1-.5-.866l1.12-.646-.883-.237a.5.5 0 1 1 .258-.966l1.85.495L5 9.155v-2.31l-1.4-.808-1.85.495a.5.5 0 1 1-.259-.966l.884-.237-1.12-.646a.5.5 0 0 1 .5-.866l1.12.646-.237-.883a.5.5 0 1 1 .966-.258l.495 1.849 1.348.778L7.5 4.717v-1.51L6.147 1.854a.5.5 0 1 1 .707-.708l.646.647V.5a.5.5 0 0 1 1 0v1.293l.647-.647a.5.5 0 1 1 .707.708L8.5 3.207v1.51l2.053 1.232 1.348-.778.495-1.85a.5.5 0 1 1 .966.26l-.236.882 1.12-.646a.5.5 0 0 1 .5.866l-1.12.646.883.237a.5.5 0 1 1-.26.966l-1.848-.495-1.4.808v2.31l1.4.808 1.849-.495a.5.5 0 1 1 .259.966l-.883.237 1.12.646a.5.5 0 0 1-.5.866l-1.12-.646.236.883a.5.5 0 1 1-.966.258l-.495-1.849-1.348-.778L8.5 11.283v1.51l1.354 1.353a.5.5 0 0 1-.707.708l-.647-.647V15.5a.5.5 0 0 1-.5.5zm2-6.783V6.783l-2-1.2-2 1.2v2.434l2 1.2 2-1.2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortAlphaDown = /*#__PURE__*/ makeIcon(\n 'SortAlphaDown',\n '<path fill-rule=\"evenodd\" d=\"M10.082 5.629 9.664 7H8.598l1.789-5.332h1.234L13.402 7h-1.12l-.419-1.371h-1.781zm1.57-.785L11 2.687h-.047l-.652 2.157h1.351z\"/><path d=\"M12.96 14H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645V14zM4.5 2.5a.5.5 0 0 0-1 0v9.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L4.5 12.293V2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortAlphaDownAlt = /*#__PURE__*/ makeIcon(\n 'SortAlphaDownAlt',\n '<path d=\"M12.96 7H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645V7z\"/><path fill-rule=\"evenodd\" d=\"M10.082 12.629 9.664 14H8.598l1.789-5.332h1.234L13.402 14h-1.12l-.419-1.371h-1.781zm1.57-.785L11 9.688h-.047l-.652 2.156h1.351z\"/><path d=\"M4.5 2.5a.5.5 0 0 0-1 0v9.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L4.5 12.293V2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortAlphaUp = /*#__PURE__*/ makeIcon(\n 'SortAlphaUp',\n '<path fill-rule=\"evenodd\" d=\"M10.082 5.629 9.664 7H8.598l1.789-5.332h1.234L13.402 7h-1.12l-.419-1.371h-1.781zm1.57-.785L11 2.687h-.047l-.652 2.157h1.351z\"/><path d=\"M12.96 14H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645V14zm-8.46-.5a.5.5 0 0 1-1 0V3.707L2.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.498.498 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L4.5 3.707V13.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortAlphaUpAlt = /*#__PURE__*/ makeIcon(\n 'SortAlphaUpAlt',\n '<path d=\"M12.96 7H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645V7z\"/><path fill-rule=\"evenodd\" d=\"M10.082 12.629 9.664 14H8.598l1.789-5.332h1.234L13.402 14h-1.12l-.419-1.371h-1.781zm1.57-.785L11 9.688h-.047l-.652 2.156h1.351z\"/><path d=\"M4.5 13.5a.5.5 0 0 1-1 0V3.707L2.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.498.498 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L4.5 3.707V13.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortDown = /*#__PURE__*/ makeIcon(\n 'SortDown',\n '<path d=\"M3.5 2.5a.5.5 0 0 0-1 0v8.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L3.5 11.293V2.5zm3.5 1a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortDownAlt = /*#__PURE__*/ makeIcon(\n 'SortDownAlt',\n '<path d=\"M3.5 3.5a.5.5 0 0 0-1 0v8.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L3.5 12.293V3.5zm4 .5a.5.5 0 0 1 0-1h1a.5.5 0 0 1 0 1h-1zm0 3a.5.5 0 0 1 0-1h3a.5.5 0 0 1 0 1h-3zm0 3a.5.5 0 0 1 0-1h5a.5.5 0 0 1 0 1h-5zM7 12.5a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7a.5.5 0 0 0-.5.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortNumericDown = /*#__PURE__*/ makeIcon(\n 'SortNumericDown',\n '<path d=\"M12.438 1.668V7H11.39V2.684h-.051l-1.211.859v-.969l1.262-.906h1.046z\"/><path fill-rule=\"evenodd\" d=\"M11.36 14.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.835 1.973-1.835 1.09 0 2.063.636 2.063 2.687 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98z\"/><path d=\"M4.5 2.5a.5.5 0 0 0-1 0v9.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L4.5 12.293V2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortNumericDownAlt = /*#__PURE__*/ makeIcon(\n 'SortNumericDownAlt',\n '<path fill-rule=\"evenodd\" d=\"M11.36 7.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.836 1.973-1.836 1.09 0 2.063.637 2.063 2.688 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98z\"/><path d=\"M12.438 8.668V14H11.39V9.684h-.051l-1.211.859v-.969l1.262-.906h1.046zM4.5 2.5a.5.5 0 0 0-1 0v9.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L4.5 12.293V2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortNumericUp = /*#__PURE__*/ makeIcon(\n 'SortNumericUp',\n '<path d=\"M12.438 1.668V7H11.39V2.684h-.051l-1.211.859v-.969l1.262-.906h1.046z\"/><path fill-rule=\"evenodd\" d=\"M11.36 14.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.835 1.973-1.835 1.09 0 2.063.636 2.063 2.687 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98z\"/><path d=\"M4.5 13.5a.5.5 0 0 1-1 0V3.707L2.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.498.498 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L4.5 3.707V13.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortNumericUpAlt = /*#__PURE__*/ makeIcon(\n 'SortNumericUpAlt',\n '<path fill-rule=\"evenodd\" d=\"M11.36 7.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.836 1.973-1.836 1.09 0 2.063.637 2.063 2.688 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98z\"/><path d=\"M12.438 8.668V14H11.39V9.684h-.051l-1.211.859v-.969l1.262-.906h1.046zM4.5 13.5a.5.5 0 0 1-1 0V3.707L2.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.498.498 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L4.5 3.707V13.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortUp = /*#__PURE__*/ makeIcon(\n 'SortUp',\n '<path d=\"M3.5 12.5a.5.5 0 0 1-1 0V3.707L1.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.498.498 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L3.5 3.707V12.5zm3.5-9a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSortUpAlt = /*#__PURE__*/ makeIcon(\n 'SortUpAlt',\n '<path d=\"M3.5 13.5a.5.5 0 0 1-1 0V4.707L1.354 5.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.498.498 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L3.5 4.707V13.5zm4-9.5a.5.5 0 0 1 0-1h1a.5.5 0 0 1 0 1h-1zm0 3a.5.5 0 0 1 0-1h3a.5.5 0 0 1 0 1h-3zm0 3a.5.5 0 0 1 0-1h5a.5.5 0 0 1 0 1h-5zM7 12.5a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7a.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 d=\"M12 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h8zM4 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=\"M8 4.75a.75.75 0 1 1 0-1.5.75.75 0 0 1 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 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 1 0 7 3.5 3.5 0 0 1 0-7z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSpeedometer = /*#__PURE__*/ makeIcon(\n 'Speedometer',\n '<path d=\"M8 2a.5.5 0 0 1 .5.5V4a.5.5 0 0 1-1 0V2.5A.5.5 0 0 1 8 2zM3.732 3.732a.5.5 0 0 1 .707 0l.915.914a.5.5 0 1 1-.708.708l-.914-.915a.5.5 0 0 1 0-.707zM2 8a.5.5 0 0 1 .5-.5h1.586a.5.5 0 0 1 0 1H2.5A.5.5 0 0 1 2 8zm9.5 0a.5.5 0 0 1 .5-.5h1.5a.5.5 0 0 1 0 1H12a.5.5 0 0 1-.5-.5zm.754-4.246a.389.389 0 0 0-.527-.02L7.547 7.31A.91.91 0 1 0 8.85 8.569l3.434-4.297a.389.389 0 0 0-.029-.518z\"/><path fill-rule=\"evenodd\" d=\"M6.664 15.889A8 8 0 1 1 9.336.11a8 8 0 0 1-2.672 15.78zm-4.665-4.283A11.945 11.945 0 0 1 8 10c2.186 0 4.236.585 6.001 1.606a7 7 0 1 0-12.002 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSpeedometer2 = /*#__PURE__*/ makeIcon(\n 'Speedometer2',\n '<path d=\"M8 4a.5.5 0 0 1 .5.5V6a.5.5 0 0 1-1 0V4.5A.5.5 0 0 1 8 4zM3.732 5.732a.5.5 0 0 1 .707 0l.915.914a.5.5 0 1 1-.708.708l-.914-.915a.5.5 0 0 1 0-.707zM2 10a.5.5 0 0 1 .5-.5h1.586a.5.5 0 0 1 0 1H2.5A.5.5 0 0 1 2 10zm9.5 0a.5.5 0 0 1 .5-.5h1.5a.5.5 0 0 1 0 1H12a.5.5 0 0 1-.5-.5zm.754-4.246a.389.389 0 0 0-.527-.02L7.547 9.31a.91.91 0 1 0 1.302 1.258l3.434-4.297a.389.389 0 0 0-.029-.518z\"/><path fill-rule=\"evenodd\" d=\"M0 10a8 8 0 1 1 15.547 2.661c-.442 1.253-1.845 1.602-2.932 1.25C11.309 13.488 9.475 13 8 13c-1.474 0-3.31.488-4.615.911-1.087.352-2.49.003-2.932-1.25A7.988 7.988 0 0 1 0 10zm8-7a7 7 0 0 0-6.603 9.329c.203.575.923.876 1.68.63C4.397 12.533 6.358 12 8 12s3.604.532 4.923.96c.757.245 1.477-.056 1.68-.631A7 7 0 0 0 8 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSpellcheck = /*#__PURE__*/ makeIcon(\n 'Spellcheck',\n '<path 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 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 d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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 d=\"M8 15V1h6a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H8zm6 1a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStack = /*#__PURE__*/ makeIcon(\n 'Stack',\n '<path d=\"m14.12 10.163 1.715.858c.22.11.22.424 0 .534L8.267 15.34a.598.598 0 0 1-.534 0L.165 11.555a.299.299 0 0 1 0-.534l1.716-.858 5.317 2.659c.505.252 1.1.252 1.604 0l5.317-2.66zM7.733.063a.598.598 0 0 1 .534 0l7.568 3.784a.3.3 0 0 1 0 .535L8.267 8.165a.598.598 0 0 1-.534 0L.165 4.382a.299.299 0 0 1 0-.535L7.733.063z\"/><path d=\"m14.12 6.576 1.715.858c.22.11.22.424 0 .534l-7.568 3.784a.598.598 0 0 1-.534 0L.165 7.968a.299.299 0 0 1 0-.534l1.716-.858 5.317 2.659c.505.252 1.1.252 1.604 0l5.317-2.659z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStar = /*#__PURE__*/ makeIcon(\n 'Star',\n '<path 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.522-3.356c.33-.314.16-.888-.282-.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.767-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-.288L8 2.223l1.847 3.658a.525.525 0 0 0 .393.288l4.052.575-2.906 2.77a.565.565 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.282.95l-3.522 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 d=\"M5.354 5.119 7.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.548.548 0 0 1-.17.445l-3.523 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256a.52.52 0 0 1-.146.05c-.342.06-.668-.254-.6-.642l.83-4.73L.173 6.765a.55.55 0 0 1-.172-.403.58.58 0 0 1 .085-.302.513.513 0 0 1 .37-.245l4.898-.696zM8 12.027a.5.5 0 0 1 .232.056l3.686 1.894-.694-3.957a.565.565 0 0 1 .162-.505l2.907-2.77-4.052-.576a.525.525 0 0 1-.393-.288L8.001 2.223 8 2.226v9.8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStars = /*#__PURE__*/ makeIcon(\n 'Stars',\n '<path d=\"M7.657 6.247c.11-.33.576-.33.686 0l.645 1.937a2.89 2.89 0 0 0 1.829 1.828l1.936.645c.33.11.33.576 0 .686l-1.937.645a2.89 2.89 0 0 0-1.828 1.829l-.645 1.936a.361.361 0 0 1-.686 0l-.645-1.937a2.89 2.89 0 0 0-1.828-1.828l-1.937-.645a.361.361 0 0 1 0-.686l1.937-.645a2.89 2.89 0 0 0 1.828-1.828l.645-1.937zM3.794 1.148a.217.217 0 0 1 .412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 0 1 0 .412l-1.162.387A1.734 1.734 0 0 0 4.593 5.69l-.387 1.162a.217.217 0 0 1-.412 0L3.407 5.69A1.734 1.734 0 0 0 2.31 4.593l-1.162-.387a.217.217 0 0 1 0-.412l1.162-.387A1.734 1.734 0 0 0 3.407 2.31l.387-1.162zM10.863.099a.145.145 0 0 1 .274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 0 1 0 .274l-.774.258a1.156 1.156 0 0 0-.732.732l-.258.774a.145.145 0 0 1-.274 0l-.258-.774a1.156 1.156 0 0 0-.732-.732L9.1 2.137a.145.145 0 0 1 0-.274l.774-.258c.346-.115.617-.386.732-.732L10.863.1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStickies = /*#__PURE__*/ makeIcon(\n 'Stickies',\n '<path d=\"M1.5 0A1.5 1.5 0 0 0 0 1.5V13a1 1 0 0 0 1 1V1.5a.5.5 0 0 1 .5-.5H14a1 1 0 0 0-1-1H1.5z\"/><path 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-11zM3 3.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 .5.5V9h-4.5A1.5 1.5 0 0 0 9 10.5V15H3.5a.5.5 0 0 1-.5-.5v-11zm7 11.293V10.5a.5.5 0 0 1 .5-.5h4.293L10 14.793z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStickiesFill = /*#__PURE__*/ makeIcon(\n 'StickiesFill',\n '<path d=\"M0 1.5V13a1 1 0 0 0 1 1V1.5a.5.5 0 0 1 .5-.5H14a1 1 0 0 0-1-1H1.5A1.5 1.5 0 0 0 0 1.5z\"/><path 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.5a1 1 0 0 1 1-1h4.396a.25.25 0 0 1 .177.427l-5.146 5.146a.25.25 0 0 1-.427-.177V10.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSticky = /*#__PURE__*/ makeIcon(\n 'Sticky',\n '<path 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-11zM2 2.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 .5.5V8H9.5A1.5 1.5 0 0 0 8 9.5V14H2.5a.5.5 0 0 1-.5-.5v-11zm7 11.293V9.5a.5.5 0 0 1 .5-.5h4.293L9 13.793z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStickyFill = /*#__PURE__*/ makeIcon(\n 'StickyFill',\n '<path 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.5a1 1 0 0 1 1-1h4.396a.25.25 0 0 1 .177.427l-5.146 5.146a.25.25 0 0 1-.427-.177V9.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStop = /*#__PURE__*/ makeIcon(\n 'Stop',\n '<path d=\"M3.5 5A1.5 1.5 0 0 1 5 3.5h6A1.5 1.5 0 0 1 12.5 5v6a1.5 1.5 0 0 1-1.5 1.5H5A1.5 1.5 0 0 1 3.5 11V5zM5 4.5a.5.5 0 0 0-.5.5v6a.5.5 0 0 0 .5.5h6a.5.5 0 0 0 .5-.5V5a.5.5 0 0 0-.5-.5H5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStopBtn = /*#__PURE__*/ makeIcon(\n 'StopBtn',\n '<path d=\"M6.5 5A1.5 1.5 0 0 0 5 6.5v3A1.5 1.5 0 0 0 6.5 11h3A1.5 1.5 0 0 0 11 9.5v-3A1.5 1.5 0 0 0 9.5 5h-3z\"/><path 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-2V4zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStopBtnFill = /*#__PURE__*/ makeIcon(\n 'StopBtnFill',\n '<path d=\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm6.5-7A1.5 1.5 0 0 0 5 6.5v3A1.5 1.5 0 0 0 6.5 11h3A1.5 1.5 0 0 0 11 9.5v-3A1.5 1.5 0 0 0 9.5 5h-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStopCircle = /*#__PURE__*/ makeIcon(\n 'StopCircle',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M5 6.5A1.5 1.5 0 0 1 6.5 5h3A1.5 1.5 0 0 1 11 6.5v3A1.5 1.5 0 0 1 9.5 11h-3A1.5 1.5 0 0 1 5 9.5v-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStopCircleFill = /*#__PURE__*/ makeIcon(\n 'StopCircleFill',\n '<path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM6.5 5A1.5 1.5 0 0 0 5 6.5v3A1.5 1.5 0 0 0 6.5 11h3A1.5 1.5 0 0 0 11 9.5v-3A1.5 1.5 0 0 0 9.5 5h-3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStopFill = /*#__PURE__*/ makeIcon(\n 'StopFill',\n '<path d=\"M5 3.5h6A1.5 1.5 0 0 1 12.5 5v6a1.5 1.5 0 0 1-1.5 1.5H5A1.5 1.5 0 0 1 3.5 11V5A1.5 1.5 0 0 1 5 3.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStoplights = /*#__PURE__*/ makeIcon(\n 'Stoplights',\n '<path d=\"M8 5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm0 4a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm1.5 2.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z\"/><path d=\"M4 2a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2h2c-.167.5-.8 1.6-2 2v2h2c-.167.5-.8 1.6-2 2v2h2c-.167.5-.8 1.6-2 2v1a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-1c-1.2-.4-1.833-1.5-2-2h2V8c-1.2-.4-1.833-1.5-2-2h2V4c-1.2-.4-1.833-1.5-2-2h2zm2-1a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H6z\"/>'\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 2H2c.167.5.8 1.6 2 2v2H2c.167.5.8 1.6 2 2v2H2c.167.5.8 1.6 2 2v1a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2v-1c1.2-.4 1.833-1.5 2-2h-2V8c1.2-.4 1.833-1.5 2-2h-2V4c1.2-.4 1.833-1.5 2-2h-2a2 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 1 0-3 1.5 1.5 0 0 1 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStopwatch = /*#__PURE__*/ makeIcon(\n 'Stopwatch',\n '<path d=\"M8.5 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\"/><path d=\"M6.5 1A.5.5 0 0 1 7 .5h2a.5.5 0 0 1 0 1v.57c1.36.196 2.594.78 3.584 1.64a.715.715 0 0 1 .012-.013l.354-.354-.354-.353a.5.5 0 0 1 .707-.708l1.414 1.415a.5.5 0 1 1-.707.707l-.353-.354-.354.354a.512.512 0 0 1-.013.012A7 7 0 1 1 7 2.071V1.5a.5.5 0 0 1-.5-.5zM8 3a6 6 0 1 0 .001 12A6 6 0 0 0 8 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconStopwatchFill = /*#__PURE__*/ makeIcon(\n 'StopwatchFill',\n '<path d=\"M6.5 0a.5.5 0 0 0 0 1H7v1.07A7.001 7.001 0 0 0 8 16a7 7 0 0 0 5.29-11.584.531.531 0 0 0 .013-.012l.354-.354.353.354a.5.5 0 1 0 .707-.707l-1.414-1.415a.5.5 0 1 0-.707.707l.354.354-.354.354a.717.717 0 0 0-.012.012A6.973 6.973 0 0 0 9 2.071V1h.5a.5.5 0 0 0 0-1h-3zm2 5.6V9a.5.5 0 0 1-.5.5H4.5a.5.5 0 0 1 0-1h3V5.6a.5.5 0 1 1 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSubtract = /*#__PURE__*/ makeIcon(\n 'Subtract',\n '<path 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 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 12.5a3.493 3.493 0 0 1-2.684-1.254 19.92 19.92 0 0 0 1.582 2.907c.231.35-.02.847-.438.847H6.04c-.419 0-.67-.497-.438-.847a19.919 19.919 0 0 0 1.582-2.907 3.5 3.5 0 1 1-2.538-5.743 3.5 3.5 0 1 1 6.708 0A3.5 3.5 0 1 1 11.5 12.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSuitDiamond = /*#__PURE__*/ makeIcon(\n 'SuitDiamond',\n '<path 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.4 7.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 d=\"m8 6.236-.894-1.789c-.222-.443-.607-1.08-1.152-1.595C5.418 2.345 4.776 2 4 2 2.324 2 1 3.326 1 4.92c0 1.211.554 2.066 1.868 3.37.337.334.721.695 1.146 1.093C5.122 10.423 6.5 11.717 8 13.447c1.5-1.73 2.878-3.024 3.986-4.064.425-.398.81-.76 1.146-1.093C14.446 6.986 15 6.131 15 4.92 15 3.326 13.676 2 12 2c-.777 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 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=\"M7.184 11.246A3.5 3.5 0 0 1 1 9c0-1.602 1.14-2.633 2.66-4.008C4.986 3.792 6.602 2.33 8 0c1.398 2.33 3.014 3.792 4.34 4.992C13.86 6.367 15 7.398 15 9a3.5 3.5 0 0 1-6.184 2.246 19.92 19.92 0 0 0 1.582 2.907c.231.35-.02.847-.438.847H6.04c-.419 0-.67-.497-.438-.847a19.919 19.919 0 0 0 1.582-2.907z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSun = /*#__PURE__*/ makeIcon(\n 'Sun',\n '<path d=\"M8 11a3 3 0 1 1 0-6 3 3 0 0 1 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 BIconSunFill = /*#__PURE__*/ makeIcon(\n 'SunFill',\n '<path d=\"M8 12a4 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 BIconSunglasses = /*#__PURE__*/ makeIcon(\n 'Sunglasses',\n '<path 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 1h.941c.264 0 .348.356.112.474l-.457.228a2 2 0 0 0-.894.894l-.228.457C2.356 8.289 2 8.205 2 7.94V7a1 1 0 0 1 1-1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSunrise = /*#__PURE__*/ makeIcon(\n 'Sunrise',\n '<path d=\"M7.646 1.146a.5.5 0 0 1 .708 0l1.5 1.5a.5.5 0 0 1-.708.708L8.5 2.707V4.5a.5.5 0 0 1-1 0V2.707l-.646.647a.5.5 0 1 1-.708-.708l1.5-1.5zM2.343 4.343a.5.5 0 0 1 .707 0l1.414 1.414a.5.5 0 0 1-.707.707L2.343 5.05a.5.5 0 0 1 0-.707zm11.314 0a.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 0zM8 7a3 3 0 0 1 2.599 4.5H5.4A3 3 0 0 1 8 7zm3.71 4.5a4 4 0 1 0-7.418 0H.499a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1h-3.79zM0 10a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2A.5.5 0 0 1 0 10zm13 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 BIconSunriseFill = /*#__PURE__*/ makeIcon(\n 'SunriseFill',\n '<path d=\"M7.646 1.146a.5.5 0 0 1 .708 0l1.5 1.5a.5.5 0 0 1-.708.708L8.5 2.707V4.5a.5.5 0 0 1-1 0V2.707l-.646.647a.5.5 0 1 1-.708-.708l1.5-1.5zM2.343 4.343a.5.5 0 0 1 .707 0l1.414 1.414a.5.5 0 0 1-.707.707L2.343 5.05a.5.5 0 0 1 0-.707zm11.314 0a.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 0zM11.709 11.5a4 4 0 1 0-7.418 0H.5a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1h-3.79zM0 10a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2A.5.5 0 0 1 0 10zm13 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 BIconSunset = /*#__PURE__*/ makeIcon(\n 'Sunset',\n '<path d=\"M7.646 4.854a.5.5 0 0 0 .708 0l1.5-1.5a.5.5 0 0 0-.708-.708l-.646.647V1.5a.5.5 0 0 0-1 0v1.793l-.646-.647a.5.5 0 1 0-.708.708l1.5 1.5zm-5.303-.51a.5.5 0 0 1 .707 0l1.414 1.413a.5.5 0 0 1-.707.707L2.343 5.05a.5.5 0 0 1 0-.707zm11.314 0a.5.5 0 0 1 0 .706l-1.414 1.414a.5.5 0 1 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0zM8 7a3 3 0 0 1 2.599 4.5H5.4A3 3 0 0 1 8 7zm3.71 4.5a4 4 0 1 0-7.418 0H.499a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1h-3.79zM0 10a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2A.5.5 0 0 1 0 10zm13 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 BIconSunsetFill = /*#__PURE__*/ makeIcon(\n 'SunsetFill',\n '<path d=\"M7.646 4.854a.5.5 0 0 0 .708 0l1.5-1.5a.5.5 0 0 0-.708-.708l-.646.647V1.5a.5.5 0 0 0-1 0v1.793l-.646-.647a.5.5 0 1 0-.708.708l1.5 1.5zm-5.303-.51a.5.5 0 0 1 .707 0l1.414 1.413a.5.5 0 0 1-.707.707L2.343 5.05a.5.5 0 0 1 0-.707zm11.314 0a.5.5 0 0 1 0 .706l-1.414 1.414a.5.5 0 1 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0zM11.709 11.5a4 4 0 1 0-7.418 0H.5a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1h-3.79zM0 10a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2A.5.5 0 0 1 0 10zm13 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 BIconSymmetryHorizontal = /*#__PURE__*/ makeIcon(\n 'SymmetryHorizontal',\n '<path d=\"M13.5 7a.5.5 0 0 0 .24-.939l-11-6A.5.5 0 0 0 2 .5v6a.5.5 0 0 0 .5.5h11zm.485 2.376a.5.5 0 0 1-.246.563l-11 6A.5.5 0 0 1 2 15.5v-6a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 .485.376zM11.539 10H3v4.658L11.54 10z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconSymmetryVertical = /*#__PURE__*/ makeIcon(\n 'SymmetryVertical',\n '<path d=\"M7 2.5a.5.5 0 0 0-.939-.24l-6 11A.5.5 0 0 0 .5 14h6a.5.5 0 0 0 .5-.5v-11zm2.376-.484a.5.5 0 0 1 .563.245l6 11A.5.5 0 0 1 15.5 14h-6a.5.5 0 0 1-.5-.5v-11a.5.5 0 0 1 .376-.484zM10 4.46V13h4.658L10 4.46z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTable = /*#__PURE__*/ makeIcon(\n 'Table',\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-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 d=\"M12 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h8zM4 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=\"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 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 0-2 0 1 1 0 0 0 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTabletLandscape = /*#__PURE__*/ makeIcon(\n 'TabletLandscape',\n '<path d=\"M1 4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4zm-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 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 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 0 0 2 1 1 0 0 0 0-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTag = /*#__PURE__*/ makeIcon(\n 'Tag',\n '<path d=\"M6 4.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm-1 0a.5.5 0 1 0-1 0 .5.5 0 0 0 1 0z\"/><path d=\"M2 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.586V2a1 1 0 0 1 1-1zm0 5.586 7 7L13.586 9l-7-7H2v4.586z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTagFill = /*#__PURE__*/ makeIcon(\n 'TagFill',\n '<path 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 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 d=\"M5.5 5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm0 1a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zM1 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 d=\"M2 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.586V2zm3.5 4a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/><path d=\"M1.293 7.793A1 1 0 0 1 1 7.086V2a1 1 0 0 0-1 1v4.586a1 1 0 0 0 .293.707l7 7a1 1 0 0 0 1.414 0l.043-.043-7.457-7.457z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelegram = /*#__PURE__*/ makeIcon(\n 'Telegram',\n '<path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM8.287 5.906c-.778.324-2.334.994-4.666 2.01-.378.15-.577.298-.595.442-.03.243.275.339.69.47l.175.055c.408.133.958.288 1.243.294.26.006.549-.1.868-.32 2.179-1.471 3.304-2.214 3.374-2.23.05-.012.12-.026.166.016.047.041.042.12.037.141-.03.129-1.227 1.241-1.846 1.817-.193.18-.33.307-.358.336a8.154 8.154 0 0 1-.188.186c-.38.366-.664.64.015 1.088.327.216.589.393.85.571.284.194.568.387.936.629.093.06.183.125.27.187.331.236.63.448.997.414.214-.02.435-.22.547-.82.265-1.417.786-4.486.906-5.751a1.426 1.426 0 0 0-.013-.315.337.337 0 0 0-.114-.217.526.526 0 0 0-.31-.093c-.3.005-.763.166-2.984 1.09z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephone = /*#__PURE__*/ makeIcon(\n 'Telephone',\n '<path 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=\"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.511z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneForward = /*#__PURE__*/ makeIcon(\n 'TelephoneForward',\n '<path 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 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=\"M10 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5z\"/><path 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 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 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 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\"/><path fill-rule=\"evenodd\" d=\"M12.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 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\"/><path fill-rule=\"evenodd\" d=\"M11.146 1.646a.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 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.854 4.146a.5.5 0 1 0-.708.708L4.793 6.5 3.146 8.146a.5.5 0 1 0 .708.708l2-2a.5.5 0 0 0 0-.708l-2-2z\"/><path d=\"M2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H2zm12 1a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1h12z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTerminalFill = /*#__PURE__*/ makeIcon(\n 'TerminalFill',\n '<path 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-.354a.5.5 0 1 0 .708.708l2-2a.5.5 0 0 0 0-.708l-2-2a.5.5 0 1 0-.708.708L4.793 6.5 3.146 8.146z\"/>'\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 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 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 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 d=\"M.5 4A2.5 2.5 0 0 1 3 1.5h12A2.5 2.5 0 0 1 17.5 4v8a2.5 2.5 0 0 1-2.5 2.5H3A2.5 2.5 0 0 1 .5 12V4zM3 2.5A1.5 1.5 0 0 0 1.5 4v8A1.5 1.5 0 0 0 3 13.5h12a1.5 1.5 0 0 0 1.5-1.5V4A1.5 1.5 0 0 0 15 2.5H3zm11.854 5.646a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708-.708l3-3a.5.5 0 0 1 .708 0zm0 2.5a.5.5 0 0 1 0 .708l-.5.5a.5.5 0 0 1-.708-.708l.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 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 d=\"M8 14a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z\"/><path d=\"M8 0a2.5 2.5 0 0 0-2.5 2.5v7.55a3.5 3.5 0 1 0 5 0V2.5A2.5 2.5 0 0 0 8 0zM6.5 2.5a1.5 1.5 0 1 1 3 0v7.987l.167.15a2.5 2.5 0 1 1-3.333 0l.166-.15V2.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconThermometerHalf = /*#__PURE__*/ makeIcon(\n 'ThermometerHalf',\n '<path d=\"M9.5 12.5a1.5 1.5 0 1 1-2-1.415V6.5a.5.5 0 0 1 1 0v4.585a1.5 1.5 0 0 1 1 1.415z\"/><path d=\"M5.5 2.5a2.5 2.5 0 0 1 5 0v7.55a3.5 3.5 0 1 1-5 0V2.5zM8 1a1.5 1.5 0 0 0-1.5 1.5v7.987l-.167.15a2.5 2.5 0 1 0 3.333 0l-.166-.15V2.5A1.5 1.5 0 0 0 8 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconThermometerHigh = /*#__PURE__*/ makeIcon(\n 'ThermometerHigh',\n '<path d=\"M9.5 12.5a1.5 1.5 0 1 1-2-1.415V2.5a.5.5 0 0 1 1 0v8.585a1.5 1.5 0 0 1 1 1.415z\"/><path d=\"M5.5 2.5a2.5 2.5 0 0 1 5 0v7.55a3.5 3.5 0 1 1-5 0V2.5zM8 1a1.5 1.5 0 0 0-1.5 1.5v7.987l-.167.15a2.5 2.5 0 1 0 3.333 0l-.166-.15V2.5A1.5 1.5 0 0 0 8 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconThermometerLow = /*#__PURE__*/ makeIcon(\n 'ThermometerLow',\n '<path d=\"M9.5 12.5a1.5 1.5 0 1 1-2-1.415V9.5a.5.5 0 0 1 1 0v1.585a1.5 1.5 0 0 1 1 1.415z\"/><path d=\"M5.5 2.5a2.5 2.5 0 0 1 5 0v7.55a3.5 3.5 0 1 1-5 0V2.5zM8 1a1.5 1.5 0 0 0-1.5 1.5v7.987l-.167.15a2.5 2.5 0 1 0 3.333 0l-.166-.15V2.5A1.5 1.5 0 0 0 8 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconThermometerSnow = /*#__PURE__*/ makeIcon(\n 'ThermometerSnow',\n '<path d=\"M5 12.5a1.5 1.5 0 1 1-2-1.415V9.5a.5.5 0 0 1 1 0v1.585A1.5 1.5 0 0 1 5 12.5z\"/><path d=\"M1 2.5a2.5 2.5 0 0 1 5 0v7.55a3.5 3.5 0 1 1-5 0V2.5zM3.5 1A1.5 1.5 0 0 0 2 2.5v7.987l-.167.15a2.5 2.5 0 1 0 3.333 0L5 10.486V2.5A1.5 1.5 0 0 0 3.5 1zm5 1a.5.5 0 0 1 .5.5v1.293l.646-.647a.5.5 0 0 1 .708.708L9 5.207v1.927l1.669-.963.495-1.85a.5.5 0 1 1 .966.26l-.237.882 1.12-.646a.5.5 0 0 1 .5.866l-1.12.646.884.237a.5.5 0 1 1-.26.966l-1.848-.495L9.5 8l1.669.963 1.849-.495a.5.5 0 1 1 .258.966l-.883.237 1.12.646a.5.5 0 0 1-.5.866l-1.12-.646.237.883a.5.5 0 1 1-.966.258L10.67 9.83 9 8.866v1.927l1.354 1.353a.5.5 0 0 1-.708.708L9 12.207V13.5a.5.5 0 0 1-1 0v-11a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconThermometerSun = /*#__PURE__*/ makeIcon(\n 'ThermometerSun',\n '<path d=\"M5 12.5a1.5 1.5 0 1 1-2-1.415V2.5a.5.5 0 0 1 1 0v8.585A1.5 1.5 0 0 1 5 12.5z\"/><path d=\"M1 2.5a2.5 2.5 0 0 1 5 0v7.55a3.5 3.5 0 1 1-5 0V2.5zM3.5 1A1.5 1.5 0 0 0 2 2.5v7.987l-.167.15a2.5 2.5 0 1 0 3.333 0L5 10.486V2.5A1.5 1.5 0 0 0 3.5 1zm5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0v-1a.5.5 0 0 1 .5-.5zm4.243 1.757a.5.5 0 0 1 0 .707l-.707.708a.5.5 0 1 1-.708-.708l.708-.707a.5.5 0 0 1 .707 0zM8 5.5a.5.5 0 0 1 .5-.5 3 3 0 1 1 0 6 .5.5 0 0 1 0-1 2 2 0 0 0 0-4 .5.5 0 0 1-.5-.5zM12.5 8a.5.5 0 0 1 .5-.5h1a.5.5 0 1 1 0 1h-1a.5.5 0 0 1-.5-.5zm-1.172 2.828a.5.5 0 0 1 .708 0l.707.708a.5.5 0 0 1-.707.707l-.708-.707a.5.5 0 0 1 0-.708zM8.5 12a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0v-1a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconThreeDots = /*#__PURE__*/ makeIcon(\n 'ThreeDots',\n '<path 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 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 d=\"M5 12a4 4 0 1 1 0-8 4 4 0 0 1 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 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 d=\"M5 3a5 5 0 0 0 0 10h6a5 5 0 0 0 0-10H5zm6 9a4 4 0 1 1 0-8 4 4 0 0 1 0 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconToggles = /*#__PURE__*/ makeIcon(\n 'Toggles',\n '<path 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 1 0-5 2.5 2.5 0 0 1 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 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 d=\"M6 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm0 1a4 4 0 1 1 0-8 4 4 0 0 1 0 8zm.535-10a3.975 3.975 0 0 1-.409-1H4a1 1 0 0 1 0-2h2.126c.091-.355.23-.69.41-1H4a2 2 0 1 0 0 4h2.535z\"/><path d=\"M14 4a4 4 0 1 1-8 0 4 4 0 0 1 8 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTools = /*#__PURE__*/ makeIcon(\n 'Tools',\n '<path d=\"M1 0 0 1l2.2 3.081a1 1 0 0 0 .815.419h.07a1 1 0 0 1 .708.293l2.675 2.675-2.617 2.654A3.003 3.003 0 0 0 0 13a3 3 0 1 0 5.878-.851l2.654-2.617.968.968-.305.914a1 1 0 0 0 .242 1.023l3.356 3.356a1 1 0 0 0 1.414 0l1.586-1.586a1 1 0 0 0 0-1.414l-3.356-3.356a1 1 0 0 0-1.023-.242L10.5 9.5l-.96-.96 2.68-2.643A3.005 3.005 0 0 0 16 3c0-.269-.035-.53-.102-.777l-2.14 2.141L12 4l-.364-1.757L13.777.102a3 3 0 0 0-3.675 3.68L7.462 6.46 4.793 3.793a1 1 0 0 1-.293-.707v-.071a1 1 0 0 0-.419-.814L1 0zm9.646 10.646a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708zM3 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-.026L3 11z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTornado = /*#__PURE__*/ makeIcon(\n 'Tornado',\n '<path d=\"M1.125 2.45A.892.892 0 0 1 1 2c0-.26.116-.474.258-.634a1.9 1.9 0 0 1 .513-.389c.387-.21.913-.385 1.52-.525C4.514.17 6.18 0 8 0c1.821 0 3.486.17 4.709.452.607.14 1.133.314 1.52.525.193.106.374.233.513.389.141.16.258.374.258.634 0 1.011-.35 1.612-.634 2.102-.04.07-.08.137-.116.203a2.55 2.55 0 0 0-.313.809 2.938 2.938 0 0 0-.011.891.5.5 0 0 1 .428.849c-.06.06-.133.126-.215.195.204 1.116.088 1.99-.3 2.711-.453.84-1.231 1.383-2.02 1.856-.204.123-.412.243-.62.364-1.444.832-2.928 1.689-3.735 3.706a.5.5 0 0 1-.748.226l-.001-.001-.002-.001-.004-.003-.01-.008a2.142 2.142 0 0 1-.147-.115 4.095 4.095 0 0 1-1.179-1.656 3.786 3.786 0 0 1-.247-1.296A.498.498 0 0 1 5 12.5v-.018a.62.62 0 0 1 .008-.079.728.728 0 0 1 .188-.386c.09-.489.272-1.014.573-1.574a.5.5 0 0 1 .073-.918 3.29 3.29 0 0 1 .617-.144l.15-.193c.285-.356.404-.639.437-.861a.948.948 0 0 0-.122-.619c-.249-.455-.815-.903-1.613-1.43-.193-.127-.398-.258-.609-.394l-.119-.076a12.307 12.307 0 0 1-1.241-.334.5.5 0 0 1-.285-.707l-.23-.18C2.117 4.01 1.463 3.32 1.125 2.45zm1.973 1.051c.113.104.233.207.358.308.472.381.99.722 1.515 1.06 1.54.317 3.632.5 5.43.14a.5.5 0 0 1 .197.981c-1.216.244-2.537.26-3.759.157.399.326.744.682.963 1.081.203.373.302.79.233 1.247-.05.33-.182.657-.39.985.075.017.148.035.22.053l.006.002c.481.12.863.213 1.47.01a.5.5 0 1 1 .317.95c-.888.295-1.505.141-2.023.012l-.006-.002a3.894 3.894 0 0 0-.644-.123c-.37.55-.598 1.05-.726 1.497.142.045.296.11.465.194a.5.5 0 1 1-.448.894 3.11 3.11 0 0 0-.148-.07c.012.345.084.643.18.895.14.369.342.666.528.886.992-1.903 2.583-2.814 3.885-3.56.203-.116.399-.228.584-.34.775-.464 1.34-.89 1.653-1.472.212-.393.33-.9.26-1.617A6.74 6.74 0 0 1 10 8.5a.5.5 0 0 1 0-1 5.76 5.76 0 0 0 3.017-.872.515.515 0 0 1-.007-.03c-.135-.673-.14-1.207-.056-1.665.084-.46.253-.81.421-1.113l.131-.23c.065-.112.126-.22.182-.327-.29.107-.62.202-.98.285C11.487 3.83 9.822 4 8 4c-1.821 0-3.486-.17-4.709-.452-.065-.015-.13-.03-.193-.047zM13.964 2a1.12 1.12 0 0 0-.214-.145c-.272-.148-.697-.297-1.266-.428C11.354 1.166 9.769 1 8 1c-1.769 0-3.354.166-4.484.427-.569.13-.994.28-1.266.428A1.12 1.12 0 0 0 2.036 2c.04.038.109.087.214.145.272.148.697.297 1.266.428C4.646 2.834 6.231 3 8 3c1.769 0 3.354-.166 4.484-.427.569-.13.994-.28 1.266-.428A1.12 1.12 0 0 0 13.964 2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTranslate = /*#__PURE__*/ makeIcon(\n 'Translate',\n '<path d=\"M4.545 6.714 4.11 8H3l1.862-5h1.284L8 8H6.833l-.435-1.286H4.545zm1.634-.736L5.5 3.956h-.049l-.679 2.022H6.18z\"/><path d=\"M0 2a2 2 0 0 1 2-2h7a2 2 0 0 1 2 2v3h3a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-3H2a2 2 0 0 1-2-2V2zm2-1a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H2zm7.138 9.995c.193.301.402.583.63.846-.748.575-1.673 1.001-2.768 1.292.178.217.451.635.555.867 1.125-.359 2.08-.844 2.886-1.494.777.665 1.739 1.165 2.93 1.472.133-.254.414-.673.629-.89-1.125-.253-2.057-.694-2.82-1.284.681-.747 1.222-1.651 1.621-2.757H14V8h-3v1.047h.765c-.318.844-.74 1.546-1.272 2.13a6.066 6.066 0 0 1-.415-.492 1.988 1.988 0 0 1-.94.31z\"/>'\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 4 4 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 d=\"M14 3a.702.702 0 0 1-.037.225l-1.684 10.104A2 2 0 0 1 10.305 15H5.694a2 2 0 0 1-1.973-1.671L2.037 3.225A.703.703 0 0 1 2 3c0-1.105 2.686-2 6-2s6 .895 6 2zM3.215 4.207l1.493 8.957a1 1 0 0 0 .986.836h4.612a1 1 0 0 0 .986-.836l1.493-8.957C11.69 4.689 9.954 5 8 5c-1.954 0-3.69-.311-4.785-.793z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTrash2Fill = /*#__PURE__*/ makeIcon(\n 'Trash2Fill',\n '<path d=\"M2.037 3.225A.703.703 0 0 1 2 3c0-1.105 2.686-2 6-2s6 .895 6 2a.702.702 0 0 1-.037.225l-1.684 10.104A2 2 0 0 1 10.305 15H5.694a2 2 0 0 1-1.973-1.671L2.037 3.225zm9.89-.69C10.966 2.214 9.578 2 8 2c-1.58 0-2.968.215-3.926.534-.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-.466-.18-.14-.498-.307-.975-.466z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTrashFill = /*#__PURE__*/ makeIcon(\n 'TrashFill',\n '<path 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 .5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 1 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTree = /*#__PURE__*/ makeIcon(\n 'Tree',\n '<path d=\"M8.416.223a.5.5 0 0 0-.832 0l-3 4.5A.5.5 0 0 0 5 5.5h.098L3.076 8.735A.5.5 0 0 0 3.5 9.5h.191l-1.638 3.276a.5.5 0 0 0 .447.724H7V16h2v-2.5h4.5a.5.5 0 0 0 .447-.724L12.31 9.5h.191a.5.5 0 0 0 .424-.765L10.902 5.5H11a.5.5 0 0 0 .416-.777l-3-4.5zM6.437 4.758A.5.5 0 0 0 6 4.5h-.066L8 1.401 10.066 4.5H10a.5.5 0 0 0-.424.765L11.598 8.5H11.5a.5.5 0 0 0-.447.724L12.69 12.5H3.309l1.638-3.276A.5.5 0 0 0 4.5 8.5h-.098l2.022-3.235a.5.5 0 0 0 .013-.507z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTreeFill = /*#__PURE__*/ makeIcon(\n 'TreeFill',\n '<path d=\"M8.416.223a.5.5 0 0 0-.832 0l-3 4.5A.5.5 0 0 0 5 5.5h.098L3.076 8.735A.5.5 0 0 0 3.5 9.5h.191l-1.638 3.276a.5.5 0 0 0 .447.724H7V16h2v-2.5h4.5a.5.5 0 0 0 .447-.724L12.31 9.5h.191a.5.5 0 0 0 .424-.765L10.902 5.5H11a.5.5 0 0 0 .416-.777l-3-4.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTriangle = /*#__PURE__*/ makeIcon(\n 'Triangle',\n '<path d=\"M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016.146.146 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 0 1-.054.06.116.116 0 0 1-.066.017H1.146a.115.115 0 0 1-.066-.017.163.163 0 0 1-.054-.06.176.176 0 0 1 .002-.183L7.884 2.073a.147.147 0 0 1 .054-.057zm1.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 d=\"M8.065 2.016A.13.13 0 0 0 8.002 2v11.983l6.856.017a.12.12 0 0 0 .066-.017.162.162 0 0 0 .054-.06.176.176 0 0 0-.002-.183L8.12 2.073a.146.146 0 0 0-.054-.057zm-1.043-.45a1.13 1.13 0 0 1 1.96 0l6.856 11.667c.458.778-.091 1.767-.98 1.767H1.146c-.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 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 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 BIconTropicalStorm = /*#__PURE__*/ makeIcon(\n 'TropicalStorm',\n '<path d=\"M8 9.5a2 2 0 1 0 0-4 2 2 0 0 0 0 4z\"/><path d=\"M9.5 2c-.9 0-1.75.216-2.501.6A5 5 0 0 1 13 7.5a6.5 6.5 0 1 1-13 0 .5.5 0 0 1 1 0 5.5 5.5 0 0 0 8.001 4.9A5 5 0 0 1 3 7.5a6.5 6.5 0 0 1 13 0 .5.5 0 0 1-1 0A5.5 5.5 0 0 0 9.5 2zM8 3.5a4 4 0 1 0 0 8 4 4 0 0 0 0-8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTruck = /*#__PURE__*/ makeIcon(\n 'Truck',\n '<path 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 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 0h.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 6H12v4a2 2 0 0 1 1.732 1z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTsunami = /*#__PURE__*/ makeIcon(\n 'Tsunami',\n '<path d=\"M.036 12.314a.5.5 0 0 1 .65-.278l1.757.703a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.757-.703a.5.5 0 1 1 .372.928l-1.758.703a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.757-.703a.5.5 0 0 1-.278-.65zm0 2a.5.5 0 0 1 .65-.278l1.757.703a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.757-.703a.5.5 0 1 1 .372.928l-1.758.703a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.757-.703a.5.5 0 0 1-.278-.65zM2.662 8.08c-.456 1.063-.994 2.098-1.842 2.804a.5.5 0 0 1-.64-.768c.652-.544 1.114-1.384 1.564-2.43.14-.328.281-.68.427-1.044.302-.754.624-1.559 1.01-2.308C3.763 3.2 4.528 2.105 5.7 1.299 6.877.49 8.418 0 10.5 0c1.463 0 2.511.4 3.179 1.058.67.66.893 1.518.819 2.302-.074.771-.441 1.516-1.02 1.965a1.878 1.878 0 0 1-1.904.27c-.65.642-.907 1.679-.71 2.614C11.076 9.215 11.784 10 13 10h2.5a.5.5 0 0 1 0 1H13c-1.784 0-2.826-1.215-3.114-2.585-.232-1.1.005-2.373.758-3.284L10.5 5.06l-.777.388a.5.5 0 0 1-.447 0l-1-.5a.5.5 0 0 1 .447-.894l.777.388.776-.388a.5.5 0 0 1 .447 0l1 .5a.493.493 0 0 1 .034.018c.44.264.81.195 1.108-.036.328-.255.586-.729.637-1.27.05-.529-.1-1.076-.525-1.495-.426-.42-1.19-.77-2.477-.77-1.918 0-3.252.448-4.232 1.123C5.283 2.8 4.61 3.738 4.07 4.79c-.365.71-.655 1.433-.945 2.16-.15.376-.301.753-.463 1.13z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTv = /*#__PURE__*/ makeIcon(\n 'Tv',\n '<path 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 3l.024.001a1.46 1.46 0 0 1 .538.143.757.757 0 0 1 .302.254c.067.1.145.277.145.602v5.991l-.001.024a1.464 1.464 0 0 1-.143.538.758.758 0 0 1-.254.302c-.1.067-.277.145-.602.145H2.009l-.024-.001a1.464 1.464 0 0 1-.538-.143.758.758 0 0 1-.302-.254C1.078 10.502 1 10.325 1 10V4.009l.001-.024a1.46 1.46 0 0 1 .143-.538.758.758 0 0 1 .254-.302C1.498 3.078 1.675 3 2 3h11.991zM14 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 d=\"M2.5 13.5A.5.5 0 0 1 3 13h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zM2 2h12s2 0 2 2v6s0 2-2 2H2s-2 0-2-2V4s0-2 2-2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTwitch = /*#__PURE__*/ makeIcon(\n 'Twitch',\n '<path d=\"M3.857 0 1 2.857v10.286h3.429V16l2.857-2.857H9.57L14.714 8V0H3.857zm9.714 7.429-2.285 2.285H9l-2 2v-2H4.429V1.143h9.142v6.286z\"/><path d=\"M11.857 3.143h-1.143V6.57h1.143V3.143zm-3.143 0H7.571V6.57h1.143V3.143z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconTwitter = /*#__PURE__*/ makeIcon(\n 'Twitter',\n '<path d=\"M5.026 15c6.038 0 9.341-5.003 9.341-9.334 0-.14 0-.282-.006-.422A6.685 6.685 0 0 0 16 3.542a6.658 6.658 0 0 1-1.889.518 3.301 3.301 0 0 0 1.447-1.817 6.533 6.533 0 0 1-2.087.793A3.286 3.286 0 0 0 7.875 6.03a9.325 9.325 0 0 1-6.767-3.429 3.289 3.289 0 0 0 1.018 4.382A3.323 3.323 0 0 1 .64 6.575v.045a3.288 3.288 0 0 0 2.632 3.218 3.203 3.203 0 0 1-.865.115 3.23 3.23 0 0 1-.614-.057 3.283 3.283 0 0 0 3.067 2.277A6.588 6.588 0 0 1 .78 13.58a6.32 6.32 0 0 1-.78-.045A9.344 9.344 0 0 0 5.026 15z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconType = /*#__PURE__*/ makeIcon(\n 'Type',\n '<path d=\"m2.244 13.081.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.674 9.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=\"M6.333 5.686c0 .31.083.581.27.814H5.166a2.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.607zm2.194 7.478c-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.5H1v-1h14v1h-3.504c.468.437.675.994.675 1.697 0 1.826-1.436 2.967-3.644 2.967z\"/>'\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.136zM12.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-1zM2 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.646a.5.5 0 0 1-.708 0l-1-1a.5.5 0 1 1 .708-.708l.646.647 1.646-1.647a.5.5 0 1 1 .708.708l-2 2zm0 8a.5.5 0 0 1-.708 0l-1-1a.5.5 0 0 1 .708-.708l.646.647 1.646-1.647a.5.5 0 0 1 .708.708l-2 2zM7 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-1zm0-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 d=\"M2 10h3a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1v-3a1 1 0 0 1 1-1zm9-9h3a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-3a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zm0 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.854a.5.5 0 1 0-.708-.708L3 3.793l-.646-.647a.5.5 0 1 0-.708.708l1 1a.5.5 0 0 0 .708 0l2-2z\"/>'\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-1zm0-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 1 0-3 1.5 1.5 0 0 1 0 3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconUiRadiosGrid = /*#__PURE__*/ makeIcon(\n 'UiRadiosGrid',\n '<path 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 1 0-5 2.5 2.5 0 0 1 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 1 0-3 1.5 1.5 0 0 1 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 BIconUmbrella = /*#__PURE__*/ makeIcon(\n 'Umbrella',\n '<path d=\"M8 0a.5.5 0 0 1 .5.5v.514C12.625 1.238 16 4.22 16 8c0 0 0 .5-.5.5-.149 0-.352-.145-.352-.145l-.004-.004-.025-.023a3.484 3.484 0 0 0-.555-.394A3.166 3.166 0 0 0 13 7.5c-.638 0-1.178.213-1.564.434a3.484 3.484 0 0 0-.555.394l-.025.023-.003.003s-.204.146-.353.146-.352-.145-.352-.145l-.004-.004-.025-.023a3.484 3.484 0 0 0-.555-.394 3.3 3.3 0 0 0-1.064-.39V13.5H8h.5v.039l-.005.083a2.958 2.958 0 0 1-.298 1.102 2.257 2.257 0 0 1-.763.88C7.06 15.851 6.587 16 6 16s-1.061-.148-1.434-.396a2.255 2.255 0 0 1-.763-.88 2.958 2.958 0 0 1-.302-1.185v-.025l-.001-.009v-.003s0-.002.5-.002h-.5V13a.5.5 0 0 1 1 0v.506l.003.044a1.958 1.958 0 0 0 .195.726c.095.191.23.367.423.495.19.127.466.229.879.229s.689-.102.879-.229c.193-.128.328-.304.424-.495a1.958 1.958 0 0 0 .197-.77V7.544a3.3 3.3 0 0 0-1.064.39 3.482 3.482 0 0 0-.58.417l-.004.004S5.65 8.5 5.5 8.5c-.149 0-.352-.145-.352-.145l-.004-.004a3.482 3.482 0 0 0-.58-.417A3.166 3.166 0 0 0 3 7.5c-.638 0-1.177.213-1.564.434a3.482 3.482 0 0 0-.58.417l-.004.004S.65 8.5.5 8.5C0 8.5 0 8 0 8c0-3.78 3.375-6.762 7.5-6.986V.5A.5.5 0 0 1 8 0zM6.577 2.123c-2.833.5-4.99 2.458-5.474 4.854A4.124 4.124 0 0 1 3 6.5c.806 0 1.48.25 1.962.511a9.706 9.706 0 0 1 .344-2.358c.242-.868.64-1.765 1.271-2.53zm-.615 4.93A4.16 4.16 0 0 1 8 6.5a4.16 4.16 0 0 1 2.038.553 8.688 8.688 0 0 0-.307-2.13C9.434 3.858 8.898 2.83 8 2.117c-.898.712-1.434 1.74-1.731 2.804a8.687 8.687 0 0 0-.307 2.131zm3.46-4.93c.631.765 1.03 1.662 1.272 2.53.233.833.328 1.66.344 2.358A4.14 4.14 0 0 1 13 6.5c.77 0 1.42.23 1.897.477-.484-2.396-2.641-4.355-5.474-4.854z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconUmbrellaFill = /*#__PURE__*/ makeIcon(\n 'UmbrellaFill',\n '<path fill-rule=\"evenodd\" d=\"M8 0a.5.5 0 0 1 .5.5v.514C12.625 1.238 16 4.22 16 8c0 0 0 .5-.5.5-.149 0-.352-.145-.352-.145l-.004-.004-.025-.023a3.484 3.484 0 0 0-.555-.394A3.166 3.166 0 0 0 13 7.5c-.638 0-1.178.213-1.564.434a3.484 3.484 0 0 0-.555.394l-.025.023-.003.003s-.204.146-.353.146-.352-.145-.352-.145l-.004-.004-.025-.023a3.484 3.484 0 0 0-.555-.394 3.3 3.3 0 0 0-1.064-.39V13.5H8h.5v.039l-.005.083a2.958 2.958 0 0 1-.298 1.102 2.257 2.257 0 0 1-.763.88C7.06 15.851 6.587 16 6 16s-1.061-.148-1.434-.396a2.255 2.255 0 0 1-.763-.88 2.958 2.958 0 0 1-.302-1.185v-.025l-.001-.009v-.003s0-.002.5-.002h-.5V13a.5.5 0 0 1 1 0v.506l.003.044a1.958 1.958 0 0 0 .195.726c.095.191.23.367.423.495.19.127.466.229.879.229s.689-.102.879-.229c.193-.128.328-.304.424-.495a1.958 1.958 0 0 0 .197-.77V7.544a3.3 3.3 0 0 0-1.064.39 3.482 3.482 0 0 0-.58.417l-.004.004S5.65 8.5 5.5 8.5c-.149 0-.352-.145-.352-.145l-.004-.004a3.482 3.482 0 0 0-.58-.417A3.166 3.166 0 0 0 3 7.5c-.638 0-1.177.213-1.564.434a3.482 3.482 0 0 0-.58.417l-.004.004S.65 8.5.5 8.5C0 8.5 0 8 0 8c0-3.78 3.375-6.762 7.5-6.986V.5A.5.5 0 0 1 8 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconUnion = /*#__PURE__*/ makeIcon(\n 'Union',\n '<path 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 d=\"M11 1a2 2 0 0 0-2 2v4a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h5V3a3 3 0 0 1 6 0v4a.5.5 0 0 1-1 0V3a2 2 0 0 0-2-2zM3 8a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V9a1 1 0 0 0-1-1H3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconUnlockFill = /*#__PURE__*/ makeIcon(\n 'UnlockFill',\n '<path d=\"M11 1a2 2 0 0 0-2 2v4a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h5V3a3 3 0 0 1 6 0v4a.5.5 0 0 1-1 0V3a2 2 0 0 0-2-2z\"/>'\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 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-.5zM3 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 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 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.908-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.228 8 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 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 d=\"M3 0h10a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3zm0 8h10a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2zm0 1a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1H3z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVinyl = /*#__PURE__*/ makeIcon(\n 'Vinyl',\n '<path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path d=\"M8 6a2 2 0 1 0 0 4 2 2 0 0 0 0-4zM4 8a4 4 0 1 1 8 0 4 4 0 0 1-8 0z\"/><path d=\"M9 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVinylFill = /*#__PURE__*/ makeIcon(\n 'VinylFill',\n '<path d=\"M8 6a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm0 3a1 1 0 1 1 0-2 1 1 0 0 1 0 2z\"/><path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM4 8a4 4 0 1 0 8 0 4 4 0 0 0-8 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVoicemail = /*#__PURE__*/ makeIcon(\n 'Voicemail',\n '<path 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 0 5 0 2.5 2.5 0 0 0-5 0zm14 0a2.5 2.5 0 1 0-5 0 2.5 2.5 0 0 0 5 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeDown = /*#__PURE__*/ makeIcon(\n 'VolumeDown',\n '<path d=\"M9 4a.5.5 0 0 0-.812-.39L5.825 5.5H3.5A.5.5 0 0 0 3 6v4a.5.5 0 0 0 .5.5h2.325l2.363 1.89A.5.5 0 0 0 9 12V4zM6.312 6.39 8 5.04v5.92L6.312 9.61A.5.5 0 0 0 6 9.5H4v-3h2a.5.5 0 0 0 .312-.11zM12.025 8a4.486 4.486 0 0 1-1.318 3.182L10 10.475A3.489 3.489 0 0 0 11.025 8 3.49 3.49 0 0 0 10 5.525l.707-.707A4.486 4.486 0 0 1 12.025 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeDownFill = /*#__PURE__*/ makeIcon(\n 'VolumeDownFill',\n '<path d=\"M9 4a.5.5 0 0 0-.812-.39L5.825 5.5H3.5A.5.5 0 0 0 3 6v4a.5.5 0 0 0 .5.5h2.325l2.363 1.89A.5.5 0 0 0 9 12V4zm3.025 4a4.486 4.486 0 0 1-1.318 3.182L10 10.475A3.489 3.489 0 0 0 11.025 8 3.49 3.49 0 0 0 10 5.525l.707-.707A4.486 4.486 0 0 1 12.025 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeMute = /*#__PURE__*/ makeIcon(\n 'VolumeMute',\n '<path 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.04 4.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 .708L12.207 8l1.647 1.646a.5.5 0 0 1-.708.708L11.5 8.707l-1.646 1.647a.5.5 0 0 1-.708-.708L10.793 8 9.146 6.354a.5.5 0 1 1 .708-.708L11.5 7.293l1.646-1.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeMuteFill = /*#__PURE__*/ makeIcon(\n 'VolumeMuteFill',\n '<path 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 .708L12.207 8l1.647 1.646a.5.5 0 0 1-.708.708L11.5 8.707l-1.646 1.647a.5.5 0 0 1-.708-.708L10.793 8 9.146 6.354a.5.5 0 1 1 .708-.708L11.5 7.293l1.646-1.647a.5.5 0 0 1 .708 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeOff = /*#__PURE__*/ makeIcon(\n 'VolumeOff',\n '<path 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.04 8.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 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 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=\"M10.025 8a4.486 4.486 0 0 1-1.318 3.182L8 10.475A3.489 3.489 0 0 0 9.025 8c0-.966-.392-1.841-1.025-2.475l.707-.707A4.486 4.486 0 0 1 10.025 8zM7 4a.5.5 0 0 0-.812-.39L3.825 5.5H1.5A.5.5 0 0 0 1 6v4a.5.5 0 0 0 .5.5h2.325l2.363 1.89A.5.5 0 0 0 7 12V4zM4.312 6.39 6 5.04v5.92L4.312 9.61A.5.5 0 0 0 4 9.5H2v-3h2a.5.5 0 0 0 .312-.11z\"/>'\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.707zM6.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.5zM8 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 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 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 d=\"M8.5 5a.5.5 0 0 0-1 0v2.5H6a.5.5 0 0 0 0 1h2a.5.5 0 0 0 .5-.5V5z\"/><path d=\"M5.667 16C4.747 16 4 15.254 4 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.99 5.99 0 0 1 1.918 3.48.502.502 0 0 1 .582.493v1a.5.5 0 0 1-.582.493A5.99 5.99 0 0 1 12 12.473v1.86c0 .92-.746 1.667-1.667 1.667H5.667zM13 8A5 5 0 1 0 3 8a5 5 0 0 0 10 0z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWater = /*#__PURE__*/ makeIcon(\n 'Water',\n '<path d=\"M.036 3.314a.5.5 0 0 1 .65-.278l1.757.703a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.757-.703a.5.5 0 1 1 .372.928l-1.758.703a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0L.314 3.964a.5.5 0 0 1-.278-.65zm0 3a.5.5 0 0 1 .65-.278l1.757.703a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.757-.703a.5.5 0 1 1 .372.928l-1.758.703a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0L.314 6.964a.5.5 0 0 1-.278-.65zm0 3a.5.5 0 0 1 .65-.278l1.757.703a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.757-.703a.5.5 0 1 1 .372.928l-1.758.703a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0L.314 9.964a.5.5 0 0 1-.278-.65zm0 3a.5.5 0 0 1 .65-.278l1.757.703a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.757-.703a.5.5 0 1 1 .372.928l-1.758.703a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.757-.703a.5.5 0 0 1-.278-.65z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWhatsapp = /*#__PURE__*/ makeIcon(\n 'Whatsapp',\n '<path d=\"M13.601 2.326A7.854 7.854 0 0 0 7.994 0C3.627 0 .068 3.558.064 7.926c0 1.399.366 2.76 1.057 3.965L0 16l4.204-1.102a7.933 7.933 0 0 0 3.79.965h.004c4.368 0 7.926-3.558 7.93-7.93A7.898 7.898 0 0 0 13.6 2.326zM7.994 14.521a6.573 6.573 0 0 1-3.356-.92l-.24-.144-2.494.654.666-2.433-.156-.251a6.56 6.56 0 0 1-1.007-3.505c0-3.626 2.957-6.584 6.591-6.584a6.56 6.56 0 0 1 4.66 1.931 6.557 6.557 0 0 1 1.928 4.66c-.004 3.639-2.961 6.592-6.592 6.592zm3.615-4.934c-.197-.099-1.17-.578-1.353-.646-.182-.065-.315-.099-.445.099-.133.197-.513.646-.627.775-.114.133-.232.148-.43.05-.197-.1-.836-.308-1.592-.985-.59-.525-.985-1.175-1.103-1.372-.114-.198-.011-.304.088-.403.087-.088.197-.232.296-.346.1-.114.133-.198.198-.33.065-.134.034-.248-.015-.347-.05-.099-.445-1.076-.612-1.47-.16-.389-.323-.335-.445-.34-.114-.007-.247-.007-.38-.007a.729.729 0 0 0-.529.247c-.182.198-.691.677-.691 1.654 0 .977.71 1.916.81 2.049.098.133 1.394 2.132 3.383 2.992.47.205.84.326 1.129.418.475.152.904.129 1.246.08.38-.058 1.171-.48 1.338-.943.164-.464.164-.86.114-.943-.049-.084-.182-.133-.38-.232z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWifi = /*#__PURE__*/ makeIcon(\n 'Wifi',\n '<path d=\"M15.384 6.115a.485.485 0 0 0-.047-.736A12.444 12.444 0 0 0 8 3C5.259 3 2.723 3.882.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.716 2.164.205.148.49.13.668-.049z\"/><path d=\"M13.229 8.271a.482.482 0 0 0-.063-.745A9.455 9.455 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.576 1.336c.206.132.48.108.653-.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.407.19.611.09A5.478 5.478 0 0 1 8 10c.868 0 1.69.201 2.42.56.203.1.45.07.61-.091l.016-.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.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 3C5.259 3 2.723 3.882.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.404.785-.785c.63.24 1.227.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.933-.933a6.455 6.455 0 0 1 2.013.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.905.747-.747c.59.3 1.153.645 1.685 1.03a.485.485 0 0 1 .047.737.518.518 0 0 1-.668.05 11.493 11.493 0 0 0-1.811-1.07zM9.02 11.78c.238.14.236.464.04.66l-.707.706a.5.5 0 0 1-.707 0l-.707-.707c-.195-.195-.197-.518.04-.66A1.99 1.99 0 0 1 8 11.5c.374 0 .723.102 1.021.28zm4.355-9.905a.53.53 0 0 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 BIconWind = /*#__PURE__*/ makeIcon(\n 'Wind',\n '<path d=\"M12.5 2A2.5 2.5 0 0 0 10 4.5a.5.5 0 0 1-1 0A3.5 3.5 0 1 1 12.5 8H.5a.5.5 0 0 1 0-1h12a2.5 2.5 0 0 0 0-5zm-7 1a1 1 0 0 0-1 1 .5.5 0 0 1-1 0 2 2 0 1 1 2 2h-5a.5.5 0 0 1 0-1h5a1 1 0 0 0 0-2zM0 9.5A.5.5 0 0 1 .5 9h10.042a3 3 0 1 1-3 3 .5.5 0 0 1 1 0 2 2 0 1 0 2-2H.5a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWindow = /*#__PURE__*/ makeIcon(\n 'Window',\n '<path d=\"M2.5 4a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zm2-.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm1 .5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1z\"/><path d=\"M2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H2zm13 2v2H1V3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1zM2 14a1 1 0 0 1-1-1V6h14v7a1 1 0 0 1-1 1H2z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWindowDock = /*#__PURE__*/ makeIcon(\n 'WindowDock',\n '<path fill-rule=\"evenodd\" d=\"M15 5H1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V5zm0-1H1V3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v1zm1-1a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3z\"/><path d=\"M3 11.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-1zm4 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-1zm4 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 BIconWindowSidebar = /*#__PURE__*/ makeIcon(\n 'WindowSidebar',\n '<path d=\"M2.5 4a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1zm2-.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0zm1 .5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1z\"/><path d=\"M2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H2zm12 1a1 1 0 0 1 1 1v2H1V3a1 1 0 0 1 1-1h12zM1 13V6h4v8H2a1 1 0 0 1-1-1zm5 1V6h9v7a1 1 0 0 1-1 1H6z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconWrench = /*#__PURE__*/ makeIcon(\n 'Wrench',\n '<path 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.019.528.026.287.445.445.287.026.529L15 13l-.242.471-.026.529-.445.287-.287.445-.529.026L13 15l-.471-.242-.529-.026-.287-.445-.445-.287-.026-.529L11 13l.242-.471.026-.529.445-.287.287-.445.529-.026L13 11l.471.242z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconX = /*#__PURE__*/ makeIcon(\n 'X',\n '<path 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 d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"/><path 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 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 d=\"M7.987 16a1.526 1.526 0 0 1-1.07-.448L.45 9.082a1.531 1.531 0 0 1 0-2.165L6.917.45a1.531 1.531 0 0 1 2.166 0l6.469 6.468A1.526 1.526 0 0 1 16 8.013a1.526 1.526 0 0 1-.448 1.07l-6.47 6.469A1.526 1.526 0 0 1 7.988 16zM7.639 1.17 4.766 4.044 8 7.278l3.234-3.234L8.361 1.17a.51.51 0 0 0-.722 0zM8.722 8l3.234 3.234 2.873-2.873c.2-.2.2-.523 0-.722l-2.873-2.873L8.722 8zM8 8.722l-3.234 3.234 2.873 2.873c.2.2.523.2.722 0l2.873-2.873L8 8.722zM7.278 8 4.044 4.766 1.17 7.639a.511.511 0 0 0 0 .722l2.874 2.873L7.278 8z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconXDiamondFill = /*#__PURE__*/ makeIcon(\n 'XDiamondFill',\n '<path 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.614L8 8.708l-3.954 3.954 2.905 2.904c.58.58 1.519.58 2.098 0l2.905-2.904zm-8.614-.706L7.292 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 BIconXLg = /*#__PURE__*/ makeIcon(\n 'XLg',\n '<path d=\"M1.293 1.293a1 1 0 0 1 1.414 0L8 6.586l5.293-5.293a1 1 0 1 1 1.414 1.414L9.414 8l5.293 5.293a1 1 0 0 1-1.414 1.414L8 9.414l-5.293 5.293a1 1 0 0 1-1.414-1.414L6.586 8 1.293 2.707a1 1 0 0 1 0-1.414z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconXOctagon = /*#__PURE__*/ makeIcon(\n 'XOctagon',\n '<path 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 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z\"/><path 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 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.5L8 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 1 1 .708-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconXSquare = /*#__PURE__*/ makeIcon(\n 'XSquare',\n '<path d=\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 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=\"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 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.646L8 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 1 1 .708-.708z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconYoutube = /*#__PURE__*/ makeIcon(\n 'Youtube',\n '<path d=\"M8.051 1.999h.089c.822.003 4.987.033 6.11.335a2.01 2.01 0 0 1 1.415 1.42c.101.38.172.883.22 1.402l.01.104.022.26.008.104c.065.914.073 1.77.074 1.957v.075c-.001.194-.01 1.108-.082 2.06l-.008.105-.009.104c-.05.572-.124 1.14-.235 1.558a2.007 2.007 0 0 1-1.415 1.42c-1.16.312-5.569.334-6.18.335h-.142c-.309 0-1.587-.006-2.927-.052l-.17-.006-.087-.004-.171-.007-.171-.007c-1.11-.049-2.167-.128-2.654-.26a2.007 2.007 0 0 1-1.415-1.419c-.111-.417-.185-.986-.235-1.558L.09 9.82l-.008-.104A31.4 31.4 0 0 1 0 7.68v-.123c.002-.215.01-.958.064-1.778l.007-.103.003-.052.008-.104.022-.26.01-.104c.048-.519.119-1.023.22-1.402a2.007 2.007 0 0 1 1.415-1.42c.487-.13 1.544-.21 2.654-.26l.17-.007.172-.006.086-.003.171-.007A99.788 99.788 0 0 1 7.858 2h.193zM6.4 5.209v4.818l4.157-2.408L6.4 5.209z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconZoomIn = /*#__PURE__*/ makeIcon(\n 'ZoomIn',\n '<path fill-rule=\"evenodd\" d=\"M6.5 12a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11zM13 6.5a6.5 6.5 0 1 1-13 0 6.5 6.5 0 0 1 13 0z\"/><path d=\"M10.344 11.742c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1 6.538 6.538 0 0 1-1.398 1.4z\"/><path fill-rule=\"evenodd\" d=\"M6.5 3a.5.5 0 0 1 .5.5V6h2.5a.5.5 0 0 1 0 1H7v2.5a.5.5 0 0 1-1 0V7H3.5a.5.5 0 0 1 0-1H6V3.5a.5.5 0 0 1 .5-.5z\"/>'\n)\n\n// eslint-disable-next-line\nexport const BIconZoomOut = /*#__PURE__*/ makeIcon(\n 'ZoomOut',\n '<path fill-rule=\"evenodd\" d=\"M6.5 12a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11zM13 6.5a6.5 6.5 0 1 1-13 0 6.5 6.5 0 0 1 13 0z\"/><path d=\"M10.344 11.742c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1 6.538 6.538 0 0 1-1.398 1.4z\"/><path fill-rule=\"evenodd\" d=\"M3 6.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5z\"/>'\n)\n\n// --- END AUTO-GENERATED FILE ---\n","import { Vue, mergeData } from '../vue'\nimport { NAME_ICON } from '../constants/components'\nimport { PROP_TYPE_STRING } from '../constants/props'\nimport { RX_ICON_PREFIX } from '../constants/regex'\nimport { omit, sortKeys } from '../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../utils/props'\nimport { pascalCase, trim } from '../utils/string'\nimport { BIconBlank } from './icons'\nimport { props as BVIconBaseProps } from './helpers/icon-base'\n\n// --- Helper methods ---\n\nconst findIconComponent = (ctx, iconName) => {\n if (!ctx) {\n return Vue.component(iconName)\n }\n const components = (ctx.$options || {}).components\n const iconComponent = components && components[iconName]\n return iconComponent || findIconComponent(ctx.$parent, iconName)\n}\n\n// --- Props ---\n\nconst iconProps = omit(BVIconBaseProps, ['content'])\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...iconProps,\n icon: makeProp(PROP_TYPE_STRING)\n }),\n NAME_ICON\n)\n\n// --- Main component ---\n\n// Helper BIcon component\n// Requires the requested icon component to be installed\n// @vue/component\nexport const BIcon = /*#__PURE__*/ Vue.extend({\n name: NAME_ICON,\n functional: true,\n props,\n render(h, { data, props, parent }) {\n const icon = pascalCase(trim(props.icon || '')).replace(RX_ICON_PREFIX, '')\n\n // If parent context exists, we check to see if the icon has been registered\n // either locally in the parent component, or globally at the `$root` level\n // If not registered, we render a blank icon\n return h(\n icon ? findIconComponent(parent, `BIcon${icon}`) || BIconBlank : BIconBlank,\n mergeData(data, { props: pluckProps(iconProps, props) })\n )\n }\n})\n","export const CODE_BACKSPACE = 8\nexport const CODE_BREAK = 19\nexport const CODE_DELETE = 46\nexport const CODE_DOWN = 40\nexport const CODE_END = 35\nexport const CODE_ENTER = 13\nexport const CODE_ESC = 27\nexport const CODE_HOME = 36\nexport const CODE_LEFT = 37\nexport const CODE_PAGEDOWN = 34\nexport const CODE_PAGEUP = 33\nexport const CODE_RIGHT = 39\nexport const CODE_SPACE = 32\nexport const CODE_UP = 38\n","import { hasOwnProperty, keys } from './object'\nimport { isArray, isDate, isObject } from './inspect'\n\n// Assumes both a and b are arrays!\n// Handles when arrays are \"sparse\" (array.every(...) doesn't handle sparse)\nconst compareArrays = (a, b) => {\n if (a.length !== b.length) {\n return false\n }\n let equal = true\n for (let i = 0; equal && i < a.length; i++) {\n equal = looseEqual(a[i], b[i])\n }\n return equal\n}\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n * Returns boolean true or false\n */\nexport const looseEqual = (a, b) => {\n if (a === b) {\n return true\n }\n let aValidType = isDate(a)\n let bValidType = isDate(b)\n if (aValidType || bValidType) {\n return aValidType && bValidType ? a.getTime() === b.getTime() : false\n }\n aValidType = isArray(a)\n bValidType = isArray(b)\n if (aValidType || bValidType) {\n return aValidType && bValidType ? compareArrays(a, b) : false\n }\n aValidType = isObject(a)\n bValidType = isObject(b)\n if (aValidType || bValidType) {\n /* istanbul ignore if: this if will probably never be called */\n if (!aValidType || !bValidType) {\n return false\n }\n const aKeysCount = keys(a).length\n const bKeysCount = keys(b).length\n if (aKeysCount !== bKeysCount) {\n return false\n }\n for (const key in a) {\n const aHasKey = hasOwnProperty(a, key)\n const bHasKey = hasOwnProperty(b, key)\n if ((aHasKey && !bHasKey) || (!aHasKey && bHasKey) || !looseEqual(a[key], b[key])) {\n return false\n }\n }\n }\n return String(a) === String(b)\n}\n","import { Vue } from '../vue'\nimport { cloneDeep } from './clone-deep'\nimport { looseEqual } from './loose-equal'\nimport { hasOwnProperty, keys } from './object'\n\nconst isEmpty = value => !value || keys(value).length === 0\n\nexport const makePropWatcher = propName => ({\n handler(newValue, oldValue) {\n if (looseEqual(newValue, oldValue)) {\n return\n }\n if (isEmpty(newValue) || isEmpty(oldValue)) {\n this[propName] = cloneDeep(newValue)\n return\n }\n for (const key in oldValue) {\n if (!hasOwnProperty(newValue, key)) {\n this.$delete(this.$data[propName], key)\n }\n }\n for (const key in newValue) {\n this.$set(this.$data[propName], key, newValue[key])\n }\n }\n})\n\nexport const makePropCacheMixin = (propName, proxyPropName) =>\n Vue.extend({\n data() {\n return { [proxyPropName]: cloneDeep(this[propName]) }\n },\n watch: {\n // Work around unwanted re-renders: https://github.com/vuejs/vue/issues/10115\n [propName]: makePropWatcher(proxyPropName)\n }\n })\n","import { makePropCacheMixin } from '../utils/cache'\n\nexport const attrsMixin = makePropCacheMixin('$attrs', 'bvAttrs')\n","import { Vue } from '../vue'\nimport { arrayIncludes } from '../utils/array'\nimport { keys } from '../utils/object'\n\n// --- Constants ---\n\nconst PROP = '$_rootListeners'\n\n// --- Mixin ---\n\n// @vue/component\nexport const listenOnRootMixin = Vue.extend({\n created() {\n // Define non-reactive property\n // Object of arrays, keyed by event name,\n // where value is an array of callbacks\n this[PROP] = {}\n },\n beforeDestroy() {\n // Unregister all registered listeners\n keys(this[PROP] || {}).forEach(event => {\n this[PROP][event].forEach(callback => {\n this.listenOffRoot(event, callback)\n })\n })\n\n this[PROP] = null\n },\n methods: {\n registerRootListener(event, callback) {\n if (this[PROP]) {\n this[PROP][event] = this[PROP][event] || []\n if (!arrayIncludes(this[PROP][event], callback)) {\n this[PROP][event].push(callback)\n }\n }\n },\n unregisterRootListener(event, callback) {\n if (this[PROP] && this[PROP][event]) {\n this[PROP][event] = this[PROP][event].filter(cb => cb !== callback)\n }\n },\n\n /**\n * Safely register event listeners on the root Vue node\n * While Vue automatically removes listeners for individual components,\n * when a component registers a listener on `$root` and is destroyed,\n * this orphans a callback because the node is gone, but the `$root`\n * does not clear the callback\n *\n * When registering a `$root` listener, it also registers the listener\n * to be removed in the component's `beforeDestroy()` hook\n *\n * @param {string} event\n * @param {function} callback\n */\n listenOnRoot(event, callback) {\n if (this.$root) {\n this.$root.$on(event, callback)\n this.registerRootListener(event, callback)\n }\n },\n\n /**\n * Safely register a `$once()` event listener on the root Vue node\n * While Vue automatically removes listeners for individual components,\n * when a component registers a listener on `$root` and is destroyed,\n * this orphans a callback because the node is gone, but the `$root`\n * does not clear the callback\n *\n * When registering a `$root` listener, it also registers the listener\n * to be removed in the component's `beforeDestroy()` hook\n *\n * @param {string} event\n * @param {function} callback\n */\n listenOnRootOnce(event, callback) {\n if (this.$root) {\n const _callback = (...args) => {\n this.unregisterRootListener(_callback)\n // eslint-disable-next-line node/no-callback-literal\n callback(...args)\n }\n\n this.$root.$once(event, _callback)\n this.registerRootListener(event, _callback)\n }\n },\n\n /**\n * Safely unregister event listeners from the root Vue node\n *\n * @param {string} event\n * @param {function} callback\n */\n listenOffRoot(event, callback) {\n this.unregisterRootListener(event, callback)\n\n if (this.$root) {\n this.$root.$off(event, callback)\n }\n },\n\n /**\n * Convenience method for calling `vm.$emit()` on `$root`\n *\n * @param {string} event\n * @param {*} args\n */\n emitOnRoot(event, ...args) {\n if (this.$root) {\n this.$root.$emit(event, ...args)\n }\n }\n }\n})\n","import { makePropCacheMixin } from '../utils/cache'\n\nexport const listenersMixin = makePropCacheMixin('$listeners', 'bvListeners')\n","import { Vue } from '../../vue'\nimport { NAME_LINK } from '../../constants/components'\nimport { EVENT_NAME_CLICK } from '../../constants/events'\nimport {\n PROP_TYPE_ARRAY_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_OBJECT_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { concat } from '../../utils/array'\nimport { attemptBlur, attemptFocus, isTag } from '../../utils/dom'\nimport { getRootEventName, stopEvent } from '../../utils/events'\nimport { isBoolean, isEvent, isFunction, isUndefined } from '../../utils/inspect'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { computeHref, computeRel, computeTag, isRouterLink } from '../../utils/router'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst ROOT_EVENT_NAME_CLICKED = getRootEventName(NAME_LINK, 'clicked')\n\n// --- Props ---\n\n// `<router-link>` specific props\nexport const routerLinkProps = {\n activeClass: makeProp(PROP_TYPE_STRING),\n append: makeProp(PROP_TYPE_BOOLEAN, false),\n event: makeProp(PROP_TYPE_ARRAY_STRING),\n exact: makeProp(PROP_TYPE_BOOLEAN, false),\n exactActiveClass: makeProp(PROP_TYPE_STRING),\n exactPath: makeProp(PROP_TYPE_BOOLEAN, false),\n exactPathActiveClass: makeProp(PROP_TYPE_STRING),\n replace: makeProp(PROP_TYPE_BOOLEAN, false),\n routerTag: makeProp(PROP_TYPE_STRING),\n to: makeProp(PROP_TYPE_OBJECT_STRING)\n}\n\n// `<nuxt-link>` specific props\nexport const nuxtLinkProps = {\n noPrefetch: makeProp(PROP_TYPE_BOOLEAN, false),\n // Must be `null` to fall back to the value defined in the\n // `nuxt.config.js` configuration file for `router.prefetchLinks`\n // We convert `null` to `undefined`, so that Nuxt.js will use the\n // compiled default\n // Vue treats `undefined` as default of `false` for Boolean props,\n // so we must set it as `null` here to be a true tri-state prop\n prefetch: makeProp(PROP_TYPE_BOOLEAN, null)\n}\n\n// All `<b-link>` props\nexport const props = makePropsConfigurable(\n sortKeys({\n ...nuxtLinkProps,\n ...routerLinkProps,\n active: makeProp(PROP_TYPE_BOOLEAN, false),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n href: makeProp(PROP_TYPE_STRING),\n // Must be `null` if no value provided\n rel: makeProp(PROP_TYPE_STRING, null),\n // To support 3rd party router links based on `<router-link>` (i.e. `g-link` for Gridsome)\n // Default is to auto choose between `<router-link>` and `<nuxt-link>`\n // Gridsome doesn't provide a mechanism to auto detect and has caveats\n // such as not supporting FQDN URLs or hash only URLs\n routerComponentName: makeProp(PROP_TYPE_STRING),\n target: makeProp(PROP_TYPE_STRING, '_self')\n }),\n NAME_LINK\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BLink = /*#__PURE__*/ Vue.extend({\n name: NAME_LINK,\n // Mixin order is important!\n mixins: [attrsMixin, listenersMixin, listenOnRootMixin, normalizeSlotMixin],\n inheritAttrs: false,\n props,\n computed: {\n computedTag() {\n // We don't pass `this` as the first arg as we need reactivity of the props\n const { to, disabled, routerComponentName } = this\n return computeTag({ to, disabled, routerComponentName }, this)\n },\n isRouterLink() {\n return isRouterLink(this.computedTag)\n },\n computedRel() {\n // We don't pass `this` as the first arg as we need reactivity of the props\n const { target, rel } = this\n return computeRel({ target, rel })\n },\n computedHref() {\n // We don't pass `this` as the first arg as we need reactivity of the props\n const { to, href } = this\n return computeHref({ to, href }, this.computedTag)\n },\n computedProps() {\n const { event, prefetch, routerTag } = this\n return this.isRouterLink\n ? {\n ...pluckProps(\n omit({ ...routerLinkProps, ...nuxtLinkProps }, ['event', 'prefetch', 'routerTag']),\n this\n ),\n // Only add these props, when actually defined\n ...(event ? { event } : {}),\n ...(isBoolean(prefetch) ? { prefetch } : {}),\n // Pass `router-tag` as `tag` prop\n ...(routerTag ? { tag: 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 && routerTag && !isTag(routerTag, 'a') ? {} : { rel, target }),\n tabindex: disabled ? '-1' : isUndefined(bvAttrs.tabindex) ? null : bvAttrs.tabindex,\n 'aria-disabled': disabled ? 'true' : null\n }\n },\n computedListeners() {\n return {\n // Transfer all listeners (native) to the root element\n ...this.bvListeners,\n // We want to overwrite any click handler since our callback\n // will invoke the user supplied handler(s) if `!this.disabled`\n click: this.onClick\n }\n }\n },\n methods: {\n onClick(event) {\n const eventIsEvent = isEvent(event)\n const isRouterLink = this.isRouterLink\n const suppliedHandler = this.bvListeners.click\n if (eventIsEvent && this.disabled) {\n // Stop event from bubbling up\n // Kill the event loop attached to this specific `EventTarget`\n // Needed to prevent `vue-router` for doing its thing\n stopEvent(event, { immediatePropagation: true })\n } else {\n // Router links do not emit instance `click` events, so we\n // add in an `$emit('click', event)` on its Vue instance\n /* istanbul ignore next: difficult to test, but we know it works */\n if (isRouterLink && event.currentTarget.__vue__) {\n event.currentTarget.__vue__.$emit(EVENT_NAME_CLICK, event)\n }\n // Call the suppliedHandler(s), if any provided\n concat(suppliedHandler)\n .filter(h => isFunction(h))\n .forEach(handler => {\n handler(...arguments)\n })\n // Emit the global `$root` click event\n this.emitOnRoot(ROOT_EVENT_NAME_CLICKED, event)\n // TODO: Remove deprecated 'clicked::link' event with next major release\n this.emitOnRoot('clicked::link', event)\n }\n // Stop scroll-to-top behavior or navigation on\n // regular links when href is just '#'\n if (eventIsEvent && !isRouterLink && this.computedHref === '#') {\n stopEvent(event, { propagation: false })\n }\n },\n focus() {\n attemptFocus(this.$el)\n },\n blur() {\n attemptBlur(this.$el)\n }\n },\n render(h) {\n const { active, disabled } = this\n\n return h(\n this.computedTag,\n {\n class: { active, disabled },\n attrs: this.computedAttrs,\n props: this.computedProps,\n // We must use `nativeOn` for `<router-link>`/`<nuxt-link>` instead of `on`\n [this.isRouterLink ? 'nativeOn' : 'on']: this.computedListeners\n },\n this.normalizeSlot()\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BUTTON } from '../../constants/components'\nimport { CODE_ENTER, CODE_SPACE } from '../../constants/key-codes'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { concat } from '../../utils/array'\nimport { addClass, isTag, removeClass } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { isBoolean, isEvent, isFunction } from '../../utils/inspect'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { isLink as isLinkStrict } from '../../utils/router'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\ndelete linkProps.href.default\ndelete linkProps.to.default\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...linkProps,\n block: makeProp(PROP_TYPE_BOOLEAN, false),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n pill: makeProp(PROP_TYPE_BOOLEAN, false),\n // Tri-state: `true`, `false` or `null`\n // => On, off, not a toggle\n pressed: makeProp(PROP_TYPE_BOOLEAN, null),\n size: makeProp(PROP_TYPE_STRING),\n squared: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'button'),\n type: makeProp(PROP_TYPE_STRING, 'button'),\n variant: makeProp(PROP_TYPE_STRING, 'secondary')\n }),\n NAME_BUTTON\n)\n\n// --- Helper methods ---\n\n// Focus handler for toggle buttons\n// Needs class of 'focus' when focused\nconst handleFocus = event => {\n if (event.type === 'focusin') {\n addClass(event.target, 'focus')\n } else if (event.type === 'focusout') {\n removeClass(event.target, 'focus')\n }\n}\n\n// Is the requested button a link?\n// If tag prop is set to `a`, we use a <b-link> to get proper disabled handling\nconst isLink = props => isLinkStrict(props) || isTag(props.tag, 'a')\n\n// Is the button to be a toggle button?\nconst isToggle = props => isBoolean(props.pressed)\n\n// Is the button \"really\" a button?\nconst isButton = props => !(isLink(props) || (props.tag && !isTag(props.tag, 'button')))\n\n// Is the requested tag not a button or link?\nconst isNonStandardTag = props => !isLink(props) && !isButton(props)\n\n// Compute required classes (non static classes)\nconst computeClass = props => [\n `btn-${props.variant || 'secondary'}`,\n {\n [`btn-${props.size}`]: props.size,\n 'btn-block': props.block,\n 'rounded-pill': props.pill,\n 'rounded-0': props.squared && !props.pill,\n disabled: props.disabled,\n active: props.pressed\n }\n]\n\n// Compute the link props to pass to b-link (if required)\nconst computeLinkProps = props => (isLink(props) ? pluckProps(linkProps, props) : {})\n\n// Compute the attributes for a button\nconst computeAttrs = (props, data) => {\n const button = isButton(props)\n const link = isLink(props)\n const toggle = isToggle(props)\n const nonStandardTag = isNonStandardTag(props)\n const hashLink = link && props.href === '#'\n const role = data.attrs && data.attrs.role ? data.attrs.role : null\n let tabindex = data.attrs ? data.attrs.tabindex : null\n if (nonStandardTag || hashLink) {\n tabindex = '0'\n }\n return {\n // Type only used for \"real\" buttons\n type: button && !link ? props.type : null,\n // Disabled only set on \"real\" buttons\n disabled: button ? props.disabled : null,\n // We add a role of button when the tag is not a link or button for ARIA\n // Don't bork any role provided in `data.attrs` when `isLink` or `isButton`\n // Except when link has `href` of `#`\n role: nonStandardTag || hashLink ? 'button' : role,\n // We set the `aria-disabled` state for non-standard tags\n 'aria-disabled': nonStandardTag ? String(props.disabled) : null,\n // For toggles, we need to set the pressed state for ARIA\n 'aria-pressed': toggle ? String(props.pressed) : null,\n // `autocomplete=\"off\"` is needed in toggle mode to prevent some browsers\n // from remembering the previous setting when using the back button\n autocomplete: toggle ? 'off' : null,\n // `tabindex` is used when the component is not a button\n // Links are tabbable, but don't allow disabled, while non buttons or links\n // are not tabbable, so we mimic that functionality by disabling tabbing\n // when disabled, and adding a `tabindex=\"0\"` to non buttons or non links\n tabindex: props.disabled && !button ? '-1' : tabindex\n }\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BButton = /*#__PURE__*/ Vue.extend({\n name: NAME_BUTTON,\n functional: true,\n props,\n render(h, { props, data, listeners, children }) {\n const toggle = isToggle(props)\n const link = isLink(props)\n const nonStandardTag = isNonStandardTag(props)\n const hashLink = link && props.href === '#'\n const on = {\n keydown(event) {\n // When the link is a `href=\"#\"` or a non-standard tag (has `role=\"button\"`),\n // we add a keydown handlers for CODE_SPACE/CODE_ENTER\n /* istanbul ignore next */\n if (props.disabled || !(nonStandardTag || hashLink)) {\n return\n }\n const { keyCode } = event\n // Add CODE_SPACE handler for `href=\"#\"` and CODE_ENTER handler for non-standard tags\n if (keyCode === CODE_SPACE || (keyCode === CODE_ENTER && nonStandardTag)) {\n const target = event.currentTarget || event.target\n stopEvent(event, { propagation: false })\n target.click()\n }\n },\n click(event) {\n /* istanbul ignore if: blink/button disabled should handle this */\n if (props.disabled && isEvent(event)) {\n stopEvent(event)\n } else if (toggle && listeners && listeners['update:pressed']) {\n // Send `.sync` updates to any \"pressed\" prop (if `.sync` listeners)\n // `concat()` will normalize the value to an array without\n // double wrapping an array value in an array\n concat(listeners['update:pressed']).forEach(fn => {\n if (isFunction(fn)) {\n fn(!props.pressed)\n }\n })\n }\n }\n }\n\n if (toggle) {\n on.focusin = handleFocus\n on.focusout = handleFocus\n }\n\n const componentData = {\n staticClass: 'btn',\n class: computeClass(props),\n props: computeLinkProps(props),\n attrs: computeAttrs(props, data),\n on\n }\n\n return h(link ? BLink : props.tag, mergeData(data, componentData), children)\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_AVATAR } from '../../constants/components'\nimport { EVENT_NAME_CLICK, EVENT_NAME_IMG_ERROR } from '../../constants/events'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_STRING,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_BADGE } from '../../constants/slots'\nimport { isNumber, isNumeric, isString } from '../../utils/inspect'\nimport { toFloat } from '../../utils/number'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BIcon } from '../../icons/icon'\nimport { BIconPersonFill } from '../../icons/icons'\nimport { BButton } from '../button/button'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Constants ---\n\nconst CLASS_NAME = 'b-avatar'\n\nconst SIZES = ['sm', null, 'lg']\n\nconst FONT_SIZE_SCALE = 0.4\nconst BADGE_FONT_SIZE_SCALE = FONT_SIZE_SCALE * 0.7\n\n// --- Helper methods ---\n\nexport const computeSize = value => {\n // Parse to number when value is a float-like string\n value = isString(value) && isNumeric(value) ? toFloat(value, 0) : value\n // Convert all numbers to pixel values\n return isNumber(value) ? `${value}px` : value || null\n}\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['active', 'event', 'routerTag'])\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...linkProps,\n alt: makeProp(PROP_TYPE_STRING, 'avatar'),\n ariaLabel: makeProp(PROP_TYPE_STRING),\n badge: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n badgeLeft: makeProp(PROP_TYPE_BOOLEAN, false),\n badgeOffset: makeProp(PROP_TYPE_STRING),\n badgeTop: makeProp(PROP_TYPE_BOOLEAN, false),\n badgeVariant: makeProp(PROP_TYPE_STRING, 'primary'),\n button: makeProp(PROP_TYPE_BOOLEAN, false),\n buttonType: makeProp(PROP_TYPE_STRING, 'button'),\n icon: makeProp(PROP_TYPE_STRING),\n rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n size: makeProp(PROP_TYPE_NUMBER_STRING),\n square: makeProp(PROP_TYPE_BOOLEAN, false),\n src: makeProp(PROP_TYPE_STRING),\n text: makeProp(PROP_TYPE_STRING),\n variant: makeProp(PROP_TYPE_STRING, 'secondary')\n }),\n NAME_AVATAR\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BAvatar = /*#__PURE__*/ Vue.extend({\n name: NAME_AVATAR,\n mixins: [normalizeSlotMixin],\n inject: {\n bvAvatarGroup: { default: null }\n },\n props,\n data() {\n return {\n localSrc: this.src || null\n }\n },\n computed: {\n computedSize() {\n // Always use the avatar group size\n const { bvAvatarGroup } = this\n return computeSize(bvAvatarGroup ? bvAvatarGroup.size : this.size)\n },\n computedVariant() {\n const { bvAvatarGroup } = this\n return bvAvatarGroup && bvAvatarGroup.variant ? bvAvatarGroup.variant : this.variant\n },\n computedRounded() {\n const { bvAvatarGroup } = this\n const square = bvAvatarGroup && bvAvatarGroup.square ? true : this.square\n const rounded = bvAvatarGroup && bvAvatarGroup.rounded ? bvAvatarGroup.rounded : this.rounded\n return square ? '0' : rounded === '' ? true : rounded || 'circle'\n },\n fontStyle() {\n const { computedSize: size } = this\n const fontSize = SIZES.indexOf(size) === -1 ? `calc(${size} * ${FONT_SIZE_SCALE})` : null\n return fontSize ? { fontSize } : {}\n },\n marginStyle() {\n const { computedSize: size, bvAvatarGroup } = this\n const overlapScale = bvAvatarGroup ? bvAvatarGroup.overlapScale : 0\n const value = size && overlapScale ? `calc(${size} * -${overlapScale})` : null\n return value ? { marginLeft: value, marginRight: value } : {}\n },\n badgeStyle() {\n const { computedSize: size, badgeTop, badgeLeft, badgeOffset } = this\n const offset = badgeOffset || '0px'\n return {\n fontSize: SIZES.indexOf(size) === -1 ? `calc(${size} * ${BADGE_FONT_SIZE_SCALE} )` : null,\n top: badgeTop ? offset : null,\n bottom: badgeTop ? null : offset,\n left: badgeLeft ? offset : null,\n right: badgeLeft ? null : offset\n }\n }\n },\n watch: {\n src(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.localSrc = newValue || null\n }\n }\n },\n methods: {\n onImgError(event) {\n this.localSrc = null\n this.$emit(EVENT_NAME_IMG_ERROR, event)\n },\n onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event)\n }\n },\n render(h) {\n const {\n computedVariant: variant,\n disabled,\n computedRounded: rounded,\n icon,\n localSrc: src,\n text,\n fontStyle,\n marginStyle,\n computedSize: size,\n button,\n buttonType: type,\n badge,\n badgeVariant,\n badgeStyle\n } = this\n const link = !button && isLink(this)\n const tag = button ? BButton : link ? BLink : 'span'\n const alt = this.alt\n const ariaLabel = this.ariaLabel || null\n\n let $content = null\n if (this.hasNormalizedSlot()) {\n // Default slot overrides props\n $content = h('span', { staticClass: 'b-avatar-custom' }, [this.normalizeSlot()])\n } else if (src) {\n $content = h('img', {\n style: variant ? {} : { width: '100%', height: '100%' },\n attrs: { src, alt },\n on: { error: this.onImgError }\n })\n $content = h('span', { staticClass: 'b-avatar-img' }, [$content])\n } else if (icon) {\n $content = h(BIcon, {\n props: { icon },\n attrs: { 'aria-hidden': 'true', alt }\n })\n } else if (text) {\n $content = h(\n 'span',\n {\n staticClass: 'b-avatar-text',\n style: fontStyle\n },\n [h('span', text)]\n )\n } else {\n // Fallback default avatar content\n $content = h(BIconPersonFill, { attrs: { 'aria-hidden': 'true', alt } })\n }\n\n let $badge = h()\n const hasBadgeSlot = this.hasNormalizedSlot(SLOT_NAME_BADGE)\n if (badge || badge === '' || hasBadgeSlot) {\n const badgeText = badge === true ? '' : badge\n $badge = h(\n 'span',\n {\n staticClass: 'b-avatar-badge',\n class: { [`badge-${badgeVariant}`]: badgeVariant },\n style: badgeStyle\n },\n [hasBadgeSlot ? this.normalizeSlot(SLOT_NAME_BADGE) : badgeText]\n )\n }\n\n const componentData = {\n staticClass: CLASS_NAME,\n class: {\n // Apply size class\n [`${CLASS_NAME}-${size}`]: size && SIZES.indexOf(size) !== -1,\n // We use badge styles for theme variants when not rendering `BButton`\n [`badge-${variant}`]: !button && variant,\n // Rounding/Square\n rounded: rounded === true,\n [`rounded-${rounded}`]: rounded && rounded !== true,\n // Other classes\n disabled\n },\n style: { ...marginStyle, width: size, height: size },\n attrs: { 'aria-label': ariaLabel || null },\n props: button ? { variant, disabled, type } : link ? pluckProps(linkProps, this) : {},\n on: button || link ? { click: this.onClick } : {}\n }\n\n return h(tag, componentData, [$content, $badge])\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_AVATAR_GROUP } from '../../constants/components'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_STRING,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { mathMax, mathMin } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { computeSize } from './avatar'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n overlap: makeProp(PROP_TYPE_NUMBER_STRING, 0.3),\n // Child avatars will prefer this prop (if set) over their own\n rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n // Child avatars will always use this over their own size\n size: makeProp(PROP_TYPE_STRING),\n // Child avatars will prefer this prop (if set) over their own\n square: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n // Child avatars will prefer this variant over their own\n variant: makeProp(PROP_TYPE_STRING)\n },\n NAME_AVATAR_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BAvatarGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_AVATAR_GROUP,\n mixins: [normalizeSlotMixin],\n provide() {\n return { bvAvatarGroup: this }\n },\n props,\n computed: {\n computedSize() {\n return computeSize(this.size)\n },\n overlapScale() {\n return mathMin(mathMax(toFloat(this.overlap, 0), 0), 1) / 2\n },\n paddingStyle() {\n let value = this.computedSize\n value = value ? `calc(${value} * ${this.overlapScale})` : null\n return value ? { paddingLeft: value, paddingRight: value } : {}\n }\n },\n render(h) {\n const $inner = h(\n 'div',\n {\n staticClass: 'b-avatar-group-inner',\n style: this.paddingStyle\n },\n this.normalizeSlot()\n )\n\n return h(\n this.tag,\n {\n staticClass: 'b-avatar-group',\n attrs: { role: 'group' }\n },\n [$inner]\n )\n }\n})\n","import { BAvatar } from './avatar'\nimport { BAvatarGroup } from './avatar-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst AvatarPlugin = /*#__PURE__*/ pluginFactory({\n components: { BAvatar, BAvatarGroup }\n})\n\nexport { AvatarPlugin, BAvatar, BAvatarGroup }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BADGE } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\ndelete linkProps.href.default\ndelete linkProps.to.default\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...linkProps,\n pill: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'span'),\n variant: makeProp(PROP_TYPE_STRING, 'secondary')\n }),\n NAME_BADGE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BBadge = /*#__PURE__*/ Vue.extend({\n name: NAME_BADGE,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { active, disabled } = props\n const link = isLink(props)\n const tag = link ? BLink : props.tag\n const variant = props.variant || 'secondary'\n\n return h(\n tag,\n mergeData(data, {\n staticClass: 'badge',\n class: [\n `badge-${variant}`,\n {\n 'badge-pill': props.pill,\n active,\n disabled\n }\n ],\n props: link ? pluckProps(linkProps, props) : {}\n }),\n children\n )\n }\n})\n","import { BBadge } from './badge'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst BadgePlugin = /*#__PURE__*/ pluginFactory({\n components: { BBadge }\n})\n\nexport { BadgePlugin, BBadge }\n","import { RX_HTML_TAGS } from '../constants/regex'\n\n// Removes anything that looks like an HTML tag from the supplied string\nexport const stripTags = (text = '') => String(text).replace(RX_HTML_TAGS, '')\n\n// Generate a `domProps` object for either `innerHTML`, `textContent` or an empty object\nexport const htmlOrText = (innerHTML, textContent) =>\n innerHTML ? { innerHTML } : textContent ? { textContent } : {}\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BREADCRUMB_LINK } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { htmlOrText } from '../../utils/html'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...omit(BLinkProps, ['event', 'routerTag']),\n ariaCurrent: makeProp(PROP_TYPE_STRING, 'location'),\n html: makeProp(PROP_TYPE_STRING),\n text: makeProp(PROP_TYPE_STRING)\n }),\n NAME_BREADCRUMB_LINK\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BBreadcrumbLink = /*#__PURE__*/ Vue.extend({\n name: NAME_BREADCRUMB_LINK,\n functional: true,\n props,\n render(h, { props: suppliedProps, data, children }) {\n const { active } = suppliedProps\n const tag = active ? 'span' : BLink\n\n const componentData = {\n attrs: { 'aria-current': active ? suppliedProps.ariaCurrent : null },\n props: pluckProps(props, suppliedProps)\n }\n\n if (!children) {\n componentData.domProps = htmlOrText(suppliedProps.html, suppliedProps.text)\n }\n\n return h(tag, mergeData(data, componentData), children)\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BREADCRUMB_ITEM } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { BBreadcrumbLink, props as BBreadcrumbLinkProps } from './breadcrumb-link'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(BBreadcrumbLinkProps, NAME_BREADCRUMB_ITEM)\n\n// --- Main component ---\n\n// @vue/component\nexport const BBreadcrumbItem = /*#__PURE__*/ Vue.extend({\n name: NAME_BREADCRUMB_ITEM,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n 'li',\n mergeData(data, {\n staticClass: 'breadcrumb-item',\n class: { active: props.active }\n }),\n [h(BBreadcrumbLink, { props }, children)]\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BREADCRUMB } from '../../constants/components'\nimport { PROP_TYPE_ARRAY } from '../../constants/props'\nimport { isArray, isObject } from '../../utils/inspect'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { BBreadcrumbItem } from './breadcrumb-item'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n items: makeProp(PROP_TYPE_ARRAY)\n },\n NAME_BREADCRUMB\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BBreadcrumb = /*#__PURE__*/ Vue.extend({\n name: NAME_BREADCRUMB,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { items } = props\n\n // Build child nodes from items, if given\n let childNodes = children\n if (isArray(items)) {\n let activeDefined = false\n childNodes = items.map((item, idx) => {\n if (!isObject(item)) {\n item = { text: toString(item) }\n }\n // Copy the value here so we can normalize it\n let { active } = item\n if (active) {\n activeDefined = true\n }\n // Auto-detect active by position in list\n if (!active && !activeDefined) {\n active = idx + 1 === items.length\n }\n\n return h(BBreadcrumbItem, { props: { ...item, active } })\n })\n }\n\n return h('ol', mergeData(data, { staticClass: 'breadcrumb' }), childNodes)\n }\n})\n","import { BBreadcrumb } from './breadcrumb'\nimport { BBreadcrumbItem } from './breadcrumb-item'\nimport { BBreadcrumbLink } from './breadcrumb-link'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst BreadcrumbPlugin = /*#__PURE__*/ pluginFactory({\n components: { BBreadcrumb, BBreadcrumbItem, BBreadcrumbLink }\n})\n\nexport { BreadcrumbPlugin, BBreadcrumb, BBreadcrumbItem, BBreadcrumbLink }\n","import { BButton } from './button'\nimport { BButtonClose } from './button-close'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ButtonPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BButton,\n BBtn: BButton,\n BButtonClose,\n BBtnClose: BButtonClose\n }\n})\n\nexport { ButtonPlugin, BButton, BButtonClose }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BUTTON_GROUP } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { pick, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { props as buttonProps } from '../button/button'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...pick(buttonProps, ['size']),\n ariaRole: makeProp(PROP_TYPE_STRING, 'group'),\n size: makeProp(PROP_TYPE_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n vertical: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_BUTTON_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BButtonGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_BUTTON_GROUP,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n props.tag,\n mergeData(data, {\n class: {\n 'btn-group': !props.vertical,\n 'btn-group-vertical': props.vertical,\n [`btn-group-${props.size}`]: props.size\n },\n attrs: { role: props.ariaRole }\n }),\n children\n )\n }\n})\n","import { BButtonGroup } from './button-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ButtonGroupPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BButtonGroup,\n BBtnGroup: BButtonGroup\n }\n})\n\nexport { ButtonGroupPlugin, BButtonGroup }\n","import { Vue } from '../../vue'\nimport { NAME_BUTTON_TOOLBAR } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { CODE_DOWN, CODE_LEFT, CODE_RIGHT, CODE_UP } from '../../constants/key-codes'\nimport { attemptFocus, contains, isVisible, selectAll } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst ITEM_SELECTOR = [\n '.btn:not(.disabled):not([disabled]):not(.dropdown-item)',\n '.form-control:not(.disabled):not([disabled])',\n 'select:not(.disabled):not([disabled])',\n 'input[type=\"checkbox\"]:not(.disabled)',\n 'input[type=\"radio\"]:not(.disabled)'\n].join(',')\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n justify: makeProp(PROP_TYPE_BOOLEAN, false),\n keyNav: makeProp(PROP_TYPE_BOOLEAN, false)\n },\n NAME_BUTTON_TOOLBAR\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BButtonToolbar = /*#__PURE__*/ Vue.extend({\n name: NAME_BUTTON_TOOLBAR,\n mixins: [normalizeSlotMixin],\n props,\n mounted() {\n // Pre-set the tabindexes if the markup does not include\n // `tabindex=\"-1\"` on the toolbar items\n if (this.keyNav) {\n this.getItems()\n }\n },\n methods: {\n getItems() {\n const items = selectAll(ITEM_SELECTOR, this.$el)\n // Ensure `tabindex=\"-1\"` is set on every item\n items.forEach(item => {\n item.tabIndex = -1\n })\n return items.filter(el => isVisible(el))\n },\n focusFirst() {\n const items = this.getItems()\n attemptFocus(items[0])\n },\n focusPrev(event) {\n let items = this.getItems()\n const index = items.indexOf(event.target)\n if (index > -1) {\n items = items.slice(0, index).reverse()\n attemptFocus(items[0])\n }\n },\n focusNext(event) {\n let items = this.getItems()\n const index = items.indexOf(event.target)\n if (index > -1) {\n items = items.slice(index + 1)\n attemptFocus(items[0])\n }\n },\n focusLast() {\n const items = this.getItems().reverse()\n attemptFocus(items[0])\n },\n onFocusin(event) {\n const { $el } = this\n if (event.target === $el && !contains($el, event.relatedTarget)) {\n stopEvent(event)\n this.focusFirst(event)\n }\n },\n onKeydown(event) {\n const { keyCode, shiftKey } = event\n if (keyCode === CODE_UP || keyCode === CODE_LEFT) {\n stopEvent(event)\n shiftKey ? this.focusFirst(event) : this.focusPrev(event)\n } else if (keyCode === CODE_DOWN || keyCode === CODE_RIGHT) {\n stopEvent(event)\n shiftKey ? this.focusLast(event) : this.focusNext(event)\n }\n }\n },\n render(h) {\n const { keyNav } = this\n\n return h(\n 'div',\n {\n staticClass: 'btn-toolbar',\n class: { 'justify-content-between': this.justify },\n attrs: {\n role: 'toolbar',\n tabindex: keyNav ? '0' : null\n },\n on: keyNav\n ? {\n focusin: this.onFocusin,\n keydown: this.onKeydown\n }\n : {}\n },\n [this.normalizeSlot()]\n )\n }\n})\n","import { BButtonToolbar } from './button-toolbar'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ButtonToolbarPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BButtonToolbar,\n BBtnToolbar: BButtonToolbar\n }\n})\n\nexport { ButtonToolbarPlugin, BButtonToolbar }\n","export const CALENDAR_GREGORY = 'gregory'\nexport const CALENDAR_LONG = 'long'\nexport const CALENDAR_NARROW = 'narrow'\nexport const CALENDAR_SHORT = 'short'\n\nexport const DATE_FORMAT_2_DIGIT = '2-digit'\nexport const DATE_FORMAT_NUMERIC = 'numeric'\n","// Date utility functions\nimport { CALENDAR_GREGORY } from '../constants/date'\nimport { RX_DATE, RX_DATE_SPLIT } from '../constants/regex'\nimport { concat } from './array'\nimport { identity } from './identity'\nimport { isDate, isString } from './inspect'\nimport { toInteger } from './number'\n\n// --- Date utility methods ---\n\n// Create or clone a date (`new Date(...)` shortcut)\nexport const createDate = (...args) => new Date(...args)\n\n// Parse a date sting, or Date object, into a Date object (with no time information)\nexport const parseYMD = date => {\n if (isString(date) && RX_DATE.test(date.trim())) {\n const [year, month, day] = date.split(RX_DATE_SPLIT).map(v => toInteger(v, 1))\n return createDate(year, month - 1, day)\n } else if (isDate(date)) {\n return createDate(date.getFullYear(), date.getMonth(), date.getDate())\n }\n return null\n}\n\n// Format a date object as `YYYY-MM-DD` format\nexport const formatYMD = date => {\n date = parseYMD(date)\n if (!date) {\n return null\n }\n const year = date.getFullYear()\n const month = `0${date.getMonth() + 1}`.slice(-2)\n const day = `0${date.getDate()}`.slice(-2)\n return `${year}-${month}-${day}`\n}\n\n// Given a locale (or locales), resolve the browser available locale\nexport const resolveLocale = (locales, calendar = CALENDAR_GREGORY) => /* istanbul ignore next */ {\n locales = concat(locales).filter(identity)\n const fmt = new Intl.DateTimeFormat(locales, { calendar })\n return fmt.resolvedOptions().locale\n}\n\n// Create a `Intl.DateTimeFormat` formatter function\nexport const createDateFormatter = (locale, options) => /* istanbul ignore next */ {\n const dtf = new Intl.DateTimeFormat(locale, options)\n return dtf.format\n}\n\n// Determine if two dates are the same date (ignoring time portion)\nexport const datesEqual = (date1, date2) => {\n // Returns true of the date portion of two date objects are equal\n // We don't compare the time portion\n return formatYMD(date1) === formatYMD(date2)\n}\n\n// --- Date \"math\" utility methods (for BCalendar component mainly) ---\n\nexport const firstDateOfMonth = date => {\n date = createDate(date)\n date.setDate(1)\n return date\n}\n\nexport const lastDateOfMonth = date => {\n date = createDate(date)\n date.setMonth(date.getMonth() + 1)\n date.setDate(0)\n return date\n}\n\nexport const addYears = (date, numberOfYears) => {\n date = createDate(date)\n const month = date.getMonth()\n date.setFullYear(date.getFullYear() + numberOfYears)\n // Handle Feb 29th for leap years\n if (date.getMonth() !== month) {\n date.setDate(0)\n }\n return date\n}\n\nexport const oneMonthAgo = date => {\n date = createDate(date)\n const month = date.getMonth()\n date.setMonth(month - 1)\n // Handle when days in month are different\n if (date.getMonth() === month) {\n date.setDate(0)\n }\n return date\n}\n\nexport const oneMonthAhead = date => {\n date = createDate(date)\n const month = date.getMonth()\n date.setMonth(month + 1)\n // Handle when days in month are different\n if (date.getMonth() === (month + 2) % 12) {\n date.setDate(0)\n }\n return date\n}\n\nexport const oneYearAgo = date => {\n return addYears(date, -1)\n}\n\nexport const oneYearAhead = date => {\n return addYears(date, 1)\n}\n\nexport const oneDecadeAgo = date => {\n return addYears(date, -10)\n}\n\nexport const oneDecadeAhead = date => {\n return addYears(date, 10)\n}\n\n// Helper function to constrain a date between two values\n// Always returns a `Date` object or `null` if no date passed\nexport const constrainDate = (date, min = null, max = null) => {\n // Ensure values are `Date` objects (or `null`)\n date = parseYMD(date)\n min = parseYMD(min) || date\n max = parseYMD(max) || date\n // Return a new `Date` object (or `null`)\n return date ? (date < min ? min : date > max ? max : date) : null\n}\n","// Localization utilities\nimport { RX_STRIP_LOCALE_MODS } from '../constants/regex'\nimport { arrayIncludes } from './array'\nimport { toString } from './string'\n\n// Languages that are RTL\nconst RTL_LANGS = [\n 'ar',\n 'az',\n 'ckb',\n 'fa',\n 'he',\n 'ks',\n 'lrc',\n 'mzn',\n 'ps',\n 'sd',\n 'te',\n 'ug',\n 'ur',\n 'yi'\n].map(locale => locale.toLowerCase())\n\n// Returns true if the locale is RTL\nexport const isLocaleRTL = locale => {\n // Determines if the locale is RTL (only single locale supported)\n const parts = toString(locale)\n .toLowerCase()\n .replace(RX_STRIP_LOCALE_MODS, '')\n .split('-')\n const locale1 = parts.slice(0, 2).join('-')\n const locale2 = parts[0]\n return arrayIncludes(RTL_LANGS, locale1) || arrayIncludes(RTL_LANGS, locale2)\n}\n","// SSR safe client-side ID attribute generation\n// ID's can only be generated client-side, after mount\n// `this._uid` is not synched between server and client\nimport { COMPONENT_UID_KEY, Vue } from '../vue'\nimport { PROP_TYPE_STRING } from '../constants/props'\nimport { makeProp } from '../utils/props'\n\n// --- Props ---\n\nexport const props = {\n id: makeProp(PROP_TYPE_STRING)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const idMixin = Vue.extend({\n props,\n data() {\n return {\n localId_: null\n }\n },\n computed: {\n safeId() {\n // Computed property that returns a dynamic function for creating the ID\n // Reacts to changes in both `.id` and `.localId_` and regenerates a new function\n const id = this.id || this.localId_\n\n // We return a function that accepts an optional suffix string\n // So this computed prop looks and works like a method\n // but benefits from Vue's computed prop caching\n const fn = suffix => {\n if (!id) {\n return null\n }\n suffix = String(suffix || '').replace(/\\s+/g, '_')\n return suffix ? id + '_' + suffix : id\n }\n return fn\n }\n },\n mounted() {\n // `mounted()` only occurs client-side\n this.$nextTick(() => {\n // Update DOM with auto-generated ID after mount\n // to prevent SSR hydration errors\n this.localId_ = `__BVID__${this[COMPONENT_UID_KEY]}`\n })\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_CALENDAR } from '../../constants/components'\nimport {\n CALENDAR_GREGORY,\n CALENDAR_LONG,\n CALENDAR_NARROW,\n CALENDAR_SHORT,\n DATE_FORMAT_2_DIGIT,\n DATE_FORMAT_NUMERIC\n} from '../../constants/date'\nimport { EVENT_NAME_CONTEXT, EVENT_NAME_SELECTED } from '../../constants/events'\nimport {\n CODE_DOWN,\n CODE_END,\n CODE_ENTER,\n CODE_HOME,\n CODE_LEFT,\n CODE_PAGEDOWN,\n CODE_PAGEUP,\n CODE_RIGHT,\n CODE_SPACE,\n CODE_UP\n} from '../../constants/key-codes'\nimport {\n PROP_TYPE_ARRAY_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_DATE_STRING,\n PROP_TYPE_FUNCTION,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_OBJECT,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport {\n SLOT_NAME_NAV_NEXT_DECADE,\n SLOT_NAME_NAV_NEXT_MONTH,\n SLOT_NAME_NAV_NEXT_YEAR,\n SLOT_NAME_NAV_PEV_DECADE,\n SLOT_NAME_NAV_PEV_MONTH,\n SLOT_NAME_NAV_PEV_YEAR,\n SLOT_NAME_NAV_THIS_MONTH\n} from '../../constants/slots'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport {\n createDate,\n createDateFormatter,\n constrainDate,\n datesEqual,\n firstDateOfMonth,\n formatYMD,\n lastDateOfMonth,\n oneMonthAgo,\n oneMonthAhead,\n oneYearAgo,\n oneYearAhead,\n oneDecadeAgo,\n oneDecadeAhead,\n parseYMD,\n resolveLocale\n} from '../../utils/date'\nimport { attemptBlur, attemptFocus, requestAF } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isArray, isPlainObject, isString } from '../../utils/inspect'\nimport { isLocaleRTL } from '../../utils/locale'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { mathMax } from '../../utils/math'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { sortKeys } from '../../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport {\n BIconChevronLeft,\n BIconChevronDoubleLeft,\n BIconChevronBarLeft,\n BIconCircleFill\n} from '../../icons/icons'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', { type: PROP_TYPE_DATE_STRING })\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ariaControls: makeProp(PROP_TYPE_STRING),\n // Makes calendar the full width of its parent container\n block: makeProp(PROP_TYPE_BOOLEAN, false),\n dateDisabledFn: makeProp(PROP_TYPE_FUNCTION),\n // `Intl.DateTimeFormat` object\n dateFormatOptions: makeProp(PROP_TYPE_OBJECT, {\n year: DATE_FORMAT_NUMERIC,\n month: CALENDAR_LONG,\n day: DATE_FORMAT_NUMERIC,\n weekday: CALENDAR_LONG\n }),\n // Function to set a class of (classes) on the date cell\n // if passed a string or an array\n // TODO:\n // If the function returns an object, look for class prop for classes,\n // and other props for handling events/details/descriptions\n dateInfoFn: makeProp(PROP_TYPE_FUNCTION),\n // 'ltr', 'rtl', or `null` (for auto detect)\n direction: makeProp(PROP_TYPE_STRING),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n headerTag: makeProp(PROP_TYPE_STRING, 'header'),\n // When `true`, renders a comment node, but keeps the component instance active\n // Mainly for <b-form-date>, so that we can get the component's value and locale\n // But we might just use separate date formatters, using the resolved locale\n // (adjusted for the gregorian calendar)\n hidden: makeProp(PROP_TYPE_BOOLEAN, false),\n // When `true` makes the selected date header `sr-only`\n hideHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n // This specifies the calendar year/month/day that will be shown when\n // first opening the datepicker if no v-model value is provided\n // Default is the current date (or `min`/`max`)\n initialDate: makeProp(PROP_TYPE_DATE_STRING),\n // Labels for buttons and keyboard shortcuts\n labelCalendar: makeProp(PROP_TYPE_STRING, 'Calendar'),\n labelCurrentMonth: makeProp(PROP_TYPE_STRING, 'Current month'),\n labelHelp: makeProp(PROP_TYPE_STRING, 'Use cursor keys to navigate calendar dates'),\n labelNav: makeProp(PROP_TYPE_STRING, 'Calendar navigation'),\n labelNextDecade: makeProp(PROP_TYPE_STRING, 'Next decade'),\n labelNextMonth: makeProp(PROP_TYPE_STRING, 'Next month'),\n labelNextYear: makeProp(PROP_TYPE_STRING, 'Next year'),\n labelNoDateSelected: makeProp(PROP_TYPE_STRING, 'No date selected'),\n labelPrevDecade: makeProp(PROP_TYPE_STRING, 'Previous decade'),\n labelPrevMonth: makeProp(PROP_TYPE_STRING, 'Previous month'),\n labelPrevYear: makeProp(PROP_TYPE_STRING, 'Previous year'),\n labelSelected: makeProp(PROP_TYPE_STRING, 'Selected date'),\n labelToday: makeProp(PROP_TYPE_STRING, 'Today'),\n // Locale(s) to use\n // Default is to use page/browser default setting\n locale: makeProp(PROP_TYPE_ARRAY_STRING),\n max: makeProp(PROP_TYPE_DATE_STRING),\n min: makeProp(PROP_TYPE_DATE_STRING),\n // Variant color to use for the navigation buttons\n navButtonVariant: makeProp(PROP_TYPE_STRING, 'secondary'),\n // Disable highlighting today's date\n noHighlightToday: makeProp(PROP_TYPE_BOOLEAN, false),\n noKeyNav: makeProp(PROP_TYPE_BOOLEAN, false),\n readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n roleDescription: makeProp(PROP_TYPE_STRING),\n // Variant color to use for the selected date\n selectedVariant: makeProp(PROP_TYPE_STRING, 'primary'),\n // When `true` enables the decade navigation buttons\n showDecadeNav: makeProp(PROP_TYPE_BOOLEAN, false),\n // Day of week to start calendar on\n // `0` (Sunday), `1` (Monday), ... `6` (Saturday)\n startWeekday: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n // Variant color to use for today's date (defaults to `selectedVariant`)\n todayVariant: makeProp(PROP_TYPE_STRING),\n // Always return the `v-model` value as a date object\n valueAsDate: makeProp(PROP_TYPE_BOOLEAN, false),\n // Format of the weekday names at the top of the calendar\n // `short` is typically a 3 letter abbreviation,\n // `narrow` is typically a single letter\n // `long` is the full week day name\n // Although some locales may override this (i.e `ar`, etc.)\n weekdayHeaderFormat: makeProp(PROP_TYPE_STRING, CALENDAR_SHORT, value => {\n return arrayIncludes([CALENDAR_LONG, CALENDAR_SHORT, CALENDAR_NARROW], value)\n }),\n // Has no effect if prop `block` is set\n width: makeProp(PROP_TYPE_STRING, '270px')\n }),\n NAME_CALENDAR\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCalendar = Vue.extend({\n name: NAME_CALENDAR,\n // Mixin order is important!\n mixins: [attrsMixin, idMixin, modelMixin, normalizeSlotMixin],\n props,\n data() {\n const selected = formatYMD(this[MODEL_PROP_NAME]) || ''\n return {\n // Selected date\n selectedYMD: selected,\n // Date in calendar grid that has `tabindex` of `0`\n activeYMD:\n selected ||\n formatYMD(constrainDate(this.initialDate || this.getToday()), this.min, this.max),\n // Will be true if the calendar grid has/contains focus\n gridHasFocus: false,\n // Flag to enable the `aria-live` region(s) after mount\n // to prevent screen reader \"outbursts\" when mounting\n isLive: false\n }\n },\n computed: {\n valueId() {\n return this.safeId()\n },\n widgetId() {\n return this.safeId('_calendar-wrapper_')\n },\n navId() {\n return this.safeId('_calendar-nav_')\n },\n gridId() {\n return this.safeId('_calendar-grid_')\n },\n gridCaptionId() {\n return this.safeId('_calendar-grid-caption_')\n },\n gridHelpId() {\n return this.safeId('_calendar-grid-help_')\n },\n activeId() {\n return this.activeYMD ? this.safeId(`_cell-${this.activeYMD}_`) : null\n },\n // TODO: Use computed props to convert `YYYY-MM-DD` to `Date` object\n selectedDate() {\n // Selected as a `Date` object\n return parseYMD(this.selectedYMD)\n },\n activeDate() {\n // Active as a `Date` object\n return parseYMD(this.activeYMD)\n },\n computedMin() {\n return parseYMD(this.min)\n },\n computedMax() {\n return parseYMD(this.max)\n },\n computedWeekStarts() {\n // `startWeekday` is a prop (constrained to `0` through `6`)\n return mathMax(toInteger(this.startWeekday, 0), 0) % 7\n },\n computedLocale() {\n // Returns the resolved locale used by the calendar\n return resolveLocale(concat(this.locale).filter(identity), CALENDAR_GREGORY)\n },\n computedDateDisabledFn() {\n const { dateDisabledFn } = this\n return hasPropFunction(dateDisabledFn) ? dateDisabledFn : () => false\n },\n // TODO: Change `dateInfoFn` to handle events and notes as well as classes\n computedDateInfoFn() {\n const { dateInfoFn } = this\n return hasPropFunction(dateInfoFn) ? dateInfoFn : () => ({})\n },\n calendarLocale() {\n // This locale enforces the gregorian calendar (for use in formatter functions)\n // Needed because IE 11 resolves `ar-IR` as islamic-civil calendar\n // and IE 11 (and some other browsers) do not support the `calendar` option\n // And we currently only support the gregorian calendar\n const fmt = new Intl.DateTimeFormat(this.computedLocale, { calendar: CALENDAR_GREGORY })\n const calendar = fmt.resolvedOptions().calendar\n let locale = fmt.resolvedOptions().locale\n /* istanbul ignore if: mainly for IE 11 and a few other browsers, hard to test in JSDOM */\n if (calendar !== CALENDAR_GREGORY) {\n // Ensure the locale requests the gregorian calendar\n // Mainly for IE 11, and currently we can't handle non-gregorian calendars\n // TODO: Should we always return this value?\n locale = locale.replace(/-u-.+$/i, '').concat('-u-ca-gregory')\n }\n return locale\n },\n calendarYear() {\n return this.activeDate.getFullYear()\n },\n calendarMonth() {\n return this.activeDate.getMonth()\n },\n calendarFirstDay() {\n // We set the time for this date to 12pm to work around\n // date formatting issues in Firefox and Safari\n // See: https://github.com/bootstrap-vue/bootstrap-vue/issues/5818\n return createDate(this.calendarYear, this.calendarMonth, 1, 12)\n },\n calendarDaysInMonth() {\n // We create a new date as to not mutate the original\n const date = createDate(this.calendarFirstDay)\n date.setMonth(date.getMonth() + 1, 0)\n return date.getDate()\n },\n computedVariant() {\n return `btn-${this.selectedVariant || 'primary'}`\n },\n computedTodayVariant() {\n return `btn-outline-${this.todayVariant || this.selectedVariant || 'primary'}`\n },\n computedNavButtonVariant() {\n return `btn-outline-${this.navButtonVariant || 'primary'}`\n },\n isRTL() {\n // `true` if the language requested is RTL\n const dir = toString(this.direction).toLowerCase()\n if (dir === 'rtl') {\n /* istanbul ignore next */\n return true\n } else if (dir === 'ltr') {\n /* istanbul ignore next */\n return false\n }\n return isLocaleRTL(this.computedLocale)\n },\n context() {\n const { selectedYMD, activeYMD } = this\n const selectedDate = parseYMD(selectedYMD)\n const activeDate = parseYMD(activeYMD)\n return {\n // The current value of the `v-model`\n selectedYMD,\n selectedDate,\n selectedFormatted: selectedDate\n ? this.formatDateString(selectedDate)\n : this.labelNoDateSelected,\n // Which date cell is considered active due to navigation\n activeYMD,\n activeDate,\n activeFormatted: activeDate ? this.formatDateString(activeDate) : '',\n // `true` if the date is disabled (when using keyboard navigation)\n disabled: this.dateDisabled(activeDate),\n // Locales used in formatting dates\n locale: this.computedLocale,\n calendarLocale: this.calendarLocale,\n rtl: this.isRTL\n }\n },\n // Computed props that return a function reference\n dateOutOfRange() {\n // Check whether a date is within the min/max range\n // Returns a new function ref if the pops change\n // We do this as we need to trigger the calendar computed prop\n // to update when these props update\n const { computedMin: min, computedMax: max } = this\n return date => {\n // Handle both `YYYY-MM-DD` and `Date` objects\n date = parseYMD(date)\n return (min && date < min) || (max && date > max)\n }\n },\n dateDisabled() {\n // Returns a function for validating if a date is within range\n // We grab this variables first to ensure a new function ref\n // is generated when the props value changes\n // We do this as we need to trigger the calendar computed prop\n // to update when these props update\n const rangeFn = this.dateOutOfRange\n // Return the function ref\n return date => {\n // Handle both `YYYY-MM-DD` and `Date` objects\n date = parseYMD(date)\n const ymd = formatYMD(date)\n return !!(rangeFn(date) || this.computedDateDisabledFn(ymd, date))\n }\n },\n // Computed props that return date formatter functions\n formatDateString() {\n // Returns a date formatter function\n return createDateFormatter(this.calendarLocale, {\n // Ensure we have year, month, day shown for screen readers/ARIA\n // If users really want to leave one of these out, they can\n // pass `undefined` for the property value\n year: DATE_FORMAT_NUMERIC,\n month: DATE_FORMAT_2_DIGIT,\n day: DATE_FORMAT_2_DIGIT,\n // Merge in user supplied options\n ...this.dateFormatOptions,\n // Ensure hours/minutes/seconds are not shown\n // As we do not support the time portion (yet)\n hour: undefined,\n minute: undefined,\n second: undefined,\n // Ensure calendar is gregorian\n calendar: CALENDAR_GREGORY\n })\n },\n formatYearMonth() {\n // Returns a date formatter function\n return createDateFormatter(this.calendarLocale, {\n year: DATE_FORMAT_NUMERIC,\n month: CALENDAR_LONG,\n calendar: CALENDAR_GREGORY\n })\n },\n formatWeekdayName() {\n // Long weekday name for weekday header aria-label\n return createDateFormatter(this.calendarLocale, {\n weekday: CALENDAR_LONG,\n calendar: CALENDAR_GREGORY\n })\n },\n formatWeekdayNameShort() {\n // Weekday header cell format\n // defaults to 'short' 3 letter days, where possible\n return createDateFormatter(this.calendarLocale, {\n weekday: this.weekdayHeaderFormat || CALENDAR_SHORT,\n calendar: CALENDAR_GREGORY\n })\n },\n formatDay() {\n // Calendar grid day number formatter\n // We don't use DateTimeFormatter here as it can place extra\n // character(s) after the number (i.e the `zh` locale)\n const nf = new Intl.NumberFormat([this.computedLocale], {\n style: 'decimal',\n minimumIntegerDigits: 1,\n minimumFractionDigits: 0,\n maximumFractionDigits: 0,\n notation: 'standard'\n })\n // Return a formatter function instance\n return date => nf.format(date.getDate())\n },\n // Disabled states for the nav buttons\n prevDecadeDisabled() {\n const min = this.computedMin\n return this.disabled || (min && lastDateOfMonth(oneDecadeAgo(this.activeDate)) < min)\n },\n prevYearDisabled() {\n const min = this.computedMin\n return this.disabled || (min && lastDateOfMonth(oneYearAgo(this.activeDate)) < min)\n },\n prevMonthDisabled() {\n const min = this.computedMin\n return this.disabled || (min && lastDateOfMonth(oneMonthAgo(this.activeDate)) < min)\n },\n thisMonthDisabled() {\n // TODO: We could/should check if today is out of range\n return this.disabled\n },\n nextMonthDisabled() {\n const max = this.computedMax\n return this.disabled || (max && firstDateOfMonth(oneMonthAhead(this.activeDate)) > max)\n },\n nextYearDisabled() {\n const max = this.computedMax\n return this.disabled || (max && firstDateOfMonth(oneYearAhead(this.activeDate)) > max)\n },\n nextDecadeDisabled() {\n const max = this.computedMax\n return this.disabled || (max && firstDateOfMonth(oneDecadeAhead(this.activeDate)) > max)\n },\n // Calendar dates generation\n calendar() {\n const matrix = []\n const firstDay = this.calendarFirstDay\n const calendarYear = firstDay.getFullYear()\n const calendarMonth = firstDay.getMonth()\n const daysInMonth = this.calendarDaysInMonth\n const startIndex = firstDay.getDay() // `0`..`6`\n const weekOffset = (this.computedWeekStarts > startIndex ? 7 : 0) - this.computedWeekStarts\n // Build the calendar matrix\n let currentDay = 0 - weekOffset - startIndex\n for (let week = 0; week < 6 && currentDay < daysInMonth; week++) {\n // For each week\n matrix[week] = []\n // The following could be a map function\n for (let j = 0; j < 7; j++) {\n // For each day in week\n currentDay++\n const date = createDate(calendarYear, calendarMonth, currentDay)\n const month = date.getMonth()\n const dayYMD = formatYMD(date)\n const dayDisabled = this.dateDisabled(date)\n // TODO: This could be a normalizer method\n let dateInfo = this.computedDateInfoFn(dayYMD, parseYMD(dayYMD))\n dateInfo =\n isString(dateInfo) || isArray(dateInfo)\n ? /* istanbul ignore next */ { class: dateInfo }\n : isPlainObject(dateInfo)\n ? { class: '', ...dateInfo }\n : /* istanbul ignore next */ { class: '' }\n matrix[week].push({\n ymd: dayYMD,\n // Cell content\n day: this.formatDay(date),\n label: this.formatDateString(date),\n // Flags for styling\n isThisMonth: month === calendarMonth,\n isDisabled: dayDisabled,\n // TODO: Handle other dateInfo properties such as notes/events\n info: dateInfo\n })\n }\n }\n return matrix\n },\n calendarHeadings() {\n return this.calendar[0].map(d => {\n return {\n text: this.formatWeekdayNameShort(parseYMD(d.ymd)),\n label: this.formatWeekdayName(parseYMD(d.ymd))\n }\n })\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue, oldValue) {\n const selected = formatYMD(newValue) || ''\n const old = formatYMD(oldValue) || ''\n if (!datesEqual(selected, old)) {\n this.activeYMD = selected || this.activeYMD\n this.selectedYMD = selected\n }\n },\n selectedYMD(newYMD, oldYMD) {\n // TODO:\n // Should we compare to `formatYMD(this.value)` and emit\n // only if they are different?\n if (newYMD !== oldYMD) {\n this.$emit(MODEL_EVENT_NAME, this.valueAsDate ? parseYMD(newYMD) || null : newYMD || '')\n }\n },\n context(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(EVENT_NAME_CONTEXT, newValue)\n }\n },\n hidden(newValue) {\n // Reset the active focused day when hidden\n this.activeYMD =\n this.selectedYMD ||\n formatYMD(this[MODEL_PROP_NAME] || this.constrainDate(this.initialDate || this.getToday()))\n // Enable/disable the live regions\n this.setLive(!newValue)\n }\n },\n created() {\n this.$nextTick(() => {\n this.$emit(EVENT_NAME_CONTEXT, this.context)\n })\n },\n mounted() {\n this.setLive(true)\n },\n /* istanbul ignore next */\n activated() {\n this.setLive(true)\n },\n /* istanbul ignore next */\n deactivated() {\n this.setLive(false)\n },\n beforeDestroy() {\n this.setLive(false)\n },\n methods: {\n // Public method(s)\n focus() {\n if (!this.disabled) {\n attemptFocus(this.$refs.grid)\n }\n },\n blur() {\n if (!this.disabled) {\n attemptBlur(this.$refs.grid)\n }\n },\n // Private methods\n setLive(on) {\n if (on) {\n this.$nextTick(() => {\n requestAF(() => {\n this.isLive = true\n })\n })\n } else {\n this.isLive = false\n }\n },\n getToday() {\n return parseYMD(createDate())\n },\n constrainDate(date) {\n // Constrains a date between min and max\n // returns a new `Date` object instance\n return constrainDate(date, this.computedMin, this.computedMax)\n },\n emitSelected(date) {\n // Performed in a `$nextTick()` to (probably) ensure\n // the input event has emitted first\n this.$nextTick(() => {\n this.$emit(EVENT_NAME_SELECTED, formatYMD(date) || '', parseYMD(date) || null)\n })\n },\n // Event handlers\n setGridFocusFlag(event) {\n // Sets the gridHasFocus flag to make date \"button\" look focused\n this.gridHasFocus = !this.disabled && event.type === 'focus'\n },\n onKeydownWrapper(event) {\n // Calendar keyboard navigation\n // Handles PAGEUP/PAGEDOWN/END/HOME/LEFT/UP/RIGHT/DOWN\n // Focuses grid after updating\n if (this.noKeyNav) {\n /* istanbul ignore next */\n return\n }\n const { altKey, ctrlKey, keyCode } = event\n if (\n !arrayIncludes(\n [\n CODE_PAGEUP,\n CODE_PAGEDOWN,\n CODE_END,\n CODE_HOME,\n CODE_LEFT,\n CODE_UP,\n CODE_RIGHT,\n CODE_DOWN\n ],\n keyCode\n )\n ) {\n /* istanbul ignore next */\n return\n }\n stopEvent(event)\n let activeDate = createDate(this.activeDate)\n let checkDate = createDate(this.activeDate)\n const day = activeDate.getDate()\n const constrainedToday = this.constrainDate(this.getToday())\n const isRTL = this.isRTL\n if (keyCode === CODE_PAGEUP) {\n // PAGEUP - Previous month/year\n activeDate = (altKey ? (ctrlKey ? oneDecadeAgo : oneYearAgo) : oneMonthAgo)(activeDate)\n // We check the first day of month to be in rage\n checkDate = createDate(activeDate)\n checkDate.setDate(1)\n } else if (keyCode === CODE_PAGEDOWN) {\n // PAGEDOWN - Next month/year\n activeDate = (altKey ? (ctrlKey ? oneDecadeAhead : oneYearAhead) : oneMonthAhead)(\n activeDate\n )\n // We check the last day of month to be in rage\n checkDate = createDate(activeDate)\n checkDate.setMonth(checkDate.getMonth() + 1)\n checkDate.setDate(0)\n } else if (keyCode === CODE_LEFT) {\n // LEFT - Previous day (or next day for RTL)\n activeDate.setDate(day + (isRTL ? 1 : -1))\n activeDate = this.constrainDate(activeDate)\n checkDate = activeDate\n } else if (keyCode === CODE_RIGHT) {\n // RIGHT - Next day (or previous day for RTL)\n activeDate.setDate(day + (isRTL ? -1 : 1))\n activeDate = this.constrainDate(activeDate)\n checkDate = activeDate\n } else if (keyCode === CODE_UP) {\n // UP - Previous week\n activeDate.setDate(day - 7)\n activeDate = this.constrainDate(activeDate)\n checkDate = activeDate\n } else if (keyCode === CODE_DOWN) {\n // DOWN - Next week\n activeDate.setDate(day + 7)\n activeDate = this.constrainDate(activeDate)\n checkDate = activeDate\n } else if (keyCode === CODE_HOME) {\n // HOME - Today\n activeDate = constrainedToday\n checkDate = activeDate\n } else if (keyCode === CODE_END) {\n // END - Selected date, or today if no selected date\n activeDate = parseYMD(this.selectedDate) || constrainedToday\n checkDate = activeDate\n }\n if (!this.dateOutOfRange(checkDate) && !datesEqual(activeDate, this.activeDate)) {\n // We only jump to date if within min/max\n // We don't check for individual disabled dates though (via user function)\n this.activeYMD = formatYMD(activeDate)\n }\n // Ensure grid is focused\n this.focus()\n },\n onKeydownGrid(event) {\n // Pressing enter/space on grid to select active date\n const keyCode = event.keyCode\n const activeDate = this.activeDate\n if (keyCode === CODE_ENTER || keyCode === CODE_SPACE) {\n stopEvent(event)\n if (!this.disabled && !this.readonly && !this.dateDisabled(activeDate)) {\n this.selectedYMD = formatYMD(activeDate)\n this.emitSelected(activeDate)\n }\n // Ensure grid is focused\n this.focus()\n }\n },\n onClickDay(day) {\n // Clicking on a date \"button\" to select it\n const { selectedDate, activeDate } = this\n const clickedDate = parseYMD(day.ymd)\n if (!this.disabled && !day.isDisabled && !this.dateDisabled(clickedDate)) {\n if (!this.readonly) {\n // If readonly mode, we don't set the selected date, just the active date\n // If the clicked date is equal to the already selected date, we don't update the model\n this.selectedYMD = formatYMD(\n datesEqual(clickedDate, selectedDate) ? selectedDate : clickedDate\n )\n this.emitSelected(clickedDate)\n }\n this.activeYMD = formatYMD(\n datesEqual(clickedDate, activeDate) ? activeDate : createDate(clickedDate)\n )\n // Ensure grid is focused\n this.focus()\n }\n },\n gotoPrevDecade() {\n this.activeYMD = formatYMD(this.constrainDate(oneDecadeAgo(this.activeDate)))\n },\n gotoPrevYear() {\n this.activeYMD = formatYMD(this.constrainDate(oneYearAgo(this.activeDate)))\n },\n gotoPrevMonth() {\n this.activeYMD = formatYMD(this.constrainDate(oneMonthAgo(this.activeDate)))\n },\n gotoCurrentMonth() {\n // TODO: Maybe this goto date should be configurable?\n this.activeYMD = formatYMD(this.constrainDate(this.getToday()))\n },\n gotoNextMonth() {\n this.activeYMD = formatYMD(this.constrainDate(oneMonthAhead(this.activeDate)))\n },\n gotoNextYear() {\n this.activeYMD = formatYMD(this.constrainDate(oneYearAhead(this.activeDate)))\n },\n gotoNextDecade() {\n this.activeYMD = formatYMD(this.constrainDate(oneDecadeAhead(this.activeDate)))\n },\n onHeaderClick() {\n if (!this.disabled) {\n this.activeYMD = this.selectedYMD || formatYMD(this.getToday())\n this.focus()\n }\n }\n },\n render(h) {\n // If `hidden` prop is set, render just a placeholder node\n if (this.hidden) {\n return h()\n }\n\n const {\n valueId,\n widgetId,\n navId,\n gridId,\n gridCaptionId,\n gridHelpId,\n activeId,\n disabled,\n noKeyNav,\n isLive,\n isRTL,\n activeYMD,\n selectedYMD,\n safeId\n } = this\n const hideDecadeNav = !this.showDecadeNav\n const todayYMD = formatYMD(this.getToday())\n const highlightToday = !this.noHighlightToday\n\n // Header showing current selected date\n let $header = h(\n 'output',\n {\n staticClass: 'form-control form-control-sm text-center',\n class: { 'text-muted': disabled, readonly: this.readonly || disabled },\n attrs: {\n id: valueId,\n for: gridId,\n role: 'status',\n tabindex: disabled ? null : '-1',\n // Mainly for testing purposes, as we do not know\n // the exact format `Intl` will format the date string\n 'data-selected': toString(selectedYMD),\n // We wait until after mount to enable `aria-live`\n // to prevent initial announcement on page render\n 'aria-live': isLive ? 'polite' : 'off',\n 'aria-atomic': isLive ? 'true' : null\n },\n on: {\n // Transfer focus/click to focus grid\n // and focus active date (or today if no selection)\n click: this.onHeaderClick,\n focus: this.onHeaderClick\n }\n },\n this.selectedDate\n ? [\n // We use `bdi` elements here in case the label doesn't match the locale\n // Although IE 11 does not deal with <BDI> at all (equivalent to a span)\n h('bdi', { staticClass: 'sr-only' }, ` (${toString(this.labelSelected)}) `),\n h('bdi', this.formatDateString(this.selectedDate))\n ]\n : this.labelNoDateSelected || '\\u00a0' // ' '\n )\n $header = h(\n this.headerTag,\n {\n staticClass: 'b-calendar-header',\n class: { 'sr-only': this.hideHeader },\n attrs: { title: this.selectedDate ? this.labelSelectedDate || null : null }\n },\n [$header]\n )\n\n // Content for the date navigation buttons\n const navScope = { isRTL }\n const navProps = { shiftV: 0.5 }\n const navPrevProps = { ...navProps, flipH: isRTL }\n const navNextProps = { ...navProps, flipH: !isRTL }\n const $prevDecadeIcon =\n this.normalizeSlot(SLOT_NAME_NAV_PEV_DECADE, navScope) ||\n h(BIconChevronBarLeft, { props: navPrevProps })\n const $prevYearIcon =\n this.normalizeSlot(SLOT_NAME_NAV_PEV_YEAR, navScope) ||\n h(BIconChevronDoubleLeft, { props: navPrevProps })\n const $prevMonthIcon =\n this.normalizeSlot(SLOT_NAME_NAV_PEV_MONTH, navScope) ||\n h(BIconChevronLeft, { props: navPrevProps })\n const $thisMonthIcon =\n this.normalizeSlot(SLOT_NAME_NAV_THIS_MONTH, navScope) ||\n h(BIconCircleFill, { props: navProps })\n const $nextMonthIcon =\n this.normalizeSlot(SLOT_NAME_NAV_NEXT_MONTH, navScope) ||\n h(BIconChevronLeft, { props: navNextProps })\n const $nextYearIcon =\n this.normalizeSlot(SLOT_NAME_NAV_NEXT_YEAR, navScope) ||\n h(BIconChevronDoubleLeft, { props: navNextProps })\n const $nextDecadeIcon =\n this.normalizeSlot(SLOT_NAME_NAV_NEXT_DECADE, navScope) ||\n h(BIconChevronBarLeft, { props: navNextProps })\n\n // Utility to create the date navigation buttons\n const makeNavBtn = (content, label, handler, btnDisabled, shortcut) => {\n return h(\n 'button',\n {\n staticClass: 'btn btn-sm border-0 flex-fill',\n class: [this.computedNavButtonVariant, { disabled: btnDisabled }],\n attrs: {\n title: label || null,\n type: 'button',\n tabindex: noKeyNav ? '-1' : null,\n 'aria-label': label || null,\n 'aria-disabled': btnDisabled ? 'true' : null,\n 'aria-keyshortcuts': shortcut || null\n },\n on: btnDisabled ? {} : { click: handler }\n },\n [h('div', { attrs: { 'aria-hidden': 'true' } }, [content])]\n )\n }\n\n // Generate the date navigation buttons\n const $nav = h(\n 'div',\n {\n staticClass: 'b-calendar-nav d-flex',\n attrs: {\n id: navId,\n role: 'group',\n tabindex: noKeyNav ? '-1' : null,\n 'aria-hidden': disabled ? 'true' : null,\n 'aria-label': this.labelNav || null,\n 'aria-controls': gridId\n }\n },\n [\n hideDecadeNav\n ? h()\n : makeNavBtn(\n $prevDecadeIcon,\n this.labelPrevDecade,\n this.gotoPrevDecade,\n this.prevDecadeDisabled,\n 'Ctrl+Alt+PageDown'\n ),\n makeNavBtn(\n $prevYearIcon,\n this.labelPrevYear,\n this.gotoPrevYear,\n this.prevYearDisabled,\n 'Alt+PageDown'\n ),\n makeNavBtn(\n $prevMonthIcon,\n this.labelPrevMonth,\n this.gotoPrevMonth,\n this.prevMonthDisabled,\n 'PageDown'\n ),\n makeNavBtn(\n $thisMonthIcon,\n this.labelCurrentMonth,\n this.gotoCurrentMonth,\n this.thisMonthDisabled,\n 'Home'\n ),\n makeNavBtn(\n $nextMonthIcon,\n this.labelNextMonth,\n this.gotoNextMonth,\n this.nextMonthDisabled,\n 'PageUp'\n ),\n makeNavBtn(\n $nextYearIcon,\n this.labelNextYear,\n this.gotoNextYear,\n this.nextYearDisabled,\n 'Alt+PageUp'\n ),\n hideDecadeNav\n ? h()\n : makeNavBtn(\n $nextDecadeIcon,\n this.labelNextDecade,\n this.gotoNextDecade,\n this.nextDecadeDisabled,\n 'Ctrl+Alt+PageUp'\n )\n ]\n )\n\n // Caption for calendar grid\n const $gridCaption = h(\n 'div',\n {\n staticClass: 'b-calendar-grid-caption text-center font-weight-bold',\n class: { 'text-muted': disabled },\n attrs: {\n id: gridCaptionId,\n 'aria-live': isLive ? 'polite' : null,\n 'aria-atomic': isLive ? 'true' : null\n },\n key: 'grid-caption'\n },\n this.formatYearMonth(this.calendarFirstDay)\n )\n\n // Calendar weekday headings\n const $gridWeekDays = h(\n 'div',\n {\n staticClass: 'b-calendar-grid-weekdays row no-gutters border-bottom',\n attrs: { 'aria-hidden': 'true' }\n },\n this.calendarHeadings.map((d, idx) => {\n return h(\n 'small',\n {\n staticClass: 'col text-truncate',\n class: { 'text-muted': disabled },\n attrs: {\n title: d.label === d.text ? null : d.label,\n 'aria-label': d.label\n },\n key: idx\n },\n d.text\n )\n })\n )\n\n // Calendar day grid\n let $gridBody = this.calendar.map(week => {\n const $cells = week.map((day, dIndex) => {\n const isSelected = day.ymd === selectedYMD\n const isActive = day.ymd === activeYMD\n const isToday = day.ymd === todayYMD\n const idCell = safeId(`_cell-${day.ymd}_`)\n // \"fake\" button\n const $btn = h(\n 'span',\n {\n staticClass: 'btn border-0 rounded-circle text-nowrap',\n // Should we add some classes to signify if today/selected/etc?\n class: {\n // Give the fake button a focus ring\n focus: isActive && this.gridHasFocus,\n // Styling\n disabled: day.isDisabled || disabled,\n active: isSelected, // makes the button look \"pressed\"\n // Selected date style (need to computed from variant)\n [this.computedVariant]: isSelected,\n // Today day style (if not selected), same variant color as selected date\n [this.computedTodayVariant]:\n isToday && highlightToday && !isSelected && day.isThisMonth,\n // Non selected/today styling\n 'btn-outline-light': !(isToday && highlightToday) && !isSelected && !isActive,\n 'btn-light': !(isToday && highlightToday) && !isSelected && isActive,\n // Text styling\n 'text-muted': !day.isThisMonth && !isSelected,\n 'text-dark':\n !(isToday && highlightToday) && !isSelected && !isActive && day.isThisMonth,\n 'font-weight-bold': (isSelected || day.isThisMonth) && !day.isDisabled\n },\n on: { click: () => this.onClickDay(day) }\n },\n day.day\n )\n return h(\n 'div', // Cell with button\n {\n staticClass: 'col p-0',\n class: day.isDisabled ? 'bg-light' : day.info.class || '',\n attrs: {\n id: idCell,\n role: 'button',\n 'data-date': day.ymd, // Primarily for testing purposes\n // Only days in the month are presented as buttons to screen readers\n 'aria-hidden': day.isThisMonth ? null : 'true',\n 'aria-disabled': day.isDisabled || disabled ? 'true' : null,\n 'aria-label': [\n day.label,\n isSelected ? `(${this.labelSelected})` : null,\n isToday ? `(${this.labelToday})` : null\n ]\n .filter(identity)\n .join(' '),\n // NVDA doesn't convey `aria-selected`, but does `aria-current`,\n // ChromeVox doesn't convey `aria-current`, but does `aria-selected`,\n // so we set both attributes for robustness\n 'aria-selected': isSelected ? 'true' : null,\n 'aria-current': isSelected ? 'date' : null\n },\n key: dIndex\n },\n [$btn]\n )\n })\n // Return the week \"row\"\n // We use the first day of the weeks YMD value as a\n // key for efficient DOM patching / element re-use\n return h(\n 'div',\n {\n staticClass: 'row no-gutters',\n key: week[0].ymd\n },\n $cells\n )\n })\n $gridBody = h(\n 'div',\n {\n // A key is only required on the body if we add in transition support\n staticClass: 'b-calendar-grid-body',\n style: disabled ? { pointerEvents: 'none' } : {}\n // key: this.activeYMD.slice(0, -3)\n },\n $gridBody\n )\n\n const $gridHelp = h(\n 'div',\n {\n staticClass: 'b-calendar-grid-help border-top small text-muted text-center bg-light',\n attrs: {\n id: gridHelpId\n }\n },\n [h('div', { staticClass: 'small' }, this.labelHelp)]\n )\n\n const $grid = h(\n 'div',\n {\n staticClass: 'b-calendar-grid form-control h-auto text-center',\n attrs: {\n id: gridId,\n role: 'application',\n tabindex: noKeyNav ? '-1' : disabled ? null : '0',\n 'data-month': activeYMD.slice(0, -3), // `YYYY-MM`, mainly for testing\n 'aria-roledescription': this.labelCalendar || null,\n 'aria-labelledby': gridCaptionId,\n 'aria-describedby': gridHelpId,\n // `aria-readonly` is not considered valid on `role=\"application\"`\n // https://www.w3.org/TR/wai-aria-1.1/#aria-readonly\n // 'aria-readonly': this.readonly && !disabled ? 'true' : null,\n 'aria-disabled': disabled ? 'true' : null,\n 'aria-activedescendant': activeId\n },\n on: {\n keydown: this.onKeydownGrid,\n focus: this.setGridFocusFlag,\n blur: this.setGridFocusFlag\n },\n ref: 'grid'\n },\n [$gridCaption, $gridWeekDays, $gridBody, $gridHelp]\n )\n\n // Optional bottom slot\n let $slot = this.normalizeSlot()\n $slot = $slot ? h('footer', { staticClass: 'b-calendar-footer' }, $slot) : h()\n\n const $widget = h(\n 'div',\n {\n staticClass: 'b-calendar-inner',\n style: this.block ? {} : { width: this.width },\n attrs: {\n id: widgetId,\n dir: isRTL ? 'rtl' : 'ltr',\n lang: this.computedLocale || null,\n role: 'group',\n 'aria-disabled': disabled ? 'true' : null,\n // If datepicker controls an input, this will specify the ID of the input\n 'aria-controls': this.ariaControls || null,\n // This should be a prop (so it can be changed to Date picker, etc, localized\n 'aria-roledescription': this.roleDescription || null,\n 'aria-describedby': [\n // Should the attr (if present) go last?\n // Or should this attr be a prop?\n this.bvAttrs['aria-describedby'],\n valueId,\n gridHelpId\n ]\n .filter(identity)\n .join(' ')\n },\n on: {\n keydown: this.onKeydownWrapper\n }\n },\n [$header, $nav, $grid, $slot]\n )\n\n // Wrap in an outer div that can be styled\n return h('div', { staticClass: 'b-calendar', class: { 'd-block': this.block } }, [$widget])\n }\n})\n","import { BCalendar } from './calendar'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst CalendarPlugin = /*#__PURE__*/ pluginFactory({\n components: { BCalendar }\n})\n\nexport { CalendarPlugin, BCalendar }\n","import { Vue } from '../vue'\nimport { NAME_CARD } from '../constants/components'\nimport { PROP_TYPE_STRING } from '../constants/props'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n bgVariant: makeProp(PROP_TYPE_STRING),\n borderVariant: makeProp(PROP_TYPE_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n textVariant: makeProp(PROP_TYPE_STRING)\n },\n NAME_CARD\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const cardMixin = Vue.extend({\n props\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_TITLE } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n title: makeProp(PROP_TYPE_STRING),\n titleTag: makeProp(PROP_TYPE_STRING, 'h4')\n },\n NAME_CARD_TITLE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardTitle = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_TITLE,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n props.titleTag,\n mergeData(data, {\n staticClass: 'card-title'\n }),\n children || toString(props.title)\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_SUB_TITLE } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n subTitle: makeProp(PROP_TYPE_STRING),\n subTitleTag: makeProp(PROP_TYPE_STRING, 'h6'),\n subTitleTextVariant: makeProp(PROP_TYPE_STRING, 'muted')\n },\n NAME_CARD_SUB_TITLE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardSubTitle = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_SUB_TITLE,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n props.subTitleTag,\n mergeData(data, {\n staticClass: 'card-subtitle',\n class: [props.subTitleTextVariant ? `text-${props.subTitleTextVariant}` : null]\n }),\n children || toString(props.subTitle)\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_BODY } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { sortKeys } from '../../utils/object'\nimport {\n copyProps,\n makeProp,\n makePropsConfigurable,\n pluckProps,\n prefixPropName\n} from '../../utils/props'\nimport { props as cardProps } from '../../mixins/card'\nimport { BCardTitle, props as titleProps } from './card-title'\nimport { BCardSubTitle, props as subTitleProps } from './card-sub-title'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...titleProps,\n ...subTitleProps,\n ...copyProps(cardProps, prefixPropName.bind(null, 'body')),\n bodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n overlay: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_CARD_BODY\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardBody = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_BODY,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { bodyBgVariant, bodyBorderVariant, bodyTextVariant } = props\n\n let $title = h()\n if (props.title) {\n $title = h(BCardTitle, { props: pluckProps(titleProps, props) })\n }\n\n let $subTitle = h()\n if (props.subTitle) {\n $subTitle = h(BCardSubTitle, {\n props: pluckProps(subTitleProps, props),\n class: ['mb-2']\n })\n }\n\n return h(\n props.bodyTag,\n mergeData(data, {\n staticClass: 'card-body',\n class: [\n {\n 'card-img-overlay': props.overlay,\n [`bg-${bodyBgVariant}`]: bodyBgVariant,\n [`border-${bodyBorderVariant}`]: bodyBorderVariant,\n [`text-${bodyTextVariant}`]: bodyTextVariant\n },\n props.bodyClass\n ]\n }),\n [$title, $subTitle, children]\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_HEADER } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { htmlOrText } from '../../utils/html'\nimport { sortKeys } from '../../utils/object'\nimport { copyProps, makeProp, makePropsConfigurable, prefixPropName } from '../../utils/props'\nimport { props as BCardProps } from '../../mixins/card'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...copyProps(BCardProps, prefixPropName.bind(null, 'header')),\n header: makeProp(PROP_TYPE_STRING),\n headerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n headerHtml: makeProp(PROP_TYPE_STRING)\n }),\n NAME_CARD_HEADER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardHeader = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_HEADER,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { headerBgVariant, headerBorderVariant, headerTextVariant } = props\n\n return h(\n props.headerTag,\n mergeData(data, {\n staticClass: 'card-header',\n class: [\n props.headerClass,\n {\n [`bg-${headerBgVariant}`]: headerBgVariant,\n [`border-${headerBorderVariant}`]: headerBorderVariant,\n [`text-${headerTextVariant}`]: headerTextVariant\n }\n ],\n domProps: children ? {} : htmlOrText(props.headerHtml, props.header)\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_FOOTER } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { htmlOrText } from '../../utils/html'\nimport { sortKeys } from '../../utils/object'\nimport { copyProps, makeProp, makePropsConfigurable, prefixPropName } from '../../utils/props'\nimport { props as BCardProps } from '../../mixins/card'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...copyProps(BCardProps, prefixPropName.bind(null, 'footer')),\n footer: makeProp(PROP_TYPE_STRING),\n footerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n footerHtml: makeProp(PROP_TYPE_STRING)\n }),\n NAME_CARD_FOOTER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardFooter = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_FOOTER,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { footerBgVariant, footerBorderVariant, footerTextVariant } = props\n\n return h(\n props.footerTag,\n mergeData(data, {\n staticClass: 'card-footer',\n class: [\n props.footerClass,\n {\n [`bg-${footerBgVariant}`]: footerBgVariant,\n [`border-${footerBorderVariant}`]: footerBorderVariant,\n [`text-${footerTextVariant}`]: footerTextVariant\n }\n ],\n domProps: children ? {} : htmlOrText(props.footerHtml, props.footer)\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_IMG } from '../../constants/components'\nimport {\n PROP_TYPE_ARRAY_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_STRING,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { concat } from '../../utils/array'\nimport { identity } from '../../utils/identity'\nimport { isString } from '../../utils/inspect'\nimport { toInteger } from '../../utils/number'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\n\n// --- Constants --\n\n// Blank image with fill template\nconst BLANK_TEMPLATE =\n '<svg width=\"%{w}\" height=\"%{h}\" ' +\n 'xmlns=\"http://www.w3.org/2000/svg\" ' +\n 'viewBox=\"0 0 %{w} %{h}\" preserveAspectRatio=\"none\">' +\n '<rect width=\"100%\" height=\"100%\" style=\"fill:%{f};\"></rect>' +\n '</svg>'\n\n// --- Helper methods ---\n\nconst makeBlankImgSrc = (width, height, color) => {\n const src = encodeURIComponent(\n BLANK_TEMPLATE.replace('%{w}', toString(width))\n .replace('%{h}', toString(height))\n .replace('%{f}', color)\n )\n return `data:image/svg+xml;charset=UTF-8,${src}`\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n alt: makeProp(PROP_TYPE_STRING),\n blank: makeProp(PROP_TYPE_BOOLEAN, false),\n blankColor: makeProp(PROP_TYPE_STRING, 'transparent'),\n block: makeProp(PROP_TYPE_BOOLEAN, false),\n center: makeProp(PROP_TYPE_BOOLEAN, false),\n fluid: makeProp(PROP_TYPE_BOOLEAN, false),\n // Gives fluid images class `w-100` to make them grow to fit container\n fluidGrow: makeProp(PROP_TYPE_BOOLEAN, false),\n height: makeProp(PROP_TYPE_NUMBER_STRING),\n left: makeProp(PROP_TYPE_BOOLEAN, false),\n right: makeProp(PROP_TYPE_BOOLEAN, false),\n // Possible values:\n // `false`: no rounding of corners\n // `true`: slightly rounded corners\n // 'top': top corners rounded\n // 'right': right corners rounded\n // 'bottom': bottom corners rounded\n // 'left': left corners rounded\n // 'circle': circle/oval\n // '0': force rounding off\n rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n sizes: makeProp(PROP_TYPE_ARRAY_STRING),\n src: makeProp(PROP_TYPE_STRING),\n srcset: makeProp(PROP_TYPE_ARRAY_STRING),\n thumbnail: makeProp(PROP_TYPE_BOOLEAN, false),\n width: makeProp(PROP_TYPE_NUMBER_STRING)\n },\n NAME_IMG\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BImg = /*#__PURE__*/ Vue.extend({\n name: NAME_IMG,\n functional: true,\n props,\n render(h, { props, data }) {\n let { alt, src, block, fluidGrow, rounded } = props\n let width = toInteger(props.width) || null\n let height = toInteger(props.height) || null\n let align = null\n let srcset = concat(props.srcset)\n .filter(identity)\n .join(',')\n let sizes = concat(props.sizes)\n .filter(identity)\n .join(',')\n\n if (props.blank) {\n if (!height && width) {\n height = width\n } else if (!width && height) {\n width = height\n }\n if (!width && !height) {\n width = 1\n height = 1\n }\n // Make a blank SVG image\n src = makeBlankImgSrc(width, height, props.blankColor || 'transparent')\n // Disable srcset and sizes\n srcset = null\n sizes = null\n }\n if (props.left) {\n align = 'float-left'\n } else if (props.right) {\n align = 'float-right'\n } else if (props.center) {\n align = 'mx-auto'\n block = true\n }\n\n return h(\n 'img',\n mergeData(data, {\n attrs: {\n src,\n alt,\n width: width ? toString(width) : null,\n height: height ? toString(height) : null,\n srcset: srcset || null,\n sizes: sizes || null\n },\n class: {\n 'img-thumbnail': props.thumbnail,\n 'img-fluid': props.fluid || fluidGrow,\n 'w-100': fluidGrow,\n rounded: rounded === '' || rounded === true,\n [`rounded-${rounded}`]: isString(rounded) && rounded !== '',\n [align]: align,\n 'd-block': block\n }\n })\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_IMG } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { pick, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { props as BImgProps } from '../image/img'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...pick(BImgProps, ['src', 'alt', 'width', 'height', 'left', 'right']),\n bottom: makeProp(PROP_TYPE_BOOLEAN, false),\n end: makeProp(PROP_TYPE_BOOLEAN, false),\n start: makeProp(PROP_TYPE_BOOLEAN, false),\n top: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_CARD_IMG\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardImg = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_IMG,\n functional: true,\n props,\n render(h, { props, data }) {\n const { src, alt, width, height } = props\n\n let baseClass = 'card-img'\n if (props.top) {\n baseClass += '-top'\n } else if (props.right || props.end) {\n baseClass += '-right'\n } else if (props.bottom) {\n baseClass += '-bottom'\n } else if (props.left || props.start) {\n baseClass += '-left'\n }\n\n return h(\n 'img',\n mergeData(data, {\n class: baseClass,\n attrs: { src, alt, width, height }\n })\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_FOOTER, SLOT_NAME_HEADER } from '../../constants/slots'\nimport { htmlOrText } from '../../utils/html'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport { sortKeys } from '../../utils/object'\nimport {\n copyProps,\n makeProp,\n makePropsConfigurable,\n pluckProps,\n prefixPropName,\n unprefixPropName\n} from '../../utils/props'\nimport { props as cardProps } from '../../mixins/card'\nimport { BCardBody, props as BCardBodyProps } from './card-body'\nimport { BCardHeader, props as BCardHeaderProps } from './card-header'\nimport { BCardFooter, props as BCardFooterProps } from './card-footer'\nimport { BCardImg, props as BCardImgProps } from './card-img'\n\n// --- Props ---\n\nconst cardImgProps = copyProps(BCardImgProps, prefixPropName.bind(null, 'img'))\ncardImgProps.imgSrc.required = false\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...BCardBodyProps,\n ...BCardHeaderProps,\n ...BCardFooterProps,\n ...cardImgProps,\n ...cardProps,\n align: makeProp(PROP_TYPE_STRING),\n noBody: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_CARD\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCard = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD,\n functional: true,\n props,\n render(h, { props, data, slots, scopedSlots }) {\n const {\n imgSrc,\n imgLeft,\n imgRight,\n imgStart,\n imgEnd,\n imgBottom,\n header,\n headerHtml,\n footer,\n footerHtml,\n align,\n textVariant,\n bgVariant,\n borderVariant\n } = props\n const $scopedSlots = scopedSlots || {}\n const $slots = slots()\n const slotScope = {}\n\n let $imgFirst = h()\n let $imgLast = h()\n if (imgSrc) {\n const $img = h(BCardImg, {\n props: pluckProps(cardImgProps, props, unprefixPropName.bind(null, 'img'))\n })\n\n if (imgBottom) {\n $imgLast = $img\n } else {\n $imgFirst = $img\n }\n }\n\n let $header = h()\n const hasHeaderSlot = hasNormalizedSlot(SLOT_NAME_HEADER, $scopedSlots, $slots)\n if (hasHeaderSlot || header || headerHtml) {\n $header = h(\n BCardHeader,\n {\n props: pluckProps(BCardHeaderProps, props),\n domProps: hasHeaderSlot ? {} : htmlOrText(headerHtml, header)\n },\n normalizeSlot(SLOT_NAME_HEADER, slotScope, $scopedSlots, $slots)\n )\n }\n\n let $content = normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots)\n\n // Wrap content in `<card-body>` when `noBody` prop set\n if (!props.noBody) {\n $content = h(BCardBody, { props: pluckProps(BCardBodyProps, props) }, $content)\n\n // When the `overlap` prop is set we need to wrap the `<b-card-img>` and `<b-card-body>`\n // into a relative positioned wrapper to don't distract a potential header or footer\n if (props.overlay && imgSrc) {\n $content = h('div', { staticClass: 'position-relative' }, [$imgFirst, $content, $imgLast])\n // Reset image variables since they are already in the wrapper\n $imgFirst = h()\n $imgLast = h()\n }\n }\n\n let $footer = h()\n const hasFooterSlot = hasNormalizedSlot(SLOT_NAME_FOOTER, $scopedSlots, $slots)\n if (hasFooterSlot || footer || footerHtml) {\n $footer = h(\n BCardFooter,\n {\n props: pluckProps(BCardFooterProps, props),\n domProps: hasHeaderSlot ? {} : htmlOrText(footerHtml, footer)\n },\n normalizeSlot(SLOT_NAME_FOOTER, slotScope, $scopedSlots, $slots)\n )\n }\n\n return h(\n props.tag,\n mergeData(data, {\n staticClass: 'card',\n class: {\n 'flex-row': imgLeft || imgStart,\n 'flex-row-reverse': (imgRight || imgEnd) && !(imgLeft || imgStart),\n [`text-${align}`]: align,\n [`bg-${bgVariant}`]: bgVariant,\n [`border-${borderVariant}`]: borderVariant,\n [`text-${textVariant}`]: textVariant\n }\n }),\n [$imgFirst, $header, $content, $footer, $imgLast]\n )\n }\n})\n","// v-b-visible\n// Private visibility check directive\n// Based on IntersectionObserver\n//\n// Usage:\n// v-b-visibility.<margin>.<once>=\"<callback>\"\n//\n// Value:\n// <callback>: method to be called when visibility state changes, receives one arg:\n// true: element is visible\n// false: element is not visible\n// null: IntersectionObserver not supported\n//\n// Modifiers:\n// <margin>: a positive decimal value of pixels away from viewport edge\n// before being considered \"visible\". default is 0\n// <once>: keyword 'once', meaning when the element becomes visible and\n// callback is called observation/notification will stop.\n//\n// When used in a render function:\n// export default {\n// directives: { 'b-visible': VBVisible },\n// render(h) {\n// h(\n// 'div',\n// {\n// directives: [\n// { name: 'b-visible', value=this.callback, modifiers: { '123':true, 'once':true } }\n// ]\n// }\n// )\n// }\n\nimport { RX_DIGITS } from '../../constants/regex'\nimport { requestAF } from '../../utils/dom'\nimport { isFunction } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { clone, keys } from '../../utils/object'\n\nconst OBSERVER_PROP_NAME = '__bv__visibility_observer'\n\nclass VisibilityObserver {\n constructor(el, options, vnode) {\n this.el = el\n this.callback = options.callback\n this.margin = options.margin || 0\n this.once = options.once || false\n this.observer = null\n this.visible = undefined\n this.doneOnce = false\n // Create the observer instance (if possible)\n this.createObserver(vnode)\n }\n\n createObserver(vnode) {\n // Remove any previous observer\n if (this.observer) {\n /* istanbul ignore next */\n this.stop()\n }\n\n // Should only be called once and `callback` prop should be a function\n if (this.doneOnce || !isFunction(this.callback)) {\n /* istanbul ignore next */\n return\n }\n\n // Create the observer instance\n try {\n // Future: Possibly add in other modifiers for left/right/top/bottom\n // offsets, root element reference, and thresholds\n this.observer = new IntersectionObserver(this.handler.bind(this), {\n // `null` = 'viewport'\n root: null,\n // Pixels away from view port to consider \"visible\"\n rootMargin: this.margin,\n // Intersection ratio of el and root (as a value from 0 to 1)\n threshold: 0\n })\n } catch {\n // No IntersectionObserver support, so just stop trying to observe\n this.doneOnce = true\n this.observer = undefined\n this.callback(null)\n return\n }\n\n // Start observing in a `$nextTick()` (to allow DOM to complete rendering)\n /* istanbul ignore next: IntersectionObserver not supported in JSDOM */\n vnode.context.$nextTick(() => {\n requestAF(() => {\n // Placed in an `if` just in case we were destroyed before\n // this `requestAnimationFrame` runs\n if (this.observer) {\n this.observer.observe(this.el)\n }\n })\n })\n }\n\n /* istanbul ignore next */\n handler(entries) {\n const entry = entries ? entries[0] : {}\n const isIntersecting = Boolean(entry.isIntersecting || entry.intersectionRatio > 0.0)\n if (isIntersecting !== this.visible) {\n this.visible = isIntersecting\n this.callback(isIntersecting)\n if (this.once && this.visible) {\n this.doneOnce = true\n this.stop()\n }\n }\n }\n\n stop() {\n /* istanbul ignore next */\n this.observer && this.observer.disconnect()\n this.observer = null\n }\n}\n\nconst destroy = el => {\n const observer = el[OBSERVER_PROP_NAME]\n if (observer && observer.stop) {\n observer.stop()\n }\n delete el[OBSERVER_PROP_NAME]\n}\n\nconst bind = (el, { value, modifiers }, vnode) => {\n // `value` is the callback function\n const options = {\n margin: '0px',\n once: false,\n callback: value\n }\n // Parse modifiers\n keys(modifiers).forEach(mod => {\n /* istanbul ignore else: Until <b-img-lazy> is switched to use this directive */\n if (RX_DIGITS.test(mod)) {\n options.margin = `${mod}px`\n } else if (mod.toLowerCase() === 'once') {\n options.once = true\n }\n })\n // Destroy any previous observer\n destroy(el)\n // Create new observer\n el[OBSERVER_PROP_NAME] = new VisibilityObserver(el, options, vnode)\n // Store the current modifiers on the object (cloned)\n el[OBSERVER_PROP_NAME]._prevModifiers = clone(modifiers)\n}\n\n// When the directive options may have been updated (or element)\nconst componentUpdated = (el, { value, oldValue, modifiers }, vnode) => {\n // Compare value/oldValue and modifiers to see if anything has changed\n // and if so, destroy old observer and create new observer\n /* istanbul ignore next */\n modifiers = clone(modifiers)\n /* istanbul ignore next */\n if (\n el &&\n (value !== oldValue ||\n !el[OBSERVER_PROP_NAME] ||\n !looseEqual(modifiers, el[OBSERVER_PROP_NAME]._prevModifiers))\n ) {\n // Re-bind on element\n bind(el, { value, modifiers }, vnode)\n }\n}\n\n// When directive un-binds from element\nconst unbind = el => {\n // Remove the observer\n destroy(el)\n}\n\n// Export the directive\nexport const VBVisible = {\n bind,\n componentUpdated,\n unbind\n}\n","import { Vue } from '../../vue'\nimport { NAME_IMG_LAZY } from '../../constants/components'\nimport { HAS_INTERACTION_OBSERVER_SUPPORT } from '../../constants/env'\nimport { MODEL_EVENT_NAME_PREFIX } from '../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { concat } from '../../utils/array'\nimport { requestAF } from '../../utils/dom'\nimport { identity } from '../../utils/identity'\nimport { toInteger } from '../../utils/number'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { VBVisible } from '../../directives/visible/visible'\nimport { BImg, props as BImgProps } from './img'\n\n// --- Constants ---\n\nconst MODEL_PROP_NAME_SHOW = 'show'\nconst MODEL_EVENT_NAME_SHOW = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_SHOW\n\n// --- Props ---\n\nconst imgProps = omit(BImgProps, ['blank'])\n\nexport const props = makePropsConfigurable(\n {\n ...imgProps,\n blankHeight: makeProp(PROP_TYPE_NUMBER_STRING),\n // If `null`, a blank image is generated\n blankSrc: makeProp(PROP_TYPE_STRING, null),\n blankWidth: makeProp(PROP_TYPE_NUMBER_STRING),\n // Distance away from viewport (in pixels)\n // before being considered \"visible\"\n offset: makeProp(PROP_TYPE_NUMBER_STRING, 360),\n [MODEL_PROP_NAME_SHOW]: makeProp(PROP_TYPE_BOOLEAN, false)\n },\n NAME_IMG_LAZY\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BImgLazy = /*#__PURE__*/ Vue.extend({\n name: NAME_IMG_LAZY,\n directives: {\n 'b-visible': VBVisible\n },\n props,\n data() {\n return {\n isShown: this[MODEL_PROP_NAME_SHOW]\n }\n },\n computed: {\n computedSrc() {\n const { blankSrc } = this\n return !blankSrc || this.isShown ? this.src : blankSrc\n },\n computedBlank() {\n return !(this.isShown || this.blankSrc)\n },\n computedWidth() {\n const { width } = this\n return this.isShown ? width : this.blankWidth || width\n },\n computedHeight() {\n const { height } = this\n return this.isShown ? height : this.blankHeight || height\n },\n computedSrcset() {\n const srcset = concat(this.srcset)\n .filter(identity)\n .join(',')\n\n return srcset && (!this.blankSrc || this.isShown) ? srcset : null\n },\n computedSizes() {\n const sizes = concat(this.sizes)\n .filter(identity)\n .join(',')\n\n return sizes && (!this.blankSrc || this.isShown) ? sizes : null\n }\n },\n watch: {\n [MODEL_PROP_NAME_SHOW](newValue, oldValue) {\n if (newValue !== oldValue) {\n // If `IntersectionObserver` support is not available, image is always shown\n const visible = HAS_INTERACTION_OBSERVER_SUPPORT ? newValue : true\n\n this.isShown = visible\n\n // Ensure the show prop is synced (when no `IntersectionObserver`)\n if (newValue !== visible) {\n this.$nextTick(this.updateShowProp)\n }\n }\n },\n isShown(newValue, oldValue) {\n // Update synched show prop\n if (newValue !== oldValue) {\n this.updateShowProp()\n }\n }\n },\n mounted() {\n // If `IntersectionObserver` is not available, image is always shown\n this.isShown = HAS_INTERACTION_OBSERVER_SUPPORT ? this[MODEL_PROP_NAME_SHOW] : true\n },\n methods: {\n updateShowProp() {\n this.$emit(MODEL_EVENT_NAME_SHOW, this.isShown)\n },\n doShow(visible) {\n // If IntersectionObserver is not supported, the callback\n // will be called with `null` rather than `true` or `false`\n if ((visible || visible === null) && !this.isShown) {\n // In a `requestAF()` to render the `blank` placeholder properly\n // for fast loading images in some browsers (i.e. Firefox)\n requestAF(() => {\n this.isShown = true\n })\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 // Passthrough props\n ...pluckProps(imgProps, this.$props),\n // Computed value props\n src: this.computedSrc,\n blank: this.computedBlank,\n width: this.computedWidth,\n height: this.computedHeight,\n srcset: this.computedSrcset,\n sizes: this.computedSizes\n }\n })\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_IMG_LAZY } from '../../constants/components'\nimport { keys, omit, sortKeys } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { props as BImgProps } from '../image/img'\nimport { BImgLazy, props as BImgLazyProps } from '../image/img-lazy'\nimport { props as BCardImgProps } from './card-img'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...omit(BImgLazyProps, keys(BImgProps)),\n ...omit(BCardImgProps, ['src', 'alt', 'width', 'height'])\n }),\n NAME_CARD_IMG_LAZY\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardImgLazy = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_IMG_LAZY,\n functional: true,\n props,\n render(h, { props, data }) {\n let baseClass = 'card-img'\n if (props.top) {\n baseClass += '-top'\n } else if (props.right || props.end) {\n baseClass += '-right'\n } else if (props.bottom) {\n baseClass += '-bottom'\n } else if (props.left || props.start) {\n baseClass += '-left'\n }\n\n return h(\n BImgLazy,\n mergeData(data, {\n class: [baseClass],\n // Exclude `left` and `right` props before passing to `<b-img-lazy>`\n props: omit(props, ['left', 'right'])\n })\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_TEXT } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n textTag: makeProp(PROP_TYPE_STRING, 'p')\n },\n NAME_CARD_TEXT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardText = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_TEXT,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(props.textTag, mergeData(data, { staticClass: 'card-text' }), children)\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_GROUP } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n columns: makeProp(PROP_TYPE_BOOLEAN, false),\n deck: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n },\n NAME_CARD_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_GROUP,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n props.tag,\n mergeData(data, {\n class: props.deck ? 'card-deck' : props.columns ? 'card-columns' : 'card-group'\n }),\n children\n )\n }\n})\n","import { BCard } from './card'\nimport { BCardHeader } from './card-header'\nimport { BCardBody } from './card-body'\nimport { BCardTitle } from './card-title'\nimport { BCardSubTitle } from './card-sub-title'\nimport { BCardFooter } from './card-footer'\nimport { BCardImg } from './card-img'\nimport { BCardImgLazy } from './card-img-lazy'\nimport { BCardText } from './card-text'\nimport { BCardGroup } from './card-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst CardPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BCard,\n BCardHeader,\n BCardBody,\n BCardTitle,\n BCardSubTitle,\n BCardFooter,\n BCardImg,\n BCardImgLazy,\n BCardText,\n BCardGroup\n }\n})\n\nexport {\n CardPlugin,\n BCard,\n BCardHeader,\n BCardBody,\n BCardTitle,\n BCardSubTitle,\n BCardFooter,\n BCardImg,\n BCardImgLazy,\n BCardText,\n BCardGroup\n}\n","export const noop = () => {}\n","import { MutationObs, isElement } from './dom'\nimport { warnNoMutationObserverSupport } from './warn'\n\n/**\n * Observe a DOM element changes, falls back to eventListener mode\n * @param {Element} el The DOM element to observe\n * @param {Function} callback callback to be called on change\n * @param {object} [options={childList: true, subtree: true}] observe options\n * @see https://stackoverflow.com/questions/3219758\n */\nexport const observeDom = (\n el,\n callback,\n options\n) => /* istanbul ignore next: difficult to test in JSDOM */ {\n // Handle cases where we might be passed a Vue instance\n el = el ? el.$el || el : null\n\n // Early exit when we have no element\n /* istanbul ignore next: difficult to test in JSDOM */\n if (!isElement(el)) {\n return null\n }\n\n // Exit and throw a warning when `MutationObserver` isn't available\n if (warnNoMutationObserverSupport('observeDom')) {\n return null\n }\n\n // Define a new observer\n const obs = new MutationObs(mutations => {\n let changed = false\n\n // A mutation can contain several change records, so we loop\n // through them to see what has changed\n // We break out of the loop early if any \"significant\" change\n // has been detected\n for (let i = 0; i < mutations.length && !changed; i++) {\n // The mutation record\n const mutation = mutations[i]\n // Mutation type\n const type = mutation.type\n // DOM node (could be any DOM node type - HTMLElement, Text, comment, etc.)\n const target = mutation.target\n\n // Detect whether a change happened based on type and target\n if (type === 'characterData' && target.nodeType === Node.TEXT_NODE) {\n // We ignore nodes that are not TEXT (i.e. comments, etc.)\n // as they don't change layout\n changed = true\n } else if (type === 'attributes') {\n changed = true\n } else if (\n type === 'childList' &&\n (mutation.addedNodes.length > 0 || mutation.removedNodes.length > 0)\n ) {\n // This includes HTMLElement and text nodes being\n // added/removed/re-arranged\n changed = true\n }\n }\n\n // We only call the callback if a change that could affect\n // layout/size truly happened\n if (changed) {\n callback()\n }\n })\n\n // Have the observer observe foo for changes in children, etc\n obs.observe(el, { childList: true, subtree: true, ...options })\n\n // We return a reference to the observer so that `obs.disconnect()`\n // can be called if necessary\n // To reduce overhead when the root element is hidden\n return obs\n}\n","import { Vue } from '../../vue'\nimport { NAME_CAROUSEL } from '../../constants/components'\nimport { IS_BROWSER, HAS_POINTER_EVENT_SUPPORT, HAS_TOUCH_SUPPORT } from '../../constants/env'\nimport {\n EVENT_NAME_PAUSED,\n EVENT_NAME_SLIDING_END,\n EVENT_NAME_SLIDING_START,\n EVENT_NAME_UNPAUSED,\n EVENT_OPTIONS_NO_CAPTURE\n} from '../../constants/events'\nimport { CODE_ENTER, CODE_LEFT, CODE_RIGHT, CODE_SPACE } from '../../constants/key-codes'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_NUMBER,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport {\n addClass,\n getActiveElement,\n reflow,\n removeClass,\n requestAF,\n selectAll,\n setAttr\n} from '../../utils/dom'\nimport { eventOn, eventOff, stopEvent } from '../../utils/events'\nimport { isUndefined } from '../../utils/inspect'\nimport { mathAbs, mathFloor, mathMax, mathMin } from '../../utils/math'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { noop } from '../../utils/noop'\nimport { sortKeys } from '../../utils/object'\nimport { observeDom } from '../../utils/observe-dom'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n type: PROP_TYPE_NUMBER,\n defaultValue: 0\n})\n\n// Slide directional classes\nconst DIRECTION = {\n next: {\n dirClass: 'carousel-item-left',\n overlayClass: 'carousel-item-next'\n },\n prev: {\n dirClass: 'carousel-item-right',\n overlayClass: 'carousel-item-prev'\n }\n}\n\n// Fallback Transition duration (with a little buffer) in ms\nconst TRANS_DURATION = 600 + 50\n\n// Time for mouse compat events to fire after touch\nconst TOUCH_EVENT_COMPAT_WAIT = 500\n\n// Number of pixels to consider touch move a swipe\nconst SWIPE_THRESHOLD = 40\n\n// PointerEvent pointer types\nconst PointerType = {\n TOUCH: 'touch',\n PEN: 'pen'\n}\n\n// Transition Event names\nconst TransitionEndEvents = {\n WebkitTransition: 'webkitTransitionEnd',\n MozTransition: 'transitionend',\n OTransition: 'otransitionend oTransitionEnd',\n transition: 'transitionend'\n}\n\n// --- Helper methods ---\n\n// Return the browser specific transitionEnd event name\nconst getTransitionEndEvent = el => {\n for (const name in TransitionEndEvents) {\n if (!isUndefined(el.style[name])) {\n return TransitionEndEvents[name]\n }\n }\n // Fallback\n /* istanbul ignore next */\n return null\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n background: makeProp(PROP_TYPE_STRING),\n controls: makeProp(PROP_TYPE_BOOLEAN, false),\n // Enable cross-fade animation instead of slide animation\n fade: makeProp(PROP_TYPE_BOOLEAN, false),\n // Sniffed by carousel-slide\n imgHeight: makeProp(PROP_TYPE_NUMBER_STRING),\n // Sniffed by carousel-slide\n imgWidth: makeProp(PROP_TYPE_NUMBER_STRING),\n indicators: makeProp(PROP_TYPE_BOOLEAN, false),\n interval: makeProp(PROP_TYPE_NUMBER, 5000),\n labelGotoSlide: makeProp(PROP_TYPE_STRING, 'Goto slide'),\n labelIndicators: makeProp(PROP_TYPE_STRING, 'Select a slide to display'),\n labelNext: makeProp(PROP_TYPE_STRING, 'Next slide'),\n labelPrev: makeProp(PROP_TYPE_STRING, 'Previous slide'),\n // Disable slide/fade animation\n noAnimation: makeProp(PROP_TYPE_BOOLEAN, false),\n // Disable pause on hover\n noHoverPause: makeProp(PROP_TYPE_BOOLEAN, false),\n // Sniffed by carousel-slide\n noTouch: makeProp(PROP_TYPE_BOOLEAN, false),\n // Disable wrapping/looping when start/end is reached\n noWrap: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_CAROUSEL\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCarousel = /*#__PURE__*/ Vue.extend({\n name: NAME_CAROUSEL,\n mixins: [idMixin, modelMixin, normalizeSlotMixin],\n provide() {\n return { bvCarousel: this }\n },\n props,\n data() {\n return {\n index: this[MODEL_PROP_NAME] || 0,\n isSliding: false,\n transitionEndEvent: null,\n slides: [],\n direction: null,\n isPaused: !(toInteger(this.interval, 0) > 0),\n // Touch event handling values\n touchStartX: 0,\n touchDeltaX: 0\n }\n },\n computed: {\n numSlides() {\n return this.slides.length\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue, oldValue) {\n if (newValue !== oldValue) {\n this.setSlide(toInteger(newValue, 0))\n }\n },\n interval(newValue, oldValue) {\n /* istanbul ignore next */\n if (newValue === oldValue) {\n return\n }\n if (!newValue) {\n // Pausing slide show\n this.pause(false)\n } else {\n // Restarting or Changing interval\n this.pause(true)\n this.start(false)\n }\n },\n isPaused(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.$emit(newValue ? EVENT_NAME_PAUSED : EVENT_NAME_UNPAUSED)\n }\n },\n index(to, from) {\n /* istanbul ignore next */\n if (to === from || this.isSliding) {\n return\n }\n this.doSlide(to, from)\n }\n },\n created() {\n // Create private non-reactive props\n this.$_interval = null\n this.$_animationTimeout = null\n this.$_touchTimeout = null\n this.$_observer = null\n // Set initial paused state\n this.isPaused = !(toInteger(this.interval, 0) > 0)\n },\n mounted() {\n // Cache current browser transitionend event name\n this.transitionEndEvent = getTransitionEndEvent(this.$el) || null\n // Get all slides\n this.updateSlides()\n // Observe child changes so we can update slide list\n this.setObserver(true)\n },\n beforeDestroy() {\n this.clearInterval()\n this.clearAnimationTimeout()\n this.clearTouchTimeout()\n this.setObserver(false)\n },\n methods: {\n clearInterval() {\n clearInterval(this.$_interval)\n this.$_interval = null\n },\n clearAnimationTimeout() {\n clearTimeout(this.$_animationTimeout)\n this.$_animationTimeout = null\n },\n clearTouchTimeout() {\n clearTimeout(this.$_touchTimeout)\n this.$_touchTimeout = null\n },\n setObserver(on = false) {\n this.$_observer && this.$_observer.disconnect()\n this.$_observer = null\n if (on) {\n this.$_observer = observeDom(this.$refs.inner, this.updateSlides.bind(this), {\n subtree: false,\n childList: true,\n attributes: true,\n attributeFilter: ['id']\n })\n }\n },\n // Set slide\n setSlide(slide, direction = null) {\n // Don't animate when page is not visible\n /* istanbul ignore if: difficult to test */\n if (IS_BROWSER && document.visibilityState && document.hidden) {\n return\n }\n const noWrap = this.noWrap\n const numSlides = this.numSlides\n // Make sure we have an integer (you never know!)\n slide = mathFloor(slide)\n // Don't do anything if nothing to slide to\n if (numSlides === 0) {\n return\n }\n // Don't change slide while transitioning, wait until transition is done\n if (this.isSliding) {\n // Schedule slide after sliding complete\n this.$once(EVENT_NAME_SLIDING_END, () => {\n // Wrap in `requestAF()` to allow the slide to properly finish to avoid glitching\n requestAF(() => this.setSlide(slide, direction))\n })\n return\n }\n this.direction = direction\n // Set new slide index\n // Wrap around if necessary (if no-wrap not enabled)\n this.index =\n slide >= numSlides\n ? noWrap\n ? numSlides - 1\n : 0\n : slide < 0\n ? noWrap\n ? 0\n : numSlides - 1\n : slide\n // Ensure the v-model is synched up if no-wrap is enabled\n // and user tried to slide pass either ends\n if (noWrap && this.index !== slide && this.index !== this[MODEL_PROP_NAME]) {\n this.$emit(MODEL_EVENT_NAME, this.index)\n }\n },\n // Previous slide\n prev() {\n this.setSlide(this.index - 1, 'prev')\n },\n // Next slide\n next() {\n this.setSlide(this.index + 1, 'next')\n },\n // Pause auto rotation\n pause(event) {\n if (!event) {\n this.isPaused = true\n }\n this.clearInterval()\n },\n // Start auto rotate slides\n start(event) {\n if (!event) {\n this.isPaused = false\n }\n /* istanbul ignore next: most likely will never happen, but just in case */\n this.clearInterval()\n // Don't start if no interval, or less than 2 slides\n if (this.interval && this.numSlides > 1) {\n this.$_interval = setInterval(this.next, mathMax(1000, this.interval))\n }\n },\n // Restart auto rotate slides when focus/hover leaves the carousel\n /* istanbul ignore next */\n restart() {\n if (!this.$el.contains(getActiveElement())) {\n this.start()\n }\n },\n doSlide(to, from) {\n const isCycling = Boolean(this.interval)\n // Determine sliding direction\n const direction = this.calcDirection(this.direction, from, to)\n const overlayClass = direction.overlayClass\n const dirClass = direction.dirClass\n // Determine current and next slides\n const currentSlide = this.slides[from]\n const nextSlide = this.slides[to]\n // Don't do anything if there aren't any slides to slide to\n if (!currentSlide || !nextSlide) {\n /* istanbul ignore next */\n return\n }\n // Start animating\n this.isSliding = true\n if (isCycling) {\n this.pause(false)\n }\n this.$emit(EVENT_NAME_SLIDING_START, to)\n // Update v-model\n this.$emit(MODEL_EVENT_NAME, this.index)\n if (this.noAnimation) {\n addClass(nextSlide, 'active')\n removeClass(currentSlide, 'active')\n this.isSliding = false\n // Notify ourselves that we're done sliding (slid)\n this.$nextTick(() => this.$emit(EVENT_NAME_SLIDING_END, to))\n } else {\n addClass(nextSlide, overlayClass)\n // Trigger a reflow of next slide\n reflow(nextSlide)\n addClass(currentSlide, dirClass)\n addClass(nextSlide, dirClass)\n // Transition End handler\n let called = false\n /* istanbul ignore next: difficult to test */\n const onceTransEnd = () => {\n if (called) {\n return\n }\n called = true\n /* istanbul ignore if: transition events cant be tested in JSDOM */\n if (this.transitionEndEvent) {\n const events = this.transitionEndEvent.split(/\\s+/)\n events.forEach(event =>\n eventOff(nextSlide, event, onceTransEnd, EVENT_OPTIONS_NO_CAPTURE)\n )\n }\n this.clearAnimationTimeout()\n removeClass(nextSlide, dirClass)\n removeClass(nextSlide, overlayClass)\n addClass(nextSlide, 'active')\n removeClass(currentSlide, 'active')\n removeClass(currentSlide, dirClass)\n removeClass(currentSlide, overlayClass)\n setAttr(currentSlide, 'aria-current', 'false')\n setAttr(nextSlide, 'aria-current', 'true')\n setAttr(currentSlide, 'aria-hidden', 'true')\n setAttr(nextSlide, 'aria-hidden', 'false')\n this.isSliding = false\n this.direction = null\n // Notify ourselves that we're done sliding (slid)\n this.$nextTick(() => this.$emit(EVENT_NAME_SLIDING_END, to))\n }\n // Set up transitionend handler\n /* istanbul ignore if: transition events cant be tested in JSDOM */\n if (this.transitionEndEvent) {\n const events = this.transitionEndEvent.split(/\\s+/)\n events.forEach(event => eventOn(nextSlide, event, onceTransEnd, EVENT_OPTIONS_NO_CAPTURE))\n }\n // Fallback to setTimeout()\n this.$_animationTimeout = setTimeout(onceTransEnd, TRANS_DURATION)\n }\n if (isCycling) {\n this.start(false)\n }\n },\n // Update slide list\n updateSlides() {\n this.pause(true)\n // Get all slides as DOM elements\n this.slides = selectAll('.carousel-item', this.$refs.inner)\n const numSlides = this.slides.length\n // Keep slide number in range\n const index = mathMax(0, mathMin(mathFloor(this.index), numSlides - 1))\n this.slides.forEach((slide, idx) => {\n const n = idx + 1\n if (idx === index) {\n addClass(slide, 'active')\n setAttr(slide, 'aria-current', 'true')\n } else {\n removeClass(slide, 'active')\n setAttr(slide, 'aria-current', 'false')\n }\n setAttr(slide, 'aria-posinset', String(n))\n setAttr(slide, 'aria-setsize', String(numSlides))\n })\n // Set slide as active\n this.setSlide(index)\n this.start(this.isPaused)\n },\n calcDirection(direction = null, curIndex = 0, nextIndex = 0) {\n if (!direction) {\n return nextIndex > curIndex ? DIRECTION.next : DIRECTION.prev\n }\n return DIRECTION[direction]\n },\n handleClick(event, fn) {\n const keyCode = event.keyCode\n if (event.type === 'click' || keyCode === CODE_SPACE || keyCode === CODE_ENTER) {\n stopEvent(event)\n fn()\n }\n },\n /* istanbul ignore next: JSDOM doesn't support touch events */\n handleSwipe() {\n const absDeltaX = mathAbs(this.touchDeltaX)\n if (absDeltaX <= SWIPE_THRESHOLD) {\n return\n }\n const direction = absDeltaX / this.touchDeltaX\n // Reset touch delta X\n // https://github.com/twbs/bootstrap/pull/28558\n this.touchDeltaX = 0\n if (direction > 0) {\n // Swipe left\n this.prev()\n } else if (direction < 0) {\n // Swipe right\n this.next()\n }\n },\n /* istanbul ignore next: JSDOM doesn't support touch events */\n touchStart(event) {\n if (HAS_POINTER_EVENT_SUPPORT && PointerType[event.pointerType.toUpperCase()]) {\n this.touchStartX = event.clientX\n } else if (!HAS_POINTER_EVENT_SUPPORT) {\n this.touchStartX = event.touches[0].clientX\n }\n },\n /* istanbul ignore next: JSDOM doesn't support touch events */\n touchMove(event) {\n // Ensure swiping with one touch and not pinching\n if (event.touches && event.touches.length > 1) {\n this.touchDeltaX = 0\n } else {\n this.touchDeltaX = event.touches[0].clientX - this.touchStartX\n }\n },\n /* istanbul ignore next: JSDOM doesn't support touch events */\n touchEnd(event) {\n if (HAS_POINTER_EVENT_SUPPORT && PointerType[event.pointerType.toUpperCase()]) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n this.handleSwipe()\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n this.pause(false)\n this.clearTouchTimeout()\n this.$_touchTimeout = setTimeout(\n this.start,\n TOUCH_EVENT_COMPAT_WAIT + mathMax(1000, this.interval)\n )\n }\n },\n render(h) {\n const {\n indicators,\n background,\n noAnimation,\n noHoverPause,\n noTouch,\n index,\n isSliding,\n pause,\n restart,\n touchStart,\n touchEnd\n } = this\n const idInner = this.safeId('__BV_inner_')\n\n // Wrapper for slides\n const $inner = h(\n 'div',\n {\n staticClass: 'carousel-inner',\n attrs: {\n id: idInner,\n role: 'list'\n },\n ref: 'inner'\n },\n [this.normalizeSlot()]\n )\n\n // Prev and next controls\n let $controls = h()\n if (this.controls) {\n const makeControl = (direction, label, handler) => {\n const handlerWrapper = event => {\n /* istanbul ignore next */\n if (!isSliding) {\n this.handleClick(event, handler)\n } else {\n stopEvent(event, { propagation: false })\n }\n }\n\n return h(\n 'a',\n {\n staticClass: `carousel-control-${direction}`,\n attrs: {\n href: '#',\n role: 'button',\n 'aria-controls': idInner,\n 'aria-disabled': isSliding ? 'true' : null\n },\n on: {\n click: handlerWrapper,\n keydown: handlerWrapper\n }\n },\n [\n h('span', {\n staticClass: `carousel-control-${direction}-icon`,\n attrs: { 'aria-hidden': 'true' }\n }),\n h('span', { class: 'sr-only' }, [label])\n ]\n )\n }\n\n $controls = [\n makeControl('prev', this.labelPrev, this.prev),\n makeControl('next', this.labelNext, this.next)\n ]\n }\n\n // Indicators\n const $indicators = h(\n 'ol',\n {\n staticClass: 'carousel-indicators',\n directives: [{ name: 'show', value: indicators }],\n attrs: {\n id: this.safeId('__BV_indicators_'),\n 'aria-hidden': indicators ? 'false' : 'true',\n 'aria-label': this.labelIndicators,\n 'aria-owns': idInner\n }\n },\n this.slides.map((slide, i) => {\n const handler = event => {\n this.handleClick(event, () => {\n this.setSlide(i)\n })\n }\n\n return h('li', {\n class: { active: i === index },\n attrs: {\n role: 'button',\n id: this.safeId(`__BV_indicator_${i + 1}_`),\n tabindex: indicators ? '0' : '-1',\n 'aria-current': i === index ? 'true' : 'false',\n 'aria-label': `${this.labelGotoSlide} ${i + 1}`,\n 'aria-describedby': slide.id || null,\n 'aria-controls': idInner\n },\n on: {\n click: handler,\n keydown: handler\n },\n key: `slide_${i}`\n })\n })\n )\n\n const on = {\n mouseenter: noHoverPause ? noop : pause,\n mouseleave: noHoverPause ? noop : restart,\n focusin: pause,\n focusout: restart,\n keydown: event => {\n /* istanbul ignore next */\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n const { keyCode } = event\n if (keyCode === CODE_LEFT || keyCode === CODE_RIGHT) {\n stopEvent(event)\n this[keyCode === CODE_LEFT ? 'prev' : 'next']()\n }\n }\n }\n // Touch support event handlers for environment\n if (HAS_TOUCH_SUPPORT && !noTouch) {\n // Attach appropriate listeners (prepend event name with '&' for passive mode)\n /* istanbul ignore next: JSDOM doesn't support touch events */\n if (HAS_POINTER_EVENT_SUPPORT) {\n on['&pointerdown'] = touchStart\n on['&pointerup'] = touchEnd\n } else {\n on['&touchstart'] = touchStart\n on['&touchmove'] = this.touchMove\n on['&touchend'] = touchEnd\n }\n }\n\n // Return the carousel\n return h(\n 'div',\n {\n staticClass: 'carousel',\n class: {\n slide: !noAnimation,\n 'carousel-fade': !noAnimation && this.fade,\n 'pointer-event': HAS_TOUCH_SUPPORT && HAS_POINTER_EVENT_SUPPORT && !noTouch\n },\n style: { background },\n attrs: {\n role: 'region',\n id: this.safeId(),\n 'aria-busy': isSliding ? 'true' : 'false'\n },\n on\n },\n [$inner, $controls, $indicators]\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_CAROUSEL_SLIDE } from '../../constants/components'\nimport { HAS_TOUCH_SUPPORT } from '../../constants/env'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_IMG } from '../../constants/slots'\nimport { stopEvent } from '../../utils/events'\nimport { htmlOrText } from '../../utils/html'\nimport { identity } from '../../utils/identity'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps, unprefixPropName } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BImg } from '../image/img'\n\n// --- Props ---\n\nconst imgProps = {\n imgAlt: makeProp(PROP_TYPE_STRING),\n imgBlank: makeProp(PROP_TYPE_BOOLEAN, false),\n imgBlankColor: makeProp(PROP_TYPE_STRING, 'transparent'),\n imgHeight: makeProp(PROP_TYPE_NUMBER_STRING),\n imgSrc: makeProp(PROP_TYPE_STRING),\n imgWidth: makeProp(PROP_TYPE_NUMBER_STRING)\n}\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...imgProps,\n background: makeProp(PROP_TYPE_STRING),\n caption: makeProp(PROP_TYPE_STRING),\n captionHtml: makeProp(PROP_TYPE_STRING),\n captionTag: makeProp(PROP_TYPE_STRING, 'h3'),\n contentTag: makeProp(PROP_TYPE_STRING, 'div'),\n contentVisibleUp: makeProp(PROP_TYPE_STRING),\n text: makeProp(PROP_TYPE_STRING),\n textHtml: makeProp(PROP_TYPE_STRING),\n textTag: makeProp(PROP_TYPE_STRING, 'p')\n }),\n NAME_CAROUSEL_SLIDE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCarouselSlide = /*#__PURE__*/ Vue.extend({\n name: NAME_CAROUSEL_SLIDE,\n mixins: [idMixin, normalizeSlotMixin],\n inject: {\n bvCarousel: {\n // Explicitly disable touch if not a child of carousel\n default: () => ({ noTouch: true })\n }\n },\n props,\n computed: {\n contentClasses() {\n return [\n this.contentVisibleUp ? 'd-none' : '',\n this.contentVisibleUp ? `d-${this.contentVisibleUp}-block` : ''\n ]\n },\n computedWidth() {\n // Use local width, or try parent width\n return this.imgWidth || this.bvCarousel.imgWidth || null\n },\n computedHeight() {\n // Use local height, or try parent height\n return this.imgHeight || this.bvCarousel.imgHeight || null\n }\n },\n render(h) {\n let $img = this.normalizeSlot(SLOT_NAME_IMG)\n if (!$img && (this.imgSrc || this.imgBlank)) {\n const on = {}\n // Touch support event handler\n /* istanbul ignore if: difficult to test in JSDOM */\n if (!this.bvCarousel.noTouch && HAS_TOUCH_SUPPORT) {\n on.dragstart = event => stopEvent(event, { propagation: false })\n }\n\n $img = h(BImg, {\n props: {\n ...pluckProps(imgProps, this.$props, unprefixPropName.bind(null, 'img')),\n width: this.computedWidth,\n height: this.computedHeight,\n fluidGrow: true,\n block: true\n },\n on\n })\n }\n\n const $contentChildren = [\n // Caption\n this.caption || this.captionHtml\n ? h(this.captionTag, { domProps: htmlOrText(this.captionHtml, this.caption) })\n : false,\n // Text\n this.text || this.textHtml\n ? h(this.textTag, { domProps: htmlOrText(this.textHtml, this.text) })\n : false,\n // Children\n this.normalizeSlot() || false\n ]\n\n let $content = h()\n if ($contentChildren.some(identity)) {\n $content = h(\n this.contentTag,\n {\n staticClass: 'carousel-caption',\n class: this.contentClasses\n },\n $contentChildren.map($child => $child || h())\n )\n }\n\n return h(\n 'div',\n {\n staticClass: 'carousel-item',\n style: { background: this.background || this.bvCarousel.background || null },\n attrs: { id: this.safeId(), role: 'listitem' }\n },\n [$img, $content]\n )\n }\n})\n","import { BCarousel } from './carousel'\nimport { BCarouselSlide } from './carousel-slide'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst CarouselPlugin = /*#__PURE*/ pluginFactory({\n components: {\n BCarousel,\n BCarouselSlide\n }\n})\n\nexport { CarouselPlugin, BCarousel, BCarouselSlide }\n","export const CLASS_NAME_SHOW = 'show'\nexport const CLASS_NAME_FADE = 'fade'\n","// Generic collapse transion helper component\n//\n// Note:\n// Applies the classes `collapse`, `show` and `collapsing`\n// during the enter/leave transition phases only\n// Although it appears that Vue may be leaving the classes\n// in-place after the transition completes\nimport { Vue, mergeData } from '../../../vue'\nimport { NAME_COLLAPSE_HELPER } from '../../../constants/components'\nimport { PROP_TYPE_BOOLEAN } from '../../../constants/props'\nimport { getBCR, reflow, removeStyle, requestAF, setStyle } from '../../../utils/dom'\nimport { makeProp } from '../../../utils/props'\n\n// --- Helper methods ---\n\n// Transition event handler helpers\nconst onEnter = el => {\n setStyle(el, 'height', 0)\n // In a `requestAF()` for `appear` to work\n requestAF(() => {\n reflow(el)\n setStyle(el, 'height', `${el.scrollHeight}px`)\n })\n}\n\nconst onAfterEnter = el => {\n removeStyle(el, 'height')\n}\n\nconst onLeave = el => {\n setStyle(el, 'height', 'auto')\n setStyle(el, 'display', 'block')\n setStyle(el, 'height', `${getBCR(el).height}px`)\n reflow(el)\n setStyle(el, 'height', 0)\n}\n\nconst onAfterLeave = el => {\n removeStyle(el, 'height')\n}\n\n// --- Constants ---\n\n// Default transition props\n// `appear` will use the enter classes\nconst TRANSITION_PROPS = {\n css: true,\n enterClass: '',\n enterActiveClass: 'collapsing',\n enterToClass: 'collapse show',\n leaveClass: 'collapse show',\n leaveActiveClass: 'collapsing',\n leaveToClass: 'collapse'\n}\n\n// Default transition handlers\n// `appear` will use the enter handlers\nconst TRANSITION_HANDLERS = {\n enter: onEnter,\n afterEnter: onAfterEnter,\n leave: onLeave,\n afterLeave: onAfterLeave\n}\n\n// --- Main component ---\n\nexport const props = {\n // // If `true` (and `visible` is `true` on mount), animate initially visible\n appear: makeProp(PROP_TYPE_BOOLEAN, false)\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BVCollapse = /*#__PURE__*/ Vue.extend({\n name: NAME_COLLAPSE_HELPER,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n 'transition',\n // We merge in the `appear` prop last\n mergeData(data, { props: TRANSITION_PROPS, on: TRANSITION_HANDLERS }, { props }),\n // Note: `<transition>` supports a single root element only\n children\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_COLLAPSE } from '../../constants/components'\nimport { CLASS_NAME_SHOW } from '../../constants/classes'\nimport { IS_BROWSER } from '../../constants/env'\nimport {\n EVENT_NAME_HIDDEN,\n EVENT_NAME_HIDE,\n EVENT_NAME_SHOW,\n EVENT_NAME_SHOWN,\n EVENT_OPTIONS_NO_CAPTURE\n} from '../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { addClass, hasClass, removeClass, closest, matches, getCS } from '../../utils/dom'\nimport { getRootActionEventName, getRootEventName, eventOnOff } from '../../utils/events'\nimport { makeModelMixin } from '../../utils/model'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BVCollapse } from './helpers/bv-collapse'\n\n// --- Constants ---\n\nconst ROOT_ACTION_EVENT_NAME_TOGGLE = getRootActionEventName(NAME_COLLAPSE, 'toggle')\nconst ROOT_ACTION_EVENT_NAME_REQUEST_STATE = getRootActionEventName(NAME_COLLAPSE, 'request-state')\n\nconst ROOT_EVENT_NAME_ACCORDION = getRootEventName(NAME_COLLAPSE, 'accordion')\nconst ROOT_EVENT_NAME_STATE = getRootEventName(NAME_COLLAPSE, 'state')\nconst ROOT_EVENT_NAME_SYNC_STATE = getRootEventName(NAME_COLLAPSE, 'sync-state')\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('visible', { type: PROP_TYPE_BOOLEAN, defaultValue: false })\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n // If `true` (and `visible` is `true` on mount), animate initially visible\n accordion: makeProp(PROP_TYPE_STRING),\n appear: makeProp(PROP_TYPE_BOOLEAN, false),\n isNav: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n }),\n NAME_COLLAPSE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCollapse = /*#__PURE__*/ Vue.extend({\n name: NAME_COLLAPSE,\n mixins: [idMixin, modelMixin, normalizeSlotMixin, listenOnRootMixin],\n props,\n data() {\n return {\n show: this[MODEL_PROP_NAME],\n transitioning: false\n }\n },\n computed: {\n classObject() {\n const { transitioning } = this\n\n return {\n 'navbar-collapse': this.isNav,\n collapse: !transitioning,\n show: this.show && !transitioning\n }\n },\n slotScope() {\n return {\n visible: this.show,\n close: () => {\n this.show = false\n }\n }\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue) {\n if (newValue !== this.show) {\n this.show = newValue\n }\n },\n show(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.emitState()\n }\n }\n },\n created() {\n this.show = this[MODEL_PROP_NAME]\n },\n mounted() {\n this.show = this[MODEL_PROP_NAME]\n // Listen for toggle events to open/close us\n this.listenOnRoot(ROOT_ACTION_EVENT_NAME_TOGGLE, this.handleToggleEvent)\n // Listen to other collapses for accordion events\n this.listenOnRoot(ROOT_EVENT_NAME_ACCORDION, this.handleAccordionEvent)\n if (this.isNav) {\n // Set up handlers\n this.setWindowEvents(true)\n this.handleResize()\n }\n this.$nextTick(() => {\n this.emitState()\n })\n // Listen for \"Sync state\" requests from `v-b-toggle`\n this.listenOnRoot(ROOT_ACTION_EVENT_NAME_REQUEST_STATE, id => {\n if (id === this.safeId()) {\n this.$nextTick(this.emitSync)\n }\n })\n },\n updated() {\n // Emit a private event every time this component updates to ensure\n // the toggle button is in sync with the collapse's state\n // It is emitted regardless if the visible state changes\n this.emitSync()\n },\n /* istanbul ignore next */\n deactivated() {\n if (this.isNav) {\n this.setWindowEvents(false)\n }\n },\n /* istanbul ignore next */\n activated() {\n if (this.isNav) {\n this.setWindowEvents(true)\n }\n this.emitSync()\n },\n beforeDestroy() {\n // Trigger state emit if needed\n this.show = false\n if (this.isNav && IS_BROWSER) {\n this.setWindowEvents(false)\n }\n },\n methods: {\n setWindowEvents(on) {\n eventOnOff(on, window, 'resize', this.handleResize, EVENT_OPTIONS_NO_CAPTURE)\n eventOnOff(on, window, 'orientationchange', this.handleResize, EVENT_OPTIONS_NO_CAPTURE)\n },\n toggle() {\n this.show = !this.show\n },\n onEnter() {\n this.transitioning = true\n // This should be moved out so we can add cancellable events\n this.$emit(EVENT_NAME_SHOW)\n },\n onAfterEnter() {\n this.transitioning = false\n this.$emit(EVENT_NAME_SHOWN)\n },\n onLeave() {\n this.transitioning = true\n // This should be moved out so we can add cancellable events\n this.$emit(EVENT_NAME_HIDE)\n },\n onAfterLeave() {\n this.transitioning = false\n this.$emit(EVENT_NAME_HIDDEN)\n },\n emitState() {\n const { show, accordion } = this\n const id = this.safeId()\n\n this.$emit(MODEL_EVENT_NAME, show)\n\n // Let `v-b-toggle` know the state of this collapse\n this.emitOnRoot(ROOT_EVENT_NAME_STATE, id, show)\n if (accordion && show) {\n // Tell the other collapses in this accordion to close\n this.emitOnRoot(ROOT_EVENT_NAME_ACCORDION, id, accordion)\n }\n },\n emitSync() {\n // Emit a private event every time this component updates to ensure\n // the toggle button is in sync with the collapse's state\n // It is emitted regardless if the visible state changes\n this.emitOnRoot(ROOT_EVENT_NAME_SYNC_STATE, this.safeId(), this.show)\n },\n checkDisplayBlock() {\n // Check to see if the collapse has `display: block !important` set\n // We can't set `display: none` directly on `this.$el`, as it would\n // trigger a new transition to start (or cancel a current one)\n const { $el } = this\n const restore = hasClass($el, CLASS_NAME_SHOW)\n removeClass($el, CLASS_NAME_SHOW)\n const isBlock = getCS($el).display === 'block'\n if (restore) {\n addClass($el, CLASS_NAME_SHOW)\n }\n return isBlock\n },\n clickHandler(event) {\n const { target: el } = event\n // If we are in a nav/navbar, close the collapse when non-disabled link clicked\n /* istanbul ignore next: can't test `getComputedStyle()` in JSDOM */\n if (!this.isNav || !el || getCS(this.$el).display !== 'block') {\n return\n }\n // Only close the collapse if it is not forced to be `display: block !important`\n if (\n (matches(el, '.nav-link,.dropdown-item') || closest('.nav-link,.dropdown-item', el)) &&\n !this.checkDisplayBlock()\n ) {\n this.show = false\n }\n },\n handleToggleEvent(id) {\n if (id === this.safeId()) {\n this.toggle()\n }\n },\n handleAccordionEvent(openedId, openAccordion) {\n const { accordion, show } = this\n if (!accordion || accordion !== openAccordion) {\n return\n }\n const isThis = openedId === this.safeId()\n // Open this collapse if not shown or\n // close this collapse if shown\n if ((isThis && !show) || (!isThis && show)) {\n this.toggle()\n }\n },\n handleResize() {\n // Handler for orientation/resize to set collapsed state in nav/navbar\n this.show = getCS(this.$el).display === 'block'\n }\n },\n render(h) {\n const { appear } = this\n\n const $content = h(\n this.tag,\n {\n class: this.classObject,\n directives: [{ name: 'show', value: this.show }],\n attrs: { id: this.safeId() },\n on: { click: this.clickHandler }\n },\n this.normalizeSlot(SLOT_NAME_DEFAULT, this.slotScope)\n )\n\n return h(\n BVCollapse,\n {\n props: { appear },\n on: {\n enter: this.onEnter,\n afterEnter: this.onAfterEnter,\n leave: this.onLeave,\n afterLeave: this.onAfterLeave\n }\n },\n [$content]\n )\n }\n})\n","import { NAME_COLLAPSE } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport { EVENT_OPTIONS_PASSIVE } from '../../constants/events'\nimport { CODE_ENTER, CODE_SPACE } from '../../constants/key-codes'\nimport { RX_HASH, RX_HASH_ID, RX_SPACE_SPLIT } from '../../constants/regex'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport {\n addClass,\n getAttr,\n hasAttr,\n isDisabled,\n isTag,\n removeAttr,\n removeClass,\n removeStyle,\n requestAF,\n setAttr,\n setStyle\n} from '../../utils/dom'\nimport { getRootActionEventName, getRootEventName, eventOn, eventOff } from '../../utils/events'\nimport { isString } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { keys } from '../../utils/object'\n\n// --- Constants ---\n\n// Classes to apply to trigger element\nconst CLASS_BV_TOGGLE_COLLAPSED = 'collapsed'\nconst CLASS_BV_TOGGLE_NOT_COLLAPSED = 'not-collapsed'\n\n// Property key for handler storage\nconst BV_BASE = '__BV_toggle'\n// Root event listener property (Function)\nconst BV_TOGGLE_ROOT_HANDLER = `${BV_BASE}_HANDLER__`\n// Trigger element click handler property (Function)\nconst BV_TOGGLE_CLICK_HANDLER = `${BV_BASE}_CLICK__`\n// Target visibility state property (Boolean)\nconst BV_TOGGLE_STATE = `${BV_BASE}_STATE__`\n// Target ID list property (Array)\nconst BV_TOGGLE_TARGETS = `${BV_BASE}_TARGETS__`\n\n// Commonly used strings\nconst STRING_FALSE = 'false'\nconst STRING_TRUE = 'true'\n\n// Commonly used attribute names\nconst ATTR_ARIA_CONTROLS = 'aria-controls'\nconst ATTR_ARIA_EXPANDED = 'aria-expanded'\nconst ATTR_ROLE = 'role'\nconst ATTR_TABINDEX = 'tabindex'\n\n// Commonly used style properties\nconst STYLE_OVERFLOW_ANCHOR = 'overflow-anchor'\n\n// Emitted control event for collapse (emitted to collapse)\nconst ROOT_ACTION_EVENT_NAME_TOGGLE = getRootActionEventName(NAME_COLLAPSE, 'toggle')\n\n// Listen to event for toggle state update (emitted by collapse)\nconst ROOT_EVENT_NAME_STATE = getRootEventName(NAME_COLLAPSE, 'state')\n\n// Private event emitted on `$root` to ensure the toggle state is always synced\n// Gets emitted even if the state of b-collapse has not changed\n// This event is NOT to be documented as people should not be using it\nconst ROOT_EVENT_NAME_SYNC_STATE = getRootEventName(NAME_COLLAPSE, 'sync-state')\n\n// Private event we send to collapse to request state update sync event\nconst ROOT_ACTION_EVENT_NAME_REQUEST_STATE = getRootActionEventName(NAME_COLLAPSE, 'request-state')\n\nconst KEYDOWN_KEY_CODES = [CODE_ENTER, CODE_SPACE]\n\n// --- Helper methods ---\n\nconst isNonStandardTag = el => !arrayIncludes(['button', 'a'], el.tagName.toLowerCase())\n\nconst getTargets = ({ modifiers, arg, value }, el) => {\n // Any modifiers are considered target IDs\n const targets = keys(modifiers || {})\n\n // If value is a string, split out individual targets (if space delimited)\n value = isString(value) ? value.split(RX_SPACE_SPLIT) : value\n\n // Support target ID as link href (`href=\"#id\"`)\n if (isTag(el.tagName, 'a')) {\n const href = getAttr(el, 'href') || ''\n if (RX_HASH_ID.test(href)) {\n targets.push(href.replace(RX_HASH, ''))\n }\n }\n\n // Add ID from `arg` (if provided), and support value\n // as a single string ID or an array of string IDs\n // If `value` is not an array or string, then it gets filtered out\n concat(arg, value).forEach(t => isString(t) && targets.push(t))\n\n // Return only unique and truthy target IDs\n return targets.filter((t, index, arr) => t && arr.indexOf(t) === index)\n}\n\nconst removeClickListener = el => {\n const handler = el[BV_TOGGLE_CLICK_HANDLER]\n if (handler) {\n eventOff(el, 'click', handler, EVENT_OPTIONS_PASSIVE)\n eventOff(el, 'keydown', handler, EVENT_OPTIONS_PASSIVE)\n }\n el[BV_TOGGLE_CLICK_HANDLER] = null\n}\n\nconst addClickListener = (el, vnode) => {\n removeClickListener(el)\n if (vnode.context) {\n const handler = event => {\n if (\n !(event.type === 'keydown' && !arrayIncludes(KEYDOWN_KEY_CODES, event.keyCode)) &&\n !isDisabled(el)\n ) {\n const targets = el[BV_TOGGLE_TARGETS] || []\n targets.forEach(target => {\n vnode.context.$root.$emit(ROOT_ACTION_EVENT_NAME_TOGGLE, target)\n })\n }\n }\n el[BV_TOGGLE_CLICK_HANDLER] = handler\n eventOn(el, 'click', handler, EVENT_OPTIONS_PASSIVE)\n if (isNonStandardTag(el)) {\n eventOn(el, 'keydown', handler, EVENT_OPTIONS_PASSIVE)\n }\n }\n}\n\nconst removeRootListeners = (el, vnode) => {\n if (el[BV_TOGGLE_ROOT_HANDLER] && vnode.context) {\n vnode.context.$root.$off(\n [ROOT_EVENT_NAME_STATE, ROOT_EVENT_NAME_SYNC_STATE],\n el[BV_TOGGLE_ROOT_HANDLER]\n )\n }\n el[BV_TOGGLE_ROOT_HANDLER] = null\n}\n\nconst addRootListeners = (el, vnode) => {\n removeRootListeners(el, vnode)\n if (vnode.context) {\n const handler = (id, state) => {\n // `state` will be `true` if target is expanded\n if (arrayIncludes(el[BV_TOGGLE_TARGETS] || [], id)) {\n // Set/Clear 'collapsed' visibility class state\n el[BV_TOGGLE_STATE] = state\n // Set `aria-expanded` and class state on trigger element\n setToggleState(el, state)\n }\n }\n el[BV_TOGGLE_ROOT_HANDLER] = handler\n // Listen for toggle state changes (public) and sync (private)\n vnode.context.$root.$on([ROOT_EVENT_NAME_STATE, ROOT_EVENT_NAME_SYNC_STATE], handler)\n }\n}\n\nconst setToggleState = (el, state) => {\n // State refers to the visibility of the collapse/sidebar\n if (state) {\n removeClass(el, CLASS_BV_TOGGLE_COLLAPSED)\n addClass(el, CLASS_BV_TOGGLE_NOT_COLLAPSED)\n setAttr(el, ATTR_ARIA_EXPANDED, STRING_TRUE)\n } else {\n removeClass(el, CLASS_BV_TOGGLE_NOT_COLLAPSED)\n addClass(el, CLASS_BV_TOGGLE_COLLAPSED)\n setAttr(el, ATTR_ARIA_EXPANDED, STRING_FALSE)\n }\n}\n\n// Reset and remove a property from the provided element\nconst resetProp = (el, prop) => {\n el[prop] = null\n delete el[prop]\n}\n\n// Handle directive updates\nconst handleUpdate = (el, binding, vnode) => {\n /* istanbul ignore next: should never happen */\n if (!IS_BROWSER || !vnode.context) {\n return\n }\n\n // If element is not a button or link, we add `role=\"button\"`\n // and `tabindex=\"0\"` for accessibility reasons\n if (isNonStandardTag(el)) {\n if (!hasAttr(el, ATTR_ROLE)) {\n setAttr(el, ATTR_ROLE, 'button')\n }\n if (!hasAttr(el, ATTR_TABINDEX)) {\n setAttr(el, ATTR_TABINDEX, '0')\n }\n }\n\n // Ensure the collapse class and `aria-*` attributes persist\n // after element is updated (either by parent re-rendering\n // or changes to this element or its contents)\n setToggleState(el, el[BV_TOGGLE_STATE])\n\n // Parse list of target IDs\n const targets = getTargets(binding, el)\n\n // Ensure the `aria-controls` hasn't been overwritten\n // or removed when vnode updates\n // Also ensure to set `overflow-anchor` to `none` to prevent\n // the browser's scroll anchoring behavior\n /* istanbul ignore else */\n if (targets.length > 0) {\n setAttr(el, ATTR_ARIA_CONTROLS, targets.join(' '))\n setStyle(el, STYLE_OVERFLOW_ANCHOR, 'none')\n } else {\n removeAttr(el, ATTR_ARIA_CONTROLS)\n removeStyle(el, STYLE_OVERFLOW_ANCHOR)\n }\n\n // Add/Update our click listener(s)\n // Wrap in a `requestAF()` to allow any previous\n // click handling to occur first\n requestAF(() => {\n addClickListener(el, vnode)\n })\n\n // If targets array has changed, update\n if (!looseEqual(targets, el[BV_TOGGLE_TARGETS])) {\n // Update targets array to element storage\n el[BV_TOGGLE_TARGETS] = targets\n // Ensure `aria-controls` is up to date\n // Request a state update from targets so that we can\n // ensure expanded state is correct (in most cases)\n targets.forEach(target => {\n vnode.context.$root.$emit(ROOT_ACTION_EVENT_NAME_REQUEST_STATE, target)\n })\n }\n}\n\n/*\n * Export our directive\n */\nexport const VBToggle = {\n bind(el, binding, vnode) {\n // State is initially collapsed until we receive a state event\n el[BV_TOGGLE_STATE] = false\n // Assume no targets initially\n el[BV_TOGGLE_TARGETS] = []\n // Add our root listeners\n addRootListeners(el, vnode)\n // Initial update of trigger\n handleUpdate(el, binding, vnode)\n },\n componentUpdated: handleUpdate,\n updated: handleUpdate,\n unbind(el, binding, vnode) {\n removeClickListener(el)\n // Remove our $root listener\n removeRootListeners(el, vnode)\n // Reset custom props\n resetProp(el, BV_TOGGLE_ROOT_HANDLER)\n resetProp(el, BV_TOGGLE_CLICK_HANDLER)\n resetProp(el, BV_TOGGLE_STATE)\n resetProp(el, BV_TOGGLE_TARGETS)\n // Reset classes/attrs/styles\n removeClass(el, CLASS_BV_TOGGLE_COLLAPSED)\n removeClass(el, CLASS_BV_TOGGLE_NOT_COLLAPSED)\n removeAttr(el, ATTR_ARIA_EXPANDED)\n removeAttr(el, ATTR_ARIA_CONTROLS)\n removeAttr(el, ATTR_ROLE)\n removeStyle(el, STYLE_OVERFLOW_ANCHOR)\n }\n}\n","import { VBToggle } from './toggle'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBTogglePlugin = /*#__PURE__*/ pluginFactory({\n directives: { VBToggle }\n})\n\nexport { VBTogglePlugin, VBToggle }\n","import { BCollapse } from './collapse'\nimport { VBTogglePlugin } from '../../directives/toggle'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst CollapsePlugin = /*#__PURE__*/ pluginFactory({\n components: { BCollapse },\n plugins: { VBTogglePlugin }\n})\n\nexport { CollapsePlugin, BCollapse }\n","/**!\n * @fileOverview Kickass library to create and place poppers near their reference elements.\n * @version 1.16.1\n * @license\n * Copyright (c) 2016 Federico Zivolo and contributors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';\n\nvar timeoutDuration = function () {\n var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];\n for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {\n if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {\n return 1;\n }\n }\n return 0;\n}();\n\nfunction microtaskDebounce(fn) {\n var called = false;\n return function () {\n if (called) {\n return;\n }\n called = true;\n window.Promise.resolve().then(function () {\n called = false;\n fn();\n });\n };\n}\n\nfunction taskDebounce(fn) {\n var scheduled = false;\n return function () {\n if (!scheduled) {\n scheduled = true;\n setTimeout(function () {\n scheduled = false;\n fn();\n }, timeoutDuration);\n }\n };\n}\n\nvar supportsMicroTasks = isBrowser && window.Promise;\n\n/**\n* Create a debounced version of a method, that's asynchronously deferred\n* but called in the minimum time possible.\n*\n* @method\n* @memberof Popper.Utils\n* @argument {Function} fn\n* @returns {Function}\n*/\nvar debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce;\n\n/**\n * Check if the given variable is a function\n * @method\n * @memberof Popper.Utils\n * @argument {Any} functionToCheck - variable to check\n * @returns {Boolean} answer to: is a function?\n */\nfunction isFunction(functionToCheck) {\n var getType = {};\n return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';\n}\n\n/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nfunction getStyleComputedProperty(element, property) {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n var window = element.ownerDocument.defaultView;\n var css = window.getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n\n/**\n * Returns the parentNode or the host of the element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} parent\n */\nfunction getParentNode(element) {\n if (element.nodeName === 'HTML') {\n return element;\n }\n return element.parentNode || element.host;\n}\n\n/**\n * Returns the scrolling parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} scroll parent\n */\nfunction getScrollParent(element) {\n // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n if (!element) {\n return document.body;\n }\n\n switch (element.nodeName) {\n case 'HTML':\n case 'BODY':\n return element.ownerDocument.body;\n case '#document':\n return element.body;\n }\n\n // Firefox want us to check `-x` and `-y` variations as well\n\n var _getStyleComputedProp = getStyleComputedProperty(element),\n overflow = _getStyleComputedProp.overflow,\n overflowX = _getStyleComputedProp.overflowX,\n overflowY = _getStyleComputedProp.overflowY;\n\n if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {\n return element;\n }\n\n return getScrollParent(getParentNode(element));\n}\n\n/**\n * Returns the reference node of the reference object, or the reference object itself.\n * @method\n * @memberof Popper.Utils\n * @param {Element|Object} reference - the reference element (the popper will be relative to this)\n * @returns {Element} parent\n */\nfunction getReferenceNode(reference) {\n return reference && reference.referenceNode ? reference.referenceNode : reference;\n}\n\nvar isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nvar isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nfunction isIE(version) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n\n/**\n * Returns the offset parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} offset parent\n */\nfunction getOffsetParent(element) {\n if (!element) {\n return document.documentElement;\n }\n\n var noOffsetParent = isIE(10) ? document.body : null;\n\n // NOTE: 1 DOM access here\n var offsetParent = element.offsetParent || null;\n // Skip hidden elements which don't have an offsetParent\n while (offsetParent === noOffsetParent && element.nextElementSibling) {\n offsetParent = (element = element.nextElementSibling).offsetParent;\n }\n\n var nodeName = offsetParent && offsetParent.nodeName;\n\n if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n return element ? element.ownerDocument.documentElement : document.documentElement;\n }\n\n // .offsetParent will return the closest TH, TD or TABLE in case\n // no offsetParent is present, I hate this job...\n if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {\n return getOffsetParent(offsetParent);\n }\n\n return offsetParent;\n}\n\nfunction isOffsetContainer(element) {\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY') {\n return false;\n }\n return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;\n}\n\n/**\n * Finds the root node (document, shadowDOM root) of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} node\n * @returns {Element} root node\n */\nfunction getRoot(node) {\n if (node.parentNode !== null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\n/**\n * Finds the offset parent common to the two provided nodes\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element1\n * @argument {Element} element2\n * @returns {Element} common offset parent\n */\nfunction findCommonOffsetParent(element1, element2) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n return document.documentElement;\n }\n\n // Here we make sure to give as \"start\" the element that comes first in the DOM\n var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;\n var start = order ? element1 : element2;\n var end = order ? element2 : element1;\n\n // Get common ancestor container\n var range = document.createRange();\n range.setStart(start, 0);\n range.setEnd(end, 0);\n var commonAncestorContainer = range.commonAncestorContainer;\n\n // Both nodes are inside #document\n\n if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {\n if (isOffsetContainer(commonAncestorContainer)) {\n return commonAncestorContainer;\n }\n\n return getOffsetParent(commonAncestorContainer);\n }\n\n // one of the nodes is inside shadowDOM, find which one\n var element1root = getRoot(element1);\n if (element1root.host) {\n return findCommonOffsetParent(element1root.host, element2);\n } else {\n return findCommonOffsetParent(element1, getRoot(element2).host);\n }\n}\n\n/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} side `top` or `left`\n * @returns {number} amount of scrolled pixels\n */\nfunction getScroll(element) {\n var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';\n\n var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n var html = element.ownerDocument.documentElement;\n var scrollingElement = element.ownerDocument.scrollingElement || html;\n return scrollingElement[upperSide];\n }\n\n return element[upperSide];\n}\n\n/*\n * Sum or subtract the element scroll values (left and top) from a given rect object\n * @method\n * @memberof Popper.Utils\n * @param {Object} rect - Rect object you want to change\n * @param {HTMLElement} element - The element from the function reads the scroll values\n * @param {Boolean} subtract - set to true if you want to subtract the scroll values\n * @return {Object} rect - The modifier rect object\n */\nfunction includeScroll(rect, element) {\n var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n var modifier = subtract ? -1 : 1;\n rect.top += scrollTop * modifier;\n rect.bottom += scrollTop * modifier;\n rect.left += scrollLeft * modifier;\n rect.right += scrollLeft * modifier;\n return rect;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nfunction getBordersSize(styles, axis) {\n var sideA = axis === 'x' ? 'Left' : 'Top';\n var sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n\n return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']);\n}\n\nfunction getSize(axis, body, html, computedStyle) {\n return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0);\n}\n\nfunction getWindowSizes(document) {\n var body = document.body;\n var html = document.documentElement;\n var computedStyle = isIE(10) && getComputedStyle(html);\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle)\n };\n}\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n\n\n\nvar defineProperty = function (obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n};\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nfunction getClientRect(offsets) {\n return _extends({}, offsets, {\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height\n });\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nfunction getBoundingClientRect(element) {\n var rect = {};\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n } else {\n rect = element.getBoundingClientRect();\n }\n } catch (e) {}\n\n var result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top\n };\n\n // subtract scrollbar size from sizes\n var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};\n var width = sizes.width || element.clientWidth || result.width;\n var height = sizes.height || element.clientHeight || result.height;\n\n var horizScrollbar = element.offsetWidth - width;\n var vertScrollbar = element.offsetHeight - height;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n var styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result);\n}\n\nfunction getOffsetRectRelativeToArbitraryNode(children, parent) {\n var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var isIE10 = isIE(10);\n var isHTML = parent.nodeName === 'HTML';\n var childrenRect = getBoundingClientRect(children);\n var parentRect = getBoundingClientRect(parent);\n var scrollParent = getScrollParent(children);\n\n var styles = getStyleComputedProperty(parent);\n var borderTopWidth = parseFloat(styles.borderTopWidth);\n var borderLeftWidth = parseFloat(styles.borderLeftWidth);\n\n // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n if (fixedPosition && isHTML) {\n parentRect.top = Math.max(parentRect.top, 0);\n parentRect.left = Math.max(parentRect.left, 0);\n }\n var offsets = getClientRect({\n top: childrenRect.top - parentRect.top - borderTopWidth,\n left: childrenRect.left - parentRect.left - borderLeftWidth,\n width: childrenRect.width,\n height: childrenRect.height\n });\n offsets.marginTop = 0;\n offsets.marginLeft = 0;\n\n // Subtract margins of documentElement in case it's being used as parent\n // we do this only on HTML because it's the only element that behaves\n // differently when margins are applied to it. The margins are included in\n // the box of the documentElement, in the other cases not.\n if (!isIE10 && isHTML) {\n var marginTop = parseFloat(styles.marginTop);\n var marginLeft = parseFloat(styles.marginLeft);\n\n offsets.top -= borderTopWidth - marginTop;\n offsets.bottom -= borderTopWidth - marginTop;\n offsets.left -= borderLeftWidth - marginLeft;\n offsets.right -= borderLeftWidth - marginLeft;\n\n // Attach marginTop and marginLeft because in some circumstances we may need them\n offsets.marginTop = marginTop;\n offsets.marginLeft = marginLeft;\n }\n\n if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {\n offsets = includeScroll(offsets, parent);\n }\n\n return offsets;\n}\n\nfunction getViewportOffsetRectRelativeToArtbitraryNode(element) {\n var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var html = element.ownerDocument.documentElement;\n var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n var width = Math.max(html.clientWidth, window.innerWidth || 0);\n var height = Math.max(html.clientHeight, window.innerHeight || 0);\n\n var scrollTop = !excludeScroll ? getScroll(html) : 0;\n var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n\n var offset = {\n top: scrollTop - relativeOffset.top + relativeOffset.marginTop,\n left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,\n width: width,\n height: height\n };\n\n return getClientRect(offset);\n}\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {Element} customContainer\n * @returns {Boolean} answer to \"isFixed?\"\n */\nfunction isFixed(element) {\n var nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n if (getStyleComputedProperty(element, 'position') === 'fixed') {\n return true;\n }\n var parentNode = getParentNode(element);\n if (!parentNode) {\n return false;\n }\n return isFixed(parentNode);\n}\n\n/**\n * Finds the first parent of an element that has a transformed property defined\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} first transformed parent or documentElement\n */\n\nfunction getFixedPositionOffsetParent(element) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element || !element.parentElement || isIE()) {\n return document.documentElement;\n }\n var el = element.parentElement;\n while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n el = el.parentElement;\n }\n return el || document.documentElement;\n}\n\n/**\n * Computed the boundaries limits and return them\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} popper\n * @param {HTMLElement} reference\n * @param {number} padding\n * @param {HTMLElement} boundariesElement - Element used to define the boundaries\n * @param {Boolean} fixedPosition - Is in fixed position mode\n * @returns {Object} Coordinates of the boundaries\n */\nfunction getBoundaries(popper, reference, padding, boundariesElement) {\n var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n // NOTE: 1 DOM access here\n\n var boundaries = { top: 0, left: 0 };\n var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n\n // Handle viewport case\n if (boundariesElement === 'viewport') {\n boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n } else {\n // Handle other cases based on DOM element used as boundaries\n var boundariesNode = void 0;\n if (boundariesElement === 'scrollParent') {\n boundariesNode = getScrollParent(getParentNode(reference));\n if (boundariesNode.nodeName === 'BODY') {\n boundariesNode = popper.ownerDocument.documentElement;\n }\n } else if (boundariesElement === 'window') {\n boundariesNode = popper.ownerDocument.documentElement;\n } else {\n boundariesNode = boundariesElement;\n }\n\n var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);\n\n // In case of HTML, we need a different computation\n if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n var _getWindowSizes = getWindowSizes(popper.ownerDocument),\n height = _getWindowSizes.height,\n width = _getWindowSizes.width;\n\n boundaries.top += offsets.top - offsets.marginTop;\n boundaries.bottom = height + offsets.top;\n boundaries.left += offsets.left - offsets.marginLeft;\n boundaries.right = width + offsets.left;\n } else {\n // for all the other DOM elements, this one is good\n boundaries = offsets;\n }\n }\n\n // Add paddings\n padding = padding || 0;\n var isPaddingNumber = typeof padding === 'number';\n boundaries.left += isPaddingNumber ? padding : padding.left || 0;\n boundaries.top += isPaddingNumber ? padding : padding.top || 0;\n boundaries.right -= isPaddingNumber ? padding : padding.right || 0;\n boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0;\n\n return boundaries;\n}\n\nfunction getArea(_ref) {\n var width = _ref.width,\n height = _ref.height;\n\n return width * height;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n * @method\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {\n var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n\n if (placement.indexOf('auto') === -1) {\n return placement;\n }\n\n var boundaries = getBoundaries(popper, reference, padding, boundariesElement);\n\n var rects = {\n top: {\n width: boundaries.width,\n height: refRect.top - boundaries.top\n },\n right: {\n width: boundaries.right - refRect.right,\n height: boundaries.height\n },\n bottom: {\n width: boundaries.width,\n height: boundaries.bottom - refRect.bottom\n },\n left: {\n width: refRect.left - boundaries.left,\n height: boundaries.height\n }\n };\n\n var sortedAreas = Object.keys(rects).map(function (key) {\n return _extends({\n key: key\n }, rects[key], {\n area: getArea(rects[key])\n });\n }).sort(function (a, b) {\n return b.area - a.area;\n });\n\n var filteredAreas = sortedAreas.filter(function (_ref2) {\n var width = _ref2.width,\n height = _ref2.height;\n return width >= popper.clientWidth && height >= popper.clientHeight;\n });\n\n var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;\n\n var variation = placement.split('-')[1];\n\n return computedPlacement + (variation ? '-' + variation : '');\n}\n\n/**\n * Get offsets to the reference element\n * @method\n * @memberof Popper.Utils\n * @param {Object} state\n * @param {Element} popper - the popper element\n * @param {Element} reference - the reference element (the popper will be relative to this)\n * @param {Element} fixedPosition - is in fixed position mode\n * @returns {Object} An object containing the offsets which will be applied to the popper\n */\nfunction getReferenceOffsets(state, popper, reference) {\n var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);\n}\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nfunction getOuterSizes(element) {\n var window = element.ownerDocument.defaultView;\n var styles = window.getComputedStyle(element);\n var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n var result = {\n width: element.offsetWidth + y,\n height: element.offsetHeight + x\n };\n return result;\n}\n\n/**\n * Get the opposite placement of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement\n * @returns {String} flipped placement\n */\nfunction getOppositePlacement(placement) {\n var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}\n\n/**\n * Get offsets to the popper\n * @method\n * @memberof Popper.Utils\n * @param {Object} position - CSS position the Popper will get applied\n * @param {HTMLElement} popper - the popper element\n * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)\n * @param {String} placement - one of the valid placement options\n * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper\n */\nfunction getPopperOffsets(popper, referenceOffsets, placement) {\n placement = placement.split('-')[0];\n\n // Get popper node sizes\n var popperRect = getOuterSizes(popper);\n\n // Add position, width and height to our offsets object\n var popperOffsets = {\n width: popperRect.width,\n height: popperRect.height\n };\n\n // depending by the popper placement we have to compute its offsets slightly differently\n var isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n var mainSide = isHoriz ? 'top' : 'left';\n var secondarySide = isHoriz ? 'left' : 'top';\n var measurement = isHoriz ? 'height' : 'width';\n var secondaryMeasurement = !isHoriz ? 'height' : 'width';\n\n popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;\n if (placement === secondarySide) {\n popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];\n } else {\n popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];\n }\n\n return popperOffsets;\n}\n\n/**\n * Mimics the `find` method of Array\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction find(arr, check) {\n // use native find if supported\n if (Array.prototype.find) {\n return arr.find(check);\n }\n\n // use `filter` to obtain the same behavior of `find`\n return arr.filter(check)[0];\n}\n\n/**\n * Return the index of the matching object\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction findIndex(arr, prop, value) {\n // use native findIndex if supported\n if (Array.prototype.findIndex) {\n return arr.findIndex(function (cur) {\n return cur[prop] === value;\n });\n }\n\n // use `find` + `indexOf` if `findIndex` isn't supported\n var match = find(arr, function (obj) {\n return obj[prop] === value;\n });\n return arr.indexOf(match);\n}\n\n/**\n * Loop trough the list of modifiers and run them in order,\n * each of them will then edit the data object.\n * @method\n * @memberof Popper.Utils\n * @param {dataObject} data\n * @param {Array} modifiers\n * @param {String} ends - Optional modifier name used as stopper\n * @returns {dataObject}\n */\nfunction runModifiers(modifiers, data, ends) {\n var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));\n\n modifiersToRun.forEach(function (modifier) {\n if (modifier['function']) {\n // eslint-disable-line dot-notation\n console.warn('`modifier.function` is deprecated, use `modifier.fn`!');\n }\n var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation\n if (modifier.enabled && isFunction(fn)) {\n // Add properties to offsets to make them a complete clientRect object\n // we do this before each modifier to make sure the previous one doesn't\n // mess with these values\n data.offsets.popper = getClientRect(data.offsets.popper);\n data.offsets.reference = getClientRect(data.offsets.reference);\n\n data = fn(data, modifier);\n }\n });\n\n return data;\n}\n\n/**\n * Updates the position of the popper, computing the new offsets and applying\n * the new style.<br />\n * Prefer `scheduleUpdate` over `update` because of performance reasons.\n * @method\n * @memberof Popper\n */\nfunction update() {\n // if popper is destroyed, don't perform any further update\n if (this.state.isDestroyed) {\n return;\n }\n\n var data = {\n instance: this,\n styles: {},\n arrowStyles: {},\n attributes: {},\n flipped: false,\n offsets: {}\n };\n\n // compute reference element offsets\n data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding);\n\n // store the computed placement inside `originalPlacement`\n data.originalPlacement = data.placement;\n\n data.positionFixed = this.options.positionFixed;\n\n // compute the popper offsets\n data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);\n\n data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute';\n\n // run the modifiers\n data = runModifiers(this.modifiers, data);\n\n // the first `update` will call `onCreate` callback\n // the other ones will call `onUpdate` callback\n if (!this.state.isCreated) {\n this.state.isCreated = true;\n this.options.onCreate(data);\n } else {\n this.options.onUpdate(data);\n }\n}\n\n/**\n * Helper used to know if the given modifier is enabled.\n * @method\n * @memberof Popper.Utils\n * @returns {Boolean}\n */\nfunction isModifierEnabled(modifiers, modifierName) {\n return modifiers.some(function (_ref) {\n var name = _ref.name,\n enabled = _ref.enabled;\n return enabled && name === modifierName;\n });\n}\n\n/**\n * Get the prefixed supported property name\n * @method\n * @memberof Popper.Utils\n * @argument {String} property (camelCase)\n * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix)\n */\nfunction getSupportedPropertyName(property) {\n var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];\n var upperProp = property.charAt(0).toUpperCase() + property.slice(1);\n\n for (var i = 0; i < prefixes.length; i++) {\n var prefix = prefixes[i];\n var toCheck = prefix ? '' + prefix + upperProp : property;\n if (typeof document.body.style[toCheck] !== 'undefined') {\n return toCheck;\n }\n }\n return null;\n}\n\n/**\n * Destroys the popper.\n * @method\n * @memberof Popper\n */\nfunction destroy() {\n this.state.isDestroyed = true;\n\n // touch DOM only if `applyStyle` modifier is enabled\n if (isModifierEnabled(this.modifiers, 'applyStyle')) {\n this.popper.removeAttribute('x-placement');\n this.popper.style.position = '';\n this.popper.style.top = '';\n this.popper.style.left = '';\n this.popper.style.right = '';\n this.popper.style.bottom = '';\n this.popper.style.willChange = '';\n this.popper.style[getSupportedPropertyName('transform')] = '';\n }\n\n this.disableEventListeners();\n\n // remove the popper if user explicitly asked for the deletion on destroy\n // do not use `remove` because IE11 doesn't support it\n if (this.options.removeOnDestroy) {\n this.popper.parentNode.removeChild(this.popper);\n }\n return this;\n}\n\n/**\n * Get the window associated with the element\n * @argument {Element} element\n * @returns {Window}\n */\nfunction getWindow(element) {\n var ownerDocument = element.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView : window;\n}\n\nfunction attachToScrollParents(scrollParent, event, callback, scrollParents) {\n var isBody = scrollParent.nodeName === 'BODY';\n var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent;\n target.addEventListener(event, callback, { passive: true });\n\n if (!isBody) {\n attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents);\n }\n scrollParents.push(target);\n}\n\n/**\n * Setup needed event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction setupEventListeners(reference, options, state, updateBound) {\n // Resize event listener on window\n state.updateBound = updateBound;\n getWindow(reference).addEventListener('resize', state.updateBound, { passive: true });\n\n // Scroll event listener on scroll parents\n var scrollElement = getScrollParent(reference);\n attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents);\n state.scrollElement = scrollElement;\n state.eventsEnabled = true;\n\n return state;\n}\n\n/**\n * It will add resize/scroll events and start recalculating\n * position of the popper element when they are triggered.\n * @method\n * @memberof Popper\n */\nfunction enableEventListeners() {\n if (!this.state.eventsEnabled) {\n this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate);\n }\n}\n\n/**\n * Remove event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction removeEventListeners(reference, state) {\n // Remove resize event listener on window\n getWindow(reference).removeEventListener('resize', state.updateBound);\n\n // Remove scroll event listener on scroll parents\n state.scrollParents.forEach(function (target) {\n target.removeEventListener('scroll', state.updateBound);\n });\n\n // Reset state\n state.updateBound = null;\n state.scrollParents = [];\n state.scrollElement = null;\n state.eventsEnabled = false;\n return state;\n}\n\n/**\n * It will remove resize/scroll events and won't recalculate popper position\n * when they are triggered. It also won't trigger `onUpdate` callback anymore,\n * unless you call `update` method manually.\n * @method\n * @memberof Popper\n */\nfunction disableEventListeners() {\n if (this.state.eventsEnabled) {\n cancelAnimationFrame(this.scheduleUpdate);\n this.state = removeEventListeners(this.reference, this.state);\n }\n}\n\n/**\n * Tells if a given input is a number\n * @method\n * @memberof Popper.Utils\n * @param {*} input to check\n * @return {Boolean}\n */\nfunction isNumeric(n) {\n return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);\n}\n\n/**\n * Set the style to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the style to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setStyles(element, styles) {\n Object.keys(styles).forEach(function (prop) {\n var unit = '';\n // add unit if the value is numeric and is one of the following\n if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) {\n unit = 'px';\n }\n element.style[prop] = styles[prop] + unit;\n });\n}\n\n/**\n * Set the attributes to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the attributes to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setAttributes(element, attributes) {\n Object.keys(attributes).forEach(function (prop) {\n var value = attributes[prop];\n if (value !== false) {\n element.setAttribute(prop, attributes[prop]);\n } else {\n element.removeAttribute(prop);\n }\n });\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} data.styles - List of style properties - values to apply to popper element\n * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The same data object\n */\nfunction applyStyle(data) {\n // any property present in `data.styles` will be applied to the popper,\n // in this way we can make the 3rd party modifiers add custom styles to it\n // Be aware, modifiers could override the properties defined in the previous\n // lines of this modifier!\n setStyles(data.instance.popper, data.styles);\n\n // any property present in `data.attributes` will be applied to the popper,\n // they will be set as HTML attributes of the element\n setAttributes(data.instance.popper, data.attributes);\n\n // if arrowElement is defined and arrowStyles has some properties\n if (data.arrowElement && Object.keys(data.arrowStyles).length) {\n setStyles(data.arrowElement, data.arrowStyles);\n }\n\n return data;\n}\n\n/**\n * Set the x-placement attribute before everything else because it could be used\n * to add margins to the popper margins needs to be calculated to get the\n * correct popper offsets.\n * @method\n * @memberof Popper.modifiers\n * @param {HTMLElement} reference - The reference element used to position the popper\n * @param {HTMLElement} popper - The HTML element used as popper\n * @param {Object} options - Popper.js options\n */\nfunction applyStyleOnLoad(reference, popper, options, modifierOptions, state) {\n // compute reference element offsets\n var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding);\n\n popper.setAttribute('x-placement', placement);\n\n // Apply `position` to popper before anything else because\n // without the position applied we can't guarantee correct computations\n setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' });\n\n return options;\n}\n\n/**\n * @function\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Boolean} shouldRound - If the offsets should be rounded at all\n * @returns {Object} The popper's position offsets rounded\n *\n * The tale of pixel-perfect positioning. It's still not 100% perfect, but as\n * good as it can be within reason.\n * Discussion here: https://github.com/FezVrasta/popper.js/pull/715\n *\n * Low DPI screens cause a popper to be blurry if not using full pixels (Safari\n * as well on High DPI screens).\n *\n * Firefox prefers no rounding for positioning and does not have blurriness on\n * high DPI screens.\n *\n * Only horizontal placement and left/right values need to be considered.\n */\nfunction getRoundedOffsets(data, shouldRound) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n var round = Math.round,\n floor = Math.floor;\n\n var noRound = function noRound(v) {\n return v;\n };\n\n var referenceWidth = round(reference.width);\n var popperWidth = round(popper.width);\n\n var isVertical = ['left', 'right'].indexOf(data.placement) !== -1;\n var isVariation = data.placement.indexOf('-') !== -1;\n var sameWidthParity = referenceWidth % 2 === popperWidth % 2;\n var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1;\n\n var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor;\n var verticalToInteger = !shouldRound ? noRound : round;\n\n return {\n left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left),\n top: verticalToInteger(popper.top),\n bottom: verticalToInteger(popper.bottom),\n right: horizontalToInteger(popper.right)\n };\n}\n\nvar isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent);\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeStyle(data, options) {\n var x = options.x,\n y = options.y;\n var popper = data.offsets.popper;\n\n // Remove this legacy support in Popper.js v2\n\n var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'applyStyle';\n }).gpuAcceleration;\n if (legacyGpuAccelerationOption !== undefined) {\n console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!');\n }\n var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration;\n\n var offsetParent = getOffsetParent(data.instance.popper);\n var offsetParentRect = getBoundingClientRect(offsetParent);\n\n // Styles\n var styles = {\n position: popper.position\n };\n\n var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox);\n\n var sideA = x === 'bottom' ? 'top' : 'bottom';\n var sideB = y === 'right' ? 'left' : 'right';\n\n // if gpuAcceleration is set to `true` and transform is supported,\n // we use `translate3d` to apply the position to the popper we\n // automatically use the supported prefixed version if needed\n var prefixedProperty = getSupportedPropertyName('transform');\n\n // now, let's make a step back and look at this code closely (wtf?)\n // If the content of the popper grows once it's been positioned, it\n // may happen that the popper gets misplaced because of the new content\n // overflowing its reference element\n // To avoid this problem, we provide two options (x and y), which allow\n // the consumer to define the offset origin.\n // If we position a popper on top of a reference element, we can set\n // `x` to `top` to make the popper grow towards its top instead of\n // its bottom.\n var left = void 0,\n top = void 0;\n if (sideA === 'bottom') {\n // when offsetParent is <html> the positioning is relative to the bottom of the screen (excluding the scrollbar)\n // and not the bottom of the html element\n if (offsetParent.nodeName === 'HTML') {\n top = -offsetParent.clientHeight + offsets.bottom;\n } else {\n top = -offsetParentRect.height + offsets.bottom;\n }\n } else {\n top = offsets.top;\n }\n if (sideB === 'right') {\n if (offsetParent.nodeName === 'HTML') {\n left = -offsetParent.clientWidth + offsets.right;\n } else {\n left = -offsetParentRect.width + offsets.right;\n }\n } else {\n left = offsets.left;\n }\n if (gpuAcceleration && prefixedProperty) {\n styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)';\n styles[sideA] = 0;\n styles[sideB] = 0;\n styles.willChange = 'transform';\n } else {\n // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties\n var invertTop = sideA === 'bottom' ? -1 : 1;\n var invertLeft = sideB === 'right' ? -1 : 1;\n styles[sideA] = top * invertTop;\n styles[sideB] = left * invertLeft;\n styles.willChange = sideA + ', ' + sideB;\n }\n\n // Attributes\n var attributes = {\n 'x-placement': data.placement\n };\n\n // Update `data` attributes, styles and arrowStyles\n data.attributes = _extends({}, attributes, data.attributes);\n data.styles = _extends({}, styles, data.styles);\n data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles);\n\n return data;\n}\n\n/**\n * Helper used to know if the given modifier depends from another one.<br />\n * It checks if the needed modifier is listed and enabled.\n * @method\n * @memberof Popper.Utils\n * @param {Array} modifiers - list of modifiers\n * @param {String} requestingName - name of requesting modifier\n * @param {String} requestedName - name of requested modifier\n * @returns {Boolean}\n */\nfunction isModifierRequired(modifiers, requestingName, requestedName) {\n var requesting = find(modifiers, function (_ref) {\n var name = _ref.name;\n return name === requestingName;\n });\n\n var isRequired = !!requesting && modifiers.some(function (modifier) {\n return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order;\n });\n\n if (!isRequired) {\n var _requesting = '`' + requestingName + '`';\n var requested = '`' + requestedName + '`';\n console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!');\n }\n return isRequired;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction arrow(data, options) {\n var _data$offsets$arrow;\n\n // arrow depends on keepTogether in order to work\n if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) {\n return data;\n }\n\n var arrowElement = options.element;\n\n // if arrowElement is a string, suppose it's a CSS selector\n if (typeof arrowElement === 'string') {\n arrowElement = data.instance.popper.querySelector(arrowElement);\n\n // if arrowElement is not found, don't run the modifier\n if (!arrowElement) {\n return data;\n }\n } else {\n // if the arrowElement isn't a query selector we must check that the\n // provided DOM node is child of its popper node\n if (!data.instance.popper.contains(arrowElement)) {\n console.warn('WARNING: `arrow.element` must be child of its popper element!');\n return data;\n }\n }\n\n var placement = data.placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isVertical = ['left', 'right'].indexOf(placement) !== -1;\n\n var len = isVertical ? 'height' : 'width';\n var sideCapitalized = isVertical ? 'Top' : 'Left';\n var side = sideCapitalized.toLowerCase();\n var altSide = isVertical ? 'left' : 'top';\n var opSide = isVertical ? 'bottom' : 'right';\n var arrowElementSize = getOuterSizes(arrowElement)[len];\n\n //\n // extends keepTogether behavior making sure the popper and its\n // reference have enough pixels in conjunction\n //\n\n // top/left side\n if (reference[opSide] - arrowElementSize < popper[side]) {\n data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize);\n }\n // bottom/right side\n if (reference[side] + arrowElementSize > popper[opSide]) {\n data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide];\n }\n data.offsets.popper = getClientRect(data.offsets.popper);\n\n // compute center of the popper\n var center = reference[side] + reference[len] / 2 - arrowElementSize / 2;\n\n // Compute the sideValue using the updated popper offsets\n // take popper margin in account because we don't have this info available\n var css = getStyleComputedProperty(data.instance.popper);\n var popperMarginSide = parseFloat(css['margin' + sideCapitalized]);\n var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width']);\n var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide;\n\n // prevent arrowElement from being placed not contiguously to its popper\n sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0);\n\n data.arrowElement = arrowElement;\n data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow);\n\n return data;\n}\n\n/**\n * Get the opposite placement variation of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement variation\n * @returns {String} flipped placement variation\n */\nfunction getOppositeVariation(variation) {\n if (variation === 'end') {\n return 'start';\n } else if (variation === 'start') {\n return 'end';\n }\n return variation;\n}\n\n/**\n * List of accepted placements to use as values of the `placement` option.<br />\n * Valid placements are:\n * - `auto`\n * - `top`\n * - `right`\n * - `bottom`\n * - `left`\n *\n * Each placement can have a variation from this list:\n * - `-start`\n * - `-end`\n *\n * Variations are interpreted easily if you think of them as the left to right\n * written languages. Horizontally (`top` and `bottom`), `start` is left and `end`\n * is right.<br />\n * Vertically (`left` and `right`), `start` is top and `end` is bottom.\n *\n * Some valid examples are:\n * - `top-end` (on top of reference, right aligned)\n * - `right-start` (on right of reference, top aligned)\n * - `bottom` (on bottom, centered)\n * - `auto-end` (on the side with more space available, alignment depends by placement)\n *\n * @static\n * @type {Array}\n * @enum {String}\n * @readonly\n * @method placements\n * @memberof Popper\n */\nvar placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start'];\n\n// Get rid of `auto` `auto-start` and `auto-end`\nvar validPlacements = placements.slice(3);\n\n/**\n * Given an initial placement, returns all the subsequent placements\n * clockwise (or counter-clockwise).\n *\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement - A valid placement (it accepts variations)\n * @argument {Boolean} counter - Set to true to walk the placements counterclockwise\n * @returns {Array} placements including their variations\n */\nfunction clockwise(placement) {\n var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var index = validPlacements.indexOf(placement);\n var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index));\n return counter ? arr.reverse() : arr;\n}\n\nvar BEHAVIORS = {\n FLIP: 'flip',\n CLOCKWISE: 'clockwise',\n COUNTERCLOCKWISE: 'counterclockwise'\n};\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction flip(data, options) {\n // if `inner` modifier is enabled, we can't use the `flip` modifier\n if (isModifierEnabled(data.instance.modifiers, 'inner')) {\n return data;\n }\n\n if (data.flipped && data.placement === data.originalPlacement) {\n // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides\n return data;\n }\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed);\n\n var placement = data.placement.split('-')[0];\n var placementOpposite = getOppositePlacement(placement);\n var variation = data.placement.split('-')[1] || '';\n\n var flipOrder = [];\n\n switch (options.behavior) {\n case BEHAVIORS.FLIP:\n flipOrder = [placement, placementOpposite];\n break;\n case BEHAVIORS.CLOCKWISE:\n flipOrder = clockwise(placement);\n break;\n case BEHAVIORS.COUNTERCLOCKWISE:\n flipOrder = clockwise(placement, true);\n break;\n default:\n flipOrder = options.behavior;\n }\n\n flipOrder.forEach(function (step, index) {\n if (placement !== step || flipOrder.length === index + 1) {\n return data;\n }\n\n placement = data.placement.split('-')[0];\n placementOpposite = getOppositePlacement(placement);\n\n var popperOffsets = data.offsets.popper;\n var refOffsets = data.offsets.reference;\n\n // using floor because the reference offsets may contain decimals we are not going to consider here\n var floor = Math.floor;\n var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom);\n\n var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left);\n var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right);\n var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top);\n var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom);\n\n var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom;\n\n // flip the variation if required\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n\n // flips variation if reference element overflows boundaries\n var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);\n\n // flips variation if popper content overflows boundaries\n var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop);\n\n var flippedVariation = flippedVariationByRef || flippedVariationByContent;\n\n if (overlapsRef || overflowsBoundaries || flippedVariation) {\n // this boolean to detect any flip loop\n data.flipped = true;\n\n if (overlapsRef || overflowsBoundaries) {\n placement = flipOrder[index + 1];\n }\n\n if (flippedVariation) {\n variation = getOppositeVariation(variation);\n }\n\n data.placement = placement + (variation ? '-' + variation : '');\n\n // this object contains `position`, we want to preserve it along with\n // any additional property we may add in the future\n data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));\n\n data = runModifiers(data.instance.modifiers, data, 'flip');\n }\n });\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction keepTogether(data) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var placement = data.placement.split('-')[0];\n var floor = Math.floor;\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n var side = isVertical ? 'right' : 'bottom';\n var opSide = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n if (popper[side] < floor(reference[opSide])) {\n data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement];\n }\n if (popper[opSide] > floor(reference[side])) {\n data.offsets.popper[opSide] = floor(reference[side]);\n }\n\n return data;\n}\n\n/**\n * Converts a string containing value + unit into a px value number\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} str - Value + unit string\n * @argument {String} measurement - `height` or `width`\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @returns {Number|String}\n * Value in pixels, or original string if no values were extracted\n */\nfunction toValue(str, measurement, popperOffsets, referenceOffsets) {\n // separate value from unit\n var split = str.match(/((?:\\-|\\+)?\\d*\\.?\\d*)(.*)/);\n var value = +split[1];\n var unit = split[2];\n\n // If it's not a number it's an operator, I guess\n if (!value) {\n return str;\n }\n\n if (unit.indexOf('%') === 0) {\n var element = void 0;\n switch (unit) {\n case '%p':\n element = popperOffsets;\n break;\n case '%':\n case '%r':\n default:\n element = referenceOffsets;\n }\n\n var rect = getClientRect(element);\n return rect[measurement] / 100 * value;\n } else if (unit === 'vh' || unit === 'vw') {\n // if is a vh or vw, we calculate the size based on the viewport\n var size = void 0;\n if (unit === 'vh') {\n size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n } else {\n size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n }\n return size / 100 * value;\n } else {\n // if is an explicit pixel unit, we get rid of the unit and keep the value\n // if is an implicit unit, it's px, and we return just the value\n return value;\n }\n}\n\n/**\n * Parse an `offset` string to extrapolate `x` and `y` numeric offsets.\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} offset\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @argument {String} basePlacement\n * @returns {Array} a two cells array with x and y offsets in numbers\n */\nfunction parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) {\n var offsets = [0, 0];\n\n // Use height if placement is left or right and index is 0 otherwise use width\n // in this way the first offset will use an axis and the second one\n // will use the other one\n var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1;\n\n // Split the offset string to obtain a list of values and operands\n // The regex addresses values with the plus or minus sign in front (+10, -20, etc)\n var fragments = offset.split(/(\\+|\\-)/).map(function (frag) {\n return frag.trim();\n });\n\n // Detect if the offset string contains a pair of values or a single one\n // they could be separated by comma or space\n var divider = fragments.indexOf(find(fragments, function (frag) {\n return frag.search(/,|\\s/) !== -1;\n }));\n\n if (fragments[divider] && fragments[divider].indexOf(',') === -1) {\n console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.');\n }\n\n // If divider is found, we divide the list of values and operands to divide\n // them by ofset X and Y.\n var splitRegex = /\\s*,\\s*|\\s+/;\n var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments];\n\n // Convert the values with units to absolute pixels to allow our computations\n ops = ops.map(function (op, index) {\n // Most of the units rely on the orientation of the popper\n var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width';\n var mergeWithPrevious = false;\n return op\n // This aggregates any `+` or `-` sign that aren't considered operators\n // e.g.: 10 + +5 => [10, +, +5]\n .reduce(function (a, b) {\n if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) {\n a[a.length - 1] = b;\n mergeWithPrevious = true;\n return a;\n } else if (mergeWithPrevious) {\n a[a.length - 1] += b;\n mergeWithPrevious = false;\n return a;\n } else {\n return a.concat(b);\n }\n }, [])\n // Here we convert the string values into number values (in px)\n .map(function (str) {\n return toValue(str, measurement, popperOffsets, referenceOffsets);\n });\n });\n\n // Loop trough the offsets arrays and execute the operations\n ops.forEach(function (op, index) {\n op.forEach(function (frag, index2) {\n if (isNumeric(frag)) {\n offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1);\n }\n });\n });\n return offsets;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @argument {Number|String} options.offset=0\n * The offset value as described in the modifier description\n * @returns {Object} The data object, properly modified\n */\nfunction offset(data, _ref) {\n var offset = _ref.offset;\n var placement = data.placement,\n _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var basePlacement = placement.split('-')[0];\n\n var offsets = void 0;\n if (isNumeric(+offset)) {\n offsets = [+offset, 0];\n } else {\n offsets = parseOffset(offset, popper, reference, basePlacement);\n }\n\n if (basePlacement === 'left') {\n popper.top += offsets[0];\n popper.left -= offsets[1];\n } else if (basePlacement === 'right') {\n popper.top += offsets[0];\n popper.left += offsets[1];\n } else if (basePlacement === 'top') {\n popper.left += offsets[0];\n popper.top -= offsets[1];\n } else if (basePlacement === 'bottom') {\n popper.left += offsets[0];\n popper.top += offsets[1];\n }\n\n data.popper = popper;\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction preventOverflow(data, options) {\n var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper);\n\n // If offsetParent is the reference element, we really want to\n // go one step up and use the next offsetParent as reference to\n // avoid to make this modifier completely useless and look like broken\n if (data.instance.reference === boundariesElement) {\n boundariesElement = getOffsetParent(boundariesElement);\n }\n\n // NOTE: DOM access here\n // resets the popper's position so that the document size can be calculated excluding\n // the size of the popper element itself\n var transformProp = getSupportedPropertyName('transform');\n var popperStyles = data.instance.popper.style; // assignment to help minification\n var top = popperStyles.top,\n left = popperStyles.left,\n transform = popperStyles[transformProp];\n\n popperStyles.top = '';\n popperStyles.left = '';\n popperStyles[transformProp] = '';\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed);\n\n // NOTE: DOM access here\n // restores the original style properties after the offsets have been computed\n popperStyles.top = top;\n popperStyles.left = left;\n popperStyles[transformProp] = transform;\n\n options.boundaries = boundaries;\n\n var order = options.priority;\n var popper = data.offsets.popper;\n\n var check = {\n primary: function primary(placement) {\n var value = popper[placement];\n if (popper[placement] < boundaries[placement] && !options.escapeWithReference) {\n value = Math.max(popper[placement], boundaries[placement]);\n }\n return defineProperty({}, placement, value);\n },\n secondary: function secondary(placement) {\n var mainSide = placement === 'right' ? 'left' : 'top';\n var value = popper[mainSide];\n if (popper[placement] > boundaries[placement] && !options.escapeWithReference) {\n value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height));\n }\n return defineProperty({}, mainSide, value);\n }\n };\n\n order.forEach(function (placement) {\n var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';\n popper = _extends({}, popper, check[side](placement));\n });\n\n data.offsets.popper = popper;\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction shift(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var shiftvariation = placement.split('-')[1];\n\n // if shift shiftvariation is specified, run the modifier\n if (shiftvariation) {\n var _data$offsets = data.offsets,\n reference = _data$offsets.reference,\n popper = _data$offsets.popper;\n\n var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;\n var side = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n var shiftOffsets = {\n start: defineProperty({}, side, reference[side]),\n end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])\n };\n\n data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]);\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction hide(data) {\n if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) {\n return data;\n }\n\n var refRect = data.offsets.reference;\n var bound = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'preventOverflow';\n }).boundaries;\n\n if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === true) {\n return data;\n }\n\n data.hide = true;\n data.attributes['x-out-of-boundaries'] = '';\n } else {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === false) {\n return data;\n }\n\n data.hide = false;\n data.attributes['x-out-of-boundaries'] = false;\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction inner(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1;\n\n var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1;\n\n popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0);\n\n data.placement = getOppositePlacement(placement);\n data.offsets.popper = getClientRect(popper);\n\n return data;\n}\n\n/**\n * Modifier function, each modifier can have a function of this type assigned\n * to its `fn` property.<br />\n * These functions will be called on each update, this means that you must\n * make sure they are performant enough to avoid performance bottlenecks.\n *\n * @function ModifierFn\n * @argument {dataObject} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {dataObject} The data object, properly modified\n */\n\n/**\n * Modifiers are plugins used to alter the behavior of your poppers.<br />\n * Popper.js uses a set of 9 modifiers to provide all the basic functionalities\n * needed by the library.\n *\n * Usually you don't want to override the `order`, `fn` and `onLoad` props.\n * All the other properties are configurations that could be tweaked.\n * @namespace modifiers\n */\nvar modifiers = {\n /**\n * Modifier used to shift the popper on the start or end of its reference\n * element.<br />\n * It will read the variation of the `placement` property.<br />\n * It can be one either `-end` or `-start`.\n * @memberof modifiers\n * @inner\n */\n shift: {\n /** @prop {number} order=100 - Index used to define the order of execution */\n order: 100,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: shift\n },\n\n /**\n * The `offset` modifier can shift your popper on both its axis.\n *\n * It accepts the following units:\n * - `px` or unit-less, interpreted as pixels\n * - `%` or `%r`, percentage relative to the length of the reference element\n * - `%p`, percentage relative to the length of the popper element\n * - `vw`, CSS viewport width unit\n * - `vh`, CSS viewport height unit\n *\n * For length is intended the main axis relative to the placement of the popper.<br />\n * This means that if the placement is `top` or `bottom`, the length will be the\n * `width`. In case of `left` or `right`, it will be the `height`.\n *\n * You can provide a single value (as `Number` or `String`), or a pair of values\n * as `String` divided by a comma or one (or more) white spaces.<br />\n * The latter is a deprecated method because it leads to confusion and will be\n * removed in v2.<br />\n * Additionally, it accepts additions and subtractions between different units.\n * Note that multiplications and divisions aren't supported.\n *\n * Valid examples are:\n * ```\n * 10\n * '10%'\n * '10, 10'\n * '10%, 10'\n * '10 + 10%'\n * '10 - 5vh + 3%'\n * '-10px + 5vh, 5px - 6%'\n * ```\n * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap\n * > with their reference element, unfortunately, you will have to disable the `flip` modifier.\n * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373).\n *\n * @memberof modifiers\n * @inner\n */\n offset: {\n /** @prop {number} order=200 - Index used to define the order of execution */\n order: 200,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: offset,\n /** @prop {Number|String} offset=0\n * The offset value as described in the modifier description\n */\n offset: 0\n },\n\n /**\n * Modifier used to prevent the popper from being positioned outside the boundary.\n *\n * A scenario exists where the reference itself is not within the boundaries.<br />\n * We can say it has \"escaped the boundaries\" — or just \"escaped\".<br />\n * In this case we need to decide whether the popper should either:\n *\n * - detach from the reference and remain \"trapped\" in the boundaries, or\n * - if it should ignore the boundary and \"escape with its reference\"\n *\n * When `escapeWithReference` is set to`true` and reference is completely\n * outside its boundaries, the popper will overflow (or completely leave)\n * the boundaries in order to remain attached to the edge of the reference.\n *\n * @memberof modifiers\n * @inner\n */\n preventOverflow: {\n /** @prop {number} order=300 - Index used to define the order of execution */\n order: 300,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: preventOverflow,\n /**\n * @prop {Array} [priority=['left','right','top','bottom']]\n * Popper will try to prevent overflow following these priorities by default,\n * then, it could overflow on the left and on top of the `boundariesElement`\n */\n priority: ['left', 'right', 'top', 'bottom'],\n /**\n * @prop {number} padding=5\n * Amount of pixel used to define a minimum distance between the boundaries\n * and the popper. This makes sure the popper always has a little padding\n * between the edges of its container\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='scrollParent'\n * Boundaries used by the modifier. Can be `scrollParent`, `window`,\n * `viewport` or any DOM element.\n */\n boundariesElement: 'scrollParent'\n },\n\n /**\n * Modifier used to make sure the reference and its popper stay near each other\n * without leaving any gap between the two. Especially useful when the arrow is\n * enabled and you want to ensure that it points to its reference element.\n * It cares only about the first axis. You can still have poppers with margin\n * between the popper and its reference element.\n * @memberof modifiers\n * @inner\n */\n keepTogether: {\n /** @prop {number} order=400 - Index used to define the order of execution */\n order: 400,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: keepTogether\n },\n\n /**\n * This modifier is used to move the `arrowElement` of the popper to make\n * sure it is positioned between the reference element and its popper element.\n * It will read the outer size of the `arrowElement` node to detect how many\n * pixels of conjunction are needed.\n *\n * It has no effect if no `arrowElement` is provided.\n * @memberof modifiers\n * @inner\n */\n arrow: {\n /** @prop {number} order=500 - Index used to define the order of execution */\n order: 500,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: arrow,\n /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */\n element: '[x-arrow]'\n },\n\n /**\n * Modifier used to flip the popper's placement when it starts to overlap its\n * reference element.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n *\n * **NOTE:** this modifier will interrupt the current update cycle and will\n * restart it if it detects the need to flip the placement.\n * @memberof modifiers\n * @inner\n */\n flip: {\n /** @prop {number} order=600 - Index used to define the order of execution */\n order: 600,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: flip,\n /**\n * @prop {String|Array} behavior='flip'\n * The behavior used to change the popper's placement. It can be one of\n * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid\n * placements (with optional variations)\n */\n behavior: 'flip',\n /**\n * @prop {number} padding=5\n * The popper will flip if it hits the edges of the `boundariesElement`\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='viewport'\n * The element which will define the boundaries of the popper position.\n * The popper will never be placed outside of the defined boundaries\n * (except if `keepTogether` is enabled)\n */\n boundariesElement: 'viewport',\n /**\n * @prop {Boolean} flipVariations=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the reference element overlaps its boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariations: false,\n /**\n * @prop {Boolean} flipVariationsByContent=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the popper element overlaps its reference boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariationsByContent: false\n },\n\n /**\n * Modifier used to make the popper flow toward the inner of the reference element.\n * By default, when this modifier is disabled, the popper will be placed outside\n * the reference element.\n * @memberof modifiers\n * @inner\n */\n inner: {\n /** @prop {number} order=700 - Index used to define the order of execution */\n order: 700,\n /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */\n enabled: false,\n /** @prop {ModifierFn} */\n fn: inner\n },\n\n /**\n * Modifier used to hide the popper when its reference element is outside of the\n * popper boundaries. It will set a `x-out-of-boundaries` attribute which can\n * be used to hide with a CSS selector the popper when its reference is\n * out of boundaries.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n * @memberof modifiers\n * @inner\n */\n hide: {\n /** @prop {number} order=800 - Index used to define the order of execution */\n order: 800,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: hide\n },\n\n /**\n * Computes the style that will be applied to the popper element to gets\n * properly positioned.\n *\n * Note that this modifier will not touch the DOM, it just prepares the styles\n * so that `applyStyle` modifier can apply it. This separation is useful\n * in case you need to replace `applyStyle` with a custom implementation.\n *\n * This modifier has `850` as `order` value to maintain backward compatibility\n * with previous versions of Popper.js. Expect the modifiers ordering method\n * to change in future major versions of the library.\n *\n * @memberof modifiers\n * @inner\n */\n computeStyle: {\n /** @prop {number} order=850 - Index used to define the order of execution */\n order: 850,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: computeStyle,\n /**\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: true,\n /**\n * @prop {string} [x='bottom']\n * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin.\n * Change this if your popper should grow in a direction different from `bottom`\n */\n x: 'bottom',\n /**\n * @prop {string} [x='left']\n * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin.\n * Change this if your popper should grow in a direction different from `right`\n */\n y: 'right'\n },\n\n /**\n * Applies the computed styles to the popper element.\n *\n * All the DOM manipulations are limited to this modifier. This is useful in case\n * you want to integrate Popper.js inside a framework or view library and you\n * want to delegate all the DOM manipulations to it.\n *\n * Note that if you disable this modifier, you must make sure the popper element\n * has its position set to `absolute` before Popper.js can do its work!\n *\n * Just disable this modifier and define your own to achieve the desired effect.\n *\n * @memberof modifiers\n * @inner\n */\n applyStyle: {\n /** @prop {number} order=900 - Index used to define the order of execution */\n order: 900,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: applyStyle,\n /** @prop {Function} */\n onLoad: applyStyleOnLoad,\n /**\n * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: undefined\n }\n};\n\n/**\n * The `dataObject` is an object containing all the information used by Popper.js.\n * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks.\n * @name dataObject\n * @property {Object} data.instance The Popper.js instance\n * @property {String} data.placement Placement applied to popper\n * @property {String} data.originalPlacement Placement originally defined on init\n * @property {Boolean} data.flipped True if popper has been flipped by flip modifier\n * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper\n * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier\n * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.boundaries Offsets of the popper boundaries\n * @property {Object} data.offsets The measurements of popper, reference and arrow elements\n * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0\n */\n\n/**\n * Default options provided to Popper.js constructor.<br />\n * These can be overridden using the `options` argument of Popper.js.<br />\n * To override an option, simply pass an object with the same\n * structure of the `options` object, as the 3rd argument. For example:\n * ```\n * new Popper(ref, pop, {\n * modifiers: {\n * preventOverflow: { enabled: false }\n * }\n * })\n * ```\n * @type {Object}\n * @static\n * @memberof Popper\n */\nvar Defaults = {\n /**\n * Popper's placement.\n * @prop {Popper.placements} placement='bottom'\n */\n placement: 'bottom',\n\n /**\n * Set this to true if you want popper to position it self in 'fixed' mode\n * @prop {Boolean} positionFixed=false\n */\n positionFixed: false,\n\n /**\n * Whether events (resize, scroll) are initially enabled.\n * @prop {Boolean} eventsEnabled=true\n */\n eventsEnabled: true,\n\n /**\n * Set to true if you want to automatically remove the popper when\n * you call the `destroy` method.\n * @prop {Boolean} removeOnDestroy=false\n */\n removeOnDestroy: false,\n\n /**\n * Callback called when the popper is created.<br />\n * By default, it is set to no-op.<br />\n * Access Popper.js instance with `data.instance`.\n * @prop {onCreate}\n */\n onCreate: function onCreate() {},\n\n /**\n * Callback called when the popper is updated. This callback is not called\n * on the initialization/creation of the popper, but only on subsequent\n * updates.<br />\n * By default, it is set to no-op.<br />\n * Access Popper.js instance with `data.instance`.\n * @prop {onUpdate}\n */\n onUpdate: function onUpdate() {},\n\n /**\n * List of modifiers used to modify the offsets before they are applied to the popper.\n * They provide most of the functionalities of Popper.js.\n * @prop {modifiers}\n */\n modifiers: modifiers\n};\n\n/**\n * @callback onCreate\n * @param {dataObject} data\n */\n\n/**\n * @callback onUpdate\n * @param {dataObject} data\n */\n\n// Utils\n// Methods\nvar Popper = function () {\n /**\n * Creates a new Popper.js instance.\n * @class Popper\n * @param {Element|referenceObject} reference - The reference element used to position the popper\n * @param {Element} popper - The HTML / XML element used as the popper\n * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)\n * @return {Object} instance - The generated Popper.js instance\n */\n function Popper(reference, popper) {\n var _this = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n classCallCheck(this, Popper);\n\n this.scheduleUpdate = function () {\n return requestAnimationFrame(_this.update);\n };\n\n // make update() debounced, so that it only runs at most once-per-tick\n this.update = debounce(this.update.bind(this));\n\n // with {} we create a new object with the options inside it\n this.options = _extends({}, Popper.Defaults, options);\n\n // init state\n this.state = {\n isDestroyed: false,\n isCreated: false,\n scrollParents: []\n };\n\n // get reference and popper elements (allow jQuery wrappers)\n this.reference = reference && reference.jquery ? reference[0] : reference;\n this.popper = popper && popper.jquery ? popper[0] : popper;\n\n // Deep merge modifiers options\n this.options.modifiers = {};\n Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {\n _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});\n });\n\n // Refactoring modifiers' list (Object => Array)\n this.modifiers = Object.keys(this.options.modifiers).map(function (name) {\n return _extends({\n name: name\n }, _this.options.modifiers[name]);\n })\n // sort the modifiers by order\n .sort(function (a, b) {\n return a.order - b.order;\n });\n\n // modifiers have the ability to execute arbitrary code when Popper.js get inited\n // such code is executed in the same order of its modifier\n // they could add new properties to their options configuration\n // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`!\n this.modifiers.forEach(function (modifierOptions) {\n if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) {\n modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state);\n }\n });\n\n // fire the first update to position the popper in the right place\n this.update();\n\n var eventsEnabled = this.options.eventsEnabled;\n if (eventsEnabled) {\n // setup event listeners, they will take care of update the position in specific situations\n this.enableEventListeners();\n }\n\n this.state.eventsEnabled = eventsEnabled;\n }\n\n // We can't use class properties because they don't get listed in the\n // class prototype and break stuff like Sinon stubs\n\n\n createClass(Popper, [{\n key: 'update',\n value: function update$$1() {\n return update.call(this);\n }\n }, {\n key: 'destroy',\n value: function destroy$$1() {\n return destroy.call(this);\n }\n }, {\n key: 'enableEventListeners',\n value: function enableEventListeners$$1() {\n return enableEventListeners.call(this);\n }\n }, {\n key: 'disableEventListeners',\n value: function disableEventListeners$$1() {\n return disableEventListeners.call(this);\n }\n\n /**\n * Schedules an update. It will run on the next UI update available.\n * @method scheduleUpdate\n * @memberof Popper\n */\n\n\n /**\n * Collection of utilities useful when writing custom modifiers.\n * Starting from version 1.7, this method is available only if you\n * include `popper-utils.js` before `popper.js`.\n *\n * **DEPRECATION**: This way to access PopperUtils is deprecated\n * and will be removed in v2! Use the PopperUtils module directly instead.\n * Due to the high instability of the methods contained in Utils, we can't\n * guarantee them to follow semver. Use them at your own risk!\n * @static\n * @private\n * @type {Object}\n * @deprecated since version 1.8\n * @member Utils\n * @memberof Popper\n */\n\n }]);\n return Popper;\n}();\n\n/**\n * The `referenceObject` is an object that provides an interface compatible with Popper.js\n * and lets you use it as replacement of a real DOM node.<br />\n * You can use this method to position a popper relatively to a set of coordinates\n * in case you don't have a DOM node to use as reference.\n *\n * ```\n * new Popper(referenceObject, popperNode);\n * ```\n *\n * NB: This feature isn't supported in Internet Explorer 10.\n * @name referenceObject\n * @property {Function} data.getBoundingClientRect\n * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method.\n * @property {number} data.clientWidth\n * An ES6 getter that will return the width of the virtual reference element.\n * @property {number} data.clientHeight\n * An ES6 getter that will return the height of the virtual reference element.\n */\n\n\nPopper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;\nPopper.placements = placements;\nPopper.Defaults = Defaults;\n\nexport default Popper;\n//# sourceMappingURL=popper.js.map\n","export const PLACEMENT_TOP_START = 'top-start'\nexport const PLACEMENT_TOP_END = 'top-end'\nexport const PLACEMENT_BOTTOM_START = 'bottom-start'\nexport const PLACEMENT_BOTTOM_END = 'bottom-end'\nexport const PLACEMENT_RIGHT_START = 'right-start'\nexport const PLACEMENT_RIGHT_END = 'right-end'\nexport const PLACEMENT_LEFT_START = 'left-start'\nexport const PLACEMENT_LEFT_END = 'left-end'\n","import { assign, defineProperty, defineProperties, readonlyDescriptor } from './object'\n\nexport class BvEvent {\n constructor(type, eventInit = {}) {\n // Start by emulating native Event constructor\n if (!type) {\n /* istanbul ignore next */\n throw new TypeError(\n `Failed to construct '${this.constructor.name}'. 1 argument required, ${\n arguments.length\n } given.`\n )\n }\n\n // Merge defaults first, the eventInit, and the type last\n // so it can't be overwritten\n assign(this, BvEvent.Defaults, this.constructor.Defaults, eventInit, { type })\n\n // Freeze some props as readonly, but leave them enumerable\n defineProperties(this, {\n type: readonlyDescriptor(),\n cancelable: readonlyDescriptor(),\n nativeEvent: readonlyDescriptor(),\n target: readonlyDescriptor(),\n relatedTarget: readonlyDescriptor(),\n vueTarget: readonlyDescriptor(),\n componentId: readonlyDescriptor()\n })\n\n // Create a private variable using closure scoping\n let defaultPrevented = false\n // Recreate preventDefault method. One way setter\n this.preventDefault = function preventDefault() {\n if (this.cancelable) {\n defaultPrevented = true\n }\n }\n\n // Create `defaultPrevented` publicly accessible prop that\n // can only be altered by the preventDefault method\n defineProperty(this, 'defaultPrevented', {\n enumerable: true,\n get() {\n return defaultPrevented\n }\n })\n }\n\n static get Defaults() {\n return {\n type: '',\n cancelable: true,\n nativeEvent: null,\n target: null,\n relatedTarget: null,\n vueTarget: null,\n componentId: null\n }\n }\n}\n","import { Vue } from '../vue'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events'\nimport { contains } from '../utils/dom'\nimport { eventOn, eventOff } from '../utils/events'\n\n// @vue/component\nexport const clickOutMixin = Vue.extend({\n data() {\n return {\n listenForClickOut: false\n }\n },\n watch: {\n listenForClickOut(newValue, oldValue) {\n if (newValue !== oldValue) {\n eventOff(\n this.clickOutElement,\n this.clickOutEventName,\n this._clickOutHandler,\n EVENT_OPTIONS_NO_CAPTURE\n )\n if (newValue) {\n eventOn(\n this.clickOutElement,\n this.clickOutEventName,\n this._clickOutHandler,\n EVENT_OPTIONS_NO_CAPTURE\n )\n }\n }\n }\n },\n beforeCreate() {\n // Declare non-reactive properties\n this.clickOutElement = null\n this.clickOutEventName = null\n },\n mounted() {\n if (!this.clickOutElement) {\n this.clickOutElement = document\n }\n if (!this.clickOutEventName) {\n this.clickOutEventName = 'click'\n }\n if (this.listenForClickOut) {\n eventOn(\n this.clickOutElement,\n this.clickOutEventName,\n this._clickOutHandler,\n EVENT_OPTIONS_NO_CAPTURE\n )\n }\n },\n beforeDestroy() {\n eventOff(\n this.clickOutElement,\n this.clickOutEventName,\n this._clickOutHandler,\n EVENT_OPTIONS_NO_CAPTURE\n )\n },\n methods: {\n isClickOut(event) {\n return !contains(this.$el, event.target)\n },\n _clickOutHandler(event) {\n if (this.clickOutHandler && this.isClickOut(event)) {\n this.clickOutHandler(event)\n }\n }\n }\n})\n","import { Vue } from '../vue'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events'\nimport { eventOn, eventOff } from '../utils/events'\n\n// @vue/component\nexport const focusInMixin = Vue.extend({\n data() {\n return {\n listenForFocusIn: false\n }\n },\n watch: {\n listenForFocusIn(newValue, oldValue) {\n if (newValue !== oldValue) {\n eventOff(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n if (newValue) {\n eventOn(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n }\n }\n }\n },\n beforeCreate() {\n // Declare non-reactive properties\n this.focusInElement = null\n },\n mounted() {\n if (!this.focusInElement) {\n this.focusInElement = document\n }\n if (this.listenForFocusIn) {\n eventOn(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n }\n },\n beforeDestroy() {\n eventOff(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n },\n methods: {\n _focusInHandler(event) {\n if (this.focusInHandler) {\n this.focusInHandler(event)\n }\n }\n }\n})\n","import Popper from 'popper.js'\nimport { Vue } from '../vue'\nimport { NAME_DROPDOWN } from '../constants/components'\nimport { HAS_TOUCH_SUPPORT } from '../constants/env'\nimport {\n EVENT_NAME_CLICK,\n EVENT_NAME_HIDDEN,\n EVENT_NAME_HIDE,\n EVENT_NAME_SHOW,\n EVENT_NAME_SHOWN,\n EVENT_NAME_TOGGLE\n} from '../constants/events'\nimport { CODE_DOWN, CODE_ENTER, CODE_ESC, CODE_SPACE, CODE_UP } from '../constants/key-codes'\nimport {\n PLACEMENT_TOP_START,\n PLACEMENT_TOP_END,\n PLACEMENT_BOTTOM_START,\n PLACEMENT_BOTTOM_END,\n PLACEMENT_RIGHT_START,\n PLACEMENT_LEFT_START\n} from '../constants/popper'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_OBJECT,\n PROP_TYPE_STRING\n} from '../constants/props'\nimport { HTMLElement } from '../constants/safe-types'\nimport { BvEvent } from '../utils/bv-event.class'\nimport { attemptFocus, closest, contains, isVisible, requestAF, selectAll } from '../utils/dom'\nimport { getRootEventName, stopEvent } from '../utils/events'\nimport { isNull } from '../utils/inspect'\nimport { mergeDeep, sortKeys } from '../utils/object'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\nimport { warn } from '../utils/warn'\nimport { clickOutMixin } from './click-out'\nimport { focusInMixin } from './focus-in'\nimport { idMixin, props as idProps } from './id'\nimport { listenOnRootMixin } from './listen-on-root'\n\n// --- Constants ---\n\nconst ROOT_EVENT_NAME_SHOWN = getRootEventName(NAME_DROPDOWN, EVENT_NAME_SHOWN)\nconst ROOT_EVENT_NAME_HIDDEN = getRootEventName(NAME_DROPDOWN, EVENT_NAME_HIDDEN)\n\n// CSS selectors\nconst SELECTOR_FORM_CHILD = '.dropdown form'\nconst SELECTOR_ITEM = ['.dropdown-item', '.b-dropdown-form']\n .map(selector => `${selector}:not(.disabled):not([disabled])`)\n .join(', ')\n\n// --- Helper methods ---\n\n// Return an array of visible items\nconst filterVisibles = els => (els || []).filter(isVisible)\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n // String: `scrollParent`, `window` or `viewport`\n // HTMLElement: HTML Element reference\n boundary: makeProp([HTMLElement, PROP_TYPE_STRING], 'scrollParent'),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n // Place left if possible\n dropleft: makeProp(PROP_TYPE_BOOLEAN, false),\n // Place right if possible\n dropright: makeProp(PROP_TYPE_BOOLEAN, false),\n // Place on top if possible\n dropup: makeProp(PROP_TYPE_BOOLEAN, false),\n // Disable auto-flipping of menu from bottom <=> top\n noFlip: makeProp(PROP_TYPE_BOOLEAN, false),\n // Number of pixels or a CSS unit value to offset menu\n // (i.e. `1px`, `1rem`, etc.)\n offset: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n popperOpts: makeProp(PROP_TYPE_OBJECT, {}),\n // Right align menu (default is left align)\n right: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_DROPDOWN\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const dropdownMixin = Vue.extend({\n mixins: [idMixin, listenOnRootMixin, clickOutMixin, focusInMixin],\n provide() {\n return { bvDropdown: this }\n },\n inject: {\n bvNavbar: { default: null }\n },\n props,\n data() {\n return {\n visible: false,\n visibleChangePrevented: false\n }\n },\n computed: {\n inNavbar() {\n return !isNull(this.bvNavbar)\n },\n toggler() {\n const { toggle } = this.$refs\n return toggle ? toggle.$el || toggle : null\n },\n directionClass() {\n if (this.dropup) {\n return 'dropup'\n } else if (this.dropright) {\n return 'dropright'\n } else if (this.dropleft) {\n return 'dropleft'\n }\n return ''\n },\n boundaryClass() {\n // Position `static` is needed to allow menu to \"breakout\" of the `scrollParent`\n // boundaries when boundary is anything other than `scrollParent`\n // See: https://github.com/twbs/bootstrap/issues/24251#issuecomment-341413786\n return this.boundary !== 'scrollParent' && !this.inNavbar ? 'position-static' : ''\n },\n hideDelay() {\n return this.inNavbar ? (HAS_TOUCH_SUPPORT ? 300 : 50) : 0\n }\n },\n watch: {\n visible(newValue, oldValue) {\n if (this.visibleChangePrevented) {\n this.visibleChangePrevented = false\n return\n }\n\n if (newValue !== oldValue) {\n const eventName = newValue ? EVENT_NAME_SHOW : EVENT_NAME_HIDE\n const bvEvent = new BvEvent(eventName, {\n cancelable: true,\n vueTarget: this,\n target: this.$refs.menu,\n relatedTarget: null,\n componentId: this.safeId ? this.safeId() : this.id || null\n })\n this.emitEvent(bvEvent)\n if (bvEvent.defaultPrevented) {\n // Reset value and exit if canceled\n this.visibleChangePrevented = true\n this.visible = oldValue\n // Just in case a child element triggered `this.hide(true)`\n this.$off(EVENT_NAME_HIDDEN, this.focusToggler)\n return\n }\n if (newValue) {\n this.showMenu()\n } else {\n this.hideMenu()\n }\n }\n },\n disabled(newValue, oldValue) {\n if (newValue !== oldValue && newValue && this.visible) {\n // Hide dropdown if disabled changes to true\n this.visible = false\n }\n }\n },\n created() {\n // Create private non-reactive props\n this.$_popper = null\n this.$_hideTimeout = null\n },\n /* istanbul ignore next */\n deactivated() {\n // In case we are inside a `<keep-alive>`\n this.visible = false\n this.whileOpenListen(false)\n this.destroyPopper()\n },\n beforeDestroy() {\n this.visible = false\n this.whileOpenListen(false)\n this.destroyPopper()\n this.clearHideTimeout()\n },\n methods: {\n // Event emitter\n emitEvent(bvEvent) {\n const { type } = bvEvent\n this.emitOnRoot(getRootEventName(NAME_DROPDOWN, type), bvEvent)\n this.$emit(type, bvEvent)\n },\n showMenu() {\n if (this.disabled) {\n /* istanbul ignore next */\n return\n }\n\n // Only instantiate Popper.js when dropdown is not in `<b-navbar>`\n if (!this.inNavbar) {\n if (typeof Popper === 'undefined') {\n /* istanbul ignore next */\n warn('Popper.js not found. Falling back to CSS positioning', NAME_DROPDOWN)\n } else {\n // For dropup with alignment we use the parent element as popper container\n let el = (this.dropup && this.right) || this.split ? this.$el : this.$refs.toggle\n // Make sure we have a reference to an element, not a component!\n el = el.$el || el\n // Instantiate Popper.js\n this.createPopper(el)\n }\n }\n\n // Ensure other menus are closed\n this.emitOnRoot(ROOT_EVENT_NAME_SHOWN, this)\n\n // Enable listeners\n this.whileOpenListen(true)\n\n // Wrap in `$nextTick()` to ensure menu is fully rendered/shown\n this.$nextTick(() => {\n // Focus on the menu container on show\n this.focusMenu()\n // Emit the shown event\n this.$emit(EVENT_NAME_SHOWN)\n })\n },\n hideMenu() {\n this.whileOpenListen(false)\n this.emitOnRoot(ROOT_EVENT_NAME_HIDDEN, this)\n this.$emit(EVENT_NAME_HIDDEN)\n this.destroyPopper()\n },\n createPopper(element) {\n this.destroyPopper()\n this.$_popper = new Popper(element, this.$refs.menu, this.getPopperConfig())\n },\n // Ensure popper event listeners are removed cleanly\n destroyPopper() {\n this.$_popper && this.$_popper.destroy()\n this.$_popper = null\n },\n // Instructs popper to re-computes the dropdown position\n // useful if the content changes size\n updatePopper() {\n try {\n this.$_popper.scheduleUpdate()\n } catch {}\n },\n clearHideTimeout() {\n clearTimeout(this.$_hideTimeout)\n this.$_hideTimeout = null\n },\n getPopperConfig() {\n let placement = PLACEMENT_BOTTOM_START\n if (this.dropup) {\n placement = this.right ? PLACEMENT_TOP_END : PLACEMENT_TOP_START\n } else if (this.dropright) {\n placement = PLACEMENT_RIGHT_START\n } else if (this.dropleft) {\n placement = PLACEMENT_LEFT_START\n } else if (this.right) {\n placement = PLACEMENT_BOTTOM_END\n }\n const popperConfig = {\n placement,\n modifiers: {\n offset: { offset: this.offset || 0 },\n flip: { enabled: !this.noFlip }\n }\n }\n const boundariesElement = this.boundary\n if (boundariesElement) {\n popperConfig.modifiers.preventOverflow = { boundariesElement }\n }\n return mergeDeep(popperConfig, this.popperOpts || {})\n },\n // Turn listeners on/off while open\n whileOpenListen(isOpen) {\n // Hide the dropdown when clicked outside\n this.listenForClickOut = isOpen\n // Hide the dropdown when it loses focus\n this.listenForFocusIn = isOpen\n // Hide the dropdown when another dropdown is opened\n const method = isOpen ? '$on' : '$off'\n this.$root[method](ROOT_EVENT_NAME_SHOWN, this.rootCloseListener)\n },\n rootCloseListener(vm) {\n if (vm !== this) {\n this.visible = false\n }\n },\n // Public method to show dropdown\n show() {\n if (this.disabled) {\n return\n }\n // Wrap in a `requestAF()` to allow any previous\n // click handling to occur first\n requestAF(() => {\n this.visible = true\n })\n },\n // Public method to hide dropdown\n hide(refocus = false) {\n /* istanbul ignore next */\n if (this.disabled) {\n return\n }\n this.visible = false\n if (refocus) {\n // Child element is closing the dropdown on click\n this.$once(EVENT_NAME_HIDDEN, this.focusToggler)\n }\n },\n // Called only by a button that toggles the menu\n toggle(event) {\n event = event || {}\n // Early exit when not a click event or ENTER, SPACE or DOWN were pressed\n const { type, keyCode } = event\n if (\n type !== 'click' &&\n !(type === 'keydown' && [CODE_ENTER, CODE_SPACE, CODE_DOWN].indexOf(keyCode) !== -1)\n ) {\n /* istanbul ignore next */\n return\n }\n /* istanbul ignore next */\n if (this.disabled) {\n this.visible = false\n return\n }\n this.$emit(EVENT_NAME_TOGGLE, event)\n stopEvent(event)\n // Toggle visibility\n if (this.visible) {\n this.hide(true)\n } else {\n this.show()\n }\n },\n // Mousedown handler for the toggle\n /* istanbul ignore next */\n onMousedown(event) {\n // We prevent the 'mousedown' event for the toggle to stop the\n // 'focusin' event from being fired\n // The event would otherwise be picked up by the global 'focusin'\n // listener and there is no cross-browser solution to detect it\n // relates to the toggle click\n // The 'click' event will still be fired and we handle closing\n // other dropdowns there too\n // See https://github.com/bootstrap-vue/bootstrap-vue/issues/4328\n stopEvent(event, { propagation: false })\n },\n // Called from dropdown menu context\n onKeydown(event) {\n const { keyCode } = event\n if (keyCode === CODE_ESC) {\n // Close on ESC\n this.onEsc(event)\n } else if (keyCode === CODE_DOWN) {\n // Down Arrow\n this.focusNext(event, false)\n } else if (keyCode === CODE_UP) {\n // Up Arrow\n this.focusNext(event, true)\n }\n },\n // If user presses ESC, close the menu\n onEsc(event) {\n if (this.visible) {\n this.visible = false\n stopEvent(event)\n // Return focus to original trigger button\n this.$once(EVENT_NAME_HIDDEN, this.focusToggler)\n }\n },\n // Called only in split button mode, for the split button\n onSplitClick(event) {\n /* istanbul ignore next */\n if (this.disabled) {\n this.visible = false\n return\n }\n this.$emit(EVENT_NAME_CLICK, event)\n },\n // Shared hide handler between click-out and focus-in events\n hideHandler(event) {\n const { target } = event\n if (this.visible && !contains(this.$refs.menu, target) && !contains(this.toggler, target)) {\n this.clearHideTimeout()\n this.$_hideTimeout = setTimeout(() => this.hide(), this.hideDelay)\n }\n },\n // Document click-out listener\n clickOutHandler(event) {\n this.hideHandler(event)\n },\n // Document focus-in listener\n focusInHandler(event) {\n this.hideHandler(event)\n },\n // Keyboard nav\n focusNext(event, up) {\n // Ignore key up/down on form elements\n const { target } = event\n if (!this.visible || (event && closest(SELECTOR_FORM_CHILD, target))) {\n /* istanbul ignore next: should never happen */\n return\n }\n stopEvent(event)\n this.$nextTick(() => {\n const items = this.getItems()\n if (items.length < 1) {\n /* istanbul ignore next: should never happen */\n return\n }\n let index = items.indexOf(target)\n if (up && index > 0) {\n index--\n } else if (!up && index < items.length - 1) {\n index++\n }\n if (index < 0) {\n /* istanbul ignore next: should never happen */\n index = 0\n }\n this.focusItem(index, items)\n })\n },\n focusItem(index, items) {\n const el = items.find((el, i) => i === index)\n attemptFocus(el)\n },\n getItems() {\n // Get all items\n return filterVisibles(selectAll(SELECTOR_ITEM, this.$refs.menu))\n },\n focusMenu() {\n attemptFocus(this.$refs.menu)\n },\n focusToggler() {\n this.$nextTick(() => {\n attemptFocus(this.toggler)\n })\n }\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_DROPDOWN } from '../../constants/components'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_OBJECT,\n PROP_TYPE_OBJECT_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_BUTTON_CONTENT, SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { arrayIncludes } from '../../utils/array'\nimport { htmlOrText } from '../../utils/html'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { dropdownMixin, props as dropdownProps } from '../../mixins/dropdown'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BButton } from '../button/button'\nimport { sortKeys } from '../../utils/object'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...dropdownProps,\n block: makeProp(PROP_TYPE_BOOLEAN, false),\n html: makeProp(PROP_TYPE_STRING),\n // If `true`, only render menu contents when open\n lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n menuClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n noCaret: makeProp(PROP_TYPE_BOOLEAN, false),\n role: makeProp(PROP_TYPE_STRING, 'menu'),\n size: makeProp(PROP_TYPE_STRING),\n split: makeProp(PROP_TYPE_BOOLEAN, false),\n splitButtonType: makeProp(PROP_TYPE_STRING, 'button', value => {\n return arrayIncludes(['button', 'submit', 'reset'], value)\n }),\n splitClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n splitHref: makeProp(PROP_TYPE_STRING),\n splitTo: makeProp(PROP_TYPE_OBJECT_STRING),\n splitVariant: makeProp(PROP_TYPE_STRING),\n text: makeProp(PROP_TYPE_STRING),\n toggleAttrs: makeProp(PROP_TYPE_OBJECT, {}),\n toggleClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n toggleTag: makeProp(PROP_TYPE_STRING, 'button'),\n // TODO: This really should be `toggleLabel`\n toggleText: makeProp(PROP_TYPE_STRING, 'Toggle dropdown'),\n variant: makeProp(PROP_TYPE_STRING, 'secondary')\n }),\n NAME_DROPDOWN\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdown = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN,\n mixins: [idMixin, dropdownMixin, normalizeSlotMixin],\n props,\n computed: {\n dropdownClasses() {\n const { block, split } = this\n return [\n this.directionClass,\n this.boundaryClass,\n {\n show: this.visible,\n // The 'btn-group' class is required in `split` mode for button alignment\n // It needs also to be applied when `block` is disabled to allow multiple\n // dropdowns to be aligned one line\n 'btn-group': split || !block,\n // When `block` is enabled and we are in `split` mode the 'd-flex' class\n // needs to be applied to allow the buttons to stretch to full width\n 'd-flex': block && split\n }\n ]\n },\n menuClasses() {\n return [\n this.menuClass,\n {\n 'dropdown-menu-right': this.right,\n show: this.visible\n }\n ]\n },\n toggleClasses() {\n const { split } = this\n return [\n this.toggleClass,\n {\n 'dropdown-toggle-split': split,\n 'dropdown-toggle-no-caret': this.noCaret && !split\n }\n ]\n }\n },\n render(h) {\n const { visible, variant, size, block, disabled, split, role, hide, toggle } = this\n const commonProps = { variant, size, block, disabled }\n\n let $buttonChildren = this.normalizeSlot(SLOT_NAME_BUTTON_CONTENT)\n let buttonContentDomProps = this.hasNormalizedSlot(SLOT_NAME_BUTTON_CONTENT)\n ? {}\n : htmlOrText(this.html, this.text)\n\n let $split = h()\n if (split) {\n const { splitTo, splitHref, splitButtonType } = this\n const btnProps = {\n ...commonProps,\n variant: this.splitVariant || variant\n }\n\n // We add these as needed due to <router-link> issues with\n // defined property with `undefined`/`null` values\n if (splitTo) {\n btnProps.to = splitTo\n } else if (splitHref) {\n btnProps.href = splitHref\n } else if (splitButtonType) {\n btnProps.type = splitButtonType\n }\n\n $split = h(\n BButton,\n {\n class: this.splitClass,\n attrs: { id: this.safeId('_BV_button_') },\n props: btnProps,\n domProps: buttonContentDomProps,\n on: { click: this.onSplitClick },\n ref: 'button'\n },\n $buttonChildren\n )\n\n // Overwrite button content for the toggle when in `split` mode\n $buttonChildren = [h('span', { class: ['sr-only'] }, [this.toggleText])]\n buttonContentDomProps = {}\n }\n const ariaHasPopupRoles = ['menu', 'listbox', 'tree', 'grid', 'dialog']\n\n const $toggle = h(\n BButton,\n {\n staticClass: 'dropdown-toggle',\n class: this.toggleClasses,\n attrs: {\n // Merge in user supplied attributes\n ...this.toggleAttrs,\n // Must have attributes\n id: this.safeId('_BV_toggle_'),\n 'aria-haspopup': ariaHasPopupRoles.includes(role) ? role : 'false',\n 'aria-expanded': toString(visible)\n },\n props: {\n ...commonProps,\n tag: this.toggleTag,\n block: block && !split\n },\n domProps: buttonContentDomProps,\n on: {\n mousedown: this.onMousedown,\n click: toggle,\n keydown: toggle // Handle ENTER, SPACE and DOWN\n },\n ref: 'toggle'\n },\n $buttonChildren\n )\n\n const $menu = h(\n 'ul',\n {\n staticClass: 'dropdown-menu',\n class: this.menuClasses,\n attrs: {\n role,\n tabindex: '-1',\n 'aria-labelledby': this.safeId(split ? '_BV_button_' : '_BV_toggle_')\n },\n on: {\n keydown: this.onKeydown // Handle UP, DOWN and ESC\n },\n ref: 'menu'\n },\n [!this.lazy || visible ? this.normalizeSlot(SLOT_NAME_DEFAULT, { hide }) : h()]\n )\n\n return h(\n 'div',\n {\n staticClass: 'dropdown b-dropdown',\n class: this.dropdownClasses,\n attrs: { id: this.safeId() }\n },\n [$split, $toggle, $menu]\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_DROPDOWN_ITEM } from '../../constants/components'\nimport { EVENT_NAME_CLICK } from '../../constants/events'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { requestAF } from '../../utils/dom'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...linkProps,\n linkClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n variant: makeProp(PROP_TYPE_STRING)\n }),\n NAME_DROPDOWN_ITEM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownItem = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_ITEM,\n mixins: [attrsMixin, normalizeSlotMixin],\n inject: {\n bvDropdown: { default: null }\n },\n inheritAttrs: false,\n props,\n computed: {\n computedAttrs() {\n return {\n ...this.bvAttrs,\n role: 'menuitem'\n }\n }\n },\n methods: {\n closeDropdown() {\n // Close on next animation frame to allow <b-link> time to process\n requestAF(() => {\n if (this.bvDropdown) {\n this.bvDropdown.hide(true)\n }\n })\n },\n onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event)\n this.closeDropdown()\n }\n },\n render(h) {\n const { linkClass, variant, active, disabled, onClick, bvAttrs } = this\n\n return h(\n 'li',\n {\n class: bvAttrs.class,\n style: bvAttrs.style,\n attrs: { role: 'presentation' }\n },\n [\n h(\n BLink,\n {\n staticClass: 'dropdown-item',\n class: [linkClass, { [`text-${variant}`]: variant && !(active || disabled) }],\n props: pluckProps(linkProps, this.$props),\n attrs: this.computedAttrs,\n on: { click: onClick },\n ref: 'item'\n },\n this.normalizeSlot()\n )\n ]\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_DROPDOWN_ITEM_BUTTON } from '../../constants/components'\nimport { EVENT_NAME_CLICK } from '../../constants/events'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n active: makeProp(PROP_TYPE_BOOLEAN, false),\n activeClass: makeProp(PROP_TYPE_STRING, 'active'),\n buttonClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n variant: makeProp(PROP_TYPE_STRING)\n },\n NAME_DROPDOWN_ITEM_BUTTON\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownItemButton = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_ITEM_BUTTON,\n mixins: [attrsMixin, normalizeSlotMixin],\n inject: {\n bvDropdown: { default: null }\n },\n inheritAttrs: false,\n props,\n computed: {\n computedAttrs() {\n return {\n ...this.bvAttrs,\n role: 'menuitem',\n type: 'button',\n disabled: this.disabled\n }\n }\n },\n methods: {\n closeDropdown() {\n if (this.bvDropdown) {\n this.bvDropdown.hide(true)\n }\n },\n onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event)\n this.closeDropdown()\n }\n },\n render(h) {\n const { active, variant, bvAttrs } = this\n\n return h(\n 'li',\n {\n class: bvAttrs.class,\n style: bvAttrs.style,\n attrs: { role: 'presentation' }\n },\n [\n h(\n 'button',\n {\n staticClass: 'dropdown-item',\n class: [\n this.buttonClass,\n {\n [this.activeClass]: active,\n [`text-${variant}`]: variant && !(active || this.disabled)\n }\n ],\n attrs: this.computedAttrs,\n on: { click: this.onClick },\n ref: 'button'\n },\n this.normalizeSlot()\n )\n ]\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_HEADER } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { isTag } from '../../utils/dom'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n id: makeProp(PROP_TYPE_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'header'),\n variant: makeProp(PROP_TYPE_STRING)\n },\n NAME_DROPDOWN_HEADER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownHeader = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_HEADER,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { tag, variant } = props\n\n return h('li', mergeData(omit(data, ['attrs']), { attrs: { role: 'presentation' } }), [\n h(\n tag,\n {\n staticClass: 'dropdown-header',\n class: { [`text-${variant}`]: variant },\n attrs: {\n ...(data.attrs || {}),\n id: props.id || null,\n role: isTag(tag, 'header') ? null : 'heading'\n },\n ref: 'header'\n },\n children\n )\n ])\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_DIVIDER } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { omit } from '../../utils/object'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n tag: makeProp(PROP_TYPE_STRING, 'hr')\n },\n NAME_DROPDOWN_DIVIDER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownDivider = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_DIVIDER,\n functional: true,\n props,\n render(h, { props, data }) {\n return h('li', mergeData(omit(data, ['attrs']), { attrs: { role: 'presentation' } }), [\n h(props.tag, {\n staticClass: 'dropdown-divider',\n attrs: {\n ...(data.attrs || {}),\n role: 'separator',\n 'aria-orientation': 'horizontal'\n },\n ref: 'divider'\n })\n ])\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_FORM } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n id: makeProp(PROP_TYPE_STRING),\n inline: makeProp(PROP_TYPE_BOOLEAN, false),\n novalidate: makeProp(PROP_TYPE_BOOLEAN, false),\n validated: makeProp(PROP_TYPE_BOOLEAN, false)\n },\n NAME_FORM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BForm = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n 'form',\n mergeData(data, {\n class: {\n 'form-inline': props.inline,\n 'was-validated': props.validated\n },\n attrs: {\n id: props.id,\n novalidate: props.novalidate\n }\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_FORM } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BForm, props as formControlProps } from '../form/form'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...formControlProps,\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n formClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n }),\n NAME_DROPDOWN_FORM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownForm = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_FORM,\n functional: true,\n props,\n render(h, { props, data, listeners, children }) {\n return h('li', mergeData(omit(data, ['attrs', 'on']), { attrs: { role: 'presentation' } }), [\n h(\n BForm,\n {\n staticClass: 'b-dropdown-form',\n class: [props.formClass, { disabled: props.disabled }],\n props,\n attrs: {\n ...(data.attrs || {}),\n disabled: props.disabled,\n // Tab index of -1 for keyboard navigation\n tabindex: props.disabled ? null : '-1'\n },\n on: listeners,\n ref: 'form'\n },\n children\n )\n ])\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_TEXT } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n tag: makeProp(PROP_TYPE_STRING, 'p'),\n textClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n variant: makeProp(PROP_TYPE_STRING)\n },\n NAME_DROPDOWN_TEXT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownText = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_TEXT,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { tag, textClass, variant } = props\n\n return h('li', mergeData(omit(data, ['attrs']), { attrs: { role: 'presentation' } }), [\n h(\n tag,\n {\n staticClass: 'b-dropdown-text',\n class: [textClass, { [`text-${variant}`]: variant }],\n props,\n attrs: data.attrs || {},\n ref: 'text'\n },\n children\n )\n ])\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_GROUP } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_HEADER } from '../../constants/slots'\nimport { isTag } from '../../utils/dom'\nimport { identity } from '../../utils/identity'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n ariaDescribedby: makeProp(PROP_TYPE_STRING),\n header: makeProp(PROP_TYPE_STRING),\n headerClasses: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n headerTag: makeProp(PROP_TYPE_STRING, 'header'),\n headerVariant: makeProp(PROP_TYPE_STRING),\n id: makeProp(PROP_TYPE_STRING)\n },\n NAME_DROPDOWN_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_GROUP,\n functional: true,\n props,\n render(h, { props, data, slots, scopedSlots }) {\n const { id, variant, header, headerTag } = props\n const $slots = slots()\n const $scopedSlots = scopedSlots || {}\n const slotScope = {}\n const headerId = id ? `_bv_${id}_group_dd_header` : null\n\n let $header = h()\n if (hasNormalizedSlot(SLOT_NAME_HEADER, $scopedSlots, $slots) || header) {\n $header = h(\n headerTag,\n {\n staticClass: 'dropdown-header',\n class: [props.headerClasses, { [`text-${variant}`]: variant }],\n attrs: {\n id: headerId,\n role: isTag(headerTag, 'header') ? null : 'heading'\n }\n },\n normalizeSlot(SLOT_NAME_HEADER, slotScope, $scopedSlots, $slots) || header\n )\n }\n\n return h('li', mergeData(omit(data, ['attrs']), { attrs: { role: 'presentation' } }), [\n $header,\n h(\n 'ul',\n {\n staticClass: 'list-unstyled',\n attrs: {\n ...(data.attrs || {}),\n id,\n role: 'group',\n 'aria-describedby':\n [headerId, props.ariaDescribedBy]\n .filter(identity)\n .join(' ')\n .trim() || null\n }\n },\n normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots)\n )\n ])\n }\n})\n","import { BDropdown } from './dropdown'\nimport { BDropdownItem } from './dropdown-item'\nimport { BDropdownItemButton } from './dropdown-item-button'\nimport { BDropdownHeader } from './dropdown-header'\nimport { BDropdownDivider } from './dropdown-divider'\nimport { BDropdownForm } from './dropdown-form'\nimport { BDropdownText } from './dropdown-text'\nimport { BDropdownGroup } from './dropdown-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst DropdownPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BDropdown,\n BDd: BDropdown,\n BDropdownItem,\n BDdItem: BDropdownItem,\n BDropdownItemButton,\n BDropdownItemBtn: BDropdownItemButton,\n BDdItemButton: BDropdownItemButton,\n BDdItemBtn: BDropdownItemButton,\n BDropdownHeader,\n BDdHeader: BDropdownHeader,\n BDropdownDivider,\n BDdDivider: BDropdownDivider,\n BDropdownForm,\n BDdForm: BDropdownForm,\n BDropdownText,\n BDdText: BDropdownText,\n BDropdownGroup,\n BDdGroup: BDropdownGroup\n }\n})\n\nexport {\n DropdownPlugin,\n BDropdown,\n BDropdownItem,\n BDropdownItemButton,\n BDropdownHeader,\n BDropdownDivider,\n BDropdownForm,\n BDropdownText,\n BDropdownGroup\n}\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_EMBED } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { arrayIncludes } from '../../utils/array'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Constants ---\n\nconst TYPES = ['iframe', 'embed', 'video', 'object', 'img', 'b-img', 'b-img-lazy']\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n aspect: makeProp(PROP_TYPE_STRING, '16by9'),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n type: makeProp(PROP_TYPE_STRING, 'iframe', value => {\n return arrayIncludes(TYPES, value)\n })\n },\n NAME_EMBED\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BEmbed = /*#__PURE__*/ Vue.extend({\n name: NAME_EMBED,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { aspect } = props\n\n return h(\n props.tag,\n {\n staticClass: 'embed-responsive',\n class: { [`embed-responsive-${aspect}`]: aspect },\n ref: data.ref\n },\n [\n h(\n props.type,\n mergeData(omit(data, ['ref']), { staticClass: 'embed-responsive-item' }),\n children\n )\n ]\n )\n }\n})\n","import { BEmbed } from './embed'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst EmbedPlugin = /*#__PURE__*/ pluginFactory({\n components: { BEmbed }\n})\n\nexport { EmbedPlugin, BEmbed }\n","import { Vue } from '../vue'\nimport { PROP_TYPE_ARRAY_OBJECT, PROP_TYPE_STRING } from '../constants/props'\nimport { get } from '../utils/get'\nimport { stripTags } from '../utils/html'\nimport { isArray, isPlainObject, isUndefined } from '../utils/inspect'\nimport { keys } from '../utils/object'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\nimport { warn } from '../utils/warn'\n\n// --- Constants ---\n\nconst OPTIONS_OBJECT_DEPRECATED_MSG =\n 'Setting prop \"options\" to an object is deprecated. Use the array format instead.'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n disabledField: makeProp(PROP_TYPE_STRING, 'disabled'),\n htmlField: makeProp(PROP_TYPE_STRING, 'html'),\n options: makeProp(PROP_TYPE_ARRAY_OBJECT, []),\n textField: makeProp(PROP_TYPE_STRING, 'text'),\n valueField: makeProp(PROP_TYPE_STRING, 'value')\n },\n 'formOptionControls'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formOptionsMixin = Vue.extend({\n props,\n computed: {\n formOptions() {\n return this.normalizeOptions(this.options)\n }\n },\n methods: {\n normalizeOption(option, key = null) {\n // When the option is an object, normalize it\n if (isPlainObject(option)) {\n const value = get(option, this.valueField)\n const text = get(option, this.textField)\n return {\n value: isUndefined(value) ? key || text : value,\n text: stripTags(String(isUndefined(text) ? key : text)),\n html: get(option, this.htmlField),\n disabled: Boolean(get(option, this.disabledField))\n }\n }\n // Otherwise create an `<option>` object from the given value\n return {\n value: key || option,\n text: stripTags(String(option)),\n disabled: false\n }\n },\n normalizeOptions(options) {\n // Normalize the given options array\n if (isArray(options)) {\n return options.map(option => this.normalizeOption(option))\n } else if (isPlainObject(options)) {\n // Deprecate the object options format\n warn(OPTIONS_OBJECT_DEPRECATED_MSG, this.$options.name)\n // Normalize a `options` object to an array of options\n return keys(options).map(key => this.normalizeOption(options[key] || {}, key))\n }\n // If not an array or object, return an empty array\n /* istanbul ignore next */\n return []\n }\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_DATALIST } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { htmlOrText } from '../../utils/html'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { formOptionsMixin, props as formOptionsProps } from '../../mixins/form-options'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...formOptionsProps,\n id: makeProp(PROP_TYPE_STRING, undefined, true) // Required\n }),\n NAME_FORM_DATALIST\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormDatalist = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_DATALIST,\n mixins: [formOptionsMixin, normalizeSlotMixin],\n props,\n render(h) {\n const { id } = this\n\n const $options = this.formOptions.map((option, index) => {\n const { value, text, html, disabled } = option\n\n return h('option', {\n attrs: { value, disabled },\n domProps: htmlOrText(html, text),\n key: `option_${index}`\n })\n })\n\n return h('datalist', { attrs: { id } }, [$options, this.normalizeSlot()])\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_FORM_TEXT } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n id: makeProp(PROP_TYPE_STRING),\n inline: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'small'),\n textVariant: makeProp(PROP_TYPE_STRING, 'muted')\n },\n NAME_FORM_TEXT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormText = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_TEXT,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n props.tag,\n mergeData(data, {\n class: {\n 'form-text': !props.inline,\n [`text-${props.textVariant}`]: props.textVariant\n },\n attrs: {\n id: props.id\n }\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_FORM_INVALID_FEEDBACK } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n ariaLive: makeProp(PROP_TYPE_STRING),\n forceShow: makeProp(PROP_TYPE_BOOLEAN, false),\n id: makeProp(PROP_TYPE_STRING),\n role: makeProp(PROP_TYPE_STRING),\n // Tri-state prop: `true`, `false`, or `null`\n state: makeProp(PROP_TYPE_BOOLEAN, null),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n tooltip: makeProp(PROP_TYPE_BOOLEAN, false)\n },\n NAME_FORM_INVALID_FEEDBACK\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormInvalidFeedback = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_INVALID_FEEDBACK,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { tooltip, ariaLive } = props\n const show = props.forceShow === true || props.state === false\n\n return h(\n props.tag,\n mergeData(data, {\n class: {\n 'd-block': show,\n 'invalid-feedback': !tooltip,\n 'invalid-tooltip': tooltip\n },\n attrs: {\n id: props.id || null,\n role: props.role || null,\n 'aria-live': ariaLive || null,\n 'aria-atomic': ariaLive ? 'true' : null\n }\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_FORM_VALID_FEEDBACK } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n ariaLive: makeProp(PROP_TYPE_STRING),\n forceShow: makeProp(PROP_TYPE_BOOLEAN, false),\n id: makeProp(PROP_TYPE_STRING),\n role: makeProp(PROP_TYPE_STRING),\n // Tri-state prop: `true`, `false`, or `null`\n state: makeProp(PROP_TYPE_BOOLEAN, null),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n tooltip: makeProp(PROP_TYPE_BOOLEAN, false)\n },\n NAME_FORM_VALID_FEEDBACK\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormValidFeedback = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_VALID_FEEDBACK,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { tooltip, ariaLive } = props\n const show = props.forceShow === true || props.state === true\n\n return h(\n props.tag,\n mergeData(data, {\n class: {\n 'd-block': show,\n 'valid-feedback': !tooltip,\n 'valid-tooltip': tooltip\n },\n attrs: {\n id: props.id || null,\n role: props.role || null,\n 'aria-live': ariaLive || null,\n 'aria-atomic': ariaLive ? 'true' : null\n }\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_FORM_ROW } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n tag: makeProp(PROP_TYPE_STRING, 'div')\n },\n NAME_FORM_ROW\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormRow = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_ROW,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n props.tag,\n mergeData(data, {\n staticClass: 'form-row'\n }),\n children\n )\n }\n})\n","import { BForm } from './form'\nimport { BFormDatalist } from './form-datalist'\nimport { BFormText } from './form-text'\nimport { BFormInvalidFeedback } from './form-invalid-feedback'\nimport { BFormValidFeedback } from './form-valid-feedback'\nimport { BFormRow } from '../layout/form-row'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BForm,\n BFormDatalist,\n BDatalist: BFormDatalist,\n BFormText,\n BFormInvalidFeedback,\n BFormFeedback: BFormInvalidFeedback,\n BFormValidFeedback,\n // Added here for convenience\n BFormRow\n }\n})\n\n// BFormRow is not exported here as a named export, as it is exported by Layout\nexport { FormPlugin, BForm, BFormDatalist, BFormText, BFormInvalidFeedback, BFormValidFeedback }\n","import { looseEqual } from './loose-equal'\n\n// Assumes that the first argument is an array\nexport const looseIndexOf = (array, value) => {\n for (let i = 0; i < array.length; i++) {\n if (looseEqual(array[i], value)) {\n return i\n }\n }\n return -1\n}\n","import { Vue } from '../vue'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props'\nimport { attemptFocus, isVisible, matches, requestAF, select } from '../utils/dom'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\n\n// --- Constants ---\n\nconst SELECTOR = 'input, textarea, select'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n autofocus: makeProp(PROP_TYPE_BOOLEAN, false),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n form: makeProp(PROP_TYPE_STRING),\n id: makeProp(PROP_TYPE_STRING),\n name: makeProp(PROP_TYPE_STRING),\n required: makeProp(PROP_TYPE_BOOLEAN, false)\n },\n 'formControls'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formControlMixin = Vue.extend({\n props,\n mounted() {\n this.handleAutofocus()\n },\n /* istanbul ignore next */\n activated() {\n this.handleAutofocus()\n },\n methods: {\n handleAutofocus() {\n this.$nextTick(() => {\n requestAF(() => {\n let el = this.$el\n if (this.autofocus && isVisible(el)) {\n if (!matches(el, SELECTOR)) {\n el = select(SELECTOR, el)\n }\n attemptFocus(el)\n }\n })\n })\n }\n }\n})\n","import { Vue } from '../vue'\nimport { PROP_TYPE_BOOLEAN } from '../constants/props'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n plain: makeProp(PROP_TYPE_BOOLEAN, false)\n },\n 'formControls'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formCustomMixin = Vue.extend({\n props,\n computed: {\n custom() {\n return !this.plain\n }\n }\n})\n","import { Vue } from '../vue'\nimport { PROP_TYPE_STRING } from '../constants/props'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n size: makeProp(PROP_TYPE_STRING)\n },\n 'formControls'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formSizeMixin = Vue.extend({\n props,\n computed: {\n sizeFormClass() {\n return [this.size ? `form-control-${this.size}` : null]\n }\n }\n})\n","/* Form control contextual state class computation\n *\n * Returned class is either 'is-valid' or 'is-invalid' based on the 'state' prop\n * state can be one of five values:\n * - true for is-valid\n * - false for is-invalid\n * - null for no contextual state\n */\nimport { Vue } from '../vue'\nimport { PROP_TYPE_BOOLEAN } from '../constants/props'\nimport { isBoolean } from '../utils/inspect'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n // Tri-state prop: true, false, null (or undefined)\n state: makeProp(PROP_TYPE_BOOLEAN, null)\n },\n 'formState'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formStateMixin = Vue.extend({\n props,\n computed: {\n computedState() {\n // If not a boolean, ensure that value is null\n return isBoolean(this.state) ? this.state : null\n },\n stateClass() {\n const state = this.computedState\n return state === true ? 'is-valid' : state === false ? 'is-invalid' : null\n },\n computedAriaInvalid() {\n const { ariaInvalid } = this\n if (ariaInvalid === true || ariaInvalid === 'true' || ariaInvalid === '') {\n return 'true'\n }\n return this.computedState === false ? 'true' : ariaInvalid\n }\n }\n})\n","import { Vue } from '../vue'\nimport { PROP_TYPE_ANY, PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props'\nimport { EVENT_NAME_CHANGE } from '../constants/events'\nimport { attemptBlur, attemptFocus } from '../utils/dom'\nimport { isBoolean } from '../utils/inspect'\nimport { looseEqual } from '../utils/loose-equal'\nimport { makeModelMixin } from '../utils/model'\nimport { sortKeys } from '../utils/object'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\nimport { attrsMixin } from './attrs'\nimport { formControlMixin, props as formControlProps } from './form-control'\nimport { formCustomMixin, props as formCustomProps } from './form-custom'\nimport { formSizeMixin, props as formSizeProps } from './form-size'\nimport { formStateMixin, props as formStateProps } from './form-state'\nimport { idMixin, props as idProps } from './id'\nimport { normalizeSlotMixin } from './normalize-slot'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('checked', { defaultValue: null })\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ...formControlProps,\n ...formSizeProps,\n ...formStateProps,\n ...formCustomProps,\n ariaLabel: makeProp(PROP_TYPE_STRING),\n ariaLabelledby: makeProp(PROP_TYPE_STRING),\n // Only applicable in standalone mode (non group)\n button: makeProp(PROP_TYPE_BOOLEAN, false),\n // Only applicable when rendered with button style\n buttonVariant: makeProp(PROP_TYPE_STRING),\n inline: makeProp(PROP_TYPE_BOOLEAN, false),\n value: makeProp(PROP_TYPE_ANY)\n }),\n 'formRadioCheckControls'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formRadioCheckMixin = Vue.extend({\n mixins: [\n attrsMixin,\n idMixin,\n modelMixin,\n normalizeSlotMixin,\n formControlMixin,\n formSizeMixin,\n formStateMixin,\n formCustomMixin\n ],\n inheritAttrs: false,\n props,\n data() {\n return {\n localChecked: this.isGroup ? this.bvGroup[MODEL_PROP_NAME] : this[MODEL_PROP_NAME],\n hasFocus: false\n }\n },\n computed: {\n computedLocalChecked: {\n get() {\n return this.isGroup ? this.bvGroup.localChecked : this.localChecked\n },\n set(value) {\n if (this.isGroup) {\n this.bvGroup.localChecked = value\n } else {\n this.localChecked = value\n }\n }\n },\n isChecked() {\n return looseEqual(this.value, this.computedLocalChecked)\n },\n isRadio() {\n return true\n },\n isGroup() {\n // Is this check/radio a child of check-group or radio-group?\n return !!this.bvGroup\n },\n isBtnMode() {\n // Support button style in single input mode\n return this.isGroup ? this.bvGroup.buttons : this.button\n },\n isPlain() {\n return this.isBtnMode ? false : this.isGroup ? this.bvGroup.plain : this.plain\n },\n isCustom() {\n return this.isBtnMode ? false : !this.isPlain\n },\n isSwitch() {\n // Custom switch styling (checkboxes only)\n return this.isBtnMode || this.isRadio || this.isPlain\n ? false\n : this.isGroup\n ? this.bvGroup.switches\n : this.switch\n },\n isInline() {\n return this.isGroup ? this.bvGroup.inline : this.inline\n },\n isDisabled() {\n // Child can be disabled while parent isn't, but is always disabled if group is\n return this.isGroup ? this.bvGroup.disabled || this.disabled : this.disabled\n },\n isRequired() {\n // Required only works when a name is provided for the input(s)\n // Child can only be required when parent is\n // Groups will always have a name (either user supplied or auto generated)\n return this.computedName && (this.isGroup ? this.bvGroup.required : this.required)\n },\n computedName() {\n // Group name preferred over local name\n return (this.isGroup ? this.bvGroup.groupName : this.name) || null\n },\n computedForm() {\n return (this.isGroup ? this.bvGroup.form : this.form) || null\n },\n computedSize() {\n return (this.isGroup ? this.bvGroup.size : this.size) || ''\n },\n computedState() {\n return this.isGroup ? this.bvGroup.computedState : isBoolean(this.state) ? this.state : null\n },\n computedButtonVariant() {\n // Local variant preferred over group variant\n const { buttonVariant } = this\n if (buttonVariant) {\n return buttonVariant\n }\n if (this.isGroup && this.bvGroup.buttonVariant) {\n return this.bvGroup.buttonVariant\n }\n return 'secondary'\n },\n buttonClasses() {\n const { computedSize } = this\n return [\n 'btn',\n `btn-${this.computedButtonVariant}`,\n {\n [`btn-${computedSize}`]: computedSize,\n // 'disabled' class makes \"button\" look disabled\n disabled: this.isDisabled,\n // 'active' class makes \"button\" look pressed\n active: this.isChecked,\n // Focus class makes button look focused\n focus: this.hasFocus\n }\n ]\n },\n computedAttrs() {\n const { isDisabled: disabled, isRequired: required } = this\n\n return {\n ...this.bvAttrs,\n id: this.safeId(),\n type: this.isRadio ? 'radio' : 'checkbox',\n name: this.computedName,\n form: this.computedForm,\n disabled,\n required,\n 'aria-required': required || null,\n 'aria-label': this.ariaLabel || null,\n 'aria-labelledby': this.ariaLabelledby || null\n }\n }\n },\n watch: {\n [MODEL_PROP_NAME](...args) {\n this[`${MODEL_PROP_NAME}Watcher`](...args)\n },\n computedLocalChecked(...args) {\n this.computedLocalCheckedWatcher(...args)\n }\n },\n methods: {\n [`${MODEL_PROP_NAME}Watcher`](newValue) {\n if (!looseEqual(newValue, this.computedLocalChecked)) {\n this.computedLocalChecked = newValue\n }\n },\n computedLocalCheckedWatcher(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(MODEL_EVENT_NAME, newValue)\n }\n },\n\n handleChange({ target: { checked } }) {\n const { value } = this\n const localChecked = checked ? value : null\n\n this.computedLocalChecked = value\n\n // Fire events in a `$nextTick()` to ensure the `v-model` is updated\n this.$nextTick(() => {\n // Change is only emitted on user interaction\n this.$emit(EVENT_NAME_CHANGE, localChecked)\n\n // If this is a child of a group, we emit a change event on it as well\n if (this.isGroup) {\n this.bvGroup.$emit(EVENT_NAME_CHANGE, localChecked)\n }\n })\n },\n handleFocus(event) {\n // When in buttons mode, we need to add 'focus' class to label when input focused\n // As it is the hidden input which has actual focus\n if (event.target) {\n if (event.type === 'focus') {\n this.hasFocus = true\n } else if (event.type === 'blur') {\n this.hasFocus = false\n }\n }\n },\n\n // Convenience methods for focusing the input\n focus() {\n if (!this.isDisabled) {\n attemptFocus(this.$refs.input)\n }\n },\n blur() {\n if (!this.isDisabled) {\n attemptBlur(this.$refs.input)\n }\n }\n },\n render(h) {\n const {\n isRadio,\n isBtnMode,\n isPlain,\n isCustom,\n isInline,\n isSwitch,\n computedSize,\n bvAttrs\n } = this\n const $content = this.normalizeSlot()\n\n const $input = h('input', {\n class: [\n {\n 'form-check-input': isPlain,\n 'custom-control-input': isCustom,\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/2911\n 'position-static': isPlain && !$content\n },\n isBtnMode ? '' : this.stateClass\n ],\n directives: [{ name: 'model', value: this.computedLocalChecked }],\n attrs: this.computedAttrs,\n domProps: {\n value: this.value,\n checked: this.isChecked\n },\n on: {\n change: this.handleChange,\n ...(isBtnMode ? { focus: this.handleFocus, blur: this.handleFocus } : {})\n },\n key: 'input',\n ref: 'input'\n })\n\n if (isBtnMode) {\n let $button = h('label', { class: this.buttonClasses }, [$input, $content])\n if (!this.isGroup) {\n // Standalone button mode, so wrap in 'btn-group-toggle'\n // and flag it as inline-block to mimic regular buttons\n $button = h('div', { class: ['btn-group-toggle', 'd-inline-block'] }, [$button])\n }\n\n return $button\n }\n\n // If no label content in plain mode we dont render the label\n // See: https://github.com/bootstrap-vue/bootstrap-vue/issues/2911\n let $label = h()\n if (!(isPlain && !$content)) {\n $label = h(\n 'label',\n {\n class: {\n 'form-check-label': isPlain,\n 'custom-control-label': isCustom\n },\n attrs: { for: this.safeId() }\n },\n $content\n )\n }\n\n return h(\n 'div',\n {\n class: [\n {\n 'form-check': isPlain,\n 'form-check-inline': isPlain && isInline,\n 'custom-control': isCustom,\n 'custom-control-inline': isCustom && isInline,\n 'custom-checkbox': isCustom && !isRadio && !isSwitch,\n 'custom-switch': isSwitch,\n 'custom-radio': isCustom && isRadio,\n // Temporary until Bootstrap v4 supports sizing (most likely in V5)\n [`b-custom-control-${computedSize}`]: computedSize && !isBtnMode\n },\n bvAttrs.class\n ],\n style: bvAttrs.style\n },\n [$input, $label]\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_CHECKBOX } from '../../constants/components'\nimport { EVENT_NAME_CHANGE, MODEL_EVENT_NAME_PREFIX } from '../../constants/events'\nimport { PROP_TYPE_ANY, PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { isArray } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { looseIndexOf } from '../../utils/loose-index-of'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport {\n MODEL_EVENT_NAME,\n formRadioCheckMixin,\n props as formRadioCheckProps\n} from '../../mixins/form-radio-check'\n\n// --- Constants ---\n\nconst MODEL_PROP_NAME_INDETERMINATE = 'indeterminate'\nconst MODEL_EVENT_NAME_INDETERMINATE = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_INDETERMINATE\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...formRadioCheckProps,\n // Not applicable in multi-check mode\n [MODEL_PROP_NAME_INDETERMINATE]: makeProp(PROP_TYPE_BOOLEAN, false),\n // Custom switch styling\n switch: makeProp(PROP_TYPE_BOOLEAN, false),\n // Not applicable in multi-check mode\n uncheckedValue: makeProp(PROP_TYPE_ANY, false),\n value: makeProp(PROP_TYPE_ANY, true)\n }),\n NAME_FORM_CHECKBOX\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormCheckbox = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_CHECKBOX,\n mixins: [formRadioCheckMixin],\n inject: {\n bvGroup: {\n from: 'bvCheckGroup',\n default: null\n }\n },\n props,\n computed: {\n isChecked() {\n const { value, computedLocalChecked: checked } = this\n return isArray(checked) ? looseIndexOf(checked, value) > -1 : looseEqual(checked, value)\n },\n isRadio() {\n return false\n }\n },\n watch: {\n [MODEL_PROP_NAME_INDETERMINATE](newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.setIndeterminate(newValue)\n }\n }\n },\n mounted() {\n // Set initial indeterminate state\n this.setIndeterminate(this[MODEL_PROP_NAME_INDETERMINATE])\n },\n methods: {\n computedLocalCheckedWatcher(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(MODEL_EVENT_NAME, newValue)\n\n const $input = this.$refs.input\n if ($input) {\n this.$emit(MODEL_EVENT_NAME_INDETERMINATE, $input.indeterminate)\n }\n }\n },\n\n handleChange({ target: { checked, indeterminate } }) {\n const { value, uncheckedValue } = this\n\n // Update `computedLocalChecked`\n let localChecked = this.computedLocalChecked\n if (isArray(localChecked)) {\n const index = looseIndexOf(localChecked, value)\n if (checked && index < 0) {\n // Add value to array\n localChecked = localChecked.concat(value)\n } else if (!checked && index > -1) {\n // Remove value from array\n localChecked = localChecked.slice(0, index).concat(localChecked.slice(index + 1))\n }\n } else {\n localChecked = checked ? value : uncheckedValue\n }\n this.computedLocalChecked = localChecked\n\n // Fire events in a `$nextTick()` to ensure the `v-model` is updated\n this.$nextTick(() => {\n // Change is only emitted on user interaction\n this.$emit(EVENT_NAME_CHANGE, localChecked)\n\n // If this is a child of a group, we emit a change event on it as well\n if (this.isGroup) {\n this.bvGroup.$emit(EVENT_NAME_CHANGE, localChecked)\n }\n\n this.$emit(MODEL_EVENT_NAME_INDETERMINATE, indeterminate)\n })\n },\n\n setIndeterminate(state) {\n // Indeterminate only supported in single checkbox mode\n if (isArray(this.computedLocalChecked)) {\n state = false\n }\n\n const $input = this.$refs.input\n if ($input) {\n $input.indeterminate = state\n // Emit update event to prop\n this.$emit(MODEL_EVENT_NAME_INDETERMINATE, state)\n }\n }\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_RADIO } from '../../constants/components'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { makePropsConfigurable } from '../../utils/props'\nimport {\n MODEL_EVENT_NAME,\n formRadioCheckMixin,\n props as formRadioCheckProps\n} from '../../mixins/form-radio-check'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(formRadioCheckProps, NAME_FORM_RADIO)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormRadio = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_RADIO,\n mixins: [formRadioCheckMixin],\n inject: {\n bvGroup: {\n from: 'bvRadioGroup',\n default: false\n }\n },\n props,\n watch: {\n computedLocalChecked(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(MODEL_EVENT_NAME, newValue)\n }\n }\n }\n})\n","import { Vue } from '../vue'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_STRING } from '../constants/props'\nimport { SLOT_NAME_FIRST } from '../constants/slots'\nimport { htmlOrText } from '../utils/html'\nimport { looseEqual } from '../utils/loose-equal'\nimport { makeModelMixin } from '../utils/model'\nimport { omit, pick, sortKeys } from '../utils/object'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\nimport { BFormCheckbox } from '../components/form-checkbox/form-checkbox'\nimport { BFormRadio } from '../components/form-radio/form-radio'\nimport { formControlMixin, props as formControlProps } from './form-control'\nimport { formCustomMixin, props as formCustomProps } from './form-custom'\nimport { formOptionsMixin, props as formOptionsProps } from './form-options'\nimport { formSizeMixin, props as formSizeProps } from './form-size'\nimport { formStateMixin, props as formStateProps } from './form-state'\nimport { idMixin, props as idProps } from './id'\nimport { normalizeSlotMixin } from './normalize-slot'\n\n// --- Constants ---\n\n// Attributes to pass down to checks/radios instead of applying them to the group\nconst PASS_DOWN_ATTRS = ['aria-describedby', 'aria-labelledby']\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('checked')\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ...formControlProps,\n ...formOptionsProps,\n ...formSizeProps,\n ...formStateProps,\n ...formCustomProps,\n ariaInvalid: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n // Only applicable when rendered with button style\n buttonVariant: makeProp(PROP_TYPE_STRING),\n // Render as button style\n buttons: makeProp(PROP_TYPE_BOOLEAN, false),\n stacked: makeProp(PROP_TYPE_BOOLEAN, false),\n validated: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n 'formRadioCheckGroups'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formRadioCheckGroupMixin = Vue.extend({\n mixins: [\n idMixin,\n modelMixin,\n normalizeSlotMixin,\n formControlMixin,\n formOptionsMixin,\n formSizeMixin,\n formStateMixin,\n formCustomMixin\n ],\n inheritAttrs: false,\n props,\n data() {\n return {\n localChecked: this[MODEL_PROP_NAME]\n }\n },\n computed: {\n inline() {\n return !this.stacked\n },\n groupName() {\n // Checks/Radios tied to the same model must have the same name,\n // especially for ARIA accessibility\n return this.name || this.safeId()\n },\n groupClasses() {\n const { inline, size, validated } = this\n\n let classes = { 'was-validated': validated }\n if (this.buttons) {\n classes = [\n classes,\n 'btn-group-toggle',\n {\n 'btn-group': inline,\n 'btn-group-vertical': !inline,\n [`btn-group-${size}`]: size\n }\n ]\n }\n\n return classes\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue) {\n if (!looseEqual(newValue, this.localChecked)) {\n this.localChecked = newValue\n }\n },\n localChecked(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(MODEL_EVENT_NAME, newValue)\n }\n }\n },\n render(h) {\n const { isRadioGroup } = this\n const attrs = pick(this.$attrs, PASS_DOWN_ATTRS)\n const optionComponent = isRadioGroup ? BFormRadio : BFormCheckbox\n\n const $inputs = this.formOptions.map((option, index) => {\n const key = `BV_option_${index}`\n\n return h(\n optionComponent,\n {\n props: {\n // Individual radios or checks can be disabled in a group\n disabled: option.disabled || false,\n id: this.safeId(key),\n value: option.value\n // We don't need to include these, since the input's will know they are inside here\n // form: this.form || null,\n // name: this.groupName,\n // required: Boolean(this.name && this.required),\n // state: this.state\n },\n attrs,\n key\n },\n [h('span', { domProps: htmlOrText(option.html, option.text) })]\n )\n })\n\n return h(\n 'div',\n {\n class: [this.groupClasses, 'bv-no-focus-ring'],\n attrs: {\n ...omit(this.$attrs, PASS_DOWN_ATTRS),\n 'aria-invalid': this.computedAriaInvalid,\n 'aria-required': this.required ? 'true' : null,\n id: this.safeId(),\n role: isRadioGroup ? 'radiogroup' : 'group',\n // Add `tabindex=\"-1\"` to allow group to be focused if needed by screen readers\n tabindex: '-1'\n }\n },\n [this.normalizeSlot(SLOT_NAME_FIRST), $inputs, this.normalizeSlot()]\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_CHECKBOX_GROUP } from '../../constants/components'\nimport { PROP_TYPE_ARRAY, PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport {\n MODEL_PROP_NAME,\n formRadioCheckGroupMixin,\n props as formRadioCheckGroupProps\n} from '../../mixins/form-radio-check-group'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...formRadioCheckGroupProps,\n [MODEL_PROP_NAME]: makeProp(PROP_TYPE_ARRAY, []),\n // Custom switch styling\n switches: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_FORM_CHECKBOX_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormCheckboxGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_CHECKBOX_GROUP,\n // Includes render function\n mixins: [formRadioCheckGroupMixin],\n provide() {\n return {\n bvCheckGroup: this\n }\n },\n props,\n computed: {\n isRadioGroup() {\n return false\n }\n }\n})\n","import { BFormCheckbox } from './form-checkbox'\nimport { BFormCheckboxGroup } from './form-checkbox-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormCheckboxPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BFormCheckbox,\n BCheckbox: BFormCheckbox,\n BCheck: BFormCheckbox,\n BFormCheckboxGroup,\n BCheckboxGroup: BFormCheckboxGroup,\n BCheckGroup: BFormCheckboxGroup\n }\n})\n\nexport { FormCheckboxPlugin, BFormCheckbox, BFormCheckboxGroup }\n","// v-b-hover directive\nimport { IS_BROWSER } from '../../constants/env'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../../constants/events'\nimport { eventOnOff } from '../../utils/events'\nimport { isFunction } from '../../utils/inspect'\n\n// --- Constants ---\n\nconst PROP = '__BV_hover_handler__'\nconst MOUSEENTER = 'mouseenter'\nconst MOUSELEAVE = 'mouseleave'\n\n// --- Helper methods ---\n\nconst createListener = handler => {\n const listener = event => {\n handler(event.type === MOUSEENTER, event)\n }\n listener.fn = handler\n return listener\n}\n\nconst updateListeners = (on, el, listener) => {\n eventOnOff(on, el, MOUSEENTER, listener, EVENT_OPTIONS_NO_CAPTURE)\n eventOnOff(on, el, MOUSELEAVE, listener, EVENT_OPTIONS_NO_CAPTURE)\n}\n\n// --- Directive bind/unbind/update handler ---\n\nconst directive = (el, { value: handler = null }) => {\n if (IS_BROWSER) {\n const listener = el[PROP]\n const hasListener = isFunction(listener)\n const handlerChanged = !(hasListener && listener.fn === handler)\n if (hasListener && handlerChanged) {\n updateListeners(false, el, listener)\n delete el[PROP]\n }\n if (isFunction(handler) && handlerChanged) {\n el[PROP] = createListener(handler)\n updateListeners(true, el, el[PROP])\n }\n }\n}\n\n// VBHover directive\n\nexport const VBHover = {\n bind: directive,\n componentUpdated: directive,\n unbind(el) {\n directive(el, { value: null })\n }\n}\n","//\n// Private component used by `b-form-datepicker` and `b-form-timepicker`\n//\nimport { Vue } from '../../vue'\nimport { NAME_FORM_BUTTON_LABEL_CONTROL } from '../../constants/components'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_BUTTON_CONTENT, SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { dropdownMixin, props as dropdownProps } from '../../mixins/dropdown'\nimport { props as formControlProps } from '../../mixins/form-control'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { VBHover } from '../../directives/hover/hover'\nimport { BIconChevronDown } from '../../icons/icons'\n\n// --- Props ---\n\nexport const props = sortKeys({\n ...idProps,\n ...formSizeProps,\n ...formStateProps,\n ...omit(dropdownProps, ['disabled']),\n ...omit(formControlProps, ['autofocus']),\n // When `true`, renders a `btn-group` wrapper and visually hides the label\n buttonOnly: makeProp(PROP_TYPE_BOOLEAN, false),\n // Applicable in button mode only\n buttonVariant: makeProp(PROP_TYPE_STRING, 'secondary'),\n // This is the value shown in the label\n // Defaults back to `value`\n formattedValue: makeProp(PROP_TYPE_STRING),\n // Value placed in `.sr-only` span inside label when value is present\n labelSelected: makeProp(PROP_TYPE_STRING),\n lang: makeProp(PROP_TYPE_STRING),\n // Extra classes to apply to the `dropdown-menu` div\n menuClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n // This is the value placed on the hidden input when no value selected\n placeholder: makeProp(PROP_TYPE_STRING),\n readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n // Tri-state prop: `true`, `false` or `null`\n rtl: makeProp(PROP_TYPE_BOOLEAN, null),\n value: makeProp(PROP_TYPE_STRING, '')\n})\n\n// --- Main component ---\n\n// @vue/component\nexport const BVFormBtnLabelControl = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_BUTTON_LABEL_CONTROL,\n directives: {\n 'b-hover': VBHover\n },\n mixins: [idMixin, formSizeMixin, formStateMixin, dropdownMixin, normalizeSlotMixin],\n props,\n data() {\n return {\n isHovered: false,\n hasFocus: false\n }\n },\n computed: {\n idButton() {\n return this.safeId()\n },\n idLabel() {\n return this.safeId('_value_')\n },\n idMenu() {\n return this.safeId('_dialog_')\n },\n idWrapper() {\n return this.safeId('_outer_')\n },\n computedDir() {\n return this.rtl === true ? 'rtl' : this.rtl === false ? 'ltr' : null\n }\n },\n methods: {\n focus() {\n if (!this.disabled) {\n attemptFocus(this.$refs.toggle)\n }\n },\n blur() {\n if (!this.disabled) {\n attemptBlur(this.$refs.toggle)\n }\n },\n setFocus(event) {\n this.hasFocus = event.type === 'focus'\n },\n handleHover(hovered) {\n this.isHovered = hovered\n }\n },\n render(h) {\n const {\n idButton,\n idLabel,\n idMenu,\n idWrapper,\n disabled,\n readonly,\n required,\n name,\n state,\n visible,\n size,\n isHovered,\n hasFocus,\n labelSelected,\n buttonVariant,\n buttonOnly\n } = this\n const value = toString(this.value) || ''\n const invalid = state === false || (required && !value)\n\n const btnScope = { isHovered, hasFocus, state, opened: visible }\n const $button = h(\n 'button',\n {\n staticClass: 'btn',\n class: {\n [`btn-${buttonVariant}`]: buttonOnly,\n [`btn-${size}`]: size,\n 'h-auto': !buttonOnly,\n // `dropdown-toggle` is needed for proper\n // corner rounding in button only mode\n 'dropdown-toggle': buttonOnly,\n 'dropdown-toggle-no-caret': buttonOnly\n },\n attrs: {\n id: idButton,\n type: 'button',\n disabled,\n 'aria-haspopup': 'dialog',\n 'aria-expanded': visible ? 'true' : 'false',\n 'aria-invalid': invalid ? 'true' : null,\n 'aria-required': required ? 'true' : null\n },\n directives: [{ name: 'b-hover', value: this.handleHover }],\n on: {\n mousedown: this.onMousedown,\n click: this.toggle,\n keydown: this.toggle, // Handle ENTER, SPACE and DOWN\n '!focus': this.setFocus,\n '!blur': this.setFocus\n },\n ref: 'toggle'\n },\n [\n this.hasNormalizedSlot(SLOT_NAME_BUTTON_CONTENT)\n ? this.normalizeSlot(SLOT_NAME_BUTTON_CONTENT, btnScope)\n : /* istanbul ignore next */ h(BIconChevronDown, { props: { scale: 1.25 } })\n ]\n )\n\n // Hidden input\n let $hidden = h()\n if (name && !disabled) {\n $hidden = h('input', {\n attrs: {\n type: 'hidden',\n name: name || null,\n form: this.form || null,\n value\n }\n })\n }\n\n // Dropdown content\n const $menu = h(\n 'div',\n {\n staticClass: 'dropdown-menu',\n class: [\n this.menuClass,\n {\n show: visible,\n 'dropdown-menu-right': this.right\n }\n ],\n attrs: {\n id: idMenu,\n role: 'dialog',\n tabindex: '-1',\n 'aria-modal': 'false',\n 'aria-labelledby': idLabel\n },\n on: {\n keydown: this.onKeydown // Handle ESC\n },\n ref: 'menu'\n },\n [this.normalizeSlot(SLOT_NAME_DEFAULT, { opened: visible })]\n )\n\n // Value label\n const $label = h(\n 'label',\n {\n class: buttonOnly\n ? 'sr-only' // Hidden in button only mode\n : [\n 'form-control',\n // Mute the text if showing the placeholder\n { 'text-muted': !value },\n this.stateClass,\n this.sizeFormClass\n ],\n attrs: {\n id: idLabel,\n for: idButton,\n 'aria-invalid': invalid ? 'true' : null,\n 'aria-required': required ? 'true' : null\n },\n directives: [{ name: 'b-hover', value: this.handleHover }],\n on: {\n // Disable bubbling of the click event to\n // prevent menu from closing and re-opening\n\n '!click': /* istanbul ignore next */ event => {\n stopEvent(event, { preventDefault: false })\n }\n }\n },\n [\n value ? this.formattedValue || value : this.placeholder || '',\n // Add the selected label for screen readers when a value is provided\n value && labelSelected ? h('bdi', { staticClass: 'sr-only' }, labelSelected) : ''\n ]\n )\n\n // Return the custom form control wrapper\n return h(\n 'div',\n {\n staticClass: 'b-form-btn-label-control dropdown',\n class: [\n this.directionClass,\n this.boundaryClass,\n [\n {\n 'btn-group': buttonOnly,\n 'form-control': !buttonOnly,\n focus: hasFocus && !buttonOnly,\n show: visible,\n 'is-valid': state === true,\n 'is-invalid': state === false\n },\n buttonOnly ? null : this.sizeFormClass\n ]\n ],\n attrs: {\n id: idWrapper,\n role: buttonOnly ? null : 'group',\n lang: this.lang || null,\n dir: this.computedDir,\n 'aria-disabled': disabled,\n 'aria-readonly': readonly && !disabled,\n 'aria-labelledby': idLabel,\n 'aria-invalid': state === false || (required && !value) ? 'true' : null,\n 'aria-required': required ? 'true' : null\n }\n },\n [$button, $hidden, $menu, $label]\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_DATEPICKER } from '../../constants/components'\nimport { EVENT_NAME_CONTEXT, EVENT_NAME_HIDDEN, EVENT_NAME_SHOWN } from '../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_DATE_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_BUTTON_CONTENT } from '../../constants/slots'\nimport { createDate, constrainDate, formatYMD, parseYMD } from '../../utils/date'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { makeModelMixin } from '../../utils/model'\nimport { omit, pick, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { BIconCalendar, BIconCalendarFill } from '../../icons/icons'\nimport { BButton } from '../button/button'\nimport { BCalendar, props as BCalendarProps } from '../calendar/calendar'\nimport {\n BVFormBtnLabelControl,\n props as BVFormBtnLabelControlProps\n} from '../form-btn-label-control/bv-form-btn-label-control'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', { type: PROP_TYPE_DATE_STRING })\n\n// --- Props ---\n\nconst calendarProps = omit(BCalendarProps, [\n 'block',\n 'hidden',\n 'id',\n 'noKeyNav',\n 'roleDescription',\n 'value',\n 'width'\n])\n\nconst formBtnLabelControlProps = omit(BVFormBtnLabelControlProps, [\n 'formattedValue',\n 'id',\n 'lang',\n 'rtl',\n 'value'\n])\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ...calendarProps,\n ...formBtnLabelControlProps,\n // Width of the calendar dropdown\n calendarWidth: makeProp(PROP_TYPE_STRING, '270px'),\n closeButton: makeProp(PROP_TYPE_BOOLEAN, false),\n closeButtonVariant: makeProp(PROP_TYPE_STRING, 'outline-secondary'),\n // Dark mode\n dark: makeProp(PROP_TYPE_BOOLEAN, false),\n labelCloseButton: makeProp(PROP_TYPE_STRING, 'Close'),\n labelResetButton: makeProp(PROP_TYPE_STRING, 'Reset'),\n labelTodayButton: makeProp(PROP_TYPE_STRING, 'Select today'),\n noCloseOnSelect: makeProp(PROP_TYPE_BOOLEAN, false),\n resetButton: makeProp(PROP_TYPE_BOOLEAN, false),\n resetButtonVariant: makeProp(PROP_TYPE_STRING, 'outline-danger'),\n resetValue: makeProp(PROP_TYPE_DATE_STRING),\n todayButton: makeProp(PROP_TYPE_BOOLEAN, false),\n todayButtonVariant: makeProp(PROP_TYPE_STRING, 'outline-primary')\n }),\n NAME_FORM_DATEPICKER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormDatepicker = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_DATEPICKER,\n mixins: [idMixin, modelMixin],\n props,\n data() {\n return {\n // We always use `YYYY-MM-DD` value internally\n localYMD: formatYMD(this[MODEL_PROP_NAME]) || '',\n // If the popup is open\n isVisible: false,\n // Context data from BCalendar\n localLocale: null,\n isRTL: false,\n formattedValue: '',\n activeYMD: ''\n }\n },\n computed: {\n calendarYM() {\n // Returns the calendar year/month\n // Returns the `YYYY-MM` portion of the active calendar date\n return this.activeYMD.slice(0, -3)\n },\n computedLang() {\n return (this.localLocale || '').replace(/-u-.*$/i, '') || null\n },\n computedResetValue() {\n return formatYMD(constrainDate(this.resetValue)) || ''\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue) {\n this.localYMD = formatYMD(newValue) || ''\n },\n localYMD(newValue) {\n // We only update the v-model when the datepicker is open\n if (this.isVisible) {\n this.$emit(MODEL_EVENT_NAME, this.valueAsDate ? parseYMD(newValue) || null : newValue || '')\n }\n },\n calendarYM(newValue, oldValue) {\n // Displayed calendar month has changed\n // So possibly the calendar height has changed...\n // We need to update popper computed position\n if (newValue !== oldValue && oldValue) {\n try {\n this.$refs.control.updatePopper()\n } catch {}\n }\n }\n },\n methods: {\n // Public methods\n focus() {\n if (!this.disabled) {\n attemptFocus(this.$refs.control)\n }\n },\n blur() {\n if (!this.disabled) {\n attemptBlur(this.$refs.control)\n }\n },\n // Private methods\n setAndClose(ymd) {\n this.localYMD = ymd\n // Close calendar popup, unless `noCloseOnSelect`\n if (!this.noCloseOnSelect) {\n this.$nextTick(() => {\n this.$refs.control.hide(true)\n })\n }\n },\n onSelected(ymd) {\n this.$nextTick(() => {\n this.setAndClose(ymd)\n })\n },\n onInput(ymd) {\n if (this.localYMD !== ymd) {\n this.localYMD = ymd\n }\n },\n onContext(ctx) {\n const { activeYMD, isRTL, locale, selectedYMD, selectedFormatted } = ctx\n this.isRTL = isRTL\n this.localLocale = locale\n this.formattedValue = selectedFormatted\n this.localYMD = selectedYMD\n this.activeYMD = activeYMD\n // Re-emit the context event\n this.$emit(EVENT_NAME_CONTEXT, ctx)\n },\n onTodayButton() {\n // Set to today (or min/max if today is out of range)\n this.setAndClose(formatYMD(constrainDate(createDate(), this.min, this.max)))\n },\n onResetButton() {\n this.setAndClose(this.computedResetValue)\n },\n onCloseButton() {\n this.$refs.control.hide(true)\n },\n // Menu handlers\n onShow() {\n this.isVisible = true\n },\n onShown() {\n this.$nextTick(() => {\n attemptFocus(this.$refs.calendar)\n this.$emit(EVENT_NAME_SHOWN)\n })\n },\n onHidden() {\n this.isVisible = false\n this.$emit(EVENT_NAME_HIDDEN)\n },\n // Render helpers\n defaultButtonFn({ isHovered, hasFocus }) {\n return this.$createElement(isHovered || hasFocus ? BIconCalendarFill : BIconCalendar, {\n attrs: { 'aria-hidden': 'true' }\n })\n }\n },\n render(h) {\n const { localYMD, disabled, readonly, dark, $props, $scopedSlots } = this\n const placeholder = isUndefinedOrNull(this.placeholder)\n ? this.labelNoDateSelected\n : this.placeholder\n\n // Optional footer buttons\n let $footer = []\n\n if (this.todayButton) {\n const label = this.labelTodayButton\n $footer.push(\n h(\n BButton,\n {\n props: {\n disabled: disabled || readonly,\n size: 'sm',\n variant: this.todayButtonVariant\n },\n attrs: { 'aria-label': label || null },\n on: { click: this.onTodayButton }\n },\n label\n )\n )\n }\n\n if (this.resetButton) {\n const label = this.labelResetButton\n $footer.push(\n h(\n BButton,\n {\n props: {\n disabled: disabled || readonly,\n size: 'sm',\n variant: this.resetButtonVariant\n },\n attrs: { 'aria-label': label || null },\n on: { click: this.onResetButton }\n },\n label\n )\n )\n }\n\n if (this.closeButton) {\n const label = this.labelCloseButton\n $footer.push(\n h(\n BButton,\n {\n props: {\n disabled,\n size: 'sm',\n variant: this.closeButtonVariant\n },\n attrs: { 'aria-label': label || null },\n on: { click: this.onCloseButton }\n },\n label\n )\n )\n }\n\n if ($footer.length > 0) {\n $footer = [\n h(\n 'div',\n {\n staticClass: 'b-form-date-controls d-flex flex-wrap',\n class: {\n 'justify-content-between': $footer.length > 1,\n 'justify-content-end': $footer.length < 2\n }\n },\n $footer\n )\n ]\n }\n\n const $calendar = h(\n BCalendar,\n {\n staticClass: 'b-form-date-calendar w-100',\n props: {\n ...pluckProps(calendarProps, $props),\n hidden: !this.isVisible,\n value: localYMD,\n valueAsDate: false,\n width: this.calendarWidth\n },\n on: {\n selected: this.onSelected,\n input: this.onInput,\n context: this.onContext\n },\n scopedSlots: pick($scopedSlots, [\n 'nav-prev-decade',\n 'nav-prev-year',\n 'nav-prev-month',\n 'nav-this-month',\n 'nav-next-month',\n 'nav-next-year',\n 'nav-next-decade'\n ]),\n key: 'calendar',\n ref: 'calendar'\n },\n $footer\n )\n\n return h(\n BVFormBtnLabelControl,\n {\n staticClass: 'b-form-datepicker',\n props: {\n ...pluckProps(formBtnLabelControlProps, $props),\n formattedValue: localYMD ? this.formattedValue : '',\n id: this.safeId(),\n lang: this.computedLang,\n menuClass: [{ 'bg-dark': dark, 'text-light': dark }, this.menuClass],\n placeholder,\n rtl: this.isRTL,\n value: localYMD\n },\n on: {\n show: this.onShow,\n shown: this.onShown,\n hidden: this.onHidden\n },\n scopedSlots: {\n [SLOT_NAME_BUTTON_CONTENT]: $scopedSlots[SLOT_NAME_BUTTON_CONTENT] || this.defaultButtonFn\n },\n ref: 'control'\n },\n [$calendar]\n )\n }\n})\n","import { BFormDatepicker } from './form-datepicker'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormDatepickerPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BFormDatepicker,\n BDatepicker: BFormDatepicker\n }\n})\n\nexport { FormDatepickerPlugin, BFormDatepicker }\n","import { Vue } from '../../vue'\nimport { NAME_FORM_FILE } from '../../constants/components'\nimport { HAS_PROMISE_SUPPORT } from '../../constants/env'\nimport { EVENT_NAME_CHANGE, EVENT_OPTIONS_PASSIVE } from '../../constants/events'\nimport {\n PROP_TYPE_ARRAY,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_FUNCTION,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport {\n SLOT_NAME_DROP_PLACEHOLDER,\n SLOT_NAME_FILE_NAME,\n SLOT_NAME_PLACEHOLDER\n} from '../../constants/slots'\nimport { RX_EXTENSION, RX_STAR } from '../../constants/regex'\nimport { File } from '../../constants/safe-types'\nimport { from as arrayFrom, flatten, flattenDeep } from '../../utils/array'\nimport { cloneDeep } from '../../utils/clone-deep'\nimport { closest } from '../../utils/dom'\nimport { eventOn, eventOff, stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isArray, isFile, isFunction, isNull, isUndefinedOrNull } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { makeModelMixin } from '../../utils/model'\nimport { sortKeys } from '../../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../../utils/props'\nimport { escapeRegExp } from '../../utils/string'\nimport { warn } from '../../utils/warn'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control'\nimport { formCustomMixin, props as formCustomProps } from '../../mixins/form-custom'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { props as formSizeProps } from '../../mixins/form-size'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n type: [PROP_TYPE_ARRAY, File],\n defaultValue: null,\n validator: value => {\n /* istanbul ignore next */\n if (value === '') {\n warn(VALUE_EMPTY_DEPRECATED_MSG, NAME_FORM_FILE)\n return true\n }\n return isUndefinedOrNull(value) || isValidValue(value)\n }\n})\n\nconst VALUE_EMPTY_DEPRECATED_MSG =\n 'Setting \"value\"/\"v-model\" to an empty string for reset is deprecated. Set to \"null\" instead.'\n\n// --- Helper methods ---\n\nconst isValidValue = value => isFile(value) || (isArray(value) && value.every(v => isValidValue(v)))\n\n// Helper method to \"safely\" get the entry from a data-transfer item\n/* istanbul ignore next: not supported in JSDOM */\nconst getDataTransferItemEntry = item =>\n isFunction(item.getAsEntry)\n ? item.getAsEntry()\n : isFunction(item.webkitGetAsEntry)\n ? item.webkitGetAsEntry()\n : null\n\n// Drop handler function to get all files\n/* istanbul ignore next: not supported in JSDOM */\nconst getAllFileEntries = (dataTransferItemList, traverseDirectories = true) =>\n Promise.all(\n arrayFrom(dataTransferItemList)\n .filter(item => item.kind === 'file')\n .map(item => {\n const entry = getDataTransferItemEntry(item)\n if (entry) {\n if (entry.isDirectory && traverseDirectories) {\n return getAllFileEntriesInDirectory(entry.createReader(), `${entry.name}/`)\n } else if (entry.isFile) {\n return new Promise(resolve => {\n entry.file(file => {\n file.$path = ''\n resolve(file)\n })\n })\n }\n }\n return null\n })\n .filter(identity)\n )\n\n// Get all the file entries (recursive) in a directory\n/* istanbul ignore next: not supported in JSDOM */\nconst getAllFileEntriesInDirectory = (directoryReader, path = '') =>\n new Promise(resolve => {\n const entryPromises = []\n const readDirectoryEntries = () => {\n directoryReader.readEntries(entries => {\n if (entries.length === 0) {\n resolve(Promise.all(entryPromises).then(entries => flatten(entries)))\n } else {\n entryPromises.push(\n Promise.all(\n entries\n .map(entry => {\n if (entry) {\n if (entry.isDirectory) {\n return getAllFileEntriesInDirectory(\n entry.createReader(),\n `${path}${entry.name}/`\n )\n } else if (entry.isFile) {\n return new Promise(resolve => {\n entry.file(file => {\n file.$path = `${path}${file.name}`\n resolve(file)\n })\n })\n }\n }\n return null\n })\n .filter(identity)\n )\n )\n\n readDirectoryEntries()\n }\n })\n }\n\n readDirectoryEntries()\n })\n\n// --- Props ---\n\nconst props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ...formControlProps,\n ...formCustomProps,\n ...formStateProps,\n ...formSizeProps,\n accept: makeProp(PROP_TYPE_STRING, ''),\n browseText: makeProp(PROP_TYPE_STRING, 'Browse'),\n // Instruct input to capture from camera\n capture: makeProp(PROP_TYPE_BOOLEAN, false),\n directory: makeProp(PROP_TYPE_BOOLEAN, false),\n dropPlaceholder: makeProp(PROP_TYPE_STRING, 'Drop files here'),\n fileNameFormatter: makeProp(PROP_TYPE_FUNCTION),\n multiple: makeProp(PROP_TYPE_BOOLEAN, false),\n noDrop: makeProp(PROP_TYPE_BOOLEAN, false),\n noDropPlaceholder: makeProp(PROP_TYPE_STRING, 'Not allowed'),\n // TODO:\n // Should we deprecate this and only support flat file structures?\n // Nested file structures are only supported when files are dropped\n // A Chromium \"bug\" prevents `webkitEntries` from being populated\n // on the file input's `change` event and is marked as \"WontFix\"\n // Mozilla implemented the behavior the same way as Chromium\n // See: https://bugs.chromium.org/p/chromium/issues/detail?id=138987\n // See: https://bugzilla.mozilla.org/show_bug.cgi?id=1326031\n noTraverse: makeProp(PROP_TYPE_BOOLEAN, false),\n placeholder: makeProp(PROP_TYPE_STRING, 'No file chosen')\n }),\n NAME_FORM_FILE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormFile = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_FILE,\n mixins: [\n attrsMixin,\n idMixin,\n modelMixin,\n normalizeSlotMixin,\n formControlMixin,\n formStateMixin,\n formCustomMixin,\n normalizeSlotMixin\n ],\n inheritAttrs: false,\n props,\n data() {\n return {\n files: [],\n dragging: false,\n // IE 11 doesn't respect setting `event.dataTransfer.dropEffect`,\n // so we handle it ourselves as well\n // https://stackoverflow.com/a/46915971/2744776\n dropAllowed: !this.noDrop,\n hasFocus: false\n }\n },\n computed: {\n // Convert `accept` to an array of `[{ RegExpr, isMime }, ...]`\n computedAccept() {\n let { accept } = this\n accept = (accept || '')\n .trim()\n .split(/[,\\s]+/)\n .filter(identity)\n\n // Allow any file type/extension\n if (accept.length === 0) {\n return null\n }\n\n return accept.map(extOrType => {\n let prop = 'name'\n let startMatch = '^'\n let endMatch = '$'\n if (RX_EXTENSION.test(extOrType)) {\n // File extension /\\.ext$/\n startMatch = ''\n } else {\n // MIME type /^mime\\/.+$/ or /^mime\\/type$/\n prop = 'type'\n if (RX_STAR.test(extOrType)) {\n endMatch = '.+$'\n // Remove trailing `*`\n extOrType = extOrType.slice(0, -1)\n }\n }\n // Escape all RegExp special chars\n extOrType = escapeRegExp(extOrType)\n const rx = new RegExp(`${startMatch}${extOrType}${endMatch}`)\n return { rx, prop }\n })\n },\n computedCapture() {\n const { capture } = this\n return capture === true || capture === '' ? true : capture || null\n },\n computedAttrs() {\n const { name, disabled, required, form, computedCapture, accept, multiple, directory } = this\n return {\n ...this.bvAttrs,\n type: 'file',\n id: this.safeId(),\n name,\n disabled,\n required,\n form: form || null,\n capture: computedCapture,\n accept: accept || null,\n multiple,\n directory,\n webkitdirectory: directory,\n 'aria-required': required ? 'true' : null\n }\n },\n computedFileNameFormatter() {\n const { fileNameFormatter } = this\n return hasPropFunction(fileNameFormatter) ? fileNameFormatter : this.defaultFileNameFormatter\n },\n clonedFiles() {\n return cloneDeep(this.files)\n },\n flattenedFiles() {\n return flattenDeep(this.files)\n },\n fileNames() {\n return this.flattenedFiles.map(file => file.name)\n },\n labelContent() {\n // Draging active\n /* istanbul ignore next: used by drag/drop which can't be tested easily */\n if (this.dragging && !this.noDrop) {\n return (\n // TODO: Add additional scope with file count, and other not-allowed reasons\n this.normalizeSlot(SLOT_NAME_DROP_PLACEHOLDER, { allowed: this.dropAllowed }) ||\n (this.dropAllowed\n ? this.dropPlaceholder\n : this.$createElement('span', { staticClass: 'text-danger' }, this.noDropPlaceholder))\n )\n }\n\n // No file chosen\n if (this.files.length === 0) {\n return this.normalizeSlot(SLOT_NAME_PLACEHOLDER) || this.placeholder\n }\n\n const { flattenedFiles, clonedFiles, fileNames, computedFileNameFormatter } = this\n\n // There is a slot for formatting the files/names\n if (this.hasNormalizedSlot(SLOT_NAME_FILE_NAME)) {\n return this.normalizeSlot(SLOT_NAME_FILE_NAME, {\n files: flattenedFiles,\n filesTraversed: clonedFiles,\n names: fileNames\n })\n }\n\n return computedFileNameFormatter(flattenedFiles, clonedFiles, fileNames)\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue) {\n if (!newValue || (isArray(newValue) && newValue.length === 0)) {\n this.reset()\n }\n },\n files(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n const { multiple, noTraverse } = this\n const files = !multiple || noTraverse ? flattenDeep(newValue) : newValue\n this.$emit(MODEL_EVENT_NAME, multiple ? files : files[0] || null)\n }\n }\n },\n created() {\n // Create private non-reactive props\n this.$_form = null\n },\n mounted() {\n // Listen for form reset events, to reset the file input\n const $form = closest('form', this.$el)\n if ($form) {\n eventOn($form, 'reset', this.reset, EVENT_OPTIONS_PASSIVE)\n this.$_form = $form\n }\n },\n beforeDestroy() {\n const $form = this.$_form\n if ($form) {\n eventOff($form, 'reset', this.reset, EVENT_OPTIONS_PASSIVE)\n }\n },\n methods: {\n isFileValid(file) {\n if (!file) {\n return false\n }\n const accept = this.computedAccept\n return accept ? accept.some(a => a.rx.test(file[a.prop])) : true\n },\n isFilesArrayValid(files) {\n return isArray(files) ? files.every(file => this.isFileValid(file)) : this.isFileValid(files)\n },\n defaultFileNameFormatter(flattenedFiles, clonedFiles, fileNames) {\n return fileNames.join(', ')\n },\n setFiles(files) {\n // Reset the dragging flags\n this.dropAllowed = !this.noDrop\n this.dragging = false\n // Set the selected files\n this.files = this.multiple\n ? this.directory\n ? files\n : flattenDeep(files)\n : flattenDeep(files).slice(0, 1)\n },\n /* istanbul ignore next: used by Drag/Drop */\n setInputFiles(files) {\n // Try an set the file input files array so that `required`\n // constraint works for dropped files (will fail in IE11 though)\n // To be used only when dropping files\n try {\n // Firefox < 62 workaround exploiting https://bugzilla.mozilla.org/show_bug.cgi?id=1422655\n const dataTransfer = new ClipboardEvent('').clipboardData || new DataTransfer()\n // Add flattened files to temp `dataTransfer` object to get a true `FileList` array\n flattenDeep(cloneDeep(files)).forEach(file => {\n // Make sure to remove the custom `$path` attribute\n delete file.$path\n dataTransfer.items.add(file)\n })\n this.$refs.input.files = dataTransfer.files\n } catch {}\n },\n reset() {\n // IE 11 doesn't support setting `$input.value` to `''` or `null`\n // So we use this little extra hack to reset the value, just in case\n // This also appears to work on modern browsers as well\n // Wrapped in try in case IE 11 or mobile Safari crap out\n try {\n const $input = this.$refs.input\n $input.value = ''\n $input.type = ''\n $input.type = 'file'\n } catch {}\n this.files = []\n },\n handleFiles(files, isDrop = false) {\n if (isDrop) {\n // When dropped, make sure to filter files with the internal `accept` logic\n const filteredFiles = files.filter(this.isFilesArrayValid)\n // Only update files when we have any after filtering\n if (filteredFiles.length > 0) {\n this.setFiles(filteredFiles)\n // Try an set the file input's files array so that `required`\n // constraint works for dropped files (will fail in IE 11 though)\n this.setInputFiles(filteredFiles)\n }\n } else {\n // We always update the files from the `change` event\n this.setFiles(files)\n }\n },\n focusHandler(event) {\n // Bootstrap v4 doesn't have focus styling for custom file input\n // Firefox has a `[type=file]:focus ~ sibling` selector issue,\n // so we add a `focus` class to get around these bugs\n if (this.plain || event.type === 'focusout') {\n this.hasFocus = false\n } else {\n // Add focus styling for custom file input\n this.hasFocus = true\n }\n },\n onChange(event) {\n const { type, target, dataTransfer = {} } = event\n const isDrop = type === 'drop'\n\n // Always emit original event\n this.$emit(EVENT_NAME_CHANGE, event)\n\n const items = arrayFrom(dataTransfer.items || [])\n if (HAS_PROMISE_SUPPORT && items.length > 0 && !isNull(getDataTransferItemEntry(items[0]))) {\n // Drop handling for modern browsers\n // Supports nested directory structures in `directory` mode\n /* istanbul ignore next: not supported in JSDOM */\n getAllFileEntries(items, this.directory).then(files => this.handleFiles(files, isDrop))\n } else {\n // Standard file input handling (native file input change event),\n // or fallback drop mode (IE 11 / Opera) which don't support `directory` mode\n const files = arrayFrom(target.files || dataTransfer.files || []).map(file => {\n // Add custom `$path` property to each file (to be consistent with drop mode)\n file.$path = file.webkitRelativePath || ''\n return file\n })\n this.handleFiles(files, isDrop)\n }\n },\n onDragenter(event) {\n stopEvent(event)\n this.dragging = true\n const { dataTransfer = {} } = event\n // Early exit when the input or dropping is disabled\n if (this.noDrop || this.disabled || !this.dropAllowed) {\n // Show deny feedback\n /* istanbul ignore next: not supported in JSDOM */\n dataTransfer.dropEffect = 'none'\n this.dropAllowed = false\n return\n }\n /* istanbul ignore next: not supported in JSDOM */\n dataTransfer.dropEffect = 'copy'\n },\n // Note this event fires repeatedly while the mouse is over the dropzone at\n // intervals in the milliseconds, so avoid doing much processing in here\n onDragover(event) {\n stopEvent(event)\n this.dragging = true\n const { dataTransfer = {} } = event\n // Early exit when the input or dropping is disabled\n if (this.noDrop || this.disabled || !this.dropAllowed) {\n // Show deny feedback\n /* istanbul ignore next: not supported in JSDOM */\n dataTransfer.dropEffect = 'none'\n this.dropAllowed = false\n return\n }\n /* istanbul ignore next: not supported in JSDOM */\n dataTransfer.dropEffect = 'copy'\n },\n onDragleave(event) {\n stopEvent(event)\n this.$nextTick(() => {\n this.dragging = false\n // Reset `dropAllowed` to default\n this.dropAllowed = !this.noDrop\n })\n },\n // Triggered by a file drop onto drop target\n onDrop(event) {\n stopEvent(event)\n this.dragging = false\n // Early exit when the input or dropping is disabled\n if (this.noDrop || this.disabled || !this.dropAllowed) {\n this.$nextTick(() => {\n // Reset `dropAllowed` to default\n this.dropAllowed = !this.noDrop\n })\n return\n }\n this.onChange(event)\n }\n },\n render(h) {\n const { custom, plain, size, dragging, stateClass, bvAttrs } = this\n\n // Form Input\n const $input = h('input', {\n class: [\n {\n 'form-control-file': plain,\n 'custom-file-input': custom,\n focus: custom && this.hasFocus\n },\n stateClass\n ],\n // With IE 11, the input gets in the \"way\" of the drop events,\n // so we move it out of the way by putting it behind the label\n // Bootstrap v4 has it in front\n style: custom ? { zIndex: -5 } : {},\n attrs: this.computedAttrs,\n on: {\n change: this.onChange,\n focusin: this.focusHandler,\n focusout: this.focusHandler,\n reset: this.reset\n },\n ref: 'input'\n })\n\n if (plain) {\n return $input\n }\n\n // Overlay label\n const $label = h(\n 'label',\n {\n staticClass: 'custom-file-label',\n class: { dragging },\n attrs: {\n for: this.safeId(),\n // This goes away in Bootstrap v5\n 'data-browse': this.browseText || null\n }\n },\n [\n h(\n 'span',\n {\n staticClass: 'd-block form-file-text',\n // `pointer-events: none` is used to make sure\n // the drag events fire only on the label\n style: { pointerEvents: 'none' }\n },\n [this.labelContent]\n )\n ]\n )\n\n // Return rendered custom file input\n return h(\n 'div',\n {\n staticClass: 'custom-file b-form-file',\n class: [{ [`b-custom-control-${size}`]: size }, stateClass, bvAttrs.class],\n style: bvAttrs.style,\n attrs: { id: this.safeId('_BV_file_outer_') },\n on: {\n dragenter: this.onDragenter,\n dragover: this.onDragover,\n dragleave: this.onDragleave,\n drop: this.onDrop\n }\n },\n [$input, $label]\n )\n }\n})\n","import { BFormFile } from './form-file'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormFilePlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BFormFile,\n BFile: BFormFile\n }\n})\n\nexport { FormFilePlugin, BFormFile }\n","import { toString } from './string'\n\nconst escapeChar = value => '\\\\' + value\n\n// The `cssEscape()` util is based on this `CSS.escape()` polyfill:\n// https://github.com/mathiasbynens/CSS.escape\nexport const cssEscape = value => {\n value = toString(value)\n\n const length = value.length\n const firstCharCode = value.charCodeAt(0)\n\n return value.split('').reduce((result, char, index) => {\n const charCode = value.charCodeAt(index)\n\n // If the character is NULL (U+0000), use (U+FFFD) as replacement\n if (charCode === 0x0000) {\n return result + '\\uFFFD'\n }\n\n // If the character ...\n if (\n // ... is U+007F OR\n charCode === 0x007f ||\n // ... is in the range [\\1-\\1F] (U+0001 to U+001F) OR ...\n (charCode >= 0x0001 && charCode <= 0x001f) ||\n // ... is the first character and is in the range [0-9] (U+0030 to U+0039) OR ...\n (index === 0 && charCode >= 0x0030 && charCode <= 0x0039) ||\n // ... is the second character and is in the range [0-9] (U+0030 to U+0039)\n // and the first character is a `-` (U+002D) ...\n (index === 1 && charCode >= 0x0030 && charCode <= 0x0039 && firstCharCode === 0x002d)\n ) {\n // ... https://drafts.csswg.org/cssom/#escape-a-character-as-code-point\n return result + escapeChar(`${charCode.toString(16)} `)\n }\n\n // If the character ...\n if (\n // ... is the first character AND ...\n index === 0 &&\n // ... is a `-` (U+002D) AND ...\n charCode === 0x002d &&\n // ... there is no second character ...\n length === 1\n ) {\n // ... use the escaped character\n return result + escapeChar(char)\n }\n\n // If the character ...\n if (\n // ... is greater than or equal to U+0080 OR ...\n charCode >= 0x0080 ||\n // ... is `-` (U+002D) OR ...\n charCode === 0x002d ||\n // ... is `_` (U+005F) OR ...\n charCode === 0x005f ||\n // ... is in the range [0-9] (U+0030 to U+0039) OR ...\n (charCode >= 0x0030 && charCode <= 0x0039) ||\n // ... is in the range [A-Z] (U+0041 to U+005A) OR ...\n (charCode >= 0x0041 && charCode <= 0x005a) ||\n // ... is in the range [a-z] (U+0061 to U+007A) ...\n (charCode >= 0x0061 && charCode <= 0x007a)\n ) {\n // ... use the character itself\n return result + char\n }\n\n // Otherwise use the escaped character\n // See: https://drafts.csswg.org/cssom/#escape-a-character\n return result + escapeChar(char)\n }, '')\n}\n","import { mergeData } from '../../vue'\nimport { NAME_COL } from '../../constants/components'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_NUMBER_STRING,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { RX_COL_CLASS } from '../../constants/regex'\nimport { arrayIncludes } from '../../utils/array'\nimport { getBreakpointsUpCached } from '../../utils/config'\nimport { identity } from '../../utils/identity'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { memoize } from '../../utils/memoize'\nimport { assign, create, keys, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, suffixPropName } from '../../utils/props'\nimport { lowerCase } from '../../utils/string'\n\n// --- Constants ---\n\nconst ALIGN_SELF_VALUES = ['auto', 'start', 'end', 'center', 'baseline', 'stretch']\n\n// --- Helper methods ---\n\n// Compute a breakpoint class name\nconst computeBreakpoint = (type, breakpoint, value) => {\n let className = type\n if (isUndefinedOrNull(value) || value === false) {\n return undefined\n }\n if (breakpoint) {\n className += `-${breakpoint}`\n }\n // Handling the boolean style prop when accepting `[Boolean, String, Number]`\n // means Vue will not convert `<b-col sm></b-col>` to `sm: true` for us\n // Since the default is `false`, '' indicates the prop's presence\n if (type === 'col' && (value === '' || value === true)) {\n // .col-md\n return lowerCase(className)\n }\n // .order-md-6\n className += `-${value}`\n return lowerCase(className)\n}\n\n// Memoized function for better performance on generating class names\nconst computeBreakpointClass = memoize(computeBreakpoint)\n\n// Cached copy of the breakpoint prop names\nlet breakpointPropMap = create(null)\n\n// --- Props ---\n\n// Prop generator for lazy generation of props\nexport const generateProps = () => {\n // Grab the breakpoints from the cached config (exclude the '' (xs) breakpoint)\n const breakpoints = getBreakpointsUpCached().filter(identity)\n\n // i.e. 'col-sm', 'col-md-6', 'col-lg-auto', ...\n const breakpointCol = breakpoints.reduce((props, breakpoint) => {\n props[breakpoint] = makeProp(PROP_TYPE_BOOLEAN_NUMBER_STRING)\n return props\n }, create(null))\n\n // i.e. 'offset-md-1', 'offset-lg-12', ...\n const breakpointOffset = breakpoints.reduce((props, breakpoint) => {\n props[suffixPropName(breakpoint, 'offset')] = makeProp(PROP_TYPE_NUMBER_STRING)\n return props\n }, create(null))\n\n // i.e. 'order-md-1', 'order-lg-12', ...\n const breakpointOrder = breakpoints.reduce((props, breakpoint) => {\n props[suffixPropName(breakpoint, 'order')] = makeProp(PROP_TYPE_NUMBER_STRING)\n return props\n }, create(null))\n\n // For loop doesn't need to check `.hasOwnProperty()`\n // when using an object created from `null`\n breakpointPropMap = assign(create(null), {\n col: keys(breakpointCol),\n offset: keys(breakpointOffset),\n order: keys(breakpointOrder)\n })\n\n // Return the generated props\n return makePropsConfigurable(\n sortKeys({\n ...breakpointCol,\n ...breakpointOffset,\n ...breakpointOrder,\n // Flex alignment\n alignSelf: makeProp(PROP_TYPE_STRING, null, value => {\n return arrayIncludes(ALIGN_SELF_VALUES, value)\n }),\n // Generic flexbox 'col' (xs)\n col: makeProp(PROP_TYPE_BOOLEAN, false),\n // i.e. 'col-1', 'col-2', 'col-auto', ...\n cols: makeProp(PROP_TYPE_NUMBER_STRING),\n offset: makeProp(PROP_TYPE_NUMBER_STRING),\n order: makeProp(PROP_TYPE_NUMBER_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n }),\n NAME_COL\n )\n}\n\n// --- Main component ---\n\n// We do not use Vue.extend here as that would evaluate the props\n// immediately, which we do not want to happen\n// @vue/component\nexport const BCol = {\n name: NAME_COL,\n functional: true,\n get props() {\n // Allow props to be lazy evaled on first access and\n // then they become a non-getter afterwards.\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get#Smart_self-overwriting_lazy_getters\n delete this.props\n // eslint-disable-next-line no-return-assign\n return (this.props = generateProps())\n },\n render(h, { props, data, children }) {\n const { cols, offset, order, alignSelf } = props\n\n const classList = []\n // Loop through `col`, `offset`, `order` breakpoint props\n for (const type in breakpointPropMap) {\n // Returns colSm, offset, offsetSm, orderMd, etc.\n const keys = breakpointPropMap[type]\n for (let i = 0; i < keys.length; i++) {\n // computeBreakpoint(col, colSm => Sm, value=[String, Number, Boolean])\n const c = computeBreakpointClass(type, keys[i].replace(type, ''), props[keys[i]])\n // If a class is returned, push it onto the array.\n if (c) {\n classList.push(c)\n }\n }\n }\n\n const hasColClasses = classList.some(className => RX_COL_CLASS.test(className))\n\n classList.push({\n // Default to .col if no other col-{bp}-* classes generated nor `cols` specified.\n col: props.col || (!hasColClasses && !cols),\n [`col-${cols}`]: cols,\n [`offset-${offset}`]: offset,\n [`order-${order}`]: order,\n [`align-self-${alignSelf}`]: alignSelf\n })\n\n return h(props.tag, mergeData(data, { class: classList }), children)\n }\n}\n","import { NAME_FORM_GROUP } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { RX_SPACE_SPLIT } from '../../constants/regex'\nimport {\n SLOT_NAME_DEFAULT,\n SLOT_NAME_DESCRIPTION,\n SLOT_NAME_INVALID_FEEDBACK,\n SLOT_NAME_LABEL,\n SLOT_NAME_VALID_FEEDBACK\n} from '../../constants/slots'\nimport { arrayIncludes } from '../../utils/array'\nimport { getBreakpointsUpCached } from '../../utils/config'\nimport { cssEscape } from '../../utils/css-escape'\nimport {\n select,\n selectAll,\n isVisible,\n setAttr,\n removeAttr,\n getAttr,\n attemptFocus\n} from '../../utils/dom'\nimport { identity } from '../../utils/identity'\nimport { isBoolean } from '../../utils/inspect'\nimport { toInteger } from '../../utils/number'\nimport { create, keys, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, suffixPropName } from '../../utils/props'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BCol } from '../layout/col'\nimport { BFormRow } from '../layout/form-row'\nimport { BFormText } from '../form/form-text'\nimport { BFormInvalidFeedback } from '../form/form-invalid-feedback'\nimport { BFormValidFeedback } from '../form/form-valid-feedback'\n\n// --- Constants ---\n\nconst INPUTS = ['input', 'select', 'textarea']\n\n// Selector for finding first input in the form group\nconst INPUT_SELECTOR = INPUTS.map(v => `${v}:not([disabled])`).join()\n\n// A list of interactive elements (tag names) inside `<b-form-group>`'s legend\nconst LEGEND_INTERACTIVE_ELEMENTS = [...INPUTS, 'a', 'button', 'label']\n\n// --- Props ---\n\n// Prop generator for lazy generation of props\nexport const generateProps = () =>\n makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...formStateProps,\n ...getBreakpointsUpCached().reduce((props, breakpoint) => {\n // i.e. 'content-cols', 'content-cols-sm', 'content-cols-md', ...\n props[suffixPropName(breakpoint, 'contentCols')] = makeProp(PROP_TYPE_BOOLEAN_NUMBER_STRING)\n // i.e. 'label-align', 'label-align-sm', 'label-align-md', ...\n props[suffixPropName(breakpoint, 'labelAlign')] = makeProp(PROP_TYPE_STRING)\n // i.e. 'label-cols', 'label-cols-sm', 'label-cols-md', ...\n props[suffixPropName(breakpoint, 'labelCols')] = makeProp(PROP_TYPE_BOOLEAN_NUMBER_STRING)\n return props\n }, create(null)),\n description: makeProp(PROP_TYPE_STRING),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n feedbackAriaLive: makeProp(PROP_TYPE_STRING, 'assertive'),\n invalidFeedback: makeProp(PROP_TYPE_STRING),\n label: makeProp(PROP_TYPE_STRING),\n labelClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n labelFor: makeProp(PROP_TYPE_STRING),\n labelSize: makeProp(PROP_TYPE_STRING),\n labelSrOnly: makeProp(PROP_TYPE_BOOLEAN, false),\n tooltip: makeProp(PROP_TYPE_BOOLEAN, false),\n validFeedback: makeProp(PROP_TYPE_STRING),\n validated: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_FORM_GROUP\n )\n\n// --- Main component ---\n\n// We do not use `Vue.extend()` here as that would evaluate the props\n// immediately, which we do not want to happen\n// @vue/component\nexport const BFormGroup = {\n name: NAME_FORM_GROUP,\n mixins: [idMixin, formStateMixin, normalizeSlotMixin],\n get props() {\n // Allow props to be lazy evaled on first access and\n // then they become a non-getter afterwards\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get#Smart_self-overwriting_lazy_getters\n delete this.props\n // eslint-disable-next-line no-return-assign\n return (this.props = generateProps())\n },\n data() {\n return {\n ariaDescribedby: null\n }\n },\n computed: {\n contentColProps() {\n return this.getColProps(this.$props, 'content')\n },\n labelAlignClasses() {\n return this.getAlignClasses(this.$props, 'label')\n },\n labelColProps() {\n return this.getColProps(this.$props, 'label')\n },\n isHorizontal() {\n // Determine if the form group will be rendered horizontal\n // based on the existence of 'content-col' or 'label-col' props\n return keys(this.contentColProps).length > 0 || keys(this.labelColProps).length > 0\n }\n },\n watch: {\n ariaDescribedby(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.updateAriaDescribedby(newValue, oldValue)\n }\n }\n },\n mounted() {\n this.$nextTick(() => {\n // Set `aria-describedby` on the input specified by `labelFor`\n // We do this in a `$nextTick()` to ensure the children have finished rendering\n this.updateAriaDescribedby(this.ariaDescribedby)\n })\n },\n methods: {\n getAlignClasses(props, prefix) {\n return getBreakpointsUpCached().reduce((result, breakpoint) => {\n const propValue = props[suffixPropName(breakpoint, `${prefix}Align`)] || null\n if (propValue) {\n result.push(['text', breakpoint, propValue].filter(identity).join('-'))\n }\n\n return result\n }, [])\n },\n getColProps(props, prefix) {\n return getBreakpointsUpCached().reduce((result, breakpoint) => {\n let propValue = props[suffixPropName(breakpoint, `${prefix}Cols`)]\n\n // Handle case where the prop's value is an empty string,\n // which represents `true`\n propValue = propValue === '' ? true : propValue || false\n\n if (!isBoolean(propValue) && propValue !== 'auto') {\n // Convert to column size to number\n propValue = toInteger(propValue, 0)\n // Ensure column size is greater than `0`\n propValue = propValue > 0 ? propValue : false\n }\n\n // Add the prop to the list of props to give to `<b-col>`\n // If breakpoint is '' (`${prefix}Cols` is `true`), then we use\n // the 'col' prop to make equal width at 'xs'\n if (propValue) {\n result[breakpoint || (isBoolean(propValue) ? 'col' : 'cols')] = propValue\n }\n\n return result\n }, {})\n },\n // Sets the `aria-describedby` attribute on the input if `labelFor` is set\n // Optionally accepts a string of IDs to remove as the second parameter\n // Preserves any `aria-describedby` value(s) user may have on input\n updateAriaDescribedby(newValue, oldValue) {\n const { labelFor } = this\n if (IS_BROWSER && labelFor) {\n // We need to escape `labelFor` since it can be user-provided\n const $input = select(`#${cssEscape(labelFor)}`, this.$refs.content)\n if ($input) {\n const attr = 'aria-describedby'\n const newIds = (newValue || '').split(RX_SPACE_SPLIT)\n const oldIds = (oldValue || '').split(RX_SPACE_SPLIT)\n\n // Update ID list, preserving any original IDs\n // and ensuring the ID's are unique\n const ids = (getAttr($input, attr) || '')\n .split(RX_SPACE_SPLIT)\n .filter(id => !arrayIncludes(oldIds, id))\n .concat(newIds)\n .filter((id, index, ids) => ids.indexOf(id) === index)\n .filter(identity)\n .join(' ')\n .trim()\n\n if (ids) {\n setAttr($input, attr, ids)\n } else {\n removeAttr($input, attr)\n }\n }\n }\n },\n onLegendClick(event) {\n // Don't do anything if `labelFor` is set\n /* istanbul ignore next: clicking a label will focus the input, so no need to test */\n if (this.labelFor) {\n return\n }\n\n const { target } = event\n const tagName = target ? target.tagName : ''\n\n // If clicked an interactive element inside legend,\n // we just let the default happen\n /* istanbul ignore next */\n if (LEGEND_INTERACTIVE_ELEMENTS.indexOf(tagName) !== -1) {\n return\n }\n\n // If only a single input, focus it, emulating label behaviour\n const inputs = selectAll(INPUT_SELECTOR, this.$refs.content).filter(isVisible)\n if (inputs.length === 1) {\n attemptFocus(inputs[0])\n }\n }\n },\n render(h) {\n const {\n computedState: state,\n feedbackAriaLive,\n isHorizontal,\n labelFor,\n normalizeSlot,\n safeId,\n tooltip\n } = this\n const id = safeId()\n const isFieldset = !labelFor\n\n let $label = h()\n const labelContent = normalizeSlot(SLOT_NAME_LABEL) || this.label\n const labelId = labelContent ? safeId('_BV_label_') : null\n if (labelContent || isHorizontal) {\n const { labelSize, labelColProps } = this\n const labelTag = isFieldset ? 'legend' : 'label'\n if (this.labelSrOnly) {\n if (labelContent) {\n $label = h(\n labelTag,\n {\n class: 'sr-only',\n attrs: { id: labelId, for: labelFor || null }\n },\n [labelContent]\n )\n }\n $label = h(isHorizontal ? BCol : 'div', { props: isHorizontal ? labelColProps : {} }, [\n $label\n ])\n } else {\n $label = h(\n isHorizontal ? BCol : labelTag,\n {\n on: isFieldset ? { click: this.onLegendClick } : {},\n props: isHorizontal ? { ...labelColProps, tag: labelTag } : {},\n attrs: {\n id: labelId,\n for: labelFor || null,\n // We add a `tabindex` to legend so that screen readers\n // will properly read the `aria-labelledby` in IE\n tabindex: isFieldset ? '-1' : null\n },\n class: [\n // Hide the focus ring on the legend\n isFieldset ? 'bv-no-focus-ring' : '',\n // When horizontal or if a legend is rendered, add 'col-form-label' class\n // for correct sizing as Bootstrap has inconsistent font styling for\n // legend in non-horizontal form groups\n // See: https://github.com/twbs/bootstrap/issues/27805\n isHorizontal || isFieldset ? 'col-form-label' : '',\n // Emulate label padding top of `0` on legend when not horizontal\n !isHorizontal && isFieldset ? 'pt-0' : '',\n // If not horizontal and not a legend, we add 'd-block' class to label\n // so that label-align works\n !isHorizontal && !isFieldset ? 'd-block' : '',\n labelSize ? `col-form-label-${labelSize}` : '',\n this.labelAlignClasses,\n this.labelClass\n ]\n },\n [labelContent]\n )\n }\n }\n\n let $invalidFeedback = h()\n const invalidFeedbackContent = normalizeSlot(SLOT_NAME_INVALID_FEEDBACK) || this.invalidFeedback\n const invalidFeedbackId = invalidFeedbackContent ? safeId('_BV_feedback_invalid_') : null\n if (invalidFeedbackContent) {\n $invalidFeedback = h(\n BFormInvalidFeedback,\n {\n props: {\n ariaLive: feedbackAriaLive,\n id: invalidFeedbackId,\n // If state is explicitly `false`, always show the feedback\n state,\n tooltip\n },\n attrs: { tabindex: invalidFeedbackContent ? '-1' : null }\n },\n [invalidFeedbackContent]\n )\n }\n\n let $validFeedback = h()\n const validFeedbackContent = normalizeSlot(SLOT_NAME_VALID_FEEDBACK) || this.validFeedback\n const validFeedbackId = validFeedbackContent ? safeId('_BV_feedback_valid_') : null\n if (validFeedbackContent) {\n $validFeedback = h(\n BFormValidFeedback,\n {\n props: {\n ariaLive: feedbackAriaLive,\n id: validFeedbackId,\n // If state is explicitly `true`, always show the feedback\n state,\n tooltip\n },\n attrs: { tabindex: validFeedbackContent ? '-1' : null }\n },\n [validFeedbackContent]\n )\n }\n\n let $description = h()\n const descriptionContent = normalizeSlot(SLOT_NAME_DESCRIPTION) || this.description\n const descriptionId = descriptionContent ? safeId('_BV_description_') : null\n if (descriptionContent) {\n $description = h(\n BFormText,\n {\n attrs: {\n id: descriptionId,\n tabindex: '-1'\n }\n },\n [descriptionContent]\n )\n }\n\n // Update `ariaDescribedby`\n // Screen readers will read out any content linked to by `aria-describedby`\n // even if the content is hidden with `display: none;`, hence we only include\n // feedback IDs if the form group's state is explicitly valid or invalid\n const ariaDescribedby = (this.ariaDescribedby =\n [\n descriptionId,\n state === false ? invalidFeedbackId : null,\n state === true ? validFeedbackId : null\n ]\n .filter(identity)\n .join(' ') || null)\n\n const $content = h(\n isHorizontal ? BCol : 'div',\n {\n props: isHorizontal ? this.contentColProps : {},\n ref: 'content'\n },\n [\n normalizeSlot(SLOT_NAME_DEFAULT, { ariaDescribedby, descriptionId, id, labelId }) || h(),\n $invalidFeedback,\n $validFeedback,\n $description\n ]\n )\n\n // Return it wrapped in a form group\n // Note: Fieldsets do not support adding `row` or `form-row` directly\n // to them due to browser specific render issues, so we move the `form-row`\n // to an inner wrapper div when horizontal and using a fieldset\n return h(\n isFieldset ? 'fieldset' : isHorizontal ? BFormRow : 'div',\n {\n staticClass: 'form-group',\n class: [{ 'was-validated': this.validated }, this.stateClass],\n attrs: {\n id,\n disabled: isFieldset ? this.disabled : null,\n role: isFieldset ? null : 'group',\n 'aria-invalid': this.computedAriaInvalid,\n // Only apply `aria-labelledby` if we are a horizontal fieldset\n // as the legend is no longer a direct child of fieldset\n 'aria-labelledby': isFieldset && isHorizontal ? labelId : null\n }\n },\n isHorizontal && isFieldset ? [h(BFormRow, [$label, $content])] : [$label, $content]\n )\n }\n}\n","import { BFormGroup } from './form-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormGroupPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BFormGroup,\n BFormFieldset: BFormGroup\n }\n})\n\nexport { FormGroupPlugin, BFormGroup }\n","import { Vue } from '../vue'\n\n// @vue/component\nexport const formSelectionMixin = Vue.extend({\n computed: {\n selectionStart: {\n // Expose selectionStart for formatters, etc\n cache: false,\n /* istanbul ignore next */\n get() {\n return this.$refs.input.selectionStart\n },\n /* istanbul ignore next */\n set(val) {\n this.$refs.input.selectionStart = val\n }\n },\n selectionEnd: {\n // Expose selectionEnd for formatters, etc\n cache: false,\n /* istanbul ignore next */\n get() {\n return this.$refs.input.selectionEnd\n },\n /* istanbul ignore next */\n set(val) {\n this.$refs.input.selectionEnd = val\n }\n },\n selectionDirection: {\n // Expose selectionDirection for formatters, etc\n cache: false,\n /* istanbul ignore next */\n get() {\n return this.$refs.input.selectionDirection\n },\n /* istanbul ignore next */\n set(val) {\n this.$refs.input.selectionDirection = val\n }\n }\n },\n methods: {\n /* istanbul ignore next */\n select() {\n // For external handler that may want a select() method\n this.$refs.input.select(...arguments)\n },\n /* istanbul ignore next */\n setSelectionRange() {\n // For external handler that may want a setSelectionRange(a,b,c) method\n this.$refs.input.setSelectionRange(...arguments)\n },\n /* istanbul ignore next */\n setRangeText() {\n // For external handler that may want a setRangeText(a,b,c) method\n this.$refs.input.setRangeText(...arguments)\n }\n }\n})\n","import { Vue } from '../vue'\nimport {\n EVENT_NAME_BLUR,\n EVENT_NAME_CHANGE,\n EVENT_NAME_INPUT,\n EVENT_NAME_UPDATE\n} from '../constants/events'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_STRING,\n PROP_TYPE_FUNCTION,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../constants/props'\nimport { attemptBlur, attemptFocus } from '../utils/dom'\nimport { stopEvent } from '../utils/events'\nimport { mathMax } from '../utils/math'\nimport { makeModelMixin } from '../utils/model'\nimport { toInteger, toFloat } from '../utils/number'\nimport { sortKeys } from '../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../utils/props'\nimport { toString } from '../utils/string'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n type: PROP_TYPE_NUMBER_STRING,\n defaultValue: '',\n event: EVENT_NAME_UPDATE\n})\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...modelProps,\n ariaInvalid: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n autocomplete: makeProp(PROP_TYPE_STRING),\n // Debounce timeout (in ms). Not applicable with `lazy` prop\n debounce: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n formatter: makeProp(PROP_TYPE_FUNCTION),\n // Only update the `v-model` on blur/change events\n lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n lazyFormatter: makeProp(PROP_TYPE_BOOLEAN, false),\n number: makeProp(PROP_TYPE_BOOLEAN, false),\n placeholder: makeProp(PROP_TYPE_STRING),\n plaintext: makeProp(PROP_TYPE_BOOLEAN, false),\n readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n trim: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n 'formTextControls'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formTextMixin = Vue.extend({\n mixins: [modelMixin],\n props,\n data() {\n const value = this[MODEL_PROP_NAME]\n return {\n localValue: toString(value),\n vModelValue: this.modifyValue(value)\n }\n },\n computed: {\n computedClass() {\n const { plaintext, type } = this\n const isRange = type === 'range'\n const isColor = type === 'color'\n\n return [\n {\n // Range input needs class `custom-range`\n 'custom-range': isRange,\n // `plaintext` not supported by `type=\"range\"` or `type=\"color\"`\n 'form-control-plaintext': plaintext && !isRange && !isColor,\n // `form-control` not used by `type=\"range\"` or `plaintext`\n // Always used by `type=\"color\"`\n 'form-control': isColor || (!plaintext && !isRange)\n },\n this.sizeFormClass,\n this.stateClass\n ]\n },\n computedDebounce() {\n // Ensure we have a positive number equal to or greater than 0\n return mathMax(toInteger(this.debounce, 0), 0)\n },\n hasFormatter() {\n return hasPropFunction(this.formatter)\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue) {\n const stringifyValue = toString(newValue)\n const modifiedValue = this.modifyValue(newValue)\n if (stringifyValue !== this.localValue || modifiedValue !== this.vModelValue) {\n // Clear any pending debounce timeout, as we are overwriting the user input\n this.clearDebounce()\n // Update the local values\n this.localValue = stringifyValue\n this.vModelValue = modifiedValue\n }\n }\n },\n created() {\n // Create private non-reactive props\n this.$_inputDebounceTimer = null\n },\n beforeDestroy() {\n this.clearDebounce()\n },\n methods: {\n clearDebounce() {\n clearTimeout(this.$_inputDebounceTimer)\n this.$_inputDebounceTimer = null\n },\n formatValue(value, event, force = false) {\n value = toString(value)\n if (this.hasFormatter && (!this.lazyFormatter || force)) {\n value = this.formatter(value, event)\n }\n return value\n },\n modifyValue(value) {\n value = toString(value)\n // Emulate `.trim` modifier behaviour\n if (this.trim) {\n value = value.trim()\n }\n // Emulate `.number` modifier behaviour\n if (this.number) {\n value = toFloat(value, value)\n }\n return value\n },\n updateValue(value, force = false) {\n const { lazy } = this\n if (lazy && !force) {\n return\n }\n // Make sure to always clear the debounce when `updateValue()`\n // is called, even when the v-model hasn't changed\n this.clearDebounce()\n // Define the shared update logic in a method to be able to use\n // it for immediate and debounced value changes\n const doUpdate = () => {\n value = this.modifyValue(value)\n if (value !== this.vModelValue) {\n this.vModelValue = value\n this.$emit(MODEL_EVENT_NAME, value)\n } else if (this.hasFormatter) {\n // When the `vModelValue` hasn't changed but the actual input value\n // is out of sync, make sure to change it to the given one\n // Usually caused by browser autocomplete and how it triggers the\n // change or input event, or depending on the formatter function\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/2657\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/3498\n /* istanbul ignore next: hard to test */\n const $input = this.$refs.input\n /* istanbul ignore if: hard to test out of sync value */\n if ($input && value !== $input.value) {\n $input.value = value\n }\n }\n }\n // Only debounce the value update when a value greater than `0`\n // is set and we are not in lazy mode or this is a forced update\n const debounce = this.computedDebounce\n if (debounce > 0 && !lazy && !force) {\n this.$_inputDebounceTimer = setTimeout(doUpdate, debounce)\n } else {\n // Immediately update the v-model\n doUpdate()\n }\n },\n onInput(event) {\n // `event.target.composing` is set by Vue\n // https://github.com/vuejs/vue/blob/dev/src/platforms/web/runtime/directives/model.js\n // TODO: Is this needed now with the latest Vue?\n /* istanbul ignore if: hard to test composition events */\n if (event.target.composing) {\n return\n }\n const { value } = event.target\n const formattedValue = this.formatValue(value, event)\n // Exit when the `formatter` function strictly returned `false`\n // or prevented the input event\n /* istanbul ignore next */\n if (formattedValue === false || event.defaultPrevented) {\n stopEvent(event, { propagation: false })\n return\n }\n this.localValue = formattedValue\n this.updateValue(formattedValue)\n this.$emit(EVENT_NAME_INPUT, formattedValue)\n },\n onChange(event) {\n const { value } = event.target\n const formattedValue = this.formatValue(value, event)\n // Exit when the `formatter` function strictly returned `false`\n // or prevented the input event\n /* istanbul ignore next */\n if (formattedValue === false || event.defaultPrevented) {\n stopEvent(event, { propagation: false })\n return\n }\n this.localValue = formattedValue\n this.updateValue(formattedValue, true)\n this.$emit(EVENT_NAME_CHANGE, formattedValue)\n },\n onBlur(event) {\n // Apply the `localValue` on blur to prevent cursor jumps\n // on mobile browsers (e.g. caused by autocomplete)\n const { value } = event.target\n const formattedValue = this.formatValue(value, event, true)\n if (formattedValue !== false) {\n // We need to use the modified value here to apply the\n // `.trim` and `.number` modifiers properly\n this.localValue = toString(this.modifyValue(formattedValue))\n // We pass the formatted value here since the `updateValue` method\n // handles the modifiers itself\n this.updateValue(formattedValue, true)\n }\n // Emit native blur event\n this.$emit(EVENT_NAME_BLUR, event)\n },\n focus() {\n // For external handler that may want a focus method\n if (!this.disabled) {\n attemptFocus(this.$el)\n }\n },\n blur() {\n // For external handler that may want a blur method\n if (!this.disabled) {\n attemptBlur(this.$el)\n }\n }\n }\n})\n","import { Vue } from '../vue'\n\n// @vue/component\nexport const formValidityMixin = Vue.extend({\n computed: {\n validity: {\n // Expose validity property\n cache: false,\n /* istanbul ignore next */\n get() {\n return this.$refs.input.validity\n }\n },\n validationMessage: {\n // Expose validationMessage property\n cache: false,\n /* istanbul ignore next */\n get() {\n return this.$refs.input.validationMessage\n }\n },\n willValidate: {\n // Expose willValidate property\n cache: false,\n /* istanbul ignore next */\n get() {\n return this.$refs.input.willValidate\n }\n }\n },\n methods: {\n /* istanbul ignore next */\n setCustomValidity() {\n // For external handler that may want a setCustomValidity(...) method\n return this.$refs.input.setCustomValidity(...arguments)\n },\n /* istanbul ignore next */\n checkValidity() {\n // For external handler that may want a checkValidity(...) method\n return this.$refs.input.checkValidity(...arguments)\n },\n /* istanbul ignore next */\n reportValidity() {\n // For external handler that may want a reportValidity(...) method\n return this.$refs.input.reportValidity(...arguments)\n }\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_INPUT } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { arrayIncludes } from '../../utils/array'\nimport { attemptBlur } from '../../utils/dom'\nimport { eventOn, eventOff, eventOnOff, stopEvent } from '../../utils/events'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control'\nimport { formSelectionMixin } from '../../mixins/form-selection'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { formTextMixin, props as formTextProps } from '../../mixins/form-text'\nimport { formValidityMixin } from '../../mixins/form-validity'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { listenersMixin } from '../../mixins/listeners'\n\n// --- Constants ---\n\n// Valid supported input types\nconst TYPES = [\n 'text',\n 'password',\n 'email',\n 'number',\n 'url',\n 'tel',\n 'search',\n 'range',\n 'color',\n 'date',\n 'time',\n 'datetime',\n 'datetime-local',\n 'month',\n 'week'\n]\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...formControlProps,\n ...formSizeProps,\n ...formStateProps,\n ...formTextProps,\n list: makeProp(PROP_TYPE_STRING),\n max: makeProp(PROP_TYPE_NUMBER_STRING),\n min: makeProp(PROP_TYPE_NUMBER_STRING),\n // Disable mousewheel to prevent wheel from changing values (i.e. number/date)\n noWheel: makeProp(PROP_TYPE_BOOLEAN, false),\n step: makeProp(PROP_TYPE_NUMBER_STRING),\n type: makeProp(PROP_TYPE_STRING, 'text', type => {\n return arrayIncludes(TYPES, type)\n })\n }),\n NAME_FORM_INPUT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormInput = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_INPUT,\n // Mixin order is important!\n mixins: [\n listenersMixin,\n idMixin,\n formControlMixin,\n formSizeMixin,\n formStateMixin,\n formTextMixin,\n formSelectionMixin,\n formValidityMixin\n ],\n props,\n computed: {\n localType() {\n // We only allow certain types\n const { type } = this\n return arrayIncludes(TYPES, type) ? type : 'text'\n },\n computedAttrs() {\n const { localType: type, name, form, disabled, placeholder, required, min, max, step } = this\n\n return {\n id: this.safeId(),\n name,\n form,\n type,\n disabled,\n placeholder,\n required,\n autocomplete: this.autocomplete || null,\n readonly: this.readonly || this.plaintext,\n min,\n max,\n step,\n list: type !== 'password' ? this.list : null,\n 'aria-required': required ? 'true' : null,\n 'aria-invalid': this.computedAriaInvalid\n }\n },\n computedListeners() {\n return {\n ...this.bvListeners,\n input: this.onInput,\n change: this.onChange,\n blur: this.onBlur\n }\n }\n },\n watch: {\n noWheel(newValue) {\n this.setWheelStopper(newValue)\n }\n },\n mounted() {\n this.setWheelStopper(this.noWheel)\n },\n /* istanbul ignore next */\n deactivated() {\n // Turn off listeners when keep-alive component deactivated\n /* istanbul ignore next */\n this.setWheelStopper(false)\n },\n /* istanbul ignore next */\n activated() {\n // Turn on listeners (if no-wheel) when keep-alive component activated\n /* istanbul ignore next */\n this.setWheelStopper(this.noWheel)\n },\n beforeDestroy() {\n /* istanbul ignore next */\n this.setWheelStopper(false)\n },\n methods: {\n setWheelStopper(on) {\n const input = this.$el\n // We use native events, so that we don't interfere with propagation\n eventOnOff(on, input, 'focus', this.onWheelFocus)\n eventOnOff(on, input, 'blur', this.onWheelBlur)\n if (!on) {\n eventOff(document, 'wheel', this.stopWheel)\n }\n },\n onWheelFocus() {\n eventOn(document, 'wheel', this.stopWheel)\n },\n onWheelBlur() {\n eventOff(document, 'wheel', this.stopWheel)\n },\n stopWheel(event) {\n stopEvent(event, { propagation: false })\n attemptBlur(this.$el)\n }\n },\n render(h) {\n return h('input', {\n class: this.computedClass,\n attrs: this.computedAttrs,\n domProps: { value: this.localValue },\n on: this.computedListeners,\n ref: 'input'\n })\n }\n})\n","import { BFormInput } from './form-input'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormInputPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BFormInput,\n BInput: BFormInput\n }\n})\n\nexport { FormInputPlugin, BFormInput }\n","import { Vue } from '../../vue'\nimport { NAME_FORM_RADIO_GROUP } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/props'\nimport {\n formRadioCheckGroupMixin,\n props as formRadioCheckGroupProps\n} from '../../mixins/form-radio-check-group'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(formRadioCheckGroupProps, NAME_FORM_RADIO_GROUP)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormRadioGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_RADIO_GROUP,\n mixins: [formRadioCheckGroupMixin],\n provide() {\n return {\n bvRadioGroup: this\n }\n },\n props,\n computed: {\n isRadioGroup() {\n return true\n }\n }\n})\n","import { BFormRadio } from './form-radio'\nimport { BFormRadioGroup } from './form-radio-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormRadioPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BFormRadio,\n BRadio: BFormRadio,\n BFormRadioGroup,\n BRadioGroup: BFormRadioGroup\n }\n})\n\nexport { FormRadioPlugin, BFormRadio, BFormRadioGroup }\n","import { Vue } from '../../vue'\nimport { NAME_FORM_RATING, NAME_FORM_RATING_STAR } from '../../constants/components'\nimport { EVENT_NAME_CHANGE, EVENT_NAME_SELECTED } from '../../constants/events'\nimport {\n PROP_TYPE_ARRAY_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_NUMBER,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { CODE_LEFT, CODE_RIGHT, CODE_UP, CODE_DOWN } from '../../constants/key-codes'\nimport {\n SLOT_NAME_ICON_CLEAR,\n SLOT_NAME_ICON_EMPTY,\n SLOT_NAME_ICON_FULL,\n SLOT_NAME_ICON_HALF\n} from '../../constants/slots'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isNull } from '../../utils/inspect'\nimport { isLocaleRTL } from '../../utils/locale'\nimport { mathMax, mathMin } from '../../utils/math'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger, toFloat } from '../../utils/number'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { props as formControlProps } from '../../mixins/form-control'\nimport { BIcon } from '../../icons/icon'\nimport { BIconStar, BIconStarHalf, BIconStarFill, BIconX } from '../../icons/icons'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n type: PROP_TYPE_NUMBER_STRING,\n event: EVENT_NAME_CHANGE\n})\n\nconst MIN_STARS = 3\nconst DEFAULT_STARS = 5\n\n// --- Helper methods ---\n\nconst computeStars = stars => mathMax(MIN_STARS, toInteger(stars, DEFAULT_STARS))\n\nconst clampValue = (value, min, max) => mathMax(mathMin(value, max), min)\n\n// --- Helper components ---\n\n// @vue/component\nconst BVFormRatingStar = Vue.extend({\n name: NAME_FORM_RATING_STAR,\n mixins: [normalizeSlotMixin],\n props: {\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n // If parent is focused\n focused: makeProp(PROP_TYPE_BOOLEAN, false),\n hasClear: makeProp(PROP_TYPE_BOOLEAN, false),\n rating: makeProp(PROP_TYPE_NUMBER, 0),\n readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n star: makeProp(PROP_TYPE_NUMBER, 0),\n variant: makeProp(PROP_TYPE_STRING)\n },\n methods: {\n onClick(event) {\n if (!this.disabled && !this.readonly) {\n stopEvent(event, { propagation: false })\n this.$emit(EVENT_NAME_SELECTED, this.star)\n }\n }\n },\n render(h) {\n const { rating, star, focused, hasClear, variant, disabled, readonly } = this\n const minStar = hasClear ? 0 : 1\n const type = rating >= star ? 'full' : rating >= star - 0.5 ? 'half' : 'empty'\n const slotScope = { variant, disabled, readonly }\n\n return h(\n 'span',\n {\n staticClass: 'b-rating-star',\n class: {\n // When not hovered, we use this class to focus the current (or first) star\n focused: (focused && rating === star) || (!toInteger(rating) && star === minStar),\n // We add type classes to we can handle RTL styling\n 'b-rating-star-empty': type === 'empty',\n 'b-rating-star-half': type === 'half',\n 'b-rating-star-full': type === 'full'\n },\n attrs: { tabindex: !disabled && !readonly ? '-1' : null },\n on: { click: this.onClick }\n },\n [h('span', { staticClass: 'b-rating-icon' }, [this.normalizeSlot(type, slotScope)])]\n )\n }\n})\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ...omit(formControlProps, ['required', 'autofocus']),\n ...formSizeProps,\n // CSS color string (overrides variant)\n color: makeProp(PROP_TYPE_STRING),\n iconClear: makeProp(PROP_TYPE_STRING, 'x'),\n iconEmpty: makeProp(PROP_TYPE_STRING, 'star'),\n iconFull: makeProp(PROP_TYPE_STRING, 'star-fill'),\n iconHalf: makeProp(PROP_TYPE_STRING, 'star-half'),\n inline: makeProp(PROP_TYPE_BOOLEAN, false),\n // Locale for the formatted value (if shown)\n // Defaults to the browser locale. Falls back to `en`\n locale: makeProp(PROP_TYPE_ARRAY_STRING),\n noBorder: makeProp(PROP_TYPE_BOOLEAN, false),\n precision: makeProp(PROP_TYPE_NUMBER_STRING),\n readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n showClear: makeProp(PROP_TYPE_BOOLEAN, false),\n showValue: makeProp(PROP_TYPE_BOOLEAN, false),\n showValueMax: makeProp(PROP_TYPE_BOOLEAN, false),\n stars: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_STARS, value => {\n return toInteger(value) >= MIN_STARS\n }),\n variant: makeProp(PROP_TYPE_STRING)\n }),\n NAME_FORM_RATING\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormRating = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_RATING,\n components: { BIconStar, BIconStarHalf, BIconStarFill, BIconX },\n mixins: [idMixin, modelMixin, formSizeMixin],\n props,\n data() {\n const value = toFloat(this[MODEL_PROP_NAME], null)\n const stars = computeStars(this.stars)\n return {\n localValue: isNull(value) ? null : clampValue(value, 0, stars),\n hasFocus: false\n }\n },\n computed: {\n computedStars() {\n return computeStars(this.stars)\n },\n computedRating() {\n const value = toFloat(this.localValue, 0)\n const precision = toInteger(this.precision, 3)\n // We clamp the value between `0` and stars\n return clampValue(toFloat(value.toFixed(precision)), 0, this.computedStars)\n },\n computedLocale() {\n const locales = concat(this.locale).filter(identity)\n const nf = new Intl.NumberFormat(locales)\n return nf.resolvedOptions().locale\n },\n isInteractive() {\n return !this.disabled && !this.readonly\n },\n isRTL() {\n return isLocaleRTL(this.computedLocale)\n },\n formattedRating() {\n const precision = toInteger(this.precision)\n const showValueMax = this.showValueMax\n const locale = this.computedLocale\n const formatOptions = {\n notation: 'standard',\n minimumFractionDigits: isNaN(precision) ? 0 : precision,\n maximumFractionDigits: isNaN(precision) ? 3 : precision\n }\n const stars = this.computedStars.toLocaleString(locale)\n let value = this.localValue\n value = isNull(value)\n ? showValueMax\n ? '-'\n : ''\n : value.toLocaleString(locale, formatOptions)\n return showValueMax ? `${value}/${stars}` : value\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue, oldValue) {\n if (newValue !== oldValue) {\n const value = toFloat(newValue, null)\n this.localValue = isNull(value) ? null : clampValue(value, 0, this.computedStars)\n }\n },\n localValue(newValue, oldValue) {\n if (newValue !== oldValue && newValue !== (this.value || 0)) {\n this.$emit(MODEL_EVENT_NAME, newValue || null)\n }\n },\n disabled(newValue) {\n if (newValue) {\n this.hasFocus = false\n this.blur()\n }\n }\n },\n methods: {\n // --- Public methods ---\n focus() {\n if (!this.disabled) {\n attemptFocus(this.$el)\n }\n },\n blur() {\n if (!this.disabled) {\n attemptBlur(this.$el)\n }\n },\n // --- Private methods ---\n onKeydown(event) {\n const { keyCode } = event\n if (\n this.isInteractive &&\n arrayIncludes([CODE_LEFT, CODE_DOWN, CODE_RIGHT, CODE_UP], keyCode)\n ) {\n stopEvent(event, { propagation: false })\n const value = toInteger(this.localValue, 0)\n const min = this.showClear ? 0 : 1\n const stars = this.computedStars\n // In RTL mode, LEFT/RIGHT are swapped\n const amountRtl = this.isRTL ? -1 : 1\n if (keyCode === CODE_LEFT) {\n this.localValue = clampValue(value - amountRtl, min, stars) || null\n } else if (keyCode === CODE_RIGHT) {\n this.localValue = clampValue(value + amountRtl, min, stars)\n } else if (keyCode === CODE_DOWN) {\n this.localValue = clampValue(value - 1, min, stars) || null\n } else if (keyCode === CODE_UP) {\n this.localValue = clampValue(value + 1, min, stars)\n }\n }\n },\n onSelected(value) {\n if (this.isInteractive) {\n this.localValue = value\n }\n },\n onFocus(event) {\n this.hasFocus = !this.isInteractive ? false : event.type === 'focus'\n },\n // --- Render methods ---\n renderIcon(icon) {\n return this.$createElement(BIcon, {\n props: {\n icon,\n variant: this.disabled || this.color ? null : this.variant || null\n }\n })\n },\n iconEmptyFn() {\n return this.renderIcon(this.iconEmpty)\n },\n iconHalfFn() {\n return this.renderIcon(this.iconHalf)\n },\n iconFullFn() {\n return this.renderIcon(this.iconFull)\n },\n iconClearFn() {\n return this.$createElement(BIcon, { props: { icon: this.iconClear } })\n }\n },\n render(h) {\n const {\n disabled,\n readonly,\n name,\n form,\n inline,\n variant,\n color,\n noBorder,\n hasFocus,\n computedRating,\n computedStars,\n formattedRating,\n showClear,\n isRTL,\n isInteractive,\n $scopedSlots\n } = this\n const $content = []\n\n if (showClear && !disabled && !readonly) {\n const $icon = h('span', { staticClass: 'b-rating-icon' }, [\n ($scopedSlots[SLOT_NAME_ICON_CLEAR] || this.iconClearFn)()\n ])\n $content.push(\n h(\n 'span',\n {\n staticClass: 'b-rating-star b-rating-star-clear flex-grow-1',\n class: { focused: hasFocus && computedRating === 0 },\n attrs: { tabindex: isInteractive ? '-1' : null },\n on: { click: () => this.onSelected(null) },\n key: 'clear'\n },\n [$icon]\n )\n )\n }\n\n for (let index = 0; index < computedStars; index++) {\n const value = index + 1\n $content.push(\n h(BVFormRatingStar, {\n staticClass: 'flex-grow-1',\n style: color && !disabled ? { color } : {},\n props: {\n rating: computedRating,\n star: value,\n variant: disabled ? null : variant || null,\n disabled,\n readonly,\n focused: hasFocus,\n hasClear: showClear\n },\n on: { selected: this.onSelected },\n scopedSlots: {\n empty: $scopedSlots[SLOT_NAME_ICON_EMPTY] || this.iconEmptyFn,\n half: $scopedSlots[SLOT_NAME_ICON_HALF] || this.iconHalfFn,\n full: $scopedSlots[SLOT_NAME_ICON_FULL] || this.iconFullFn\n },\n key: index\n })\n )\n }\n\n if (name) {\n $content.push(\n h('input', {\n attrs: {\n type: 'hidden',\n value: isNull(this.localValue) ? '' : computedRating,\n name,\n form: form || null\n },\n key: 'hidden'\n })\n )\n }\n\n if (this.showValue) {\n $content.push(\n h(\n 'b',\n {\n staticClass: 'b-rating-value flex-grow-1',\n attrs: { 'aria-hidden': 'true' },\n key: 'value'\n },\n toString(formattedRating)\n )\n )\n }\n\n return h(\n 'output',\n {\n staticClass: 'b-rating form-control align-items-center',\n class: [\n {\n 'd-inline-flex': inline,\n 'd-flex': !inline,\n 'border-0': noBorder,\n disabled,\n readonly: !disabled && readonly\n },\n this.sizeFormClass\n ],\n attrs: {\n id: this.safeId(),\n dir: isRTL ? 'rtl' : 'ltr',\n tabindex: disabled ? null : '0',\n disabled,\n role: 'slider',\n 'aria-disabled': disabled ? 'true' : null,\n 'aria-readonly': !disabled && readonly ? 'true' : null,\n 'aria-live': 'off',\n 'aria-valuemin': showClear ? '0' : '1',\n 'aria-valuemax': toString(computedStars),\n 'aria-valuenow': computedRating ? toString(computedRating) : null\n },\n on: {\n keydown: this.onKeydown,\n focus: this.onFocus,\n blur: this.onFocus\n }\n },\n $content\n )\n }\n})\n","import { BFormRating } from './form-rating'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormRatingPlugin = /*#__PURE__*/ pluginFactory({\n components: { BFormRating, BRating: BFormRating }\n})\n\nexport { FormRatingPlugin, BFormRating }\n","import { makeModelMixin } from '../utils/model'\n\nconst { mixin, props, prop, event } = makeModelMixin('value')\n\nexport { mixin as modelMixin, props, prop as MODEL_PROP_NAME, event as MODEL_EVENT_NAME }\n","import { Vue } from '../../../vue'\nimport { PROP_TYPE_STRING } from '../../../constants/props'\nimport { get } from '../../../utils/get'\nimport { isNull, isPlainObject, isUndefined } from '../../../utils/inspect'\nimport { sortKeys } from '../../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../../utils/props'\nimport { formOptionsMixin, props as formOptionsProps } from '../../../mixins/form-options'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...formOptionsProps,\n labelField: makeProp(PROP_TYPE_STRING, 'label'),\n optionsField: makeProp(PROP_TYPE_STRING, 'options')\n }),\n 'formOptions'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const optionsMixin = Vue.extend({\n mixins: [formOptionsMixin],\n props,\n methods: {\n normalizeOption(option, key = null) {\n // When the option is an object, normalize it\n if (isPlainObject(option)) {\n const value = get(option, this.valueField)\n const text = get(option, this.textField)\n const options = get(option, this.optionsField, null)\n // When it has options, create an `<optgroup>` object\n if (!isNull(options)) {\n return {\n label: String(get(option, this.labelField) || text),\n options: this.normalizeOptions(options)\n }\n }\n // Otherwise create an `<option>` object\n return {\n value: isUndefined(value) ? key || text : value,\n text: String(isUndefined(text) ? key : text),\n html: get(option, this.htmlField),\n disabled: Boolean(get(option, this.disabledField))\n }\n }\n // Otherwise create an `<option>` object from the given value\n return {\n value: key || option,\n text: String(option),\n disabled: false\n }\n }\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_FORM_SELECT_OPTION } from '../../constants/components'\nimport { PROP_TYPE_ANY, PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n value: makeProp(PROP_TYPE_ANY, undefined, true) // Required\n },\n NAME_FORM_SELECT_OPTION\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormSelectOption = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_SELECT_OPTION,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { value, disabled } = props\n\n return h(\n 'option',\n mergeData(data, {\n attrs: { disabled },\n domProps: { value }\n }),\n children\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_SELECT_OPTION_GROUP } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_FIRST } from '../../constants/slots'\nimport { htmlOrText } from '../../utils/html'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { formOptionsMixin, props as formOptionsProps } from '../../mixins/form-options'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BFormSelectOption } from './form-select-option'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...formOptionsProps,\n label: makeProp(PROP_TYPE_STRING, undefined, true) // Required\n }),\n NAME_FORM_SELECT_OPTION_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormSelectOptionGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_SELECT_OPTION_GROUP,\n mixins: [normalizeSlotMixin, formOptionsMixin],\n props,\n render(h) {\n const { label } = this\n\n const $options = this.formOptions.map((option, index) => {\n const { value, text, html, disabled } = option\n\n return h(BFormSelectOption, {\n attrs: { value, disabled },\n domProps: htmlOrText(html, text),\n key: `option_${index}`\n })\n })\n\n return h('optgroup', { attrs: { label } }, [\n this.normalizeSlot(SLOT_NAME_FIRST),\n $options,\n this.normalizeSlot()\n ])\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_SELECT } from '../../constants/components'\nimport { EVENT_NAME_CHANGE } from '../../constants/events'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_STRING,\n PROP_TYPE_NUMBER\n} from '../../constants/props'\nimport { SLOT_NAME_FIRST } from '../../constants/slots'\nimport { from as arrayFrom } from '../../utils/array'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { htmlOrText } from '../../utils/html'\nimport { isArray } from '../../utils/inspect'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control'\nimport { formCustomMixin, props as formCustomProps } from '../../mixins/form-custom'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport {\n MODEL_EVENT_NAME,\n MODEL_PROP_NAME,\n modelMixin,\n props as modelProps\n} from '../../mixins/model'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { optionsMixin } from './helpers/mixin-options'\nimport { BFormSelectOption } from './form-select-option'\nimport { BFormSelectOptionGroup } from './form-select-option-group'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ...formControlProps,\n ...formCustomProps,\n ...formSizeProps,\n ...formStateProps,\n ariaInvalid: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n multiple: makeProp(PROP_TYPE_BOOLEAN, false),\n // Browsers default size to `0`, which shows 4 rows in most browsers in multiple mode\n // Size of `1` can bork out Firefox\n selectSize: makeProp(PROP_TYPE_NUMBER, 0)\n }),\n NAME_FORM_SELECT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormSelect = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_SELECT,\n mixins: [\n idMixin,\n modelMixin,\n formControlMixin,\n formSizeMixin,\n formStateMixin,\n formCustomMixin,\n optionsMixin,\n normalizeSlotMixin\n ],\n props,\n data() {\n return {\n localValue: this[MODEL_PROP_NAME]\n }\n },\n computed: {\n computedSelectSize() {\n // Custom selects with a size of zero causes the arrows to be hidden,\n // so dont render the size attribute in this case\n return !this.plain && this.selectSize === 0 ? null : this.selectSize\n },\n inputClass() {\n return [\n this.plain ? 'form-control' : 'custom-select',\n this.size && this.plain ? `form-control-${this.size}` : null,\n this.size && !this.plain ? `custom-select-${this.size}` : null,\n this.stateClass\n ]\n }\n },\n watch: {\n value(newValue) {\n this.localValue = newValue\n },\n localValue() {\n this.$emit(MODEL_EVENT_NAME, this.localValue)\n }\n },\n methods: {\n focus() {\n attemptFocus(this.$refs.input)\n },\n blur() {\n attemptBlur(this.$refs.input)\n },\n onChange(event) {\n const { target } = event\n const selectedValue = arrayFrom(target.options)\n .filter(o => o.selected)\n .map(o => ('_value' in o ? o._value : o.value))\n\n this.localValue = target.multiple ? selectedValue : selectedValue[0]\n\n this.$nextTick(() => {\n this.$emit(EVENT_NAME_CHANGE, this.localValue)\n })\n }\n },\n render(h) {\n const { name, disabled, required, computedSelectSize: size, localValue: value } = this\n\n const $options = this.formOptions.map((option, index) => {\n const { value, label, options, disabled } = option\n const key = `option_${index}`\n\n return isArray(options)\n ? h(BFormSelectOptionGroup, { props: { label, options }, key })\n : h(BFormSelectOption, {\n props: { value, disabled },\n domProps: htmlOrText(option.html, option.text),\n key\n })\n })\n\n return h(\n 'select',\n {\n class: this.inputClass,\n attrs: {\n id: this.safeId(),\n name,\n form: this.form || null,\n multiple: this.multiple || null,\n size,\n disabled,\n required,\n 'aria-required': required ? 'true' : null,\n 'aria-invalid': this.computedAriaInvalid\n },\n on: { change: this.onChange },\n directives: [{ name: 'model', value }],\n ref: 'input'\n },\n [this.normalizeSlot(SLOT_NAME_FIRST), $options, this.normalizeSlot()]\n )\n }\n})\n","import { BFormSelect } from './form-select'\nimport { BFormSelectOption } from './form-select-option'\nimport { BFormSelectOptionGroup } from './form-select-option-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormSelectPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BFormSelect,\n BFormSelectOption,\n BFormSelectOptionGroup,\n BSelect: BFormSelect,\n BSelectOption: BFormSelectOption,\n BSelectOptionGroup: BFormSelectOptionGroup\n }\n})\n\nexport { FormSelectPlugin, BFormSelect, BFormSelectOption, BFormSelectOptionGroup }\n","import { Vue } from '../../vue'\nimport { NAME_FORM_SPINBUTTON } from '../../constants/components'\nimport { EVENT_NAME_CHANGE } from '../../constants/events'\nimport {\n PROP_TYPE_ARRAY_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_NUMBER,\n PROP_TYPE_FUNCTION,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport {\n CODE_DOWN,\n CODE_END,\n CODE_HOME,\n CODE_PAGEUP,\n CODE_UP,\n CODE_PAGEDOWN\n} from '../../constants/key-codes'\nimport { SLOT_NAME_DECREMENT, SLOT_NAME_INCREMENT } from '../../constants/slots'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { eventOnOff, stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isNull } from '../../utils/inspect'\nimport { isLocaleRTL } from '../../utils/locale'\nimport { mathFloor, mathMax, mathPow, mathRound } from '../../utils/math'\nimport { makeModelMixin } from '../../utils/model'\nimport { toFloat, toInteger } from '../../utils/number'\nimport { omit, sortKeys } from '../../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { props as formControlProps } from '../../mixins/form-control'\nimport { BIconPlus, BIconDash } from '../../icons/icons'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n // Should this really be String, to match native number inputs?\n type: PROP_TYPE_BOOLEAN_NUMBER\n})\n\n// Default for spin button range and step\nconst DEFAULT_MIN = 1\nconst DEFAULT_MAX = 100\nconst DEFAULT_STEP = 1\n\n// Delay before auto-repeat in ms\nconst DEFAULT_REPEAT_DELAY = 500\n// Repeat interval in ms\nconst DEFAULT_REPEAT_INTERVAL = 100\n// Repeat rate increased after number of repeats\nconst DEFAULT_REPEAT_THRESHOLD = 10\n// Repeat speed multiplier (step multiplier, must be an integer)\nconst DEFAULT_REPEAT_MULTIPLIER = 4\n\nconst KEY_CODES = [CODE_UP, CODE_DOWN, CODE_HOME, CODE_END, CODE_PAGEUP, CODE_PAGEDOWN]\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ...omit(formControlProps, ['required', 'autofocus']),\n ...formSizeProps,\n ...formStateProps,\n ariaControls: makeProp(PROP_TYPE_STRING),\n ariaLabel: makeProp(PROP_TYPE_STRING),\n formatterFn: makeProp(PROP_TYPE_FUNCTION),\n inline: makeProp(PROP_TYPE_BOOLEAN, false),\n labelDecrement: makeProp(PROP_TYPE_STRING, 'Decrement'),\n labelIncrement: makeProp(PROP_TYPE_STRING, 'Increment'),\n locale: makeProp(PROP_TYPE_ARRAY_STRING),\n max: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_MAX),\n min: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_MIN),\n placeholder: makeProp(PROP_TYPE_STRING),\n readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n repeatDelay: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_REPEAT_DELAY),\n repeatInterval: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_REPEAT_INTERVAL),\n repeatStepMultiplier: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_REPEAT_MULTIPLIER),\n repeatThreshold: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_REPEAT_THRESHOLD),\n step: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_STEP),\n vertical: makeProp(PROP_TYPE_BOOLEAN, false),\n wrap: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_FORM_SPINBUTTON\n)\n\n// --- Main Component ---\n\n// @vue/component\nexport const BFormSpinbutton = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_SPINBUTTON,\n // Mixin order is important!\n mixins: [attrsMixin, idMixin, modelMixin, formSizeMixin, formStateMixin, normalizeSlotMixin],\n inheritAttrs: false,\n props,\n data() {\n return {\n localValue: toFloat(this[MODEL_PROP_NAME], null),\n hasFocus: false\n }\n },\n computed: {\n spinId() {\n return this.safeId()\n },\n computedInline() {\n return this.inline && !this.vertical\n },\n computedReadonly() {\n return this.readonly && !this.disabled\n },\n computedRequired() {\n return this.required && !this.computedReadonly && !this.disabled\n },\n computedStep() {\n return toFloat(this.step, DEFAULT_STEP)\n },\n computedMin() {\n return toFloat(this.min, DEFAULT_MIN)\n },\n computedMax() {\n // We round down to the nearest maximum step value\n const max = toFloat(this.max, DEFAULT_MAX)\n const step = this.computedStep\n const min = this.computedMin\n return mathFloor((max - min) / step) * step + min\n },\n computedDelay() {\n const delay = toInteger(this.repeatDelay, 0)\n return delay > 0 ? delay : DEFAULT_REPEAT_DELAY\n },\n computedInterval() {\n const interval = toInteger(this.repeatInterval, 0)\n return interval > 0 ? interval : DEFAULT_REPEAT_INTERVAL\n },\n computedThreshold() {\n return mathMax(toInteger(this.repeatThreshold, DEFAULT_REPEAT_THRESHOLD), 1)\n },\n computedStepMultiplier() {\n return mathMax(toInteger(this.repeatStepMultiplier, DEFAULT_REPEAT_MULTIPLIER), 1)\n },\n computedPrecision() {\n // Quick and dirty way to get the number of decimals\n const step = this.computedStep\n return mathFloor(step) === step ? 0 : (step.toString().split('.')[1] || '').length\n },\n computedMultiplier() {\n return mathPow(10, this.computedPrecision || 0)\n },\n valueAsFixed() {\n const value = this.localValue\n return isNull(value) ? '' : value.toFixed(this.computedPrecision)\n },\n computedLocale() {\n const locales = concat(this.locale).filter(identity)\n const nf = new Intl.NumberFormat(locales)\n return nf.resolvedOptions().locale\n },\n computedRTL() {\n return isLocaleRTL(this.computedLocale)\n },\n defaultFormatter() {\n // Returns and `Intl.NumberFormat` formatter method reference\n const precision = this.computedPrecision\n const nf = new Intl.NumberFormat(this.computedLocale, {\n style: 'decimal',\n useGrouping: false,\n minimumIntegerDigits: 1,\n minimumFractionDigits: precision,\n maximumFractionDigits: precision,\n notation: 'standard'\n })\n // Return the format method reference\n return nf.format\n },\n computedFormatter() {\n const { formatterFn } = this\n return hasPropFunction(formatterFn) ? formatterFn : this.defaultFormatter\n },\n computedAttrs() {\n return {\n ...this.bvAttrs,\n role: 'group',\n lang: this.computedLocale,\n tabindex: this.disabled ? null : '-1',\n title: this.ariaLabel\n }\n },\n computedSpinAttrs() {\n const {\n spinId,\n localValue: value,\n computedRequired: required,\n disabled,\n state,\n computedFormatter\n } = this\n const hasValue = !isNull(value)\n\n return {\n dir: this.computedRTL ? 'rtl' : 'ltr',\n ...this.bvAttrs,\n id: spinId,\n role: 'spinbutton',\n tabindex: disabled ? null : '0',\n 'aria-live': 'off',\n 'aria-label': this.ariaLabel || null,\n 'aria-controls': this.ariaControls || null,\n // TODO: May want to check if the value is in range\n 'aria-invalid': state === false || (!hasValue && required) ? 'true' : null,\n 'aria-required': required ? 'true' : null,\n // These attrs are required for role spinbutton\n 'aria-valuemin': toString(this.computedMin),\n 'aria-valuemax': toString(this.computedMax),\n // These should be `null` if the value is out of range\n // They must also be non-existent attrs if the value is out of range or `null`\n 'aria-valuenow': hasValue ? value : null,\n 'aria-valuetext': hasValue ? computedFormatter(value) : null\n }\n }\n },\n watch: {\n [MODEL_PROP_NAME](value) {\n this.localValue = toFloat(value, null)\n },\n localValue(value) {\n this.$emit(MODEL_EVENT_NAME, value)\n },\n disabled(disabled) {\n if (disabled) {\n this.clearRepeat()\n }\n },\n readonly(readonly) {\n if (readonly) {\n this.clearRepeat()\n }\n }\n },\n created() {\n // Create non reactive properties\n this.$_autoDelayTimer = null\n this.$_autoRepeatTimer = null\n this.$_keyIsDown = false\n },\n beforeDestroy() {\n this.clearRepeat()\n },\n /* istanbul ignore next */\n deactivated() {\n this.clearRepeat()\n },\n methods: {\n // --- Public methods ---\n focus() {\n if (!this.disabled) {\n attemptFocus(this.$refs.spinner)\n }\n },\n blur() {\n if (!this.disabled) {\n attemptBlur(this.$refs.spinner)\n }\n },\n // --- Private methods ---\n emitChange() {\n this.$emit(EVENT_NAME_CHANGE, this.localValue)\n },\n stepValue(direction) {\n // Sets a new incremented or decremented value, supporting optional wrapping\n // Direction is either +1 or -1 (or a multiple thereof)\n let value = this.localValue\n if (!this.disabled && !isNull(value)) {\n const step = this.computedStep * direction\n const min = this.computedMin\n const max = this.computedMax\n const multiplier = this.computedMultiplier\n const wrap = this.wrap\n // We ensure that the value steps like a native input\n value = mathRound((value - min) / step) * step + min + step\n // We ensure that precision is maintained (decimals)\n value = mathRound(value * multiplier) / multiplier\n // Handle if wrapping is enabled\n this.localValue =\n value > max ? (wrap ? min : max) : value < min ? (wrap ? max : min) : value\n }\n },\n onFocusBlur(event) {\n this.hasFocus = this.disabled ? false : event.type === 'focus'\n },\n stepUp(multiplier = 1) {\n const value = this.localValue\n if (isNull(value)) {\n this.localValue = this.computedMin\n } else {\n this.stepValue(+1 * multiplier)\n }\n },\n stepDown(multiplier = 1) {\n const value = this.localValue\n if (isNull(value)) {\n this.localValue = this.wrap ? this.computedMax : this.computedMin\n } else {\n this.stepValue(-1 * multiplier)\n }\n },\n onKeydown(event) {\n const { keyCode, altKey, ctrlKey, metaKey } = event\n /* istanbul ignore if */\n if (this.disabled || this.readonly || altKey || ctrlKey || metaKey) {\n return\n }\n if (arrayIncludes(KEY_CODES, keyCode)) {\n // https://w3c.github.io/aria-practices/#spinbutton\n stopEvent(event, { propagation: false })\n /* istanbul ignore if */\n if (this.$_keyIsDown) {\n // Keypress is already in progress\n return\n }\n this.resetTimers()\n if (arrayIncludes([CODE_UP, CODE_DOWN], keyCode)) {\n // The following use the custom auto-repeat handling\n this.$_keyIsDown = true\n if (keyCode === CODE_UP) {\n this.handleStepRepeat(event, this.stepUp)\n } else if (keyCode === CODE_DOWN) {\n this.handleStepRepeat(event, this.stepDown)\n }\n } else {\n // These use native OS key repeating\n if (keyCode === CODE_PAGEUP) {\n this.stepUp(this.computedStepMultiplier)\n } else if (keyCode === CODE_PAGEDOWN) {\n this.stepDown(this.computedStepMultiplier)\n } else if (keyCode === CODE_HOME) {\n this.localValue = this.computedMin\n } else if (keyCode === CODE_END) {\n this.localValue = this.computedMax\n }\n }\n }\n },\n onKeyup(event) {\n // Emit a change event when the keyup happens\n const { keyCode, altKey, ctrlKey, metaKey } = event\n /* istanbul ignore if */\n if (this.disabled || this.readonly || altKey || ctrlKey || metaKey) {\n return\n }\n if (arrayIncludes(KEY_CODES, keyCode)) {\n stopEvent(event, { propagation: false })\n this.resetTimers()\n this.$_keyIsDown = false\n this.emitChange()\n }\n },\n handleStepRepeat(event, stepper) {\n const { type, button } = event || {}\n if (!this.disabled && !this.readonly) {\n /* istanbul ignore if */\n if (type === 'mousedown' && button) {\n // We only respond to left (main === 0) button clicks\n return\n }\n this.resetTimers()\n // Step the counter initially\n stepper(1)\n const threshold = this.computedThreshold\n const multiplier = this.computedStepMultiplier\n const delay = this.computedDelay\n const interval = this.computedInterval\n // Initiate the delay/repeat interval\n this.$_autoDelayTimer = setTimeout(() => {\n let count = 0\n this.$_autoRepeatTimer = setInterval(() => {\n // After N initial repeats, we increase the incrementing step amount\n // We do this to minimize screen reader announcements of the value\n // (values are announced every change, which can be chatty for SR users)\n // And to make it easer to select a value when the range is large\n stepper(count < threshold ? 1 : multiplier)\n count++\n }, interval)\n }, delay)\n }\n },\n onMouseup(event) {\n // `<body>` listener, only enabled when mousedown starts\n const { type, button } = event || {}\n /* istanbul ignore if */\n if (type === 'mouseup' && button) {\n // Ignore non left button (main === 0) mouse button click\n return\n }\n stopEvent(event, { propagation: false })\n this.resetTimers()\n this.setMouseup(false)\n // Trigger the change event\n this.emitChange()\n },\n setMouseup(on) {\n // Enable or disabled the body mouseup/touchend handlers\n // Use try/catch to handle case when called server side\n try {\n eventOnOff(on, document.body, 'mouseup', this.onMouseup, false)\n eventOnOff(on, document.body, 'touchend', this.onMouseup, false)\n } catch {}\n },\n resetTimers() {\n clearTimeout(this.$_autoDelayTimer)\n clearInterval(this.$_autoRepeatTimer)\n this.$_autoDelayTimer = null\n this.$_autoRepeatTimer = null\n },\n clearRepeat() {\n this.resetTimers()\n this.setMouseup(false)\n this.$_keyIsDown = false\n }\n },\n render(h) {\n const {\n spinId,\n localValue: value,\n computedInline: inline,\n computedReadonly: readonly,\n vertical,\n disabled,\n computedFormatter\n } = this\n const hasValue = !isNull(value)\n\n const makeButton = (stepper, label, IconCmp, keyRef, shortcut, btnDisabled, slotName) => {\n const $icon = h(IconCmp, {\n props: { scale: this.hasFocus ? 1.5 : 1.25 },\n attrs: { 'aria-hidden': 'true' }\n })\n const scope = { hasFocus: this.hasFocus }\n const handler = event => {\n if (!disabled && !readonly) {\n stopEvent(event, { propagation: false })\n this.setMouseup(true)\n // Since we `preventDefault()`, we must manually focus the button\n attemptFocus(event.currentTarget)\n this.handleStepRepeat(event, stepper)\n }\n }\n return h(\n 'button',\n {\n staticClass: 'btn btn-sm border-0 rounded-0',\n class: { 'py-0': !vertical },\n attrs: {\n tabindex: '-1',\n type: 'button',\n disabled: disabled || readonly || btnDisabled,\n 'aria-disabled': disabled || readonly || btnDisabled ? 'true' : null,\n 'aria-controls': spinId,\n 'aria-label': label || null,\n 'aria-keyshortcuts': shortcut || null\n },\n on: {\n mousedown: handler,\n touchstart: handler\n },\n key: keyRef || null,\n ref: keyRef\n },\n [this.normalizeSlot(slotName, scope) || $icon]\n )\n }\n // TODO: Add button disabled state when `wrap` is `false` and at value max/min\n const $increment = makeButton(\n this.stepUp,\n this.labelIncrement,\n BIconPlus,\n 'inc',\n 'ArrowUp',\n false,\n SLOT_NAME_INCREMENT\n )\n const $decrement = makeButton(\n this.stepDown,\n this.labelDecrement,\n BIconDash,\n 'dec',\n 'ArrowDown',\n false,\n SLOT_NAME_DECREMENT\n )\n\n let $hidden = h()\n if (this.name && !disabled) {\n $hidden = h('input', {\n attrs: {\n type: 'hidden',\n name: this.name,\n form: this.form || null,\n // TODO: Should this be set to '' if value is out of range?\n value: this.valueAsFixed\n },\n key: 'hidden'\n })\n }\n\n const $spin = h(\n // We use 'output' element to make this accept a `<label for=\"id\">` (Except IE)\n 'output',\n {\n staticClass: 'flex-grow-1',\n class: {\n 'd-flex': vertical,\n 'align-self-center': !vertical,\n 'align-items-center': vertical,\n 'border-top': vertical,\n 'border-bottom': vertical,\n 'border-left': !vertical,\n 'border-right': !vertical\n },\n attrs: this.computedSpinAttrs,\n key: 'output',\n ref: 'spinner'\n },\n [h('bdi', hasValue ? computedFormatter(value) : this.placeholder || '')]\n )\n\n return h(\n 'div',\n {\n staticClass: 'b-form-spinbutton form-control',\n class: [\n {\n disabled,\n readonly,\n focus: this.hasFocus,\n 'd-inline-flex': inline || vertical,\n 'd-flex': !inline && !vertical,\n 'align-items-stretch': !vertical,\n 'flex-column': vertical\n },\n this.sizeFormClass,\n this.stateClass\n ],\n attrs: this.computedAttrs,\n on: {\n keydown: this.onKeydown,\n keyup: this.onKeyup,\n // We use capture phase (`!` prefix) since focus and blur do not bubble\n '!focus': this.onFocusBlur,\n '!blur': this.onFocusBlur\n }\n },\n vertical ? [$increment, $hidden, $spin, $decrement] : [$decrement, $hidden, $spin, $increment]\n )\n }\n})\n","import { BFormSpinbutton } from './form-spinbutton'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormSpinbuttonPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BFormSpinbutton,\n BSpinbutton: BFormSpinbutton\n }\n})\n\nexport { FormSpinbuttonPlugin, BFormSpinbutton }\n","import { Vue } from '../../vue'\nimport { NAME_FORM_TAG } from '../../constants/components'\nimport { EVENT_NAME_REMOVE } from '../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { CODE_DELETE } from '../../constants/key-codes'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BBadge } from '../badge/badge'\nimport { BButtonClose } from '../button/button-close'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n noRemove: makeProp(PROP_TYPE_BOOLEAN, false),\n pill: makeProp(PROP_TYPE_BOOLEAN, false),\n removeLabel: makeProp(PROP_TYPE_STRING, 'Remove tag'),\n tag: makeProp(PROP_TYPE_STRING, 'span'),\n title: makeProp(PROP_TYPE_STRING),\n variant: makeProp(PROP_TYPE_STRING, 'secondary')\n }),\n NAME_FORM_TAG\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormTag = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_TAG,\n mixins: [idMixin, normalizeSlotMixin],\n props,\n methods: {\n onRemove(event) {\n const { type, keyCode } = event\n if (!this.disabled && (type === 'click' || (type === 'keydown' && keyCode === CODE_DELETE))) {\n this.$emit(EVENT_NAME_REMOVE)\n }\n }\n },\n render(h) {\n const { title, tag, variant, pill, disabled } = this\n const tagId = this.safeId()\n const tagLabelId = this.safeId('_taglabel_')\n\n let $remove = h()\n if (!this.noRemove && !disabled) {\n $remove = h(BButtonClose, {\n staticClass: 'b-form-tag-remove',\n props: { ariaLabel: this.removeLabel },\n attrs: {\n 'aria-controls': tagId,\n 'aria-describedby': tagLabelId,\n 'aria-keyshortcuts': 'Delete'\n },\n on: {\n click: this.onRemove,\n keydown: this.onRemove\n }\n })\n }\n\n const $tag = h(\n 'span',\n {\n staticClass: 'b-form-tag-content flex-grow-1 text-truncate',\n attrs: { id: tagLabelId }\n },\n this.normalizeSlot() || title\n )\n\n return h(\n BBadge,\n {\n staticClass: 'b-form-tag d-inline-flex align-items-baseline mw-100',\n class: { disabled },\n props: {\n tag,\n variant,\n pill\n },\n attrs: {\n id: tagId,\n title: title || null,\n 'aria-labelledby': tagLabelId\n }\n },\n [$tag, $remove]\n )\n }\n})\n","// Tagged input form control\n// Based loosely on https://adamwathan.me/renderless-components-in-vuejs/\nimport { Vue } from '../../vue'\nimport { NAME_FORM_TAGS } from '../../constants/components'\nimport {\n EVENT_NAME_BLUR,\n EVENT_NAME_FOCUS,\n EVENT_NAME_FOCUSIN,\n EVENT_NAME_FOCUSOUT,\n EVENT_NAME_TAG_STATE,\n EVENT_OPTIONS_PASSIVE\n} from '../../constants/events'\nimport { CODE_BACKSPACE, CODE_DELETE, CODE_ENTER } from '../../constants/key-codes'\nimport {\n PROP_TYPE_ARRAY,\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_ARRAY_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_FUNCTION,\n PROP_TYPE_NUMBER,\n PROP_TYPE_OBJECT,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { RX_SPACES } from '../../constants/regex'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_ADD_BUTTON_TEXT } from '../../constants/slots'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { cssEscape } from '../../utils/css-escape'\nimport { attemptBlur, attemptFocus, closest, matches, requestAF, select } from '../../utils/dom'\nimport { eventOn, eventOff, stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isEvent, isNumber, isString } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { makeModelMixin } from '../../utils/model'\nimport { omit, pick, sortKeys } from '../../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../../utils/props'\nimport { escapeRegExp, toString, trim, trimLeft } from '../../utils/string'\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BButton } from '../button/button'\nimport { BFormInvalidFeedback } from '../form/form-invalid-feedback'\nimport { BFormText } from '../form/form-text'\nimport { BFormTag } from './form-tag'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n type: PROP_TYPE_ARRAY,\n defaultValue: []\n})\n\n// Supported input types (for built in input)\nconst TYPES = ['text', 'email', 'tel', 'url', 'number']\n\n// Default ignore input focus selector\nconst DEFAULT_INPUT_FOCUS_SELECTOR = ['.b-form-tag', 'button', 'input', 'select'].join(' ')\n\n// --- Helper methods ---\n\n// Escape special chars in string and replace\n// contiguous spaces with a whitespace match\nconst escapeRegExpChars = str => escapeRegExp(str).replace(RX_SPACES, '\\\\s')\n\n// Remove leading/trailing spaces from array of tags and remove duplicates\nconst cleanTags = tags => {\n return concat(tags)\n .map(tag => trim(toString(tag)))\n .filter((tag, index, arr) => tag.length > 0 && arr.indexOf(tag) === index)\n}\n\n// Processes an input/change event, normalizing string or event argument\nconst processEventValue = event =>\n isString(event) ? event : isEvent(event) ? event.target.value || '' : ''\n\n// Returns a fresh empty `tagsState` object\nconst cleanTagsState = () => ({\n all: [],\n valid: [],\n invalid: [],\n duplicate: []\n})\n\n// --- Props ---\n\nconst props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ...formControlProps,\n ...formSizeProps,\n ...formStateProps,\n addButtonText: makeProp(PROP_TYPE_STRING, 'Add'),\n addButtonVariant: makeProp(PROP_TYPE_STRING, 'outline-secondary'),\n // Enable change event triggering tag addition\n // Handy if using <select> as the input\n addOnChange: makeProp(PROP_TYPE_BOOLEAN, false),\n duplicateTagText: makeProp(PROP_TYPE_STRING, 'Duplicate tag(s)'),\n feedbackAriaLive: makeProp(PROP_TYPE_STRING, 'assertive'),\n // Disable the input focus behavior when clicking\n // on element matching the selector (or selectors)\n ignoreInputFocusSelector: makeProp(PROP_TYPE_ARRAY_STRING, DEFAULT_INPUT_FOCUS_SELECTOR),\n // Additional attributes to add to the input element\n inputAttrs: makeProp(PROP_TYPE_OBJECT, {}),\n inputClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n inputId: makeProp(PROP_TYPE_STRING),\n inputType: makeProp(PROP_TYPE_STRING, 'text', value => {\n return arrayIncludes(TYPES, value)\n }),\n invalidTagText: makeProp(PROP_TYPE_STRING, 'Invalid tag(s)'),\n limit: makeProp(PROP_TYPE_NUMBER),\n limitTagsText: makeProp(PROP_TYPE_STRING, 'Tag limit reached'),\n // Disable ENTER key from triggering tag addition\n noAddOnEnter: makeProp(PROP_TYPE_BOOLEAN, false),\n // Disable the focus ring on the root element\n noOuterFocus: makeProp(PROP_TYPE_BOOLEAN, false),\n noTagRemove: makeProp(PROP_TYPE_BOOLEAN, false),\n placeholder: makeProp(PROP_TYPE_STRING, 'Add tag...'),\n // Enable deleting last tag in list when CODE_BACKSPACE is\n // pressed and input is empty\n removeOnDelete: makeProp(PROP_TYPE_BOOLEAN, false),\n // Character (or characters) that trigger adding tags\n separator: makeProp(PROP_TYPE_ARRAY_STRING),\n tagClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n tagPills: makeProp(PROP_TYPE_BOOLEAN, false),\n tagRemoveLabel: makeProp(PROP_TYPE_STRING, 'Remove tag'),\n tagRemovedLabel: makeProp(PROP_TYPE_STRING, 'Tag removed'),\n tagValidator: makeProp(PROP_TYPE_FUNCTION),\n tagVariant: makeProp(PROP_TYPE_STRING, 'secondary')\n }),\n NAME_FORM_TAGS\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormTags = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_TAGS,\n mixins: [\n listenersMixin,\n idMixin,\n modelMixin,\n formControlMixin,\n formSizeMixin,\n formStateMixin,\n normalizeSlotMixin\n ],\n props,\n data() {\n return {\n hasFocus: false,\n newTag: '',\n tags: [],\n // Tags that were removed\n removedTags: [],\n // Populated when tags are parsed\n tagsState: cleanTagsState(),\n focusState: null\n }\n },\n computed: {\n computedInputId() {\n return this.inputId || this.safeId('__input__')\n },\n computedInputType() {\n // We only allow certain types\n return arrayIncludes(TYPES, this.inputType) ? this.inputType : 'text'\n },\n computedInputAttrs() {\n const { disabled, form } = this\n\n return {\n // Merge in user supplied attributes\n ...this.inputAttrs,\n // Must have attributes\n id: this.computedInputId,\n value: this.newTag,\n disabled,\n form\n }\n },\n computedInputHandlers() {\n return {\n ...omit(this.bvListeners, [EVENT_NAME_FOCUSIN, EVENT_NAME_FOCUSOUT]),\n blur: this.onInputBlur,\n change: this.onInputChange,\n focus: this.onInputFocus,\n input: this.onInputInput,\n keydown: this.onInputKeydown,\n reset: this.reset\n }\n },\n computedSeparator() {\n // Merge the array into a string\n return concat(this.separator)\n .filter(isString)\n .filter(identity)\n .join('')\n },\n computedSeparatorRegExp() {\n // We use a computed prop here to precompile the RegExp\n // The RegExp is a character class RE in the form of `/[abc]+/`\n // where a, b, and c are the valid separator characters\n // -> `tags = str.split(/[abc]+/).filter(t => t)`\n const separator = this.computedSeparator\n return separator ? new RegExp(`[${escapeRegExpChars(separator)}]+`) : null\n },\n computedJoiner() {\n // When tag(s) are invalid or duplicate, we leave them\n // in the input so that the user can see them\n // If there are more than one tag in the input, we use the\n // first separator character as the separator in the input\n // We append a space if the first separator is not a space\n const joiner = this.computedSeparator.charAt(0)\n return joiner !== ' ' ? `${joiner} ` : joiner\n },\n computeIgnoreInputFocusSelector() {\n // Normalize to an single selector with selectors separated by `,`\n return concat(this.ignoreInputFocusSelector)\n .filter(identity)\n .join(',')\n .trim()\n },\n disableAddButton() {\n // If 'Add' button should be disabled\n // If the input contains at least one tag that can\n // be added, then the 'Add' button should be enabled\n const newTag = trim(this.newTag)\n return (\n newTag === '' ||\n !this.splitTags(newTag).some(t => !arrayIncludes(this.tags, t) && this.validateTag(t))\n )\n },\n duplicateTags() {\n return this.tagsState.duplicate\n },\n hasDuplicateTags() {\n return this.duplicateTags.length > 0\n },\n invalidTags() {\n return this.tagsState.invalid\n },\n hasInvalidTags() {\n return this.invalidTags.length > 0\n },\n isLimitReached() {\n const { limit } = this\n return isNumber(limit) && limit >= 0 && this.tags.length >= limit\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue) {\n this.tags = cleanTags(newValue)\n },\n tags(newValue, oldValue) {\n // Update the `v-model` (if it differs from the value prop)\n if (!looseEqual(newValue, this[MODEL_PROP_NAME])) {\n this.$emit(MODEL_EVENT_NAME, newValue)\n }\n if (!looseEqual(newValue, oldValue)) {\n newValue = concat(newValue).filter(identity)\n oldValue = concat(oldValue).filter(identity)\n this.removedTags = oldValue.filter(old => !arrayIncludes(newValue, old))\n }\n },\n tagsState(newValue, oldValue) {\n // Emit a tag-state event when the `tagsState` object changes\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(EVENT_NAME_TAG_STATE, newValue.valid, newValue.invalid, newValue.duplicate)\n }\n }\n },\n created() {\n // We do this in created to make sure an input event emits\n // if the cleaned tags are not equal to the value prop\n this.tags = cleanTags(this[MODEL_PROP_NAME])\n },\n mounted() {\n // Listen for form reset events, to reset the tags input\n const $form = closest('form', this.$el)\n if ($form) {\n eventOn($form, 'reset', this.reset, EVENT_OPTIONS_PASSIVE)\n }\n },\n beforeDestroy() {\n const $form = closest('form', this.$el)\n if ($form) {\n eventOff($form, 'reset', this.reset, EVENT_OPTIONS_PASSIVE)\n }\n },\n methods: {\n addTag(newTag) {\n newTag = isString(newTag) ? newTag : this.newTag\n /* istanbul ignore next */\n if (this.disabled || trim(newTag) === '' || this.isLimitReached) {\n // Early exit\n return\n }\n const parsed = this.parseTags(newTag)\n // Add any new tags to the `tags` array, or if the\n // array of `allTags` is empty, we clear the input\n if (parsed.valid.length > 0 || parsed.all.length === 0) {\n // Clear the user input element (and leave in any invalid/duplicate tag(s)\n /* istanbul ignore if: full testing to be added later */\n if (matches(this.getInput(), 'select')) {\n // The following is needed to properly\n // work with `<select>` elements\n this.newTag = ''\n } else {\n const invalidAndDuplicates = [...parsed.invalid, ...parsed.duplicate]\n this.newTag = parsed.all\n .filter(tag => arrayIncludes(invalidAndDuplicates, tag))\n .join(this.computedJoiner)\n .concat(invalidAndDuplicates.length > 0 ? this.computedJoiner.charAt(0) : '')\n }\n }\n if (parsed.valid.length > 0) {\n // We add the new tags in one atomic operation\n // to trigger reactivity once (instead of once per tag)\n // We do this after we update the new tag input value\n // `concat()` can be faster than array spread, when both args are arrays\n this.tags = concat(this.tags, parsed.valid)\n }\n this.tagsState = parsed\n // Attempt to re-focus the input (specifically for when using the Add\n // button, as the button disappears after successfully adding a tag\n this.focus()\n },\n removeTag(tag) {\n /* istanbul ignore next */\n if (this.disabled) {\n return\n }\n // TODO:\n // Add `onRemoveTag(tag)` user method, which if returns `false`\n // will prevent the tag from being removed (i.e. confirmation)\n // Or emit cancelable `BvEvent`\n this.tags = this.tags.filter(t => t !== tag)\n },\n reset() {\n this.newTag = ''\n this.tags = []\n\n this.$nextTick(() => {\n this.removedTags = []\n this.tagsState = cleanTagsState()\n })\n },\n // --- Input element event handlers ---\n onInputInput(event) {\n /* istanbul ignore next: hard to test composition events */\n if (this.disabled || (isEvent(event) && event.target.composing)) {\n // `event.target.composing` is set by Vue (`v-model` directive)\n // https://github.com/vuejs/vue/blob/dev/src/platforms/web/runtime/directives/model.js\n return\n }\n let newTag = processEventValue(event)\n const separatorRe = this.computedSeparatorRegExp\n if (this.newTag !== newTag) {\n this.newTag = newTag\n }\n // We ignore leading whitespace for the following\n newTag = trimLeft(newTag)\n if (separatorRe && separatorRe.test(newTag.slice(-1))) {\n // A trailing separator character was entered, so add the tag(s)\n // Note: More than one tag on input event is possible via copy/paste\n this.addTag()\n } else {\n // Validate (parse tags) on input event\n this.tagsState = newTag === '' ? cleanTagsState() : this.parseTags(newTag)\n }\n },\n onInputChange(event) {\n // Change is triggered on `<input>` blur, or `<select>` selected\n // This event is opt-in\n if (!this.disabled && this.addOnChange) {\n const newTag = processEventValue(event)\n /* istanbul ignore next */\n if (this.newTag !== newTag) {\n this.newTag = newTag\n }\n this.addTag()\n }\n },\n onInputKeydown(event) {\n // Early exit\n /* istanbul ignore next */\n if (this.disabled || !isEvent(event)) {\n return\n }\n const { keyCode } = event\n const value = event.target.value || ''\n /* istanbul ignore else: testing to be added later */\n if (!this.noAddOnEnter && keyCode === CODE_ENTER) {\n // Attempt to add the tag when user presses enter\n stopEvent(event, { propagation: false })\n this.addTag()\n } else if (\n this.removeOnDelete &&\n (keyCode === CODE_BACKSPACE || keyCode === CODE_DELETE) &&\n value === ''\n ) {\n // Remove the last tag if the user pressed backspace/delete and the input is empty\n stopEvent(event, { propagation: false })\n this.tags = this.tags.slice(0, -1)\n }\n },\n // --- Wrapper event handlers ---\n onClick(event) {\n const { computeIgnoreInputFocusSelector: ignoreFocusSelector } = this\n if (!ignoreFocusSelector || !closest(ignoreFocusSelector, event.target, true)) {\n this.$nextTick(() => {\n this.focus()\n })\n }\n },\n onInputFocus(event) {\n if (this.focusState !== 'out') {\n this.focusState = 'in'\n this.$nextTick(() => {\n requestAF(() => {\n if (this.hasFocus) {\n this.$emit(EVENT_NAME_FOCUS, event)\n this.focusState = null\n }\n })\n })\n }\n },\n onInputBlur(event) {\n if (this.focusState !== 'in') {\n this.focusState = 'out'\n this.$nextTick(() => {\n requestAF(() => {\n if (!this.hasFocus) {\n this.$emit(EVENT_NAME_BLUR, event)\n this.focusState = null\n }\n })\n })\n }\n },\n onFocusin(event) {\n this.hasFocus = true\n this.$emit(EVENT_NAME_FOCUSIN, event)\n },\n onFocusout(event) {\n this.hasFocus = false\n this.$emit(EVENT_NAME_FOCUSOUT, event)\n },\n handleAutofocus() {\n this.$nextTick(() => {\n requestAF(() => {\n if (this.autofocus) {\n this.focus()\n }\n })\n })\n },\n // --- Public methods ---\n focus() {\n if (!this.disabled) {\n attemptFocus(this.getInput())\n }\n },\n blur() {\n if (!this.disabled) {\n attemptBlur(this.getInput())\n }\n },\n // --- Private methods ---\n splitTags(newTag) {\n // Split the input into an array of raw tags\n newTag = toString(newTag)\n const separatorRe = this.computedSeparatorRegExp\n // Split the tag(s) via the optional separator\n // Normally only a single tag is provided, but copy/paste\n // can enter multiple tags in a single operation\n return (separatorRe ? newTag.split(separatorRe) : [newTag]).map(trim).filter(identity)\n },\n parseTags(newTag) {\n // Takes `newTag` value and parses it into `validTags`,\n // `invalidTags`, and duplicate tags as an object\n // Split the input into raw tags\n const tags = this.splitTags(newTag)\n // Base results\n const parsed = {\n all: tags,\n valid: [],\n invalid: [],\n duplicate: []\n }\n // Parse the unique tags\n tags.forEach(tag => {\n if (arrayIncludes(this.tags, tag) || arrayIncludes(parsed.valid, tag)) {\n // Unique duplicate tags\n if (!arrayIncludes(parsed.duplicate, tag)) {\n parsed.duplicate.push(tag)\n }\n } else if (this.validateTag(tag)) {\n // We only add unique/valid tags\n parsed.valid.push(tag)\n } else {\n // Unique invalid tags\n if (!arrayIncludes(parsed.invalid, tag)) {\n parsed.invalid.push(tag)\n }\n }\n })\n return parsed\n },\n validateTag(tag) {\n const { tagValidator } = this\n return hasPropFunction(tagValidator) ? tagValidator(tag) : true\n },\n getInput() {\n // Returns the input element reference (or null if not found)\n // We need to escape `computedInputId` since it can be user-provided\n return select(`#${cssEscape(this.computedInputId)}`, this.$el)\n },\n // Default User Interface render\n defaultRender({\n addButtonText,\n addButtonVariant,\n addTag,\n disableAddButton,\n disabled,\n duplicateTagText,\n inputAttrs,\n inputClass,\n inputHandlers,\n inputType,\n invalidTagText,\n isDuplicate,\n isInvalid,\n isLimitReached,\n limitTagsText,\n noTagRemove,\n placeholder,\n removeTag,\n tagClass,\n tagPills,\n tagRemoveLabel,\n tagVariant,\n tags\n }) {\n const h = this.$createElement\n\n // Make the list of tags\n const $tags = tags.map(tag => {\n tag = toString(tag)\n\n return h(\n BFormTag,\n {\n class: tagClass,\n // `BFormTag` will auto generate an ID\n // so we do not need to set the ID prop\n props: {\n disabled,\n noRemove: noTagRemove,\n pill: tagPills,\n removeLabel: tagRemoveLabel,\n tag: 'li',\n title: tag,\n variant: tagVariant\n },\n on: { remove: () => removeTag(tag) },\n key: `tags_${tag}`\n },\n tag\n )\n })\n\n // Feedback IDs if needed\n const invalidFeedbackId =\n invalidTagText && isInvalid ? this.safeId('__invalid_feedback__') : null\n const duplicateFeedbackId =\n duplicateTagText && isDuplicate ? this.safeId('__duplicate_feedback__') : null\n const limitFeedbackId =\n limitTagsText && isLimitReached ? this.safeId('__limit_feedback__') : null\n\n // Compute the `aria-describedby` attribute value\n const ariaDescribedby = [\n inputAttrs['aria-describedby'],\n invalidFeedbackId,\n duplicateFeedbackId,\n limitFeedbackId\n ]\n .filter(identity)\n .join(' ')\n\n // Input\n const $input = h('input', {\n staticClass: 'b-form-tags-input w-100 flex-grow-1 p-0 m-0 bg-transparent border-0',\n class: inputClass,\n style: { outline: 0, minWidth: '5rem' },\n attrs: {\n ...inputAttrs,\n 'aria-describedby': ariaDescribedby || null,\n type: inputType,\n placeholder: placeholder || null\n },\n domProps: { value: inputAttrs.value },\n on: inputHandlers,\n // Directive needed to get `event.target.composing` set (if needed)\n directives: [{ name: 'model', value: inputAttrs.value }],\n ref: 'input'\n })\n\n // Add button\n const $button = h(\n BButton,\n {\n staticClass: 'b-form-tags-button py-0',\n class: {\n // Only show the button if the tag can be added\n // We use the `invisible` class instead of not rendering\n // the button, so that we maintain layout to prevent\n // the user input from jumping around\n invisible: disableAddButton\n },\n style: { fontSize: '90%' },\n props: {\n disabled: disableAddButton || isLimitReached,\n variant: addButtonVariant\n },\n on: { click: () => addTag() },\n ref: 'button'\n },\n [this.normalizeSlot(SLOT_NAME_ADD_BUTTON_TEXT) || addButtonText]\n )\n\n // ID of the tags + input `<ul>` list\n // Note we could concatenate `inputAttrs.id` with '__tag_list__'\n // but `inputId` may be `null` until after mount\n // `safeId()` returns `null`, if no user provided ID,\n // until after mount when a unique ID is generated\n const tagListId = this.safeId('__tag_list__')\n\n const $field = h(\n 'li',\n {\n staticClass: 'b-form-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 { feedbackAriaLive: ariaLive, computedJoiner: joiner } = this\n\n // Invalid tag feedback if needed (error)\n let $invalid = h()\n if (invalidFeedbackId) {\n $invalid = h(\n BFormInvalidFeedback,\n {\n props: {\n id: invalidFeedbackId,\n ariaLive,\n forceShow: true\n },\n key: 'tags_invalid_feedback'\n },\n [this.invalidTagText, ': ', this.invalidTags.join(joiner)]\n )\n }\n\n // Duplicate tag feedback if needed (warning, not error)\n let $duplicate = h()\n if (duplicateFeedbackId) {\n $duplicate = h(\n BFormText,\n {\n props: {\n id: duplicateFeedbackId,\n ariaLive\n },\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: {\n id: limitFeedbackId,\n ariaLive\n },\n key: 'tags_limit_feedback'\n },\n [limitTagsText]\n )\n }\n\n $feedback = h(\n 'div',\n {\n attrs: {\n 'aria-live': 'polite',\n 'aria-atomic': 'true'\n },\n key: 'tags_feedback'\n },\n [$invalid, $duplicate, $limit]\n )\n }\n\n // Return the content\n return [$ul, $feedback]\n }\n },\n render(h) {\n const { name, disabled, required, form, tags, computedInputId, hasFocus, noOuterFocus } = this\n\n // Scoped slot properties\n const scope = {\n // Array of tags (shallow copy to prevent mutations)\n tags: tags.slice(),\n // <input> v-bind:inputAttrs\n inputAttrs: this.computedInputAttrs,\n // We don't include this in the attrs, as users may want to override this\n inputType: this.computedInputType,\n // <input> v-on:inputHandlers\n inputHandlers: this.computedInputHandlers,\n // Methods\n removeTag: this.removeTag,\n addTag: this.addTag,\n reset: this.reset,\n // <input> :id=\"inputId\"\n inputId: computedInputId,\n // Invalid/Duplicate state information\n isInvalid: this.hasInvalidTags,\n invalidTags: this.invalidTags.slice(),\n isDuplicate: this.hasDuplicateTags,\n duplicateTags: this.duplicateTags.slice(),\n isLimitReached: this.isLimitReached,\n // If the 'Add' button should be disabled\n disableAddButton: this.disableAddButton,\n // Pass-through props\n ...pick(this.$props, [\n 'addButtonText',\n 'addButtonVariant',\n 'disabled',\n 'duplicateTagText',\n 'form',\n 'inputClass',\n 'invalidTagText',\n 'limit',\n 'limitTagsText',\n 'noTagRemove',\n 'placeholder',\n 'required',\n 'separator',\n 'size',\n 'state',\n 'tagClass',\n 'tagPills',\n 'tagRemoveLabel',\n 'tagVariant'\n ])\n }\n\n // Generate the user interface\n const $content = this.normalizeSlot(SLOT_NAME_DEFAULT, scope) || this.defaultRender(scope)\n\n // Generate the `aria-live` region for the current value(s)\n const $output = h(\n 'output',\n {\n staticClass: 'sr-only',\n attrs: {\n id: this.safeId('__selected_tags__'),\n role: 'status',\n for: computedInputId,\n 'aria-live': hasFocus ? 'polite' : 'off',\n 'aria-atomic': 'true',\n 'aria-relevant': 'additions text'\n }\n },\n this.tags.join(', ')\n )\n\n // Removed tag live region\n const $removed = h(\n 'div',\n {\n staticClass: 'sr-only',\n attrs: {\n id: this.safeId('__removed_tags__'),\n role: 'status',\n 'aria-live': hasFocus ? 'assertive' : 'off',\n 'aria-atomic': 'true'\n }\n },\n this.removedTags.length > 0 ? `(${this.tagRemovedLabel}) ${this.removedTags.join(', ')}` : ''\n )\n\n // Add hidden inputs for form submission\n let $hidden = h()\n if (name && !disabled) {\n // We add hidden inputs for each tag if a name is provided\n // When there are currently no tags, a visually hidden input\n // with empty value is rendered for proper required handling\n const hasTags = tags.length > 0\n $hidden = (hasTags ? tags : ['']).map(tag => {\n return h('input', {\n class: { 'sr-only': !hasTags },\n attrs: {\n type: hasTags ? 'hidden' : 'text',\n value: tag,\n required,\n name,\n form\n },\n key: `tag_input_${tag}`\n })\n })\n }\n\n // Return the rendered output\n return h(\n 'div',\n {\n staticClass: 'b-form-tags form-control h-auto',\n class: [\n {\n focus: hasFocus && !noOuterFocus && !disabled,\n disabled\n },\n this.sizeFormClass,\n this.stateClass\n ],\n attrs: {\n id: this.safeId(),\n role: 'group',\n tabindex: disabled || noOuterFocus ? null : '-1',\n 'aria-describedby': this.safeId('__selected_tags__')\n },\n on: {\n click: this.onClick,\n focusin: this.onFocusin,\n focusout: this.onFocusout\n }\n },\n [$output, $removed, $content, $hidden]\n )\n }\n})\n","import { BFormTags } from './form-tags'\nimport { BFormTag } from './form-tag'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormTagsPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BFormTags,\n BTags: BFormTags,\n BFormTag,\n BTag: BFormTag\n }\n})\n\nexport { FormTagsPlugin, BFormTags, BFormTag }\n","import { Vue } from '../../vue'\nimport { NAME_FORM_TEXTAREA } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { getCS, getStyle, isVisible, requestAF, setStyle } from '../../utils/dom'\nimport { isNull } from '../../utils/inspect'\nimport { mathCeil, mathMax, mathMin } from '../../utils/math'\nimport { toInteger, toFloat } from '../../utils/number'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control'\nimport { formSelectionMixin } from '../../mixins/form-selection'\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size'\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state'\nimport { formTextMixin, props as formTextProps } from '../../mixins/form-text'\nimport { formValidityMixin } from '../../mixins/form-validity'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { VBVisible } from '../../directives/visible/visible'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...formControlProps,\n ...formSizeProps,\n ...formStateProps,\n ...formTextProps,\n maxRows: makeProp(PROP_TYPE_NUMBER_STRING),\n // When in auto resize mode, disable shrinking to content height\n noAutoShrink: makeProp(PROP_TYPE_BOOLEAN, false),\n // Disable the resize handle of textarea\n noResize: makeProp(PROP_TYPE_BOOLEAN, false),\n rows: makeProp(PROP_TYPE_NUMBER_STRING, 2),\n // 'soft', 'hard' or 'off'\n // Browser default is 'soft'\n wrap: makeProp(PROP_TYPE_STRING, 'soft')\n }),\n NAME_FORM_TEXTAREA\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormTextarea = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_TEXTAREA,\n directives: {\n 'b-visible': VBVisible\n },\n // Mixin order is important!\n mixins: [\n listenersMixin,\n idMixin,\n listenOnRootMixin,\n formControlMixin,\n formSizeMixin,\n formStateMixin,\n formTextMixin,\n formSelectionMixin,\n formValidityMixin\n ],\n props,\n data() {\n return {\n heightInPx: null\n }\n },\n computed: {\n computedStyle() {\n const styles = {\n // Setting `noResize` to true will disable the ability for the user to\n // manually resize the textarea. We also disable when in auto height mode\n resize: !this.computedRows || this.noResize ? 'none' : null\n }\n if (!this.computedRows) {\n // Conditionally set the computed CSS height when auto rows/height is enabled\n // We avoid setting the style to `null`, which can override user manual resize handle\n styles.height = this.heightInPx\n // We always add a vertical scrollbar to the textarea when auto-height is\n // enabled so that the computed height calculation returns a stable value\n styles.overflowY = 'scroll'\n }\n return styles\n },\n computedMinRows() {\n // Ensure rows is at least 2 and positive (2 is the native textarea value)\n // A value of 1 can cause issues in some browsers, and most browsers\n // only support 2 as the smallest value\n return mathMax(toInteger(this.rows, 2), 2)\n },\n computedMaxRows() {\n return mathMax(this.computedMinRows, toInteger(this.maxRows, 0))\n },\n computedRows() {\n // This is used to set the attribute 'rows' on the textarea\n // If auto-height is enabled, then we return `null` as we use CSS to control height\n return this.computedMinRows === this.computedMaxRows ? this.computedMinRows : null\n },\n computedAttrs() {\n const { disabled, required } = this\n\n return {\n id: this.safeId(),\n name: this.name || null,\n form: this.form || null,\n disabled,\n placeholder: this.placeholder || null,\n required,\n autocomplete: this.autocomplete || null,\n readonly: this.readonly || this.plaintext,\n rows: this.computedRows,\n wrap: this.wrap || null,\n 'aria-required': this.required ? 'true' : null,\n 'aria-invalid': this.computedAriaInvalid\n }\n },\n computedListeners() {\n return {\n ...this.bvListeners,\n input: this.onInput,\n change: this.onChange,\n blur: this.onBlur\n }\n }\n },\n watch: {\n localValue() {\n this.setHeight()\n }\n },\n mounted() {\n this.setHeight()\n },\n methods: {\n // Called by intersection observer directive\n /* istanbul ignore next */\n visibleCallback(visible) {\n if (visible) {\n // We use a `$nextTick()` here just to make sure any\n // transitions or portalling have completed\n this.$nextTick(this.setHeight)\n }\n },\n setHeight() {\n this.$nextTick(() => {\n requestAF(() => {\n this.heightInPx = this.computeHeight()\n })\n })\n },\n /* istanbul ignore next: can't test getComputedStyle in JSDOM */\n computeHeight() {\n if (this.$isServer || !isNull(this.computedRows)) {\n return null\n }\n\n const el = this.$el\n\n // Element must be visible (not hidden) and in document\n // Must be checked after above checks\n if (!isVisible(el)) {\n return null\n }\n\n // Get current computed styles\n const computedStyle = getCS(el)\n // Height of one line of text in px\n const lineHeight = toFloat(computedStyle.lineHeight, 1)\n // Calculate height of border and padding\n const border =\n toFloat(computedStyle.borderTopWidth, 0) + toFloat(computedStyle.borderBottomWidth, 0)\n const padding = toFloat(computedStyle.paddingTop, 0) + toFloat(computedStyle.paddingBottom, 0)\n // Calculate offset\n const offset = border + padding\n // Minimum height for min rows (which must be 2 rows or greater for cross-browser support)\n const minHeight = lineHeight * this.computedMinRows + offset\n\n // Get the current style height (with `px` units)\n const oldHeight = getStyle(el, 'height') || computedStyle.height\n // Probe scrollHeight by temporarily changing the height to `auto`\n setStyle(el, 'height', 'auto')\n const scrollHeight = el.scrollHeight\n // Place the original old height back on the element, just in case `computedProp`\n // returns the same value as before\n setStyle(el, 'height', oldHeight)\n\n // Calculate content height in 'rows' (scrollHeight includes padding but not border)\n const contentRows = mathMax((scrollHeight - padding) / lineHeight, 2)\n // Calculate number of rows to display (limited within min/max rows)\n const rows = mathMin(mathMax(contentRows, this.computedMinRows), this.computedMaxRows)\n // Calculate the required height of the textarea including border and padding (in pixels)\n const height = mathMax(mathCeil(rows * lineHeight + offset), minHeight)\n\n // Computed height remains the larger of `oldHeight` and new `height`,\n // when height is in `sticky` mode (prop `no-auto-shrink` is true)\n if (this.noAutoShrink && toFloat(oldHeight, 0) > height) {\n return oldHeight\n }\n\n // Return the new computed CSS height in px units\n return `${height}px`\n }\n },\n render(h) {\n return h('textarea', {\n class: this.computedClass,\n style: this.computedStyle,\n directives: [\n {\n name: 'b-visible',\n value: this.visibleCallback,\n // If textarea is within 640px of viewport, consider it visible\n modifiers: { '640': true }\n }\n ],\n attrs: this.computedAttrs,\n domProps: { value: this.localValue },\n on: this.computedListeners,\n ref: 'input'\n })\n }\n})\n","import { BFormTextarea } from './form-textarea'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormTextareaPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BFormTextarea,\n BTextarea: BFormTextarea\n }\n})\n\nexport { FormTextareaPlugin, BFormTextarea }\n","// BTime control (not form input control)\nimport { Vue } from '../../vue'\nimport { NAME_TIME } from '../../constants/components'\nimport { EVENT_NAME_CONTEXT } from '../../constants/events'\nimport { CODE_LEFT, CODE_RIGHT } from '../../constants/key-codes'\nimport {\n PROP_TYPE_ARRAY_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { RX_TIME } from '../../constants/regex'\nimport { concat } from '../../utils/array'\nimport { createDate, createDateFormatter } from '../../utils/date'\nimport { attemptBlur, attemptFocus, contains, getActiveElement, requestAF } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isNull, isUndefinedOrNull } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { isLocaleRTL } from '../../utils/locale'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { pick, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BFormSpinbutton, props as BFormSpinbuttonProps } from '../form-spinbutton/form-spinbutton'\nimport { BIconCircleFill, BIconChevronUp } from '../../icons/icons'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n type: PROP_TYPE_STRING,\n defaultValue: ''\n})\n\nconst NUMERIC = 'numeric'\n\n// --- Helper methods ---\n\nconst padLeftZeros = value => `00${value || ''}`.slice(-2)\n\nconst parseHMS = value => {\n value = toString(value)\n let [hh, mm, ss] = [null, null, null]\n if (RX_TIME.test(value)) {\n ;[hh, mm, ss] = value.split(':').map(v => toInteger(v, null))\n }\n return {\n hours: isUndefinedOrNull(hh) ? null : hh,\n minutes: isUndefinedOrNull(mm) ? null : mm,\n seconds: isUndefinedOrNull(ss) ? null : ss,\n ampm: isUndefinedOrNull(hh) || hh < 12 ? 0 : 1\n }\n}\n\nconst formatHMS = ({ hours, minutes, seconds }, requireSeconds = false) => {\n if (isNull(hours) || isNull(minutes) || (requireSeconds && isNull(seconds))) {\n return ''\n }\n const hms = [hours, minutes, requireSeconds ? seconds : 0]\n return hms.map(padLeftZeros).join(':')\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ...pick(BFormSpinbuttonProps, ['labelIncrement', 'labelDecrement']),\n // ID of label element\n ariaLabelledby: makeProp(PROP_TYPE_STRING),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n footerTag: makeProp(PROP_TYPE_STRING, 'footer'),\n headerTag: makeProp(PROP_TYPE_STRING, 'header'),\n hidden: makeProp(PROP_TYPE_BOOLEAN, false),\n hideHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n // Explicitly force 12 or 24 hour time\n // Default is to use resolved locale for 12/24 hour display\n // Tri-state: `true` = 12, `false` = 24, `null` = auto\n hour12: makeProp(PROP_TYPE_BOOLEAN, null),\n labelAm: makeProp(PROP_TYPE_STRING, 'AM'),\n labelAmpm: makeProp(PROP_TYPE_STRING, 'AM/PM'),\n labelHours: makeProp(PROP_TYPE_STRING, 'Hours'),\n labelMinutes: makeProp(PROP_TYPE_STRING, 'Minutes'),\n labelNoTimeSelected: makeProp(PROP_TYPE_STRING, 'No time selected'),\n labelPm: makeProp(PROP_TYPE_STRING, 'PM'),\n labelSeconds: makeProp(PROP_TYPE_STRING, 'Seconds'),\n labelSelected: makeProp(PROP_TYPE_STRING, 'Selected time'),\n locale: makeProp(PROP_TYPE_ARRAY_STRING),\n minutesStep: makeProp(PROP_TYPE_NUMBER_STRING, 1),\n readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n secondsStep: makeProp(PROP_TYPE_NUMBER_STRING, 1),\n // If `true`, show the second spinbutton\n showSeconds: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_TIME\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BTime = /*#__PURE__*/ Vue.extend({\n name: NAME_TIME,\n mixins: [idMixin, modelMixin, normalizeSlotMixin],\n props,\n data() {\n const parsed = parseHMS(this[MODEL_PROP_NAME] || '')\n return {\n // Spin button models\n modelHours: parsed.hours,\n modelMinutes: parsed.minutes,\n modelSeconds: parsed.seconds,\n modelAmpm: parsed.ampm,\n // Internal flag to enable aria-live regions\n isLive: false\n }\n },\n computed: {\n computedHMS() {\n const hours = this.modelHours\n const minutes = this.modelMinutes\n const seconds = this.modelSeconds\n return formatHMS({ hours, minutes, seconds }, this.showSeconds)\n },\n resolvedOptions() {\n // Resolved locale options\n const locale = concat(this.locale).filter(identity)\n const options = {\n hour: NUMERIC,\n minute: NUMERIC,\n second: NUMERIC\n }\n if (!isUndefinedOrNull(this.hour12)) {\n // Force 12 or 24 hour clock\n options.hour12 = !!this.hour12\n }\n const dtf = new Intl.DateTimeFormat(locale, options)\n const resolved = dtf.resolvedOptions()\n const hour12 = resolved.hour12 || false\n // IE 11 doesn't resolve the hourCycle, so we make\n // an assumption and fall back to common values\n const hourCycle = resolved.hourCycle || (hour12 ? 'h12' : 'h23')\n return {\n locale: resolved.locale,\n hour12,\n hourCycle\n }\n },\n computedLocale() {\n return this.resolvedOptions.locale\n },\n computedLang() {\n return (this.computedLocale || '').replace(/-u-.*$/, '')\n },\n computedRTL() {\n return isLocaleRTL(this.computedLang)\n },\n computedHourCycle() {\n // h11, h12, h23, or h24\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Locale/hourCycle\n // h12 - Hour system using 1–12. Corresponds to 'h' in patterns. The 12 hour clock, with midnight starting at 12:00 am\n // h23 - Hour system using 0–23. Corresponds to 'H' in patterns. The 24 hour clock, with midnight starting at 0:00\n // h11 - Hour system using 0–11. Corresponds to 'K' in patterns. The 12 hour clock, with midnight starting at 0:00 am\n // h24 - Hour system using 1–24. Corresponds to 'k' in pattern. The 24 hour clock, with midnight starting at 24:00\n // For h12 or h24, we visually format 00 hours as 12\n return this.resolvedOptions.hourCycle\n },\n is12Hour() {\n return !!this.resolvedOptions.hour12\n },\n context() {\n return {\n locale: this.computedLocale,\n isRTL: this.computedRTL,\n hourCycle: this.computedHourCycle,\n hour12: this.is12Hour,\n hours: this.modelHours,\n minutes: this.modelMinutes,\n seconds: this.showSeconds ? this.modelSeconds : 0,\n value: this.computedHMS,\n formatted: this.formattedTimeString\n }\n },\n valueId() {\n return this.safeId() || null\n },\n computedAriaLabelledby() {\n return [this.ariaLabelledby, this.valueId].filter(identity).join(' ') || null\n },\n timeFormatter() {\n // Returns a formatter function reference\n // The formatter converts the time to a localized string\n const options = {\n hour12: this.is12Hour,\n hourCycle: this.computedHourCycle,\n hour: NUMERIC,\n minute: NUMERIC,\n timeZone: 'UTC'\n }\n if (this.showSeconds) {\n options.second = NUMERIC\n }\n // Formats the time as a localized string\n return createDateFormatter(this.computedLocale, options)\n },\n numberFormatter() {\n // Returns a formatter function reference\n // The formatter always formats as 2 digits and is localized\n const nf = new Intl.NumberFormat(this.computedLocale, {\n style: 'decimal',\n minimumIntegerDigits: 2,\n minimumFractionDigits: 0,\n maximumFractionDigits: 0,\n notation: 'standard'\n })\n return nf.format\n },\n formattedTimeString() {\n const hours = this.modelHours\n const minutes = this.modelMinutes\n const seconds = this.showSeconds ? this.modelSeconds || 0 : 0\n if (this.computedHMS) {\n return this.timeFormatter(createDate(Date.UTC(0, 0, 1, hours, minutes, seconds)))\n }\n return this.labelNoTimeSelected || ' '\n },\n spinScopedSlots() {\n const h = this.$createElement\n return {\n increment: ({ hasFocus }) =>\n h(BIconChevronUp, {\n props: { scale: hasFocus ? 1.5 : 1.25 },\n attrs: { 'aria-hidden': 'true' }\n }),\n decrement: ({ hasFocus }) =>\n h(BIconChevronUp, {\n props: { flipV: true, scale: hasFocus ? 1.5 : 1.25 },\n attrs: { 'aria-hidden': 'true' }\n })\n }\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue, oldValue) {\n if (newValue !== oldValue && !looseEqual(parseHMS(newValue), parseHMS(this.computedHMS))) {\n const { hours, minutes, seconds, ampm } = parseHMS(newValue)\n this.modelHours = hours\n this.modelMinutes = minutes\n this.modelSeconds = seconds\n this.modelAmpm = ampm\n }\n },\n computedHMS(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.$emit(MODEL_EVENT_NAME, newValue)\n }\n },\n context(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(EVENT_NAME_CONTEXT, newValue)\n }\n },\n modelAmpm(newValue, oldValue) {\n if (newValue !== oldValue) {\n const hours = isNull(this.modelHours) ? 0 : this.modelHours\n this.$nextTick(() => {\n if (newValue === 0 && hours > 11) {\n // Switched to AM\n this.modelHours = hours - 12\n } else if (newValue === 1 && hours < 12) {\n // Switched to PM\n this.modelHours = hours + 12\n }\n })\n }\n },\n modelHours(newHours, oldHours) {\n if (newHours !== oldHours) {\n this.modelAmpm = newHours > 11 ? 1 : 0\n }\n }\n },\n created() {\n this.$nextTick(() => {\n this.$emit(EVENT_NAME_CONTEXT, this.context)\n })\n },\n mounted() {\n this.setLive(true)\n },\n /* istanbul ignore next */\n activated() {\n this.setLive(true)\n },\n /* istanbul ignore next */\n deactivated() {\n this.setLive(false)\n },\n beforeDestroy() {\n this.setLive(false)\n },\n methods: {\n // Public methods\n focus() {\n if (!this.disabled) {\n // We focus the first spin button\n attemptFocus(this.$refs.spinners[0])\n }\n },\n blur() {\n if (!this.disabled) {\n const activeElement = getActiveElement()\n if (contains(this.$el, activeElement)) {\n attemptBlur(activeElement)\n }\n }\n },\n // Formatters for the spin buttons\n formatHours(hh) {\n const hourCycle = this.computedHourCycle\n // We always store 0-23, but format based on h11/h12/h23/h24 formats\n hh = this.is12Hour && hh > 12 ? hh - 12 : hh\n // Determine how 00:00 and 12:00 are shown\n hh =\n hh === 0 && hourCycle === 'h12'\n ? 12\n : hh === 0 && hourCycle === 'h24'\n ? /* istanbul ignore next */ 24\n : hh === 12 && hourCycle === 'h11'\n ? /* istanbul ignore next */ 0\n : hh\n return this.numberFormatter(hh)\n },\n formatMinutes(mm) {\n return this.numberFormatter(mm)\n },\n formatSeconds(ss) {\n return this.numberFormatter(ss)\n },\n formatAmpm(ampm) {\n // These should come from label props???\n // `ampm` should always be a value of `0` or `1`\n return ampm === 0 ? this.labelAm : ampm === 1 ? this.labelPm : ''\n },\n // Spinbutton on change handlers\n setHours(value) {\n this.modelHours = value\n },\n setMinutes(value) {\n this.modelMinutes = value\n },\n setSeconds(value) {\n this.modelSeconds = value\n },\n setAmpm(value) {\n this.modelAmpm = value\n },\n onSpinLeftRight(event = {}) {\n const { type, keyCode } = event\n if (\n !this.disabled &&\n type === 'keydown' &&\n (keyCode === CODE_LEFT || keyCode === CODE_RIGHT)\n ) {\n stopEvent(event)\n const spinners = this.$refs.spinners || []\n let index = spinners.map(cmp => !!cmp.hasFocus).indexOf(true)\n index = index + (keyCode === CODE_LEFT ? -1 : 1)\n index = index >= spinners.length ? 0 : index < 0 ? spinners.length - 1 : index\n attemptFocus(spinners[index])\n }\n },\n setLive(on) {\n if (on) {\n this.$nextTick(() => {\n requestAF(() => {\n this.isLive = true\n })\n })\n } else {\n this.isLive = false\n }\n }\n },\n render(h) {\n // If hidden, we just render a placeholder comment\n /* istanbul ignore if */\n if (this.hidden) {\n return h()\n }\n\n const {\n disabled,\n readonly,\n computedLocale: locale,\n computedAriaLabelledby: ariaLabelledby,\n labelIncrement,\n labelDecrement,\n valueId,\n focus: focusHandler\n } = this\n const spinIds = []\n\n // Helper method to render a spinbutton\n const makeSpinbutton = (handler, key, classes, spinbuttonProps = {}) => {\n const id = this.safeId(`_spinbutton_${key}_`) || null\n spinIds.push(id)\n\n return h(BFormSpinbutton, {\n class: classes,\n props: {\n id,\n placeholder: '--',\n vertical: true,\n required: true,\n disabled,\n readonly,\n locale,\n labelIncrement,\n labelDecrement,\n wrap: true,\n ariaControls: valueId,\n min: 0,\n ...spinbuttonProps\n },\n scopedSlots: this.spinScopedSlots,\n on: {\n // We use `change` event to minimize SR verbosity\n // As the spinbutton will announce each value change\n // and we don't want the formatted time to be announced\n // on each value input if repeat is happening\n change: handler\n },\n key,\n ref: 'spinners',\n refInFor: true\n })\n }\n\n // Helper method to return a \"colon\" separator\n const makeColon = () => {\n return h(\n 'div',\n {\n staticClass: 'd-flex flex-column',\n class: { 'text-muted': disabled || readonly },\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: disabled || readonly ? null : '-1',\n 'aria-labelledby': ariaLabelledby\n },\n on: {\n keydown: this.onSpinLeftRight,\n click: /* istanbul ignore next */ event => {\n if (event.target === event.currentTarget) {\n focusHandler()\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: disabled || readonly\n },\n attrs: {\n id: valueId,\n role: 'status',\n for: spinIds.filter(identity).join(' ') || null,\n tabindex: 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: focusHandler,\n focus: focusHandler\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 this.headerTag,\n {\n staticClass: 'b-time-header',\n class: { 'sr-only': this.hideHeader }\n },\n [$value]\n )\n\n const $content = this.normalizeSlot()\n const $footer = $content ? h(this.footerTag, { staticClass: 'b-time-footer' }, $content) : 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': ariaLabelledby || null,\n 'aria-disabled': disabled ? 'true' : null,\n 'aria-readonly': readonly && !disabled ? 'true' : null\n }\n },\n [$header, $spinners, $footer]\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_FORM_TIMEPICKER } from '../../constants/components'\nimport { EVENT_NAME_CONTEXT, EVENT_NAME_SHOWN, EVENT_NAME_HIDDEN } from '../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_DATE_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_BUTTON_CONTENT } from '../../constants/slots'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { makeModelMixin } from '../../utils/model'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { BIconClock, BIconClockFill } from '../../icons/icons'\nimport { BButton } from '../button/button'\nimport {\n BVFormBtnLabelControl,\n props as BVFormBtnLabelControlProps\n} from '../form-btn-label-control/bv-form-btn-label-control'\nimport { BTime, props as BTimeProps } from '../time/time'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n type: PROP_TYPE_STRING,\n defaultValue: ''\n})\n\n// --- Props ---\n\nconst timeProps = omit(BTimeProps, ['hidden', 'id', 'value'])\n\nconst formBtnLabelControlProps = omit(BVFormBtnLabelControlProps, [\n 'formattedValue',\n 'id',\n 'lang',\n 'rtl',\n 'value'\n])\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ...timeProps,\n ...formBtnLabelControlProps,\n closeButtonVariant: makeProp(PROP_TYPE_STRING, 'outline-secondary'),\n labelCloseButton: makeProp(PROP_TYPE_STRING, 'Close'),\n labelNowButton: makeProp(PROP_TYPE_STRING, 'Select now'),\n labelResetButton: makeProp(PROP_TYPE_STRING, 'Reset'),\n noCloseButton: makeProp(PROP_TYPE_BOOLEAN, false),\n nowButton: makeProp(PROP_TYPE_BOOLEAN, false),\n nowButtonVariant: makeProp(PROP_TYPE_STRING, 'outline-primary'),\n resetButton: makeProp(PROP_TYPE_BOOLEAN, false),\n resetButtonVariant: makeProp(PROP_TYPE_STRING, 'outline-danger'),\n resetValue: makeProp(PROP_TYPE_DATE_STRING)\n }),\n NAME_FORM_TIMEPICKER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BFormTimepicker = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM_TIMEPICKER,\n mixins: [idMixin, modelMixin],\n props,\n data() {\n return {\n // We always use `HH:mm:ss` value internally\n localHMS: this[MODEL_PROP_NAME] || '',\n // Context data from BTime\n localLocale: null,\n isRTL: false,\n formattedValue: '',\n // If the menu is opened\n isVisible: false\n }\n },\n computed: {\n computedLang() {\n return (this.localLocale || '').replace(/-u-.*$/i, '') || null\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue) {\n this.localHMS = newValue || ''\n },\n localHMS(newValue) {\n // We only update the v-model value when the timepicker\n // is open, to prevent cursor jumps when bound to a\n // text input in button only mode\n if (this.isVisible) {\n this.$emit(MODEL_EVENT_NAME, newValue || '')\n }\n }\n },\n methods: {\n // Public methods\n focus() {\n if (!this.disabled) {\n attemptFocus(this.$refs.control)\n }\n },\n blur() {\n if (!this.disabled) {\n attemptBlur(this.$refs.control)\n }\n },\n // Private methods\n setAndClose(value) {\n this.localHMS = value\n this.$nextTick(() => {\n this.$refs.control.hide(true)\n })\n },\n onInput(hms) {\n if (this.localHMS !== hms) {\n this.localHMS = hms\n }\n },\n onContext(ctx) {\n const { isRTL, locale, value, formatted } = ctx\n this.isRTL = isRTL\n this.localLocale = locale\n this.formattedValue = formatted\n this.localHMS = value || ''\n // Re-emit the context event\n this.$emit(EVENT_NAME_CONTEXT, ctx)\n },\n onNowButton() {\n const now = new Date()\n const hours = now.getHours()\n const minutes = now.getMinutes()\n const seconds = this.showSeconds ? now.getSeconds() : 0\n const value = [hours, minutes, seconds].map(v => `00${v || ''}`.slice(-2)).join(':')\n this.setAndClose(value)\n },\n onResetButton() {\n this.setAndClose(this.resetValue)\n },\n onCloseButton() {\n this.$refs.control.hide(true)\n },\n onShow() {\n this.isVisible = true\n },\n onShown() {\n this.$nextTick(() => {\n attemptFocus(this.$refs.time)\n this.$emit(EVENT_NAME_SHOWN)\n })\n },\n onHidden() {\n this.isVisible = false\n this.$emit(EVENT_NAME_HIDDEN)\n },\n // Render function helpers\n defaultButtonFn({ isHovered, hasFocus }) {\n return this.$createElement(isHovered || hasFocus ? BIconClockFill : BIconClock, {\n attrs: { 'aria-hidden': 'true' }\n })\n }\n },\n render(h) {\n const { localHMS, disabled, readonly, $props } = this\n const placeholder = isUndefinedOrNull(this.placeholder)\n ? this.labelNoTimeSelected\n : this.placeholder\n\n // Footer buttons\n let $footer = []\n\n if (this.nowButton) {\n const label = this.labelNowButton\n $footer.push(\n h(\n BButton,\n {\n props: {\n size: 'sm',\n disabled: disabled || readonly,\n variant: this.nowButtonVariant\n },\n attrs: { 'aria-label': label || null },\n on: { click: this.onNowButton },\n key: 'now-btn'\n },\n label\n )\n )\n }\n\n if (this.resetButton) {\n if ($footer.length > 0) {\n // Add a \"spacer\" between buttons (' ')\n $footer.push(h('span', '\\u00a0'))\n }\n const label = this.labelResetButton\n $footer.push(\n h(\n BButton,\n {\n props: {\n size: 'sm',\n disabled: disabled || readonly,\n variant: this.resetButtonVariant\n },\n attrs: { 'aria-label': label || null },\n on: { click: this.onResetButton },\n key: 'reset-btn'\n },\n label\n )\n )\n }\n\n if (!this.noCloseButton) {\n // Add a \"spacer\" between buttons (' ')\n if ($footer.length > 0) {\n $footer.push(h('span', '\\u00a0'))\n }\n\n const label = this.labelCloseButton\n\n $footer.push(\n h(\n BButton,\n {\n props: {\n size: 'sm',\n disabled,\n variant: this.closeButtonVariant\n },\n attrs: { 'aria-label': label || null },\n on: { click: this.onCloseButton },\n key: 'close-btn'\n },\n label\n )\n )\n }\n\n if ($footer.length > 0) {\n $footer = [\n h(\n 'div',\n {\n staticClass: 'b-form-date-controls d-flex flex-wrap',\n class: {\n 'justify-content-between': $footer.length > 1,\n 'justify-content-end': $footer.length < 2\n }\n },\n $footer\n )\n ]\n }\n\n const $time = h(\n BTime,\n {\n staticClass: 'b-form-time-control',\n props: {\n ...pluckProps(timeProps, $props),\n value: localHMS,\n hidden: !this.isVisible\n },\n on: {\n input: this.onInput,\n context: this.onContext\n },\n ref: 'time'\n },\n $footer\n )\n\n return h(\n BVFormBtnLabelControl,\n {\n staticClass: 'b-form-timepicker',\n props: {\n ...pluckProps(formBtnLabelControlProps, $props),\n id: this.safeId(),\n value: localHMS,\n formattedValue: localHMS ? this.formattedValue : '',\n placeholder,\n rtl: this.isRTL,\n lang: this.computedLang\n },\n on: {\n show: this.onShow,\n shown: this.onShown,\n hidden: this.onHidden\n },\n scopedSlots: {\n [SLOT_NAME_BUTTON_CONTENT]:\n this.$scopedSlots[SLOT_NAME_BUTTON_CONTENT] || this.defaultButtonFn\n },\n ref: 'control'\n },\n [$time]\n )\n }\n})\n","import { BFormTimepicker } from './form-timepicker'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst FormTimepickerPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BFormTimepicker,\n BTimepicker: BFormTimepicker\n }\n})\n\nexport { FormTimepickerPlugin, BFormTimepicker }\n","import { BImg } from './img'\nimport { BImgLazy } from './img-lazy'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ImagePlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BImg,\n BImgLazy\n }\n})\n\nexport { ImagePlugin, BImg, BImgLazy }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_INPUT_GROUP_TEXT } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n tag: makeProp(PROP_TYPE_STRING, 'div')\n },\n NAME_INPUT_GROUP_TEXT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BInputGroupText = /*#__PURE__*/ Vue.extend({\n name: NAME_INPUT_GROUP_TEXT,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n props.tag,\n mergeData(data, {\n staticClass: 'input-group-text'\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_INPUT_GROUP_ADDON } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BInputGroupText } from './input-group-text'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n append: makeProp(PROP_TYPE_BOOLEAN, false),\n id: makeProp(PROP_TYPE_STRING),\n isText: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n },\n NAME_INPUT_GROUP_ADDON\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BInputGroupAddon = /*#__PURE__*/ Vue.extend({\n name: NAME_INPUT_GROUP_ADDON,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { append } = props\n\n return h(\n props.tag,\n mergeData(data, {\n class: {\n 'input-group-append': append,\n 'input-group-prepend': !append\n },\n attrs: {\n id: props.id\n }\n }),\n props.isText ? [h(BInputGroupText, children)] : children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_INPUT_GROUP_APPEND } from '../../constants/components'\nimport { omit } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { BInputGroupAddon, props as BInputGroupAddonProps } from './input-group-addon'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n omit(BInputGroupAddonProps, ['append']),\n NAME_INPUT_GROUP_APPEND\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BInputGroupAppend = /*#__PURE__*/ Vue.extend({\n name: NAME_INPUT_GROUP_APPEND,\n functional: true,\n props,\n render(h, { props, data, children }) {\n // Pass all our data down to child, and set `append` to `true`\n return h(\n BInputGroupAddon,\n mergeData(data, {\n props: { ...props, append: true }\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_INPUT_GROUP_PREPEND } from '../../constants/components'\nimport { omit } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { BInputGroupAddon, props as BInputGroupAddonProps } from './input-group-addon'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n omit(BInputGroupAddonProps, ['append']),\n NAME_INPUT_GROUP_PREPEND\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BInputGroupPrepend = /*#__PURE__*/ Vue.extend({\n name: NAME_INPUT_GROUP_PREPEND,\n functional: true,\n props,\n render(h, { props, data, children }) {\n // Pass all our data down to child, and set `append` to `true`\n return h(\n BInputGroupAddon,\n mergeData(data, {\n props: { ...props, append: false }\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_INPUT_GROUP } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_APPEND, SLOT_NAME_DEFAULT, SLOT_NAME_PREPEND } from '../../constants/slots'\nimport { htmlOrText } from '../../utils/html'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BInputGroupAppend } from './input-group-append'\nimport { BInputGroupPrepend } from './input-group-prepend'\nimport { BInputGroupText } from './input-group-text'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n append: makeProp(PROP_TYPE_STRING),\n appendHtml: makeProp(PROP_TYPE_STRING),\n id: makeProp(PROP_TYPE_STRING),\n prepend: makeProp(PROP_TYPE_STRING),\n prependHtml: makeProp(PROP_TYPE_STRING),\n size: makeProp(PROP_TYPE_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n },\n NAME_INPUT_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BInputGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_INPUT_GROUP,\n functional: true,\n props,\n render(h, { props, data, slots, scopedSlots }) {\n const { prepend, prependHtml, append, appendHtml, size } = props\n const $scopedSlots = scopedSlots || {}\n const $slots = slots()\n const slotScope = {}\n\n let $prepend = h()\n const hasPrependSlot = hasNormalizedSlot(SLOT_NAME_PREPEND, $scopedSlots, $slots)\n if (hasPrependSlot || prepend || prependHtml) {\n $prepend = h(BInputGroupPrepend, [\n hasPrependSlot\n ? normalizeSlot(SLOT_NAME_PREPEND, slotScope, $scopedSlots, $slots)\n : h(BInputGroupText, { domProps: htmlOrText(prependHtml, prepend) })\n ])\n }\n\n let $append = h()\n const hasAppendSlot = hasNormalizedSlot(SLOT_NAME_APPEND, $scopedSlots, $slots)\n if (hasAppendSlot || append || appendHtml) {\n $append = h(BInputGroupAppend, [\n hasAppendSlot\n ? normalizeSlot(SLOT_NAME_APPEND, slotScope, $scopedSlots, $slots)\n : h(BInputGroupText, { domProps: htmlOrText(appendHtml, append) })\n ])\n }\n\n return h(\n props.tag,\n mergeData(data, {\n staticClass: 'input-group',\n class: { [`input-group-${size}`]: size },\n attrs: {\n id: props.id || null,\n role: 'group'\n }\n }),\n [$prepend, normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots), $append]\n )\n }\n})\n","import { BInputGroup } from './input-group'\nimport { BInputGroupAddon } from './input-group-addon'\nimport { BInputGroupPrepend } from './input-group-prepend'\nimport { BInputGroupAppend } from './input-group-append'\nimport { BInputGroupText } from './input-group-text'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst InputGroupPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BInputGroup,\n BInputGroupAddon,\n BInputGroupPrepend,\n BInputGroupAppend,\n BInputGroupText\n }\n})\n\nexport {\n InputGroupPlugin,\n BInputGroup,\n BInputGroupAddon,\n BInputGroupPrepend,\n BInputGroupAppend,\n BInputGroupText\n}\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CONTAINER } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n // String breakpoint name new in Bootstrap v4.4.x\n fluid: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n },\n NAME_CONTAINER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BContainer = /*#__PURE__*/ Vue.extend({\n name: NAME_CONTAINER,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { fluid } = props\n\n return h(\n props.tag,\n mergeData(data, {\n class: {\n container: !(fluid || fluid === ''),\n 'container-fluid': fluid === true || fluid === '',\n // Bootstrap v4.4+ responsive containers\n [`container-${fluid}`]: fluid && fluid !== true\n }\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_JUMBOTRON } from '../../constants/components'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_STRING,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_HEADER, SLOT_NAME_LEAD } from '../../constants/slots'\nimport { htmlOrText } from '../../utils/html'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BContainer } from '../layout/container'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n bgVariant: makeProp(PROP_TYPE_STRING),\n borderVariant: makeProp(PROP_TYPE_STRING),\n containerFluid: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n fluid: makeProp(PROP_TYPE_BOOLEAN, false),\n header: makeProp(PROP_TYPE_STRING),\n headerHtml: makeProp(PROP_TYPE_STRING),\n headerLevel: makeProp(PROP_TYPE_NUMBER_STRING, 3),\n headerTag: makeProp(PROP_TYPE_STRING, 'h1'),\n lead: makeProp(PROP_TYPE_STRING),\n leadHtml: makeProp(PROP_TYPE_STRING),\n leadTag: makeProp(PROP_TYPE_STRING, 'p'),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n textVariant: makeProp(PROP_TYPE_STRING)\n },\n NAME_JUMBOTRON\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BJumbotron = /*#__PURE__*/ Vue.extend({\n name: NAME_JUMBOTRON,\n functional: true,\n props,\n render(h, { props, data, slots, scopedSlots }) {\n const { header, headerHtml, lead, leadHtml, textVariant, bgVariant, borderVariant } = props\n const $scopedSlots = scopedSlots || {}\n const $slots = slots()\n const slotScope = {}\n\n let $header = h()\n const hasHeaderSlot = hasNormalizedSlot(SLOT_NAME_HEADER, $scopedSlots, $slots)\n if (hasHeaderSlot || header || headerHtml) {\n const { headerLevel } = props\n\n $header = h(\n props.headerTag,\n {\n class: { [`display-${headerLevel}`]: headerLevel },\n domProps: hasHeaderSlot ? {} : htmlOrText(headerHtml, header)\n },\n normalizeSlot(SLOT_NAME_HEADER, slotScope, $scopedSlots, $slots)\n )\n }\n\n let $lead = h()\n const hasLeadSlot = hasNormalizedSlot(SLOT_NAME_LEAD, $scopedSlots, $slots)\n if (hasLeadSlot || lead || leadHtml) {\n $lead = h(\n props.leadTag,\n {\n staticClass: 'lead',\n domProps: hasLeadSlot ? {} : htmlOrText(leadHtml, lead)\n },\n normalizeSlot(SLOT_NAME_LEAD, slotScope, $scopedSlots, $slots)\n )\n }\n\n let $children = [\n $header,\n $lead,\n normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots)\n ]\n\n // If fluid, wrap content in a container\n if (props.fluid) {\n $children = [h(BContainer, { props: { fluid: props.containerFluid } }, $children)]\n }\n\n return h(\n props.tag,\n mergeData(data, {\n staticClass: 'jumbotron',\n class: {\n 'jumbotron-fluid': props.fluid,\n [`text-${textVariant}`]: textVariant,\n [`bg-${bgVariant}`]: bgVariant,\n [`border-${borderVariant}`]: borderVariant,\n border: borderVariant\n }\n }),\n $children\n )\n }\n})\n","import { BJumbotron } from './jumbotron'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst JumbotronPlugin = /*#__PURE__*/ pluginFactory({\n components: { BJumbotron }\n})\n\nexport { JumbotronPlugin, BJumbotron }\n","import { mergeData } from '../../vue'\nimport { NAME_ROW } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { getBreakpointsUpCached } from '../../utils/config'\nimport { identity } from '../../utils/identity'\nimport { memoize } from '../../utils/memoize'\nimport { create, keys, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, suffixPropName } from '../../utils/props'\nimport { lowerCase, toString, trim } from '../../utils/string'\n\n// --- Constants ---\n\nconst COMMON_ALIGNMENT = ['start', 'end', 'center']\n\n// --- Helper methods ---\n\n// Compute a `row-cols-{breakpoint}-{cols}` class name\n// Memoized function for better performance on generating class names\nconst computeRowColsClass = memoize((breakpoint, cols) => {\n cols = trim(toString(cols))\n return cols ? lowerCase(['row-cols', breakpoint, cols].filter(identity).join('-')) : null\n})\n\n// Get the breakpoint name from the `rowCols` prop name\n// Memoized function for better performance on extracting breakpoint names\nconst computeRowColsBreakpoint = memoize(prop => lowerCase(prop.replace('cols', '')))\n\n// Cached copy of the `row-cols` breakpoint prop names\n// Will be populated when the props are generated\nlet rowColsPropList = []\n\n// --- Props ---\n\n// Prop generator for lazy generation of props\nexport const generateProps = () => {\n // i.e. 'row-cols-2', 'row-cols-md-4', 'row-cols-xl-6', ...\n const rowColsProps = getBreakpointsUpCached().reduce((props, breakpoint) => {\n props[suffixPropName(breakpoint, 'cols')] = makeProp(PROP_TYPE_NUMBER_STRING)\n return props\n }, create(null))\n\n // Cache the row-cols prop names\n rowColsPropList = keys(rowColsProps)\n\n // Return the generated props\n return makePropsConfigurable(\n sortKeys({\n ...rowColsProps,\n alignContent: makeProp(PROP_TYPE_STRING, null, value => {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'between', 'around', 'stretch'), value)\n }),\n alignH: makeProp(PROP_TYPE_STRING, null, value => {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'between', 'around'), value)\n }),\n alignV: makeProp(PROP_TYPE_STRING, null, value => {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'baseline', 'stretch'), value)\n }),\n noGutters: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n }),\n NAME_ROW\n )\n}\n\n// --- Main component ---\n\n// We do not use `Vue.extend()` here as that would evaluate the props\n// immediately, which we do not want to happen\n// @vue/component\nexport const BRow = {\n name: NAME_ROW,\n functional: true,\n get props() {\n // Allow props to be lazy evaled on first access and\n // then they become a non-getter afterwards\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get#Smart_self-overwriting_lazy_getters\n delete this.props\n this.props = generateProps()\n return this.props\n },\n render(h, { props, data, children }) {\n const { alignV, alignH, alignContent } = props\n\n // Loop through row-cols breakpoint props and generate the classes\n const classList = []\n rowColsPropList.forEach(prop => {\n const c = computeRowColsClass(computeRowColsBreakpoint(prop), props[prop])\n // If a class is returned, push it onto the array\n if (c) {\n classList.push(c)\n }\n })\n\n classList.push({\n 'no-gutters': props.noGutters,\n [`align-items-${alignV}`]: alignV,\n [`justify-content-${alignH}`]: alignH,\n [`align-content-${alignContent}`]: alignContent\n })\n\n return h(\n props.tag,\n mergeData(data, {\n staticClass: 'row',\n class: classList\n }),\n children\n )\n }\n}\n","import { BContainer } from './container'\nimport { BRow } from './row'\nimport { BCol } from './col'\nimport { BFormRow } from './form-row'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst LayoutPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BContainer,\n BRow,\n BCol,\n BFormRow\n }\n})\n\nexport { LayoutPlugin, BContainer, BRow, BCol, BFormRow }\n","import { BLink } from './link'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst LinkPlugin = /*#__PURE__*/ pluginFactory({\n components: { BLink }\n})\n\nexport { LinkPlugin, BLink }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_LIST_GROUP } from '../../constants/components'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { isString } from '../../utils/inspect'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n flush: makeProp(PROP_TYPE_BOOLEAN, false),\n horizontal: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n },\n NAME_LIST_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BListGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_LIST_GROUP,\n functional: true,\n props,\n render(h, { props, data, children }) {\n let horizontal = props.horizontal === '' ? true : props.horizontal\n horizontal = props.flush ? false : horizontal\n const componentData = {\n staticClass: 'list-group',\n class: {\n 'list-group-flush': props.flush,\n 'list-group-horizontal': horizontal === true,\n [`list-group-horizontal-${horizontal}`]: isString(horizontal)\n }\n }\n return h(props.tag, mergeData(data, componentData), children)\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_LIST_GROUP_ITEM } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { arrayIncludes } from '../../utils/array'\nimport { isTag } from '../../utils/dom'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Constants ---\n\nconst actionTags = ['a', 'router-link', 'button', 'b-link']\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\ndelete linkProps.href.default\ndelete linkProps.to.default\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...linkProps,\n action: makeProp(PROP_TYPE_BOOLEAN, false),\n button: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n variant: makeProp(PROP_TYPE_STRING)\n }),\n NAME_LIST_GROUP_ITEM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BListGroupItem = /*#__PURE__*/ Vue.extend({\n name: NAME_LIST_GROUP_ITEM,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { button, variant, active, disabled } = props\n const link = isLink(props)\n const tag = button ? 'button' : !link ? props.tag : BLink\n const action = !!(props.action || link || button || arrayIncludes(actionTags, props.tag))\n\n const attrs = {}\n let itemProps = {}\n if (isTag(tag, 'button')) {\n if (!data.attrs || !data.attrs.type) {\n // Add a type for button is one not provided in passed attributes\n attrs.type = 'button'\n }\n if (props.disabled) {\n // Set disabled attribute if button and disabled\n attrs.disabled = true\n }\n } else {\n itemProps = pluckProps(linkProps, props)\n }\n\n return h(\n tag,\n mergeData(data, {\n attrs,\n props: itemProps,\n staticClass: 'list-group-item',\n class: {\n [`list-group-item-${variant}`]: variant,\n 'list-group-item-action': action,\n active,\n disabled\n }\n }),\n children\n )\n }\n})\n","import { BListGroup } from './list-group'\nimport { BListGroupItem } from './list-group-item'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ListGroupPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BListGroup,\n BListGroupItem\n }\n})\n\nexport { ListGroupPlugin, BListGroup, BListGroupItem }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_MEDIA_ASIDE } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n right: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n verticalAlign: makeProp(PROP_TYPE_STRING, 'top')\n },\n NAME_MEDIA_ASIDE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BMediaAside = /*#__PURE__*/ Vue.extend({\n name: NAME_MEDIA_ASIDE,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { verticalAlign } = props\n const align =\n verticalAlign === 'top'\n ? 'start'\n : verticalAlign === 'bottom'\n ? 'end'\n : /* istanbul ignore next */ verticalAlign\n\n return h(\n props.tag,\n mergeData(data, {\n staticClass: 'media-aside',\n class: {\n 'media-aside-right': props.right,\n [`align-self-${align}`]: align\n }\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_MEDIA_BODY } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n tag: makeProp(PROP_TYPE_STRING, 'div')\n },\n NAME_MEDIA_BODY\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BMediaBody = /*#__PURE__*/ Vue.extend({\n name: NAME_MEDIA_BODY,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(props.tag, mergeData(data, { staticClass: 'media-body' }), children)\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_MEDIA } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_ASIDE, SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { normalizeSlot } from '../../utils/normalize-slot'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BMediaAside } from './media-aside'\nimport { BMediaBody } from './media-body'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n noBody: makeProp(PROP_TYPE_BOOLEAN, false),\n rightAlign: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n verticalAlign: makeProp(PROP_TYPE_STRING, 'top')\n },\n NAME_MEDIA\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BMedia = /*#__PURE__*/ Vue.extend({\n name: NAME_MEDIA,\n functional: true,\n props,\n render(h, { props, data, slots, scopedSlots, children }) {\n const { noBody, rightAlign, verticalAlign } = props\n const $children = noBody ? children : []\n\n if (!noBody) {\n const slotScope = {}\n const $slots = slots()\n const $scopedSlots = scopedSlots || {}\n\n $children.push(\n h(BMediaBody, normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots))\n )\n\n const $aside = normalizeSlot(SLOT_NAME_ASIDE, slotScope, $scopedSlots, $slots)\n if ($aside) {\n $children[rightAlign ? 'push' : 'unshift'](\n h(BMediaAside, { props: { right: rightAlign, verticalAlign } }, $aside)\n )\n }\n }\n\n return h(props.tag, mergeData(data, { staticClass: 'media' }), $children)\n }\n})\n","import { BMedia } from './media'\nimport { BMediaAside } from './media-aside'\nimport { BMediaBody } from './media-body'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst MediaPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BMedia,\n BMediaAside,\n BMediaBody\n }\n})\n\nexport { MediaPlugin, BMedia, BMediaAside, BMediaBody }\n","import { Vue } from '../vue'\nimport { IS_BROWSER } from '../constants/env'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events'\nimport { arrayIncludes } from '../utils/array'\nimport { eventOn, eventOff } from '../utils/events'\nimport { keys } from '../utils/object'\n\n// --- Constants ---\n\nconst PROP = '$_documentListeners'\n\n// --- Mixin ---\n\n// @vue/component\nexport const listenOnDocumentMixin = Vue.extend({\n created() {\n // Define non-reactive property\n // Object of arrays, keyed by event name,\n // where value is an array of callbacks\n this[PROP] = {}\n },\n beforeDestroy() {\n // Unregister all registered listeners\n keys(this[PROP] || {}).forEach(event => {\n this[PROP][event].forEach(callback => {\n this.listenOffDocument(event, callback)\n })\n })\n\n this[PROP] = null\n },\n methods: {\n registerDocumentListener(event, callback) {\n if (this[PROP]) {\n this[PROP][event] = this[PROP][event] || []\n if (!arrayIncludes(this[PROP][event], callback)) {\n this[PROP][event].push(callback)\n }\n }\n },\n unregisterDocumentListener(event, callback) {\n if (this[PROP] && this[PROP][event]) {\n this[PROP][event] = this[PROP][event].filter(cb => cb !== callback)\n }\n },\n\n listenDocument(on, event, callback) {\n on ? this.listenOnDocument(event, callback) : this.listenOffDocument(event, callback)\n },\n listenOnDocument(event, callback) {\n if (IS_BROWSER) {\n eventOn(document, event, callback, EVENT_OPTIONS_NO_CAPTURE)\n this.registerDocumentListener(event, callback)\n }\n },\n listenOffDocument(event, callback) {\n if (IS_BROWSER) {\n eventOff(document, event, callback, EVENT_OPTIONS_NO_CAPTURE)\n }\n\n this.unregisterDocumentListener(event, callback)\n }\n }\n})\n","import { Vue } from '../vue'\nimport { IS_BROWSER } from '../constants/env'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events'\nimport { arrayIncludes } from '../utils/array'\nimport { eventOn, eventOff } from '../utils/events'\nimport { keys } from '../utils/object'\n\n// --- Constants ---\n\nconst PROP = '$_windowListeners'\n\n// --- Mixin ---\n\n// @vue/component\nexport const listenOnWindowMixin = Vue.extend({\n created() {\n // Define non-reactive property\n // Object of arrays, keyed by event name,\n // where value is an array of callbacks\n this[PROP] = {}\n },\n beforeDestroy() {\n // Unregister all registered listeners\n keys(this[PROP] || {}).forEach(event => {\n this[PROP][event].forEach(callback => {\n this.listenOffWindow(event, callback)\n })\n })\n\n this[PROP] = null\n },\n methods: {\n registerWindowListener(event, callback) {\n if (this[PROP]) {\n this[PROP][event] = this[PROP][event] || []\n if (!arrayIncludes(this[PROP][event], callback)) {\n this[PROP][event].push(callback)\n }\n }\n },\n unregisterWindowListener(event, callback) {\n if (this[PROP] && this[PROP][event]) {\n this[PROP][event] = this[PROP][event].filter(cb => cb !== callback)\n }\n },\n\n listenWindow(on, event, callback) {\n on ? this.listenOnWindow(event, callback) : this.listenOffWindow(event, callback)\n },\n listenOnWindow(event, callback) {\n if (IS_BROWSER) {\n eventOn(window, event, callback, EVENT_OPTIONS_NO_CAPTURE)\n this.registerWindowListener(event, callback)\n }\n },\n listenOffWindow(event, callback) {\n if (IS_BROWSER) {\n eventOff(window, event, callback, EVENT_OPTIONS_NO_CAPTURE)\n }\n\n this.unregisterWindowListener(event, callback)\n }\n }\n})\n","// This method returns a component's scoped style attribute name: `data-v-xxxxxxx`\n// The `_scopeId` options property is added by vue-loader when using scoped styles\n// and will be `undefined` if no scoped styles are in use\nexport const getScopeId = (vm, defaultValue = null) => {\n return vm ? vm.$options._scopeId || defaultValue : defaultValue\n}\n","import { Vue } from '../vue'\nimport { getScopeId } from '../utils/get-scope-id'\n\n// @vue/component\nexport const scopedStyleMixin = Vue.extend({\n computed: {\n scopedStyleAttrs() {\n const scopeId = getScopeId(this.$parent)\n return scopeId ? { [scopeId]: '' } : {}\n }\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TRANSPORTER, NAME_TRANSPORTER_TARGET } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport {\n PROP_TYPE_ARRAY_FUNCTION,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { HTMLElement } from '../../constants/safe-types'\nimport { concat } from '../../utils/array'\nimport { removeNode, select } from '../../utils/dom'\nimport { identity } from '../../utils/identity'\nimport { isFunction, isString } from '../../utils/inspect'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { makeProp } from '../../utils/props'\n\n// --- Helper components ---\n\n// BVTransporter/BVTransporterTarget:\n//\n// Single root node portaling of content, which retains parent/child hierarchy\n// Unlike Portal-Vue where portaled content is no longer a descendent of its\n// intended parent components\n//\n// Private components for use by Tooltips, Popovers and Modals\n//\n// Based on vue-simple-portal\n// https://github.com/LinusBorg/vue-simple-portal\n\n// Transporter target used by BVTransporter\n// Supports only a single root element\n// @vue/component\nconst BVTransporterTarget = /*#__PURE__*/ Vue.extend({\n // As an abstract component, it doesn't appear in the $parent chain of\n // components, which means the next parent of any component rendered inside\n // of this one will be the parent from which is was portal'd\n abstract: true,\n name: NAME_TRANSPORTER_TARGET,\n props: {\n // Even though we only support a single root element,\n // VNodes are always passed as an array\n nodes: makeProp(PROP_TYPE_ARRAY_FUNCTION)\n },\n data: vm => {\n return {\n updatedNodes: vm.nodes\n }\n },\n destroyed() {\n removeNode(this.$el)\n },\n render(h) {\n const { updatedNodes } = this\n\n let $nodes = isFunction(updatedNodes) ? updatedNodes({}) : updatedNodes\n $nodes = concat($nodes).filter(identity)\n if ($nodes && $nodes.length > 0 && !$nodes[0].text) {\n return $nodes[0]\n }\n\n /* istanbul ignore next */\n return h()\n }\n})\n\n// --- Props ---\n\nexport const props = {\n // String: CSS selector,\n // HTMLElement: Element reference\n // Mainly needed for tooltips/popovers inside modals\n container: makeProp([HTMLElement, PROP_TYPE_STRING], 'body'),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n // This should be set to match the root element type\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BVTransporter = /*#__PURE__*/ Vue.extend({\n name: NAME_TRANSPORTER,\n mixins: [normalizeSlotMixin],\n props,\n watch: {\n disabled: {\n immediate: true,\n handler(disabled) {\n disabled ? this.unmountTarget() : this.$nextTick(this.mountTarget)\n }\n }\n },\n created() {\n // Create private non-reactive props\n this.$_defaultFn = null\n this.$_target = null\n },\n beforeMount() {\n this.mountTarget()\n },\n updated() {\n // We need to make sure that all children have completed updating\n // before rendering in the target\n // `vue-simple-portal` has the this in a `$nextTick()`,\n // while `portal-vue` doesn't\n // Just trying to see if the `$nextTick()` delay is required or not\n // Since all slots in Vue 2.6.x are always functions\n this.updateTarget()\n },\n beforeDestroy() {\n this.unmountTarget()\n this.$_defaultFn = null\n },\n methods: {\n // Get the element which the target should be appended to\n getContainer() {\n /* istanbul ignore else */\n if (IS_BROWSER) {\n const { container } = this\n return isString(container) ? select(container) : container\n } else {\n return null\n }\n },\n // Mount the target\n mountTarget() {\n if (!this.$_target) {\n const $container = this.getContainer()\n if ($container) {\n const $el = document.createElement('div')\n $container.appendChild($el)\n this.$_target = new BVTransporterTarget({\n el: $el,\n parent: this,\n propsData: {\n // Initial nodes to be rendered\n nodes: concat(this.normalizeSlot())\n }\n })\n }\n }\n },\n // Update the content of the target\n updateTarget() {\n if (IS_BROWSER && this.$_target) {\n const defaultFn = this.$scopedSlots.default\n if (!this.disabled) {\n /* istanbul ignore else: only applicable in Vue 2.5.x */\n if (defaultFn && this.$_defaultFn !== defaultFn) {\n // We only update the target component if the scoped slot\n // function is a fresh one. The new slot syntax (since Vue 2.6)\n // can cache unchanged slot functions and we want to respect that here\n this.$_target.updatedNodes = defaultFn\n } else if (!defaultFn) {\n // We also need to be back compatible with non-scoped default slot (i.e. 2.5.x)\n this.$_target.updatedNodes = this.$slots.default\n }\n }\n // Update the scoped slot function cache\n this.$_defaultFn = defaultFn\n }\n },\n // Unmount the target\n unmountTarget() {\n this.$_target && this.$_target.$destroy()\n this.$_target = null\n }\n },\n render(h) {\n // This component has no root element, so only a single VNode is allowed\n if (this.disabled) {\n const $nodes = concat(this.normalizeSlot()).filter(identity)\n if ($nodes.length > 0 && !$nodes[0].text) {\n return $nodes[0]\n }\n }\n return h()\n }\n})\n","import { BvEvent } from '../../../utils/bv-event.class'\nimport { defineProperties, readonlyDescriptor } from '../../../utils/object'\n\nclass BvModalEvent extends BvEvent {\n constructor(type, eventInit = {}) {\n super(type, eventInit)\n // Freeze our new props as readonly, but leave them enumerable\n defineProperties(this, {\n trigger: readonlyDescriptor()\n })\n }\n\n static get Defaults() {\n return {\n ...super.Defaults,\n trigger: null\n }\n }\n}\n\n// Named exports\nexport { BvModalEvent }\n","/**\n * Private ModalManager helper\n * Handles controlling modal stacking zIndexes and body adjustments/classes\n */\n\nimport { Vue } from '../../../vue'\nimport { IS_BROWSER } from '../../../constants/env'\nimport {\n addClass,\n getAttr,\n getBCR,\n getCS,\n getStyle,\n hasAttr,\n removeAttr,\n removeClass,\n requestAF,\n selectAll,\n setAttr,\n setStyle\n} from '../../../utils/dom'\nimport { isNull } from '../../../utils/inspect'\nimport { toFloat, toInteger } from '../../../utils/number'\n\n// --- Constants ---\n\n// Default modal backdrop z-index\nconst DEFAULT_ZINDEX = 1040\n\n// Selectors for padding/margin adjustments\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\nconst SELECTOR_NAVBAR_TOGGLER = '.navbar-toggler'\n\n// --- Main component ---\n\n// @vue/component\nconst ModalManager = /*#__PURE__*/ Vue.extend({\n data() {\n return {\n modals: [],\n baseZIndex: null,\n scrollbarWidth: null,\n isBodyOverflowing: false\n }\n },\n computed: {\n modalCount() {\n return this.modals.length\n },\n modalsAreOpen() {\n return this.modalCount > 0\n }\n },\n watch: {\n modalCount(newCount, oldCount) {\n if (IS_BROWSER) {\n this.getScrollbarWidth()\n if (newCount > 0 && oldCount === 0) {\n // Transitioning to modal(s) open\n this.checkScrollbar()\n this.setScrollbar()\n addClass(document.body, 'modal-open')\n } else if (newCount === 0 && oldCount > 0) {\n // Transitioning to modal(s) closed\n this.resetScrollbar()\n removeClass(document.body, 'modal-open')\n }\n setAttr(document.body, 'data-modal-open-count', String(newCount))\n }\n },\n modals(newValue) {\n this.checkScrollbar()\n requestAF(() => {\n this.updateModals(newValue || [])\n })\n }\n },\n methods: {\n // Public methods\n registerModal(modal) {\n // Register the modal if not already registered\n if (modal && this.modals.indexOf(modal) === -1) {\n this.modals.push(modal)\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 (IS_BROWSER && isNull(this.baseZIndex)) {\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 (IS_BROWSER && isNull(this.scrollbarWidth)) {\n // Create a temporary `div.measure-scrollbar` to get computed z-index\n const div = document.createElement('div')\n addClass(div, 'modal-scrollbar-measure')\n document.body.appendChild(div)\n this.scrollbarWidth = getBCR(div).width - div.clientWidth\n document.body.removeChild(div)\n }\n return this.scrollbarWidth || 0\n },\n // Private methods\n updateModals(modals) {\n const baseZIndex = this.getBaseZIndex()\n const scrollbarWidth = this.getScrollbarWidth()\n modals.forEach((modal, index) => {\n // We update data values on each modal\n modal.zIndex = baseZIndex + index\n modal.scrollbarWidth = scrollbarWidth\n modal.isTop = index === this.modals.length - 1\n modal.isBodyOverflowing = this.isBodyOverflowing\n })\n },\n resetModal(modal) {\n if (modal) {\n modal.zIndex = this.getBaseZIndex()\n modal.isTop = true\n modal.isBodyOverflowing = false\n }\n },\n checkScrollbar() {\n // Determine if the body element is overflowing\n const { left, right } = getBCR(document.body)\n this.isBodyOverflowing = left + right < window.innerWidth\n },\n setScrollbar() {\n const body = document.body\n // Storage place to cache changes to margins and padding\n // Note: This assumes the following element types are not added to the\n // document after the modal has opened.\n body._paddingChangedForModal = body._paddingChangedForModal || []\n body._marginChangedForModal = body._marginChangedForModal || []\n if (this.isBodyOverflowing) {\n const scrollbarWidth = this.scrollbarWidth\n // Adjust fixed content padding\n /* istanbul ignore next: difficult to test in JSDOM */\n selectAll(SELECTOR_FIXED_CONTENT).forEach(el => {\n const actualPadding = getStyle(el, 'paddingRight') || ''\n setAttr(el, 'data-padding-right', actualPadding)\n setStyle(el, 'paddingRight', `${toFloat(getCS(el).paddingRight, 0) + scrollbarWidth}px`)\n body._paddingChangedForModal.push(el)\n })\n // Adjust sticky content margin\n /* istanbul ignore next: difficult to test in JSDOM */\n selectAll(SELECTOR_STICKY_CONTENT).forEach(el => /* istanbul ignore next */ {\n const actualMargin = getStyle(el, 'marginRight') || ''\n setAttr(el, 'data-margin-right', actualMargin)\n setStyle(el, 'marginRight', `${toFloat(getCS(el).marginRight, 0) - scrollbarWidth}px`)\n body._marginChangedForModal.push(el)\n })\n // Adjust <b-navbar-toggler> margin\n /* istanbul ignore next: difficult to test in JSDOM */\n selectAll(SELECTOR_NAVBAR_TOGGLER).forEach(el => /* istanbul ignore next */ {\n const actualMargin = getStyle(el, 'marginRight') || ''\n setAttr(el, 'data-margin-right', actualMargin)\n setStyle(el, 'marginRight', `${toFloat(getCS(el).marginRight, 0) + scrollbarWidth}px`)\n body._marginChangedForModal.push(el)\n })\n // Adjust body padding\n const actualPadding = getStyle(body, 'paddingRight') || ''\n setAttr(body, 'data-padding-right', actualPadding)\n setStyle(body, 'paddingRight', `${toFloat(getCS(body).paddingRight, 0) + scrollbarWidth}px`)\n }\n },\n resetScrollbar() {\n const body = document.body\n if (body._paddingChangedForModal) {\n // Restore fixed content padding\n body._paddingChangedForModal.forEach(el => {\n /* istanbul ignore next: difficult to test in JSDOM */\n if (hasAttr(el, 'data-padding-right')) {\n setStyle(el, 'paddingRight', getAttr(el, 'data-padding-right') || '')\n removeAttr(el, 'data-padding-right')\n }\n })\n }\n if (body._marginChangedForModal) {\n // Restore sticky content and navbar-toggler margin\n body._marginChangedForModal.forEach(el => {\n /* istanbul ignore next: difficult to test in JSDOM */\n if (hasAttr(el, 'data-margin-right')) {\n setStyle(el, 'marginRight', getAttr(el, 'data-margin-right') || '')\n removeAttr(el, 'data-margin-right')\n }\n })\n }\n body._paddingChangedForModal = null\n body._marginChangedForModal = null\n // Restore body padding\n if (hasAttr(body, 'data-padding-right')) {\n setStyle(body, 'paddingRight', getAttr(body, 'data-padding-right') || '')\n removeAttr(body, 'data-padding-right')\n }\n }\n }\n})\n\n// Create and export our modal manager instance\nexport const modalManager = new ModalManager()\n","import { COMPONENT_UID_KEY, Vue } from '../../vue'\nimport { NAME_MODAL } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport {\n EVENT_NAME_CANCEL,\n EVENT_NAME_CHANGE,\n EVENT_NAME_CLOSE,\n EVENT_NAME_HIDDEN,\n EVENT_NAME_HIDE,\n EVENT_NAME_OK,\n EVENT_NAME_SHOW,\n EVENT_NAME_SHOWN,\n EVENT_NAME_TOGGLE,\n EVENT_OPTIONS_NO_CAPTURE\n} from '../../constants/events'\nimport { CODE_ESC } from '../../constants/key-codes'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_ARRAY_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_OBJECT,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { HTMLElement } from '../../constants/safe-types'\nimport {\n SLOT_NAME_DEFAULT,\n SLOT_NAME_MODAL_BACKDROP,\n SLOT_NAME_MODAL_CANCEL,\n SLOT_NAME_MODAL_FOOTER,\n SLOT_NAME_MODAL_HEADER,\n SLOT_NAME_MODAL_HEADER_CLOSE,\n SLOT_NAME_MODAL_OK,\n SLOT_NAME_MODAL_TITLE\n} from '../../constants/slots'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport {\n attemptFocus,\n closest,\n contains,\n getActiveElement,\n getTabables,\n requestAF,\n select\n} from '../../utils/dom'\nimport { getRootActionEventName, getRootEventName, eventOn, eventOff } from '../../utils/events'\nimport { htmlOrText } from '../../utils/html'\nimport { identity } from '../../utils/identity'\nimport { isString, isUndefinedOrNull } from '../../utils/inspect'\nimport { makeModelMixin } from '../../utils/model'\nimport { sortKeys } from '../../utils/object'\nimport { observeDom } from '../../utils/observe-dom'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { listenOnDocumentMixin } from '../../mixins/listen-on-document'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { listenOnWindowMixin } from '../../mixins/listen-on-window'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { scopedStyleMixin } from '../../mixins/scoped-style'\nimport { BButton } from '../button/button'\nimport { BButtonClose } from '../button/button-close'\nimport { BVTransition } from '../transition/bv-transition'\nimport { BVTransporter } from '../transporter/transporter'\nimport { BvModalEvent } from './helpers/bv-modal-event.class'\nimport { modalManager } from './helpers/modal-manager'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('visible', {\n type: PROP_TYPE_BOOLEAN,\n defaultValue: false,\n event: EVENT_NAME_CHANGE\n})\n\nconst TRIGGER_BACKDROP = 'backdrop'\nconst TRIGGER_ESC = 'esc'\nconst TRIGGER_FORCE = 'FORCE'\nconst TRIGGER_TOGGLE = 'toggle'\n\nconst BUTTON_CANCEL = 'cancel'\n// TODO: This should be renamed to 'close'\nconst BUTTON_CLOSE = 'headerclose'\nconst BUTTON_OK = 'ok'\n\nconst BUTTONS = [BUTTON_CANCEL, BUTTON_CLOSE, BUTTON_OK]\n\n// `ObserveDom` config to detect changes in modal content\n// so that we can adjust the modal padding if needed\nconst OBSERVER_CONFIG = {\n subtree: true,\n childList: true,\n characterData: true,\n attributes: true,\n attributeFilter: ['style', 'class']\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ariaLabel: makeProp(PROP_TYPE_STRING),\n autoFocusButton: makeProp(\n PROP_TYPE_STRING,\n null,\n /* istanbul ignore next */ value => {\n return isUndefinedOrNull(value) || arrayIncludes(BUTTONS, value)\n }\n ),\n bodyBgVariant: makeProp(PROP_TYPE_STRING),\n bodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n bodyTextVariant: makeProp(PROP_TYPE_STRING),\n busy: makeProp(PROP_TYPE_BOOLEAN, false),\n buttonSize: makeProp(PROP_TYPE_STRING),\n cancelDisabled: makeProp(PROP_TYPE_BOOLEAN, false),\n cancelTitle: makeProp(PROP_TYPE_STRING, 'Cancel'),\n cancelTitleHtml: makeProp(PROP_TYPE_STRING),\n cancelVariant: makeProp(PROP_TYPE_STRING, 'secondary'),\n centered: makeProp(PROP_TYPE_BOOLEAN, false),\n contentClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n dialogClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n footerBgVariant: makeProp(PROP_TYPE_STRING),\n footerBorderVariant: makeProp(PROP_TYPE_STRING),\n footerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n footerTag: makeProp(PROP_TYPE_STRING, 'footer'),\n footerTextVariant: makeProp(PROP_TYPE_STRING),\n headerBgVariant: makeProp(PROP_TYPE_STRING),\n headerBorderVariant: makeProp(PROP_TYPE_STRING),\n headerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n headerCloseContent: makeProp(PROP_TYPE_STRING, '×'),\n headerCloseLabel: makeProp(PROP_TYPE_STRING, 'Close'),\n headerCloseVariant: makeProp(PROP_TYPE_STRING),\n headerTag: makeProp(PROP_TYPE_STRING, 'header'),\n headerTextVariant: makeProp(PROP_TYPE_STRING),\n // TODO: Rename to `noBackdrop` and deprecate `hideBackdrop`\n hideBackdrop: makeProp(PROP_TYPE_BOOLEAN, false),\n // TODO: Rename to `noFooter` and deprecate `hideFooter`\n hideFooter: makeProp(PROP_TYPE_BOOLEAN, false),\n // TODO: Rename to `noHeader` and deprecate `hideHeader`\n hideHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n // TODO: Rename to `noHeaderClose` and deprecate `hideHeaderClose`\n hideHeaderClose: makeProp(PROP_TYPE_BOOLEAN, false),\n ignoreEnforceFocusSelector: makeProp(PROP_TYPE_ARRAY_STRING),\n lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n modalClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n noCloseOnBackdrop: makeProp(PROP_TYPE_BOOLEAN, false),\n noCloseOnEsc: makeProp(PROP_TYPE_BOOLEAN, false),\n noEnforceFocus: makeProp(PROP_TYPE_BOOLEAN, false),\n noFade: makeProp(PROP_TYPE_BOOLEAN, false),\n noStacking: makeProp(PROP_TYPE_BOOLEAN, false),\n okDisabled: makeProp(PROP_TYPE_BOOLEAN, false),\n okOnly: makeProp(PROP_TYPE_BOOLEAN, false),\n okTitle: makeProp(PROP_TYPE_STRING, 'OK'),\n okTitleHtml: makeProp(PROP_TYPE_STRING),\n okVariant: makeProp(PROP_TYPE_STRING, 'primary'),\n // HTML Element, CSS selector string or Vue component instance\n returnFocus: makeProp([HTMLElement, PROP_TYPE_OBJECT, PROP_TYPE_STRING]),\n scrollable: makeProp(PROP_TYPE_BOOLEAN, false),\n size: makeProp(PROP_TYPE_STRING, 'md'),\n static: makeProp(PROP_TYPE_BOOLEAN, false),\n title: makeProp(PROP_TYPE_STRING),\n titleClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n titleHtml: makeProp(PROP_TYPE_STRING),\n titleSrOnly: makeProp(PROP_TYPE_BOOLEAN, false),\n titleTag: makeProp(PROP_TYPE_STRING, 'h5')\n }),\n NAME_MODAL\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BModal = /*#__PURE__*/ Vue.extend({\n name: NAME_MODAL,\n mixins: [\n attrsMixin,\n idMixin,\n modelMixin,\n listenOnDocumentMixin,\n listenOnRootMixin,\n listenOnWindowMixin,\n normalizeSlotMixin,\n scopedStyleMixin\n ],\n inheritAttrs: false,\n props,\n data() {\n return {\n isHidden: true, // If modal should not be in document\n isVisible: false, // Controls modal visible state\n isTransitioning: false, // Used for style control\n isShow: false, // Used for style control\n isBlock: false, // Used for style control\n isOpening: false, // To signal that the modal is in the process of opening\n isClosing: false, // To signal that the modal is in the process of closing\n ignoreBackdropClick: false, // Used to signify if click out listener should ignore the click\n isModalOverflowing: false,\n // The following items are controlled by the modalManager instance\n scrollbarWidth: 0,\n zIndex: modalManager.getBaseZIndex(),\n isTop: true,\n isBodyOverflowing: false\n }\n },\n computed: {\n modalId() {\n return this.safeId()\n },\n modalOuterId() {\n return this.safeId('__BV_modal_outer_')\n },\n modalHeaderId() {\n return this.safeId('__BV_modal_header_')\n },\n modalBodyId() {\n return this.safeId('__BV_modal_body_')\n },\n modalTitleId() {\n return this.safeId('__BV_modal_title_')\n },\n modalContentId() {\n return this.safeId('__BV_modal_content_')\n },\n modalFooterId() {\n return this.safeId('__BV_modal_footer_')\n },\n modalBackdropId() {\n return this.safeId('__BV_modal_backdrop_')\n },\n modalClasses() {\n return [\n {\n fade: !this.noFade,\n show: this.isShow\n },\n this.modalClass\n ]\n },\n modalStyles() {\n const sbWidth = `${this.scrollbarWidth}px`\n return {\n paddingLeft: !this.isBodyOverflowing && this.isModalOverflowing ? sbWidth : '',\n paddingRight: this.isBodyOverflowing && !this.isModalOverflowing ? sbWidth : '',\n // Needed to fix issue https://github.com/bootstrap-vue/bootstrap-vue/issues/3457\n // Even though we are using v-show, we must ensure 'none' is restored in the styles\n display: this.isBlock ? 'block' : 'none'\n }\n },\n dialogClasses() {\n return [\n {\n [`modal-${this.size}`]: this.size,\n 'modal-dialog-centered': this.centered,\n 'modal-dialog-scrollable': this.scrollable\n },\n this.dialogClass\n ]\n },\n headerClasses() {\n return [\n {\n [`bg-${this.headerBgVariant}`]: this.headerBgVariant,\n [`text-${this.headerTextVariant}`]: this.headerTextVariant,\n [`border-${this.headerBorderVariant}`]: this.headerBorderVariant\n },\n this.headerClass\n ]\n },\n titleClasses() {\n return [{ 'sr-only': this.titleSrOnly }, this.titleClass]\n },\n bodyClasses() {\n return [\n {\n [`bg-${this.bodyBgVariant}`]: this.bodyBgVariant,\n [`text-${this.bodyTextVariant}`]: this.bodyTextVariant\n },\n this.bodyClass\n ]\n },\n footerClasses() {\n return [\n {\n [`bg-${this.footerBgVariant}`]: this.footerBgVariant,\n [`text-${this.footerTextVariant}`]: this.footerTextVariant,\n [`border-${this.footerBorderVariant}`]: this.footerBorderVariant\n },\n this.footerClass\n ]\n },\n modalOuterStyle() {\n // Styles needed for proper stacking of modals\n return {\n position: 'absolute',\n zIndex: this.zIndex\n }\n },\n slotScope() {\n return {\n cancel: this.onCancel,\n close: this.onClose,\n hide: this.hide,\n ok: this.onOk,\n visible: this.isVisible\n }\n },\n computeIgnoreEnforceFocusSelector() {\n // Normalize to an single selector with selectors separated by `,`\n return concat(this.ignoreEnforceFocusSelector)\n .filter(identity)\n .join(',')\n .trim()\n },\n computedAttrs() {\n // If the parent has a scoped style attribute, and the modal\n // is portalled, add the scoped attribute to the modal wrapper\n const scopedStyleAttrs = !this.static ? this.scopedStyleAttrs : {}\n\n return {\n ...scopedStyleAttrs,\n ...this.bvAttrs,\n id: this.modalOuterId\n }\n },\n computedModalAttrs() {\n const { isVisible, ariaLabel } = this\n\n return {\n id: this.modalId,\n role: 'dialog',\n 'aria-hidden': isVisible ? null : 'true',\n 'aria-modal': isVisible ? 'true' : null,\n 'aria-label': ariaLabel,\n 'aria-labelledby':\n this.hideHeader ||\n ariaLabel ||\n // TODO: Rename slot to `title` and deprecate `modal-title`\n !(this.hasNormalizedSlot(SLOT_NAME_MODAL_TITLE) || this.titleHtml || this.title)\n ? null\n : this.modalTitleId,\n 'aria-describedby': this.modalBodyId\n }\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue, oldValue) {\n if (newValue !== oldValue) {\n this[newValue ? 'show' : 'hide']()\n }\n }\n },\n created() {\n // Define non-reactive properties\n this.$_observer = null\n this.$_returnFocus = this.returnFocus || null\n },\n mounted() {\n // Set initial z-index as queried from the DOM\n this.zIndex = modalManager.getBaseZIndex()\n // Listen for events from others to either open or close ourselves\n // and listen to all modals to enable/disable enforce focus\n this.listenOnRoot(getRootActionEventName(NAME_MODAL, EVENT_NAME_SHOW), this.showHandler)\n this.listenOnRoot(getRootActionEventName(NAME_MODAL, EVENT_NAME_HIDE), this.hideHandler)\n this.listenOnRoot(getRootActionEventName(NAME_MODAL, EVENT_NAME_TOGGLE), this.toggleHandler)\n // Listen for `bv:modal::show events`, and close ourselves if the\n // opening modal not us\n this.listenOnRoot(getRootEventName(NAME_MODAL, EVENT_NAME_SHOW), this.modalListener)\n // Initially show modal?\n if (this[MODEL_PROP_NAME] === true) {\n this.$nextTick(this.show)\n }\n },\n beforeDestroy() {\n // Ensure everything is back to normal\n modalManager.unregisterModal(this)\n this.setObserver(false)\n if (this.isVisible) {\n this.isVisible = false\n this.isShow = false\n this.isTransitioning = false\n }\n },\n methods: {\n setObserver(on = false) {\n this.$_observer && this.$_observer.disconnect()\n this.$_observer = null\n if (on) {\n this.$_observer = observeDom(\n this.$refs.content,\n this.checkModalOverflow.bind(this),\n OBSERVER_CONFIG\n )\n }\n },\n // Private method to update the v-model\n updateModel(value) {\n if (value !== this[MODEL_PROP_NAME]) {\n this.$emit(MODEL_EVENT_NAME, value)\n }\n },\n // Private method to create a BvModalEvent object\n buildEvent(type, options = {}) {\n return new BvModalEvent(type, {\n // Default options\n cancelable: false,\n target: this.$refs.modal || this.$el || null,\n relatedTarget: null,\n trigger: null,\n // Supplied options\n ...options,\n // Options that can't be overridden\n vueTarget: this,\n componentId: this.modalId\n })\n },\n // Public method to show modal\n show() {\n if (this.isVisible || this.isOpening) {\n // If already open, or in the process of opening, do nothing\n /* istanbul ignore next */\n return\n }\n /* istanbul ignore next */\n if (this.isClosing) {\n // If we are in the process of closing, wait until hidden before re-opening\n /* istanbul ignore next */\n this.$once(EVENT_NAME_HIDDEN, this.show)\n /* istanbul ignore next */\n return\n }\n this.isOpening = true\n // Set the element to return focus to when closed\n this.$_returnFocus = this.$_returnFocus || this.getActiveElement()\n const showEvent = this.buildEvent(EVENT_NAME_SHOW, {\n cancelable: true\n })\n this.emitEvent(showEvent)\n // Don't show if canceled\n if (showEvent.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 hideEvent = this.buildEvent(EVENT_NAME_HIDE, {\n cancelable: trigger !== TRIGGER_FORCE,\n trigger: trigger || null\n })\n // We emit specific event for one of the three built-in buttons\n if (trigger === BUTTON_OK) {\n this.$emit(EVENT_NAME_OK, hideEvent)\n } else if (trigger === BUTTON_CANCEL) {\n this.$emit(EVENT_NAME_CANCEL, hideEvent)\n } else if (trigger === BUTTON_CLOSE) {\n this.$emit(EVENT_NAME_CLOSE, hideEvent)\n }\n this.emitEvent(hideEvent)\n // Hide if not canceled\n if (hideEvent.defaultPrevented || !this.isVisible) {\n this.isClosing = false\n // Ensure v-model reflects current state\n this.updateModel(true)\n return\n }\n // Stop observing for content changes\n this.setObserver(false)\n // Trigger the hide transition\n this.isVisible = false\n // Update the v-model\n this.updateModel(false)\n },\n // Public method to toggle modal visibility\n toggle(triggerEl) {\n if (triggerEl) {\n this.$_returnFocus = triggerEl\n }\n if (this.isVisible) {\n this.hide(TRIGGER_TOGGLE)\n } else {\n this.show()\n }\n },\n // Private method to get the current document active element\n getActiveElement() {\n // Returning focus to `document.body` may cause unwanted scrolls,\n // so we exclude setting focus on body\n const activeElement = getActiveElement(IS_BROWSER ? [document.body] : [])\n // Preset the fallback return focus value if it is not set\n // `document.activeElement` should be the trigger element that was clicked or\n // in the case of using the v-model, which ever element has current focus\n // Will be overridden by some commands such as toggle, etc.\n // Note: On IE 11, `document.activeElement` may be `null`\n // So we test it for truthiness first\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/3206\n return activeElement && activeElement.focus ? activeElement : null\n },\n // Private method to finish showing modal\n doShow() {\n /* istanbul ignore next: commenting out for now until we can test stacking */\n if (modalManager.modalsAreOpen && this.noStacking) {\n // If another modal(s) is already open, wait for it(them) to close\n this.listenOnRootOnce(getRootEventName(NAME_MODAL, EVENT_NAME_HIDDEN), this.doShow)\n return\n }\n modalManager.registerModal(this)\n // Place modal in DOM\n this.isHidden = false\n this.$nextTick(() => {\n // We do this in `$nextTick()` to ensure the modal is in DOM first\n // before we show it\n this.isVisible = true\n this.isOpening = false\n // Update the v-model\n this.updateModel(true)\n this.$nextTick(() => {\n // Observe changes in modal content and adjust if necessary\n // In a `$nextTick()` in case modal content is lazy\n this.setObserver(true)\n })\n })\n },\n // Transition handlers\n onBeforeEnter() {\n this.isTransitioning = true\n this.setResizeEvent(true)\n },\n onEnter() {\n this.isBlock = true\n // We add the `show` class 1 frame later\n // `requestAF()` runs the callback before the next repaint, so we need\n // two calls to guarantee the next frame has been rendered\n requestAF(() => {\n requestAF(() => {\n this.isShow = true\n })\n })\n },\n onAfterEnter() {\n this.checkModalOverflow()\n this.isTransitioning = false\n // We use `requestAF()` to allow transition hooks to complete\n // before passing control over to the other handlers\n // This will allow users to not have to use `$nextTick()` or `requestAF()`\n // when trying to pre-focus an element\n requestAF(() => {\n this.emitEvent(this.buildEvent(EVENT_NAME_SHOWN))\n this.setEnforceFocus(true)\n this.$nextTick(() => {\n // Delayed in a `$nextTick()` to allow users time to pre-focus\n // an element if the wish\n this.focusFirst()\n })\n })\n },\n onBeforeLeave() {\n this.isTransitioning = true\n this.setResizeEvent(false)\n this.setEnforceFocus(false)\n },\n onLeave() {\n // Remove the 'show' class\n this.isShow = false\n },\n onAfterLeave() {\n this.isBlock = false\n this.isTransitioning = false\n this.isModalOverflowing = false\n this.isHidden = true\n this.$nextTick(() => {\n this.isClosing = false\n modalManager.unregisterModal(this)\n this.returnFocusTo()\n // TODO: Need to find a way to pass the `trigger` property\n // to the `hidden` event, not just only the `hide` event\n this.emitEvent(this.buildEvent(EVENT_NAME_HIDDEN))\n })\n },\n emitEvent(bvEvent) {\n const { type } = bvEvent\n // We emit on `$root` first in case a global listener wants to cancel\n // the event first before the instance emits its event\n this.emitOnRoot(getRootEventName(NAME_MODAL, type), bvEvent, bvEvent.componentId)\n this.$emit(type, bvEvent)\n },\n // UI event handlers\n onDialogMousedown() {\n // Watch to see if the matching mouseup event occurs outside the dialog\n // And if it does, cancel the clickOut handler\n const modal = this.$refs.modal\n const onceModalMouseup = event => {\n eventOff(modal, 'mouseup', onceModalMouseup, EVENT_OPTIONS_NO_CAPTURE)\n if (event.target === modal) {\n this.ignoreBackdropClick = true\n }\n }\n eventOn(modal, 'mouseup', onceModalMouseup, EVENT_OPTIONS_NO_CAPTURE)\n },\n onClickOut(event) {\n if (this.ignoreBackdropClick) {\n // Click was initiated inside the modal content, but finished outside.\n // Set by the above onDialogMousedown handler\n this.ignoreBackdropClick = false\n return\n }\n // Do nothing if not visible, backdrop click disabled, or element\n // that generated click event is no longer in document body\n if (!this.isVisible || this.noCloseOnBackdrop || !contains(document.body, event.target)) {\n return\n }\n // If backdrop clicked, hide modal\n if (!contains(this.$refs.content, event.target)) {\n this.hide(TRIGGER_BACKDROP)\n }\n },\n onOk() {\n this.hide(BUTTON_OK)\n },\n onCancel() {\n this.hide(BUTTON_CANCEL)\n },\n onClose() {\n this.hide(BUTTON_CLOSE)\n },\n onEsc(event) {\n // If ESC pressed, hide modal\n if (event.keyCode === CODE_ESC && this.isVisible && !this.noCloseOnEsc) {\n this.hide(TRIGGER_ESC)\n }\n },\n // Document focusin listener\n focusHandler(event) {\n // If focus leaves modal content, bring it back\n const content = this.$refs.content\n const { target } = event\n if (\n this.noEnforceFocus ||\n !this.isTop ||\n !this.isVisible ||\n !content ||\n document === target ||\n contains(content, target) ||\n (this.computeIgnoreEnforceFocusSelector &&\n closest(this.computeIgnoreEnforceFocusSelector, target, true))\n ) {\n return\n }\n const tabables = getTabables(this.$refs.content)\n const bottomTrap = this.$refs['bottom-trap']\n const topTrap = this.$refs['top-trap']\n if (bottomTrap && target === bottomTrap) {\n // If user pressed TAB out of modal into our bottom trab trap element\n // Find the first tabable element in the modal content and focus it\n if (attemptFocus(tabables[0])) {\n // Focus was successful\n return\n }\n } else if (topTrap && target === topTrap) {\n // If user pressed CTRL-TAB out of modal and into our top tab trap element\n // Find the last tabable element in the modal content and focus it\n if (attemptFocus(tabables[tabables.length - 1])) {\n // Focus was successful\n return\n }\n }\n // Otherwise focus the modal content container\n attemptFocus(content, { preventScroll: true })\n },\n // Turn on/off focusin listener\n setEnforceFocus(on) {\n this.listenDocument(on, 'focusin', this.focusHandler)\n },\n // Resize listener\n setResizeEvent(on) {\n this.listenWindow(on, 'resize', this.checkModalOverflow)\n this.listenWindow(on, 'orientationchange', this.checkModalOverflow)\n },\n // Root listener handlers\n showHandler(id, triggerEl) {\n if (id === this.modalId) {\n this.$_returnFocus = triggerEl || this.getActiveElement()\n this.show()\n }\n },\n hideHandler(id) {\n if (id === this.modalId) {\n this.hide('event')\n }\n },\n toggleHandler(id, triggerEl) {\n if (id === this.modalId) {\n this.toggle(triggerEl)\n }\n },\n modalListener(bvEvent) {\n // If another modal opens, close this one if stacking not permitted\n if (this.noStacking && bvEvent.vueTarget !== this) {\n this.hide()\n }\n },\n // Focus control handlers\n focusFirst() {\n // Don't try and focus if we are SSR\n if (IS_BROWSER) {\n requestAF(() => {\n const modal = this.$refs.modal\n const content = this.$refs.content\n const activeElement = this.getActiveElement()\n // If the modal contains the activeElement, we don't do anything\n if (modal && content && !(activeElement && contains(content, activeElement))) {\n const ok = this.$refs['ok-button']\n const cancel = this.$refs['cancel-button']\n const close = this.$refs['close-button']\n // Focus the appropriate button or modal content wrapper\n const autoFocus = this.autoFocusButton\n /* istanbul ignore next */\n const el =\n autoFocus === BUTTON_OK && ok\n ? ok.$el || ok\n : autoFocus === BUTTON_CANCEL && cancel\n ? cancel.$el || cancel\n : autoFocus === BUTTON_CLOSE && close\n ? close.$el || close\n : content\n // Focus the element\n attemptFocus(el)\n if (el === content) {\n // Make sure top of modal is showing (if longer than the viewport)\n this.$nextTick(() => {\n modal.scrollTop = 0\n })\n }\n }\n })\n }\n },\n returnFocusTo() {\n // Prefer `returnFocus` prop over event specified\n // `return_focus` value\n let el = this.returnFocus || this.$_returnFocus || null\n this.$_returnFocus = null\n this.$nextTick(() => {\n // Is el a string CSS selector?\n el = isString(el) ? select(el) : el\n if (el) {\n // Possibly could be a component reference\n el = el.$el || el\n attemptFocus(el)\n }\n })\n },\n checkModalOverflow() {\n if (this.isVisible) {\n const modal = this.$refs.modal\n this.isModalOverflowing = modal.scrollHeight > document.documentElement.clientHeight\n }\n },\n makeModal(h) {\n // Modal header\n let $header = h()\n if (!this.hideHeader) {\n // TODO: Rename slot to `header` and deprecate `modal-header`\n let $modalHeader = this.normalizeSlot(SLOT_NAME_MODAL_HEADER, this.slotScope)\n if (!$modalHeader) {\n let $closeButton = h()\n if (!this.hideHeaderClose) {\n $closeButton = h(\n BButtonClose,\n {\n props: {\n content: this.headerCloseContent,\n disabled: this.isTransitioning,\n ariaLabel: this.headerCloseLabel,\n textVariant: this.headerCloseVariant || this.headerTextVariant\n },\n on: { click: this.onClose },\n ref: 'close-button'\n },\n // TODO: Rename slot to `header-close` and deprecate `modal-header-close`\n [this.normalizeSlot(SLOT_NAME_MODAL_HEADER_CLOSE)]\n )\n }\n\n $modalHeader = [\n h(\n this.titleTag,\n {\n staticClass: 'modal-title',\n class: this.titleClasses,\n attrs: { id: this.modalTitleId },\n // TODO: Rename slot to `title` and deprecate `modal-title`\n domProps: this.hasNormalizedSlot(SLOT_NAME_MODAL_TITLE)\n ? {}\n : htmlOrText(this.titleHtml, this.title)\n },\n // TODO: Rename slot to `title` and deprecate `modal-title`\n this.normalizeSlot(SLOT_NAME_MODAL_TITLE, this.slotScope)\n ),\n $closeButton\n ]\n }\n\n $header = h(\n this.headerTag,\n {\n staticClass: 'modal-header',\n class: this.headerClasses,\n attrs: { id: this.modalHeaderId },\n ref: 'header'\n },\n [$modalHeader]\n )\n }\n\n // Modal body\n const $body = h(\n 'div',\n {\n staticClass: 'modal-body',\n class: this.bodyClasses,\n attrs: { id: this.modalBodyId },\n ref: 'body'\n },\n this.normalizeSlot(SLOT_NAME_DEFAULT, this.slotScope)\n )\n\n // Modal footer\n let $footer = h()\n if (!this.hideFooter) {\n // TODO: Rename slot to `footer` and deprecate `modal-footer`\n let $modalFooter = this.normalizeSlot(SLOT_NAME_MODAL_FOOTER, this.slotScope)\n if (!$modalFooter) {\n let $cancelButton = h()\n if (!this.okOnly) {\n $cancelButton = h(\n BButton,\n {\n props: {\n variant: this.cancelVariant,\n size: this.buttonSize,\n disabled: this.cancelDisabled || this.busy || this.isTransitioning\n },\n // TODO: Rename slot to `cancel-button` and deprecate `modal-cancel`\n domProps: this.hasNormalizedSlot(SLOT_NAME_MODAL_CANCEL)\n ? {}\n : htmlOrText(this.cancelTitleHtml, this.cancelTitle),\n on: { click: this.onCancel },\n ref: 'cancel-button'\n },\n // TODO: Rename slot to `cancel-button` and deprecate `modal-cancel`\n this.normalizeSlot(SLOT_NAME_MODAL_CANCEL)\n )\n }\n\n const $okButton = h(\n BButton,\n {\n props: {\n variant: this.okVariant,\n size: this.buttonSize,\n disabled: this.okDisabled || this.busy || this.isTransitioning\n },\n // TODO: Rename slot to `ok-button` and deprecate `modal-ok`\n domProps: this.hasNormalizedSlot(SLOT_NAME_MODAL_OK)\n ? {}\n : htmlOrText(this.okTitleHtml, this.okTitle),\n on: { click: this.onOk },\n ref: 'ok-button'\n },\n // TODO: Rename slot to `ok-button` and deprecate `modal-ok`\n this.normalizeSlot(SLOT_NAME_MODAL_OK)\n )\n\n $modalFooter = [$cancelButton, $okButton]\n }\n\n $footer = h(\n this.footerTag,\n {\n staticClass: 'modal-footer',\n class: this.footerClasses,\n attrs: { id: this.modalFooterId },\n ref: 'footer'\n },\n [$modalFooter]\n )\n }\n\n // Assemble modal content\n const $modalContent = h(\n 'div',\n {\n staticClass: 'modal-content',\n class: this.contentClass,\n attrs: {\n id: this.modalContentId,\n tabindex: '-1'\n },\n ref: 'content'\n },\n [$header, $body, $footer]\n )\n\n // Tab traps to prevent page from scrolling to next element in\n // tab index during enforce-focus tab cycle\n let $tabTrapTop = h()\n let $tabTrapBottom = h()\n if (this.isVisible && !this.noEnforceFocus) {\n $tabTrapTop = h('span', {\n attrs: { tabindex: '0' },\n ref: 'top-trap'\n })\n $tabTrapBottom = h('span', {\n attrs: { tabindex: '0' },\n ref: 'bottom-trap'\n })\n }\n\n // Modal dialog wrapper\n const $modalDialog = h(\n 'div',\n {\n staticClass: 'modal-dialog',\n class: this.dialogClasses,\n on: { mousedown: this.onDialogMousedown },\n ref: 'dialog'\n },\n [$tabTrapTop, $modalContent, $tabTrapBottom]\n )\n\n // Modal\n let $modal = h(\n 'div',\n {\n staticClass: 'modal',\n class: this.modalClasses,\n style: this.modalStyles,\n attrs: this.computedModalAttrs,\n on: { keydown: this.onEsc, click: this.onClickOut },\n directives: [{ name: 'show', value: this.isVisible }],\n ref: 'modal'\n },\n [$modalDialog]\n )\n\n // Wrap modal in transition\n // Sadly, we can't use `BVTransition` here due to the differences in\n // transition durations for `.modal` and `.modal-dialog`\n // At least until https://github.com/vuejs/vue/issues/9986 is resolved\n $modal = h(\n 'transition',\n {\n props: {\n enterClass: '',\n enterToClass: '',\n enterActiveClass: '',\n leaveClass: '',\n leaveActiveClass: '',\n leaveToClass: ''\n },\n on: {\n beforeEnter: this.onBeforeEnter,\n enter: this.onEnter,\n afterEnter: this.onAfterEnter,\n beforeLeave: this.onBeforeLeave,\n leave: this.onLeave,\n afterLeave: this.onAfterLeave\n }\n },\n [$modal]\n )\n\n // Modal backdrop\n let $backdrop = h()\n if (!this.hideBackdrop && this.isVisible) {\n $backdrop = h(\n 'div',\n {\n staticClass: 'modal-backdrop',\n attrs: { id: this.modalBackdropId }\n },\n // TODO: Rename slot to `backdrop` and deprecate `modal-backdrop`\n this.normalizeSlot(SLOT_NAME_MODAL_BACKDROP)\n )\n }\n $backdrop = h(BVTransition, { props: { noFade: this.noFade } }, [$backdrop])\n\n // Assemble modal and backdrop in an outer <div>\n return h(\n 'div',\n {\n style: this.modalOuterStyle,\n attrs: this.computedAttrs,\n key: `modal-outer-${this[COMPONENT_UID_KEY]}`\n },\n [$modal, $backdrop]\n )\n }\n },\n render(h) {\n if (this.static) {\n return this.lazy && this.isHidden ? h() : this.makeModal(h)\n } else {\n return this.isHidden ? h() : h(BVTransporter, [this.makeModal(h)])\n }\n }\n})\n","import { NAME_MODAL } from '../../constants/components'\nimport { EVENT_NAME_SHOW, EVENT_OPTIONS_PASSIVE } from '../../constants/events'\nimport { CODE_ENTER, CODE_SPACE } from '../../constants/key-codes'\nimport { getAttr, hasAttr, isDisabled, matches, select, setAttr } from '../../utils/dom'\nimport { getRootActionEventName, eventOn, eventOff } from '../../utils/events'\nimport { isString } from '../../utils/inspect'\nimport { keys } from '../../utils/object'\n\n// Emitted show event for modal\nconst ROOT_ACTION_EVENT_NAME_SHOW = getRootActionEventName(NAME_MODAL, EVENT_NAME_SHOW)\n\n// Prop name we use to store info on root element\nconst PROPERTY = '__bv_modal_directive__'\n\nconst getTarget = ({ modifiers = {}, arg, value }) => {\n // Try value, then arg, otherwise pick last modifier\n return isString(value) ? value : isString(arg) ? arg : keys(modifiers).reverse()[0]\n}\n\nconst getTriggerElement = el => {\n // If root element is a dropdown-item or nav-item, we\n // need to target the inner link or button instead\n return el && matches(el, '.dropdown-menu > li, li.nav-item') ? select('a, button', el) || el : el\n}\n\nconst setRole = trigger => {\n // Ensure accessibility on non button elements\n if (trigger && trigger.tagName !== 'BUTTON') {\n // Only set a role if the trigger element doesn't have one\n if (!hasAttr(trigger, 'role')) {\n setAttr(trigger, 'role', 'button')\n }\n // Add a tabindex is not a button or link, and tabindex is not provided\n if (trigger.tagName !== 'A' && !hasAttr(trigger, 'tabindex')) {\n setAttr(trigger, 'tabindex', '0')\n }\n }\n}\n\nconst bind = (el, binding, vnode) => {\n const target = getTarget(binding)\n const trigger = getTriggerElement(el)\n if (target && trigger) {\n const handler = event => {\n // `currentTarget` is the element with the listener on it\n const currentTarget = event.currentTarget\n if (!isDisabled(currentTarget)) {\n const type = event.type\n const key = event.keyCode\n // Open modal only if trigger is not disabled\n if (\n type === 'click' ||\n (type === 'keydown' && (key === CODE_ENTER || key === CODE_SPACE))\n ) {\n vnode.context.$root.$emit(ROOT_ACTION_EVENT_NAME_SHOW, target, currentTarget)\n }\n }\n }\n el[PROPERTY] = { handler, target, trigger }\n // If element is not a button, we add `role=\"button\"` for accessibility\n setRole(trigger)\n // Listen for click events\n eventOn(trigger, 'click', handler, EVENT_OPTIONS_PASSIVE)\n if (trigger.tagName !== 'BUTTON' && getAttr(trigger, 'role') === 'button') {\n // If trigger isn't a button but has role button,\n // we also listen for `keydown.space` && `keydown.enter`\n eventOn(trigger, 'keydown', handler, EVENT_OPTIONS_PASSIVE)\n }\n }\n}\n\nconst unbind = el => {\n const oldProp = el[PROPERTY] || {}\n const trigger = oldProp.trigger\n const handler = oldProp.handler\n if (trigger && handler) {\n eventOff(trigger, 'click', handler, EVENT_OPTIONS_PASSIVE)\n eventOff(trigger, 'keydown', handler, EVENT_OPTIONS_PASSIVE)\n eventOff(el, 'click', handler, EVENT_OPTIONS_PASSIVE)\n eventOff(el, 'keydown', handler, EVENT_OPTIONS_PASSIVE)\n }\n delete el[PROPERTY]\n}\n\nconst componentUpdated = (el, binding, vnode) => {\n const oldProp = el[PROPERTY] || {}\n const target = getTarget(binding)\n const trigger = getTriggerElement(el)\n if (target !== oldProp.target || trigger !== oldProp.trigger) {\n // We bind and rebind if the target or trigger changes\n unbind(el, binding, vnode)\n bind(el, binding, vnode)\n }\n // If trigger element is not a button, ensure `role=\"button\"`\n // is still set for accessibility\n setRole(trigger)\n}\n\nconst updated = () => {}\n\n/*\n * Export our directive\n */\nexport const VBModal = {\n inserted: componentUpdated,\n updated,\n componentUpdated,\n unbind\n}\n","// Plugin for adding `$bvModal` property to all Vue instances\nimport { NAME_MODAL, NAME_MSG_BOX } from '../../../constants/components'\nimport {\n EVENT_NAME_HIDDEN,\n EVENT_NAME_HIDE,\n HOOK_EVENT_NAME_BEFORE_DESTROY,\n HOOK_EVENT_NAME_DESTROYED\n} from '../../../constants/events'\nimport { concat } from '../../../utils/array'\nimport { getComponentConfig } from '../../../utils/config'\nimport { requestAF } from '../../../utils/dom'\nimport { getRootActionEventName } from '../../../utils/events'\nimport { isUndefined, isFunction } from '../../../utils/inspect'\nimport {\n assign,\n defineProperties,\n defineProperty,\n hasOwnProperty,\n keys,\n omit,\n readonlyDescriptor\n} from '../../../utils/object'\nimport { pluginFactory } from '../../../utils/plugins'\nimport { warn, warnNotClient, warnNoPromiseSupport } from '../../../utils/warn'\nimport { BModal, props as modalProps } from '../modal'\n\n// --- Constants ---\n\nconst PROP_NAME = '$bvModal'\nconst PROP_NAME_PRIV = '_bv__modal'\n\n// Base modal props that are allowed\n// Some may be ignored or overridden on some message boxes\n// Prop ID is allowed, but really only should be used for testing\n// We need to add it in explicitly as it comes from the `idMixin`\nconst BASE_PROPS = [\n 'id',\n ...keys(omit(modalProps, ['busy', 'lazy', 'noStacking', 'static', 'visible']))\n]\n\n// Fallback event resolver (returns undefined)\nconst defaultResolver = () => {}\n\n// Map prop names to modal slot names\nconst propsToSlots = {\n msgBoxContent: 'default',\n title: 'modal-title',\n okTitle: 'modal-ok',\n cancelTitle: 'modal-cancel'\n}\n\n// --- Helper methods ---\n\n// Method to filter only recognized props that are not undefined\nconst filterOptions = options => {\n return BASE_PROPS.reduce((memo, key) => {\n if (!isUndefined(options[key])) {\n memo[key] = options[key]\n }\n return memo\n }, {})\n}\n\n// Method to install `$bvModal` VM injection\nconst plugin = Vue => {\n // Create a private sub-component that extends BModal\n // which self-destructs after hidden\n // @vue/component\n const BMsgBox = Vue.extend({\n name: NAME_MSG_BOX,\n extends: BModal,\n destroyed() {\n // Make sure we not in document any more\n if (this.$el && this.$el.parentNode) {\n this.$el.parentNode.removeChild(this.$el)\n }\n },\n mounted() {\n // Self destruct handler\n const handleDestroy = () => {\n this.$nextTick(() => {\n // In a `requestAF()` to release control back to application\n requestAF(() => {\n this.$destroy()\n })\n })\n }\n // Self destruct if parent destroyed\n this.$parent.$once(HOOK_EVENT_NAME_DESTROYED, handleDestroy)\n // Self destruct after hidden\n this.$once(EVENT_NAME_HIDDEN, handleDestroy)\n // Self destruct on route change\n /* istanbul ignore if */\n if (this.$router && this.$route) {\n // Destroy ourselves if route changes\n /* istanbul ignore next */\n this.$once(HOOK_EVENT_NAME_BEFORE_DESTROY, this.$watch('$router', handleDestroy))\n }\n // Show the `BMsgBox`\n this.show()\n }\n })\n\n // Method to generate the on-demand modal message box\n // Returns a promise that resolves to a value returned by the resolve\n const asyncMsgBox = ($parent, props, resolver = defaultResolver) => {\n if (warnNotClient(PROP_NAME) || warnNoPromiseSupport(PROP_NAME)) {\n /* istanbul ignore next */\n return\n }\n // Create an instance of `BMsgBox` component\n const msgBox = new BMsgBox({\n // We set parent as the local VM so these modals can emit events on\n // the app `$root`, as needed by things like tooltips and popovers\n // And it helps to ensure `BMsgBox` is destroyed when parent is destroyed\n parent: $parent,\n // Preset the prop values\n propsData: {\n ...filterOptions(getComponentConfig(NAME_MODAL)),\n // Defaults that user can override\n hideHeaderClose: true,\n hideHeader: !(props.title || props.titleHtml),\n // Add in (filtered) user supplied props\n ...omit(props, keys(propsToSlots)),\n // Props that can't be overridden\n lazy: false,\n busy: false,\n visible: false,\n noStacking: false,\n noEnforceFocus: false\n }\n })\n // Convert certain props to scoped slots\n keys(propsToSlots).forEach(prop => {\n if (!isUndefined(props[prop])) {\n // Can be a string, or array of VNodes.\n // Alternatively, user can use HTML version of prop to pass an HTML string.\n msgBox.$slots[propsToSlots[prop]] = concat(props[prop])\n }\n })\n // Return a promise that resolves when hidden, or rejects on destroyed\n return new Promise((resolve, reject) => {\n let resolved = false\n msgBox.$once(HOOK_EVENT_NAME_DESTROYED, () => {\n if (!resolved) {\n /* istanbul ignore next */\n reject(new Error('BootstrapVue MsgBox destroyed before resolve'))\n }\n })\n msgBox.$on(EVENT_NAME_HIDE, bvModalEvent => {\n if (!bvModalEvent.defaultPrevented) {\n const result = resolver(bvModalEvent)\n // If resolver didn't cancel hide, we resolve\n if (!bvModalEvent.defaultPrevented) {\n resolved = true\n resolve(result)\n }\n }\n })\n // Create a mount point (a DIV) and mount the msgBo which will trigger it to show\n const div = document.createElement('div')\n document.body.appendChild(div)\n msgBox.$mount(div)\n })\n }\n\n // Private utility method to open a user defined message box and returns a promise.\n // Not to be used directly by consumers, as this method may change calling syntax\n const makeMsgBox = ($parent, content, options = {}, resolver = null) => {\n if (\n !content ||\n warnNoPromiseSupport(PROP_NAME) ||\n warnNotClient(PROP_NAME) ||\n !isFunction(resolver)\n ) {\n /* istanbul ignore next */\n return\n }\n return asyncMsgBox($parent, { ...filterOptions(options), msgBoxContent: content }, resolver)\n }\n\n // BvModal instance class\n class BvModal {\n constructor(vm) {\n // Assign the new properties to this instance\n assign(this, { _vm: vm, _root: vm.$root })\n // Set these properties as read-only and non-enumerable\n defineProperties(this, {\n _vm: readonlyDescriptor(),\n _root: readonlyDescriptor()\n })\n }\n\n // --- Instance methods ---\n\n // Show modal with the specified ID args are for future use\n show(id, ...args) {\n if (id && this._root) {\n this._root.$emit(getRootActionEventName(NAME_MODAL, 'show'), id, ...args)\n }\n }\n\n // Hide modal with the specified ID args are for future use\n hide(id, ...args) {\n if (id && this._root) {\n this._root.$emit(getRootActionEventName(NAME_MODAL, 'hide'), id, ...args)\n }\n }\n\n // The following methods require Promise support!\n // IE 11 and others do not support Promise natively, so users\n // should have a Polyfill loaded (which they need anyways for IE 11 support)\n\n // Open a message box with OK button only and returns a promise\n msgBoxOk(message, options = {}) {\n // Pick the modal props we support from options\n const props = {\n ...options,\n // Add in overrides and our content prop\n okOnly: true,\n okDisabled: false,\n hideFooter: false,\n msgBoxContent: message\n }\n return makeMsgBox(this._vm, message, props, () => {\n // Always resolve to true for OK\n return true\n })\n }\n\n // Open a message box modal with OK and CANCEL buttons\n // and returns a promise\n msgBoxConfirm(message, options = {}) {\n // Set the modal props we support from options\n const props = {\n ...options,\n // Add in overrides and our content prop\n okOnly: false,\n okDisabled: false,\n cancelDisabled: false,\n hideFooter: false\n }\n return makeMsgBox(this._vm, message, props, bvModalEvent => {\n const trigger = bvModalEvent.trigger\n return trigger === 'ok' ? true : trigger === 'cancel' ? false : null\n })\n }\n }\n\n // Add our instance mixin\n Vue.mixin({\n beforeCreate() {\n // Because we need access to `$root` for `$emits`, and VM for parenting,\n // we have to create a fresh instance of `BvModal` for each VM\n this[PROP_NAME_PRIV] = new BvModal(this)\n }\n })\n\n // Define our read-only `$bvModal` instance property\n // Placed in an if just in case in HMR mode\n if (!hasOwnProperty(Vue.prototype, PROP_NAME)) {\n defineProperty(Vue.prototype, PROP_NAME, {\n get() {\n /* istanbul ignore next */\n if (!this || !this[PROP_NAME_PRIV]) {\n warn(`\"${PROP_NAME}\" must be accessed from a Vue instance \"this\" context.`, NAME_MODAL)\n }\n return this[PROP_NAME_PRIV]\n }\n })\n }\n}\n\nexport const BVModalPlugin = /*#__PURE__*/ pluginFactory({\n plugins: { plugin }\n})\n","import { BModal } from './modal'\nimport { VBModal } from '../../directives/modal/modal'\nimport { BVModalPlugin } from './helpers/bv-modal'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ModalPlugin = /*#__PURE__*/ pluginFactory({\n components: { BModal },\n directives: { VBModal },\n // $bvModal injection\n plugins: { BVModalPlugin }\n})\n\nexport { ModalPlugin, BModal }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_NAV } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Helper methods ---\n\nconst computeJustifyContent = value => {\n value = value === 'left' ? 'start' : value === 'right' ? 'end' : value\n return `justify-content-${value}`\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n align: makeProp(PROP_TYPE_STRING),\n // Set to `true` if placing in a card header\n cardHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n fill: makeProp(PROP_TYPE_BOOLEAN, false),\n justified: makeProp(PROP_TYPE_BOOLEAN, false),\n pills: makeProp(PROP_TYPE_BOOLEAN, false),\n small: makeProp(PROP_TYPE_BOOLEAN, false),\n tabs: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'ul'),\n vertical: makeProp(PROP_TYPE_BOOLEAN, false)\n },\n NAME_NAV\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNav = /*#__PURE__*/ Vue.extend({\n name: NAME_NAV,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { tabs, pills, vertical, align, cardHeader } = props\n\n return h(\n props.tag,\n mergeData(data, {\n staticClass: 'nav',\n class: {\n 'nav-tabs': tabs,\n 'nav-pills': pills && !tabs,\n 'card-header-tabs': !vertical && cardHeader && tabs,\n 'card-header-pills': !vertical && cardHeader && pills && !tabs,\n 'flex-column': vertical,\n 'nav-fill': !vertical && props.fill,\n 'nav-justified': !vertical && props.justified,\n [computeJustifyContent(align)]: !vertical && align,\n small: props.small\n }\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_NAV_ITEM } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_OBJECT } from '../../constants/props'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...linkProps,\n linkAttrs: makeProp(PROP_TYPE_OBJECT, {}),\n linkClasses: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n }),\n NAME_NAV_ITEM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavItem = /*#__PURE__*/ Vue.extend({\n name: NAME_NAV_ITEM,\n functional: true,\n props,\n render(h, { props, data, listeners, children }) {\n return h(\n 'li',\n mergeData(omit(data, ['on']), {\n staticClass: 'nav-item'\n }),\n [\n h(\n BLink,\n {\n staticClass: 'nav-link',\n class: props.linkClasses,\n attrs: props.linkAttrs,\n props: pluckProps(linkProps, props),\n on: listeners\n },\n children\n )\n ]\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_NAV_TEXT } from '../../constants/components'\n\n// --- Props ---\n\nexport const props = {}\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavText = /*#__PURE__*/ Vue.extend({\n name: NAME_NAV_TEXT,\n functional: true,\n props,\n render(h, { data, children }) {\n return h('li', mergeData(data, { staticClass: 'navbar-text' }), children)\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_NAV_FORM } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING } from '../../constants/props'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { BForm, props as BFormProps } from '../form/form'\n\n// --- Props ---\n\nconst formProps = omit(BFormProps, ['inline'])\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...formProps,\n formClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n }),\n NAME_NAV_FORM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavForm = /*#__PURE__*/ Vue.extend({\n name: NAME_NAV_FORM,\n functional: true,\n props,\n render(h, { props, data, children, listeners }) {\n const $form = h(\n BForm,\n {\n class: props.formClass,\n props: {\n ...pluckProps(formProps, props),\n inline: true\n },\n attrs: data.attrs,\n on: listeners\n },\n children\n )\n\n return h(\n 'li',\n mergeData(omit(data, ['attrs', 'on']), {\n staticClass: 'form-inline'\n }),\n [$form]\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_NAV_ITEM_DROPDOWN } from '../../constants/components'\nimport { SLOT_NAME_BUTTON_CONTENT, SLOT_NAME_DEFAULT, SLOT_NAME_TEXT } from '../../constants/slots'\nimport { htmlOrText } from '../../utils/html'\nimport { keys, pick, sortKeys } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { dropdownMixin, props as dropdownProps } from '../../mixins/dropdown'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { props as BDropdownProps } from '../dropdown/dropdown'\nimport { BLink } from '../link/link'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...pick(BDropdownProps, [\n ...keys(dropdownProps),\n 'html',\n 'lazy',\n 'menuClass',\n 'noCaret',\n 'role',\n 'text',\n 'toggleClass'\n ])\n }),\n NAME_NAV_ITEM_DROPDOWN\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavItemDropdown = /*#__PURE__*/ Vue.extend({\n name: NAME_NAV_ITEM_DROPDOWN,\n mixins: [idMixin, dropdownMixin, normalizeSlotMixin],\n props,\n computed: {\n toggleId() {\n return this.safeId('_BV_toggle_')\n },\n menuId() {\n return this.safeId('_BV_toggle_menu_')\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, menuId, visible, hide } = this\n\n const $toggle = h(\n BLink,\n {\n staticClass: 'nav-link dropdown-toggle',\n class: this.toggleClasses,\n props: {\n href: `#${this.id || ''}`,\n disabled: this.disabled\n },\n attrs: {\n id: toggleId,\n role: 'button',\n 'aria-haspopup': 'true',\n 'aria-expanded': visible ? 'true' : 'false',\n 'aria-controls': menuId\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 id: menuId\n },\n on: {\n keydown: this.onKeydown // Handle UP, DOWN and ESC\n },\n ref: 'menu'\n },\n !this.lazy || visible ? this.normalizeSlot(SLOT_NAME_DEFAULT, { hide }) : [h()]\n )\n\n return h(\n 'li',\n {\n staticClass: 'nav-item b-nav-dropdown dropdown',\n class: this.dropdownClasses,\n attrs: { id: this.safeId() }\n },\n [$toggle, $menu]\n )\n }\n})\n","import { BNav } from './nav'\nimport { BNavItem } from './nav-item'\nimport { BNavText } from './nav-text'\nimport { BNavForm } from './nav-form'\nimport { BNavItemDropdown } from './nav-item-dropdown'\nimport { DropdownPlugin } from '../dropdown'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst NavPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BNav,\n BNavItem,\n BNavText,\n BNavForm,\n BNavItemDropdown,\n BNavItemDd: BNavItemDropdown,\n BNavDropdown: BNavItemDropdown,\n BNavDd: BNavItemDropdown\n },\n plugins: {\n DropdownPlugin\n }\n})\n\nexport { NavPlugin, BNav, BNavItem, BNavText, BNavForm, BNavItemDropdown }\n","import { Vue } from '../../vue'\nimport { NAME_NAVBAR } from '../../constants/components'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { getBreakpoints } from '../../utils/config'\nimport { isTag } from '../../utils/dom'\nimport { isString } from '../../utils/inspect'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n fixed: makeProp(PROP_TYPE_STRING),\n print: makeProp(PROP_TYPE_BOOLEAN, false),\n sticky: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'nav'),\n toggleable: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n type: makeProp(PROP_TYPE_STRING, 'light'),\n variant: makeProp(PROP_TYPE_STRING)\n },\n NAME_NAVBAR\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavbar = /*#__PURE__*/ Vue.extend({\n name: NAME_NAVBAR,\n mixins: [normalizeSlotMixin],\n provide() {\n return { bvNavbar: this }\n },\n props,\n computed: {\n breakpointClass() {\n const { toggleable } = this\n const xs = getBreakpoints()[0]\n\n let breakpoint = null\n if (toggleable && isString(toggleable) && toggleable !== xs) {\n breakpoint = `navbar-expand-${toggleable}`\n } else if (toggleable === false) {\n breakpoint = 'navbar-expand'\n }\n\n return breakpoint\n }\n },\n render(h) {\n const { tag, type, variant, fixed } = this\n\n return h(\n tag,\n {\n staticClass: 'navbar',\n class: [\n {\n 'd-print': this.print,\n 'sticky-top': this.sticky,\n [`navbar-${type}`]: type,\n [`bg-${variant}`]: variant,\n [`fixed-${fixed}`]: fixed\n },\n this.breakpointClass\n ],\n attrs: {\n role: isTag(tag, 'nav') ? null : 'navigation'\n }\n },\n [this.normalizeSlot()]\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_NAVBAR_NAV } from '../../constants/components'\nimport { pick } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { props as BNavProps } from '../nav/nav'\n\n// --- Helper methods ---\n\nconst computeJustifyContent = value => {\n value = value === 'left' ? 'start' : value === 'right' ? 'end' : value\n return `justify-content-${value}`\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n pick(BNavProps, ['tag', 'fill', 'justified', 'align', 'small']),\n NAME_NAVBAR_NAV\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavbarNav = /*#__PURE__*/ Vue.extend({\n name: NAME_NAVBAR_NAV,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { align } = props\n\n return h(\n props.tag,\n mergeData(data, {\n staticClass: 'navbar-nav',\n class: {\n 'nav-fill': props.fill,\n 'nav-justified': props.justified,\n [computeJustifyContent(align)]: align,\n small: props.small\n }\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_NAVBAR_BRAND } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\nlinkProps.href.default = undefined\nlinkProps.to.default = undefined\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...linkProps,\n tag: makeProp(PROP_TYPE_STRING, 'div')\n }),\n NAME_NAVBAR_BRAND\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavbarBrand = /*#__PURE__*/ Vue.extend({\n name: NAME_NAVBAR_BRAND,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const isLink = props.to || props.href\n const tag = isLink ? BLink : props.tag\n\n return h(\n tag,\n mergeData(data, {\n staticClass: 'navbar-brand',\n props: isLink ? pluckProps(linkProps, props) : {}\n }),\n children\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_COLLAPSE, NAME_NAVBAR_TOGGLE } from '../../constants/components'\nimport { EVENT_NAME_CLICK } from '../../constants/events'\nimport { PROP_TYPE_ARRAY_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { getRootEventName } from '../../utils/events'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { VBToggle } from '../../directives/toggle/toggle'\n\n// --- Constants ---\n\nconst CLASS_NAME = 'navbar-toggler'\n\nconst ROOT_EVENT_NAME_STATE = getRootEventName(NAME_COLLAPSE, 'state')\nconst ROOT_EVENT_NAME_SYNC_STATE = getRootEventName(NAME_COLLAPSE, 'sync-state')\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n label: makeProp(PROP_TYPE_STRING, 'Toggle navigation'),\n target: makeProp(PROP_TYPE_ARRAY_STRING, undefined, true) // Required\n },\n NAME_NAVBAR_TOGGLE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BNavbarToggle = /*#__PURE__*/ Vue.extend({\n name: NAME_NAVBAR_TOGGLE,\n directives: { VBToggle },\n mixins: [listenOnRootMixin, normalizeSlotMixin],\n props,\n data() {\n return {\n toggleState: false\n }\n },\n created() {\n this.listenOnRoot(ROOT_EVENT_NAME_STATE, this.handleStateEvent)\n this.listenOnRoot(ROOT_EVENT_NAME_SYNC_STATE, this.handleStateEvent)\n },\n methods: {\n onClick(event) {\n if (!this.disabled) {\n // Emit courtesy `click` event\n this.$emit(EVENT_NAME_CLICK, event)\n }\n },\n handleStateEvent(id, state) {\n // We listen for state events so that we can pass the\n // boolean expanded state to the default scoped slot\n if (id === this.target) {\n this.toggleState = state\n }\n }\n },\n render(h) {\n const { disabled } = this\n\n return h(\n 'button',\n {\n staticClass: CLASS_NAME,\n class: { disabled },\n directives: [{ name: 'VBToggle', value: this.target }],\n attrs: {\n type: 'button',\n disabled,\n 'aria-label': this.label\n },\n on: { click: this.onClick }\n },\n [\n this.normalizeSlot(SLOT_NAME_DEFAULT, { expanded: this.toggleState }) ||\n h('span', { staticClass: `${CLASS_NAME}-icon` })\n ]\n )\n }\n})\n","import { BNavbar } from './navbar'\nimport { BNavbarNav } from './navbar-nav'\nimport { BNavbarBrand } from './navbar-brand'\nimport { BNavbarToggle } from './navbar-toggle'\nimport { NavPlugin } from '../nav'\nimport { CollapsePlugin } from '../collapse'\nimport { DropdownPlugin } from '../dropdown'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst NavbarPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BNavbar,\n BNavbarNav,\n BNavbarBrand,\n BNavbarToggle,\n BNavToggle: BNavbarToggle\n },\n plugins: {\n NavPlugin,\n CollapsePlugin,\n DropdownPlugin\n }\n})\n\nexport { NavbarPlugin, BNavbar, BNavbarNav, BNavbarBrand, BNavbarToggle }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_SPINNER } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_LABEL } from '../../constants/slots'\nimport { normalizeSlot } from '../../utils/normalize-slot'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n label: makeProp(PROP_TYPE_STRING),\n role: makeProp(PROP_TYPE_STRING, 'status'),\n small: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'span'),\n type: makeProp(PROP_TYPE_STRING, 'border'),\n variant: makeProp(PROP_TYPE_STRING)\n },\n NAME_SPINNER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BSpinner = /*#__PURE__*/ Vue.extend({\n name: NAME_SPINNER,\n functional: true,\n props,\n render(h, { props, data, slots, scopedSlots }) {\n const $slots = slots()\n const $scopedSlots = scopedSlots || {}\n\n let $label = normalizeSlot(SLOT_NAME_LABEL, {}, $scopedSlots, $slots) || props.label\n if ($label) {\n $label = h('span', { staticClass: 'sr-only' }, $label)\n }\n\n return h(\n props.tag,\n mergeData(data, {\n attrs: {\n role: $label ? props.role || 'status' : null,\n 'aria-hidden': $label ? null : 'true'\n },\n class: {\n [`spinner-${props.type}`]: props.type,\n [`spinner-${props.type}-sm`]: props.small,\n [`text-${props.variant}`]: props.variant\n }\n }),\n [$label || h()]\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_OVERLAY } from '../../constants/components'\nimport { EVENT_NAME_CLICK, EVENT_NAME_HIDDEN, EVENT_NAME_SHOWN } from '../../constants/events'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_STRING,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_OVERLAY } from '../../constants/slots'\nimport { toFloat } from '../../utils/number'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BSpinner } from '../spinner/spinner'\nimport { BVTransition } from '../transition/bv-transition'\n\n// --- Constants ---\n\nconst POSITION_COVER = { top: 0, left: 0, bottom: 0, right: 0 }\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n // Alternative to variant, allowing a specific\n // CSS color to be applied to the overlay\n bgColor: makeProp(PROP_TYPE_STRING),\n blur: makeProp(PROP_TYPE_STRING, '2px'),\n fixed: makeProp(PROP_TYPE_BOOLEAN, false),\n noCenter: makeProp(PROP_TYPE_BOOLEAN, false),\n noFade: makeProp(PROP_TYPE_BOOLEAN, false),\n // If `true, does not render the default slot\n // and switches to absolute positioning\n noWrap: makeProp(PROP_TYPE_BOOLEAN, false),\n opacity: makeProp(PROP_TYPE_NUMBER_STRING, 0.85, value => {\n const number = toFloat(value, 0)\n return number >= 0 && number <= 1\n }),\n overlayTag: makeProp(PROP_TYPE_STRING, 'div'),\n rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n show: makeProp(PROP_TYPE_BOOLEAN, false),\n spinnerSmall: makeProp(PROP_TYPE_BOOLEAN, false),\n spinnerType: makeProp(PROP_TYPE_STRING, 'border'),\n spinnerVariant: makeProp(PROP_TYPE_STRING),\n variant: makeProp(PROP_TYPE_STRING, 'light'),\n wrapTag: makeProp(PROP_TYPE_STRING, 'div'),\n zIndex: makeProp(PROP_TYPE_NUMBER_STRING, 10)\n },\n NAME_OVERLAY\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BOverlay = /*#__PURE__*/ Vue.extend({\n name: NAME_OVERLAY,\n mixins: [normalizeSlotMixin],\n props,\n computed: {\n computedRounded() {\n const { rounded } = this\n return rounded === true || rounded === '' ? 'rounded' : !rounded ? '' : `rounded-${rounded}`\n },\n computedVariant() {\n const { variant } = this\n return variant && !this.bgColor ? `bg-${variant}` : ''\n },\n slotScope() {\n return {\n spinnerType: this.spinnerType || null,\n spinnerVariant: this.spinnerVariant || null,\n spinnerSmall: this.spinnerSmall\n }\n }\n },\n methods: {\n defaultOverlayFn({ spinnerType, spinnerVariant, spinnerSmall }) {\n return this.$createElement(BSpinner, {\n props: {\n type: spinnerType,\n variant: spinnerVariant,\n small: spinnerSmall\n }\n })\n }\n },\n render(h) {\n const { show, fixed, noFade, noWrap, slotScope } = this\n\n let $overlay = h()\n if (show) {\n const $background = h('div', {\n staticClass: 'position-absolute',\n class: [this.computedVariant, this.computedRounded],\n style: {\n ...POSITION_COVER,\n opacity: this.opacity,\n backgroundColor: this.bgColor || null,\n backdropFilter: this.blur ? `blur(${this.blur})` : null\n }\n })\n\n const $content = h(\n 'div',\n {\n staticClass: 'position-absolute',\n style: this.noCenter\n ? /* istanbul ignore next */ { ...POSITION_COVER }\n : { top: '50%', left: '50%', transform: 'translateX(-50%) translateY(-50%)' }\n },\n [this.normalizeSlot(SLOT_NAME_OVERLAY, slotScope) || this.defaultOverlayFn(slotScope)]\n )\n\n $overlay = h(\n this.overlayTag,\n {\n staticClass: 'b-overlay',\n class: {\n 'position-absolute': !noWrap || (noWrap && !fixed),\n 'position-fixed': noWrap && fixed\n },\n style: {\n ...POSITION_COVER,\n zIndex: this.zIndex || 10\n },\n on: { click: event => this.$emit(EVENT_NAME_CLICK, event) },\n key: 'overlay'\n },\n [$background, $content]\n )\n }\n\n // Wrap in a fade transition\n $overlay = h(\n BVTransition,\n {\n props: {\n noFade,\n appear: true\n },\n on: {\n 'after-enter': () => this.$emit(EVENT_NAME_SHOWN),\n 'after-leave': () => this.$emit(EVENT_NAME_HIDDEN)\n }\n },\n [$overlay]\n )\n\n if (noWrap) {\n return $overlay\n }\n\n return h(\n this.wrapTag,\n {\n staticClass: 'b-overlay-wrap position-relative',\n attrs: { 'aria-busy': show ? 'true' : null }\n },\n noWrap ? [$overlay] : [this.normalizeSlot(), $overlay]\n )\n }\n})\n","import { BOverlay } from './overlay'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst OverlayPlugin = /*#__PURE__*/ pluginFactory({\n components: { BOverlay }\n})\n\nexport { OverlayPlugin, BOverlay }\n","import { Vue } from '../vue'\nimport { NAME_PAGINATION } from '../constants/components'\nimport { CODE_DOWN, CODE_LEFT, CODE_RIGHT, CODE_SPACE, CODE_UP } from '../constants/key-codes'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_NUMBER_STRING,\n PROP_TYPE_FUNCTION_STRING,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../constants/props'\nimport {\n SLOT_NAME_ELLIPSIS_TEXT,\n SLOT_NAME_FIRST_TEXT,\n SLOT_NAME_LAST_TEXT,\n SLOT_NAME_NEXT_TEXT,\n SLOT_NAME_PAGE,\n SLOT_NAME_PREV_TEXT\n} from '../constants/slots'\nimport { createArray } from '../utils/array'\nimport {\n attemptFocus,\n getActiveElement,\n getAttr,\n isDisabled,\n isVisible,\n selectAll\n} from '../utils/dom'\nimport { stopEvent } from '../utils/events'\nimport { isFunction, isNull } from '../utils/inspect'\nimport { mathFloor, mathMax, mathMin } from '../utils/math'\nimport { makeModelMixin } from '../utils/model'\nimport { toInteger } from '../utils/number'\nimport { sortKeys } from '../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../utils/props'\nimport { toString } from '../utils/string'\nimport { warn } from '../utils/warn'\nimport { normalizeSlotMixin } from '../mixins/normalize-slot'\nimport { BLink } from '../components/link/link'\n\n// Common props, computed, data, render function, and methods\n// for `<b-pagination>` and `<b-pagination-nav>`\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n type: PROP_TYPE_BOOLEAN_NUMBER_STRING,\n defaultValue: null,\n /* istanbul ignore next */\n validator(value) {\n if (!isNull(value) && toInteger(value, 0) < 1) {\n warn('\"v-model\" value must be a number greater than \"0\"', NAME_PAGINATION)\n return false\n }\n return true\n }\n})\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }\n\n// Threshold of limit size when we start/stop showing ellipsis\nconst ELLIPSIS_THRESHOLD = 3\n\n// Default # of buttons limit\nconst DEFAULT_LIMIT = 5\n\n// --- Helper methods ---\n\n// Make an array of N to N+X\nconst makePageArray = (startNumber, numberOfPages) =>\n createArray(numberOfPages, (_, i) => ({ number: startNumber + i, classes: null }))\n\n// Sanitize the provided limit value (converting to a number)\nconst sanitizeLimit = value => {\n const limit = toInteger(value) || 1\n return limit < 1 ? DEFAULT_LIMIT : limit\n}\n\n// Sanitize the provided current page number (converting to a number)\nconst sanitizeCurrentPage = (val, numberOfPages) => {\n const page = toInteger(val) || 1\n return page > numberOfPages ? numberOfPages : page < 1 ? 1 : page\n}\n\n// Links don't normally respond to SPACE, so we add that\n// functionality via this handler\nconst onSpaceKey = event => {\n if (event.keyCode === CODE_SPACE) {\n // Stop page from scrolling\n stopEvent(event, { immediatePropagation: true })\n // Trigger the click event on the link\n event.currentTarget.click()\n return false\n }\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...modelProps,\n align: makeProp(PROP_TYPE_STRING, 'left'),\n ariaLabel: makeProp(PROP_TYPE_STRING, 'Pagination'),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n ellipsisClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n ellipsisText: makeProp(PROP_TYPE_STRING, '\\u2026'), // '…'\n firstClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n firstNumber: makeProp(PROP_TYPE_BOOLEAN, false),\n firstText: makeProp(PROP_TYPE_STRING, '\\u00AB'), // '«'\n hideEllipsis: makeProp(PROP_TYPE_BOOLEAN, false),\n hideGotoEndButtons: makeProp(PROP_TYPE_BOOLEAN, false),\n labelFirstPage: makeProp(PROP_TYPE_STRING, 'Go to first page'),\n labelLastPage: makeProp(PROP_TYPE_STRING, 'Go to last page'),\n labelNextPage: makeProp(PROP_TYPE_STRING, 'Go to next page'),\n labelPage: makeProp(PROP_TYPE_FUNCTION_STRING, 'Go to page'),\n labelPrevPage: makeProp(PROP_TYPE_STRING, 'Go to previous page'),\n lastClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n lastNumber: makeProp(PROP_TYPE_BOOLEAN, false),\n lastText: makeProp(PROP_TYPE_STRING, '\\u00BB'), // '»'\n limit: makeProp(\n PROP_TYPE_NUMBER_STRING,\n DEFAULT_LIMIT,\n /* istanbul ignore next */ value => {\n if (toInteger(value, 0) < 1) {\n warn('Prop \"limit\" must be a number greater than \"0\"', NAME_PAGINATION)\n return false\n }\n return true\n }\n ),\n nextClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n nextText: makeProp(PROP_TYPE_STRING, '\\u203A'), // '›'\n pageClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n pills: makeProp(PROP_TYPE_BOOLEAN, false),\n prevClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n prevText: makeProp(PROP_TYPE_STRING, '\\u2039'), // '‹'\n size: makeProp(PROP_TYPE_STRING)\n }),\n 'pagination'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const paginationMixin = Vue.extend({\n mixins: [modelMixin, normalizeSlotMixin],\n props,\n data() {\n // `-1` signifies no page initially selected\n let currentPage = toInteger(this[MODEL_PROP_NAME], 0)\n currentPage = currentPage > 0 ? currentPage : -1\n\n return {\n currentPage,\n localNumberOfPages: 1,\n localLimit: DEFAULT_LIMIT\n }\n },\n computed: {\n btnSize() {\n const { size } = this\n return size ? `pagination-${size}` : ''\n },\n alignment() {\n const { align } = this\n if (align === 'center') {\n return 'justify-content-center'\n } else if (align === 'end' || align === 'right') {\n return 'justify-content-end'\n } else if (align === 'fill') {\n // The page-items will also have 'flex-fill' added\n // We add text centering to make the button appearance better in fill mode\n return 'text-center'\n }\n return ''\n },\n styleClass() {\n return this.pills ? 'b-pagination-pills' : ''\n },\n computedCurrentPage() {\n return sanitizeCurrentPage(this.currentPage, this.localNumberOfPages)\n },\n paginationParams() {\n // Determine if we should show the the ellipsis\n const {\n localLimit: limit,\n localNumberOfPages: numberOfPages,\n computedCurrentPage: currentPage,\n hideEllipsis,\n firstNumber,\n lastNumber\n } = this\n let showFirstDots = false\n let showLastDots = false\n let numberOfLinks = limit\n let startNumber = 1\n\n if (numberOfPages <= limit) {\n // Special case: Less pages available than the limit of displayed pages\n numberOfLinks = numberOfPages\n } else if (currentPage < limit - 1 && limit > ELLIPSIS_THRESHOLD) {\n if (!hideEllipsis || lastNumber) {\n showLastDots = true\n numberOfLinks = limit - (firstNumber ? 0 : 1)\n }\n numberOfLinks = mathMin(numberOfLinks, limit)\n } else if (numberOfPages - currentPage + 2 < limit && limit > ELLIPSIS_THRESHOLD) {\n if (!hideEllipsis || firstNumber) {\n showFirstDots = true\n numberOfLinks = limit - (lastNumber ? 0 : 1)\n }\n startNumber = numberOfPages - numberOfLinks + 1\n } else {\n // We are somewhere in the middle of the page list\n if (limit > ELLIPSIS_THRESHOLD) {\n numberOfLinks = limit - (hideEllipsis ? 0 : 2)\n showFirstDots = !!(!hideEllipsis || firstNumber)\n showLastDots = !!(!hideEllipsis || lastNumber)\n }\n startNumber = currentPage - mathFloor(numberOfLinks / 2)\n }\n // Sanity checks\n /* istanbul ignore if */\n if (startNumber < 1) {\n startNumber = 1\n showFirstDots = false\n } else if (startNumber > numberOfPages - numberOfLinks) {\n startNumber = numberOfPages - numberOfLinks + 1\n showLastDots = false\n }\n if (showFirstDots && firstNumber && startNumber < 4) {\n numberOfLinks = numberOfLinks + 2\n startNumber = 1\n showFirstDots = false\n }\n const lastPageNumber = startNumber + numberOfLinks - 1\n if (showLastDots && lastNumber && lastPageNumber > numberOfPages - 3) {\n numberOfLinks = numberOfLinks + (lastPageNumber === numberOfPages - 2 ? 2 : 3)\n showLastDots = false\n }\n // Special handling for lower limits (where ellipsis are never shown)\n if (limit <= ELLIPSIS_THRESHOLD) {\n if (firstNumber && startNumber === 1) {\n numberOfLinks = mathMin(numberOfLinks + 1, numberOfPages, limit + 1)\n } else if (lastNumber && numberOfPages === startNumber + numberOfLinks - 1) {\n startNumber = mathMax(startNumber - 1, 1)\n numberOfLinks = mathMin(numberOfPages - startNumber + 1, numberOfPages, limit + 1)\n }\n }\n numberOfLinks = mathMin(numberOfLinks, numberOfPages - startNumber + 1)\n return { showFirstDots, showLastDots, numberOfLinks, startNumber }\n },\n pageList() {\n // Generates the pageList array\n const { numberOfLinks, startNumber } = this.paginationParams\n const currentPage = this.computedCurrentPage\n // Generate list of page numbers\n const pages = makePageArray(startNumber, numberOfLinks)\n // We limit to a total of 3 page buttons on XS screens\n // So add classes to page links to hide them for XS breakpoint\n // Note: Ellipsis will also be hidden on XS screens\n // TODO: Make this visual limit configurable based on breakpoint(s)\n if (pages.length > 3) {\n const idx = currentPage - startNumber\n // THe following is a bootstrap-vue custom utility class\n const classes = 'bv-d-xs-down-none'\n if (idx === 0) {\n // Keep leftmost 3 buttons visible when current page is first page\n for (let i = 3; i < pages.length; i++) {\n pages[i].classes = classes\n }\n } else if (idx === pages.length - 1) {\n // Keep rightmost 3 buttons visible when current page is last page\n for (let i = 0; i < pages.length - 3; i++) {\n pages[i].classes = classes\n }\n } else {\n // Hide all except current page, current page - 1 and current page + 1\n for (let i = 0; i < idx - 1; i++) {\n // hide some left button(s)\n pages[i].classes = classes\n }\n for (let i = pages.length - 1; i > idx + 1; i--) {\n // hide some right button(s)\n pages[i].classes = classes\n }\n }\n }\n return pages\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue, oldValue) {\n if (newValue !== oldValue) {\n this.currentPage = sanitizeCurrentPage(newValue, this.localNumberOfPages)\n }\n },\n currentPage(newValue, oldValue) {\n if (newValue !== oldValue) {\n // Emit `null` if no page selected\n this.$emit(MODEL_EVENT_NAME, newValue > 0 ? newValue : null)\n }\n },\n limit(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.localLimit = sanitizeLimit(newValue)\n }\n }\n },\n created() {\n // Set our default values in data\n this.localLimit = sanitizeLimit(this.limit)\n this.$nextTick(() => {\n // Sanity check\n this.currentPage =\n this.currentPage > this.localNumberOfPages ? this.localNumberOfPages : this.currentPage\n })\n },\n methods: {\n handleKeyNav(event) {\n const { keyCode, shiftKey } = event\n /* istanbul ignore if */\n if (this.isNav) {\n // We disable left/right keyboard navigation in `<b-pagination-nav>`\n return\n }\n if (keyCode === CODE_LEFT || keyCode === CODE_UP) {\n stopEvent(event, { propagation: false })\n shiftKey ? this.focusFirst() : this.focusPrev()\n } else if (keyCode === CODE_RIGHT || keyCode === CODE_DOWN) {\n stopEvent(event, { propagation: false })\n shiftKey ? this.focusLast() : this.focusNext()\n }\n },\n getButtons() {\n // Return only buttons that are visible\n return selectAll('button.page-link, a.page-link', this.$el).filter(btn => isVisible(btn))\n },\n focusCurrent() {\n // We do this in `$nextTick()` to ensure buttons have finished rendering\n this.$nextTick(() => {\n const btn = this.getButtons().find(\n el => toInteger(getAttr(el, 'aria-posinset'), 0) === this.computedCurrentPage\n )\n if (!attemptFocus(btn)) {\n // Fallback if current page is not in button list\n this.focusFirst()\n }\n })\n },\n focusFirst() {\n // We do this in `$nextTick()` to ensure buttons have finished rendering\n this.$nextTick(() => {\n const btn = this.getButtons().find(el => !isDisabled(el))\n attemptFocus(btn)\n })\n },\n focusLast() {\n // We do this in `$nextTick()` to ensure buttons have finished rendering\n this.$nextTick(() => {\n const btn = this.getButtons()\n .reverse()\n .find(el => !isDisabled(el))\n attemptFocus(btn)\n })\n },\n focusPrev() {\n // We do this in `$nextTick()` to ensure buttons have finished rendering\n this.$nextTick(() => {\n const buttons = this.getButtons()\n const index = buttons.indexOf(getActiveElement())\n if (index > 0 && !isDisabled(buttons[index - 1])) {\n attemptFocus(buttons[index - 1])\n }\n })\n },\n focusNext() {\n // We do this in `$nextTick()` to ensure buttons have finished rendering\n this.$nextTick(() => {\n const buttons = this.getButtons()\n const index = buttons.indexOf(getActiveElement())\n if (index < buttons.length - 1 && !isDisabled(buttons[index + 1])) {\n attemptFocus(buttons[index + 1])\n }\n })\n }\n },\n render(h) {\n const {\n disabled,\n labelPage,\n ariaLabel,\n isNav,\n localNumberOfPages: numberOfPages,\n computedCurrentPage: currentPage\n } = this\n const pageNumbers = this.pageList.map(p => p.number)\n const { showFirstDots, showLastDots } = this.paginationParams\n const fill = this.align === 'fill'\n const $buttons = []\n\n // Helper function and flag\n const isActivePage = pageNumber => pageNumber === currentPage\n const noCurrentPage = this.currentPage < 1\n\n // Factory function for prev/next/first/last buttons\n const makeEndBtn = (linkTo, ariaLabel, btnSlot, btnText, btnClass, pageTest, key) => {\n const isDisabled =\n disabled || isActivePage(pageTest) || noCurrentPage || linkTo < 1 || linkTo > numberOfPages\n const pageNumber = linkTo < 1 ? 1 : linkTo > numberOfPages ? numberOfPages : linkTo\n const scope = { disabled: isDisabled, page: pageNumber, index: pageNumber - 1 }\n const $btnContent = this.normalizeSlot(btnSlot, scope) || toString(btnText) || h()\n const $inner = h(\n isDisabled ? 'span' : isNav ? BLink : 'button',\n {\n staticClass: 'page-link',\n class: { 'flex-grow-1': !isNav && !isDisabled && fill },\n props: isDisabled || !isNav ? {} : this.linkProps(linkTo),\n attrs: {\n role: isNav ? null : 'menuitem',\n type: isNav || isDisabled ? null : 'button',\n tabindex: isDisabled || isNav ? null : '-1',\n 'aria-label': ariaLabel,\n 'aria-controls': this.ariaControls || null,\n 'aria-disabled': isDisabled ? 'true' : null\n },\n on: isDisabled\n ? {}\n : {\n '!click': event => {\n this.onClick(event, linkTo)\n },\n keydown: onSpaceKey\n }\n },\n [$btnContent]\n )\n return h(\n 'li',\n {\n key,\n staticClass: 'page-item',\n class: [\n {\n disabled: isDisabled,\n 'flex-fill': fill,\n 'd-flex': fill && !isNav && !isDisabled\n },\n btnClass\n ],\n attrs: {\n role: isNav ? null : 'presentation',\n 'aria-hidden': isDisabled ? 'true' : null\n }\n },\n [$inner]\n )\n }\n\n // Ellipsis factory\n const makeEllipsis = isLast => {\n return h(\n 'li',\n {\n staticClass: 'page-item',\n class: ['disabled', 'bv-d-xs-down-none', fill ? 'flex-fill' : '', this.ellipsisClass],\n attrs: { role: 'separator' },\n key: `ellipsis-${isLast ? 'last' : 'first'}`\n },\n [\n h('span', { staticClass: 'page-link' }, [\n this.normalizeSlot(SLOT_NAME_ELLIPSIS_TEXT) || toString(this.ellipsisText) || h()\n ])\n ]\n )\n }\n\n // Page button factory\n const makePageButton = (page, idx) => {\n const { number: pageNumber } = page\n const active = isActivePage(pageNumber) && !noCurrentPage\n // Active page will have tabindex of 0, or if no current page and first page button\n const tabIndex = disabled ? null : active || (noCurrentPage && idx === 0) ? '0' : '-1'\n\n const attrs = {\n role: isNav ? null : 'menuitemradio',\n type: isNav || disabled ? null : 'button',\n 'aria-disabled': disabled ? 'true' : null,\n 'aria-controls': this.ariaControls || null,\n 'aria-label': hasPropFunction(labelPage)\n ? /* istanbul ignore next */ labelPage(pageNumber)\n : `${isFunction(labelPage) ? labelPage() : labelPage} ${pageNumber}`,\n 'aria-checked': isNav ? null : active ? 'true' : 'false',\n 'aria-current': isNav && active ? 'page' : null,\n 'aria-posinset': isNav ? null : pageNumber,\n 'aria-setsize': isNav ? null : numberOfPages,\n // ARIA \"roving tabindex\" method (except in `isNav` mode)\n tabindex: isNav ? null : tabIndex\n }\n const btnContent = toString(this.makePage(pageNumber))\n const scope = {\n page: pageNumber,\n index: pageNumber - 1,\n content: btnContent,\n active,\n disabled\n }\n\n const $inner = h(\n disabled ? 'span' : isNav ? BLink : 'button',\n {\n props: disabled || !isNav ? {} : this.linkProps(pageNumber),\n staticClass: 'page-link',\n class: { 'flex-grow-1': !isNav && !disabled && fill },\n attrs,\n on: disabled\n ? {}\n : {\n '!click': event => {\n this.onClick(event, pageNumber)\n },\n keydown: onSpaceKey\n }\n },\n [this.normalizeSlot(SLOT_NAME_PAGE, scope) || btnContent]\n )\n\n return h(\n 'li',\n {\n staticClass: 'page-item',\n class: [\n {\n disabled,\n active,\n 'flex-fill': fill,\n 'd-flex': fill && !isNav && !disabled\n },\n page.classes,\n this.pageClass\n ],\n attrs: { role: isNav ? null : 'presentation' },\n key: `page-${pageNumber}`\n },\n [$inner]\n )\n }\n\n // Goto first page button\n // Don't render button when `hideGotoEndButtons` or `firstNumber` is set\n let $firstPageBtn = h()\n if (!this.firstNumber && !this.hideGotoEndButtons) {\n $firstPageBtn = makeEndBtn(\n 1,\n this.labelFirstPage,\n SLOT_NAME_FIRST_TEXT,\n this.firstText,\n this.firstClass,\n 1,\n 'pagination-goto-first'\n )\n }\n $buttons.push($firstPageBtn)\n\n // Goto previous page button\n $buttons.push(\n makeEndBtn(\n currentPage - 1,\n this.labelPrevPage,\n SLOT_NAME_PREV_TEXT,\n this.prevText,\n this.prevClass,\n 1,\n 'pagination-goto-prev'\n )\n )\n\n // Show first (1) button?\n $buttons.push(this.firstNumber && pageNumbers[0] !== 1 ? makePageButton({ number: 1 }, 0) : h())\n\n // First ellipsis\n $buttons.push(showFirstDots ? makeEllipsis(false) : h())\n\n // Individual page links\n this.pageList.forEach((page, idx) => {\n const offset = showFirstDots && this.firstNumber && pageNumbers[0] !== 1 ? 1 : 0\n $buttons.push(makePageButton(page, idx + offset))\n })\n\n // Last ellipsis\n $buttons.push(showLastDots ? makeEllipsis(true) : h())\n\n // Show last page button?\n $buttons.push(\n this.lastNumber && pageNumbers[pageNumbers.length - 1] !== numberOfPages\n ? makePageButton({ number: numberOfPages }, -1)\n : h()\n )\n\n // Goto next page button\n $buttons.push(\n makeEndBtn(\n currentPage + 1,\n this.labelNextPage,\n SLOT_NAME_NEXT_TEXT,\n this.nextText,\n this.nextClass,\n numberOfPages,\n 'pagination-goto-next'\n )\n )\n\n // Goto last page button\n // Don't render button when `hideGotoEndButtons` or `lastNumber` is set\n let $lastPageBtn = h()\n if (!this.lastNumber && !this.hideGotoEndButtons) {\n $lastPageBtn = makeEndBtn(\n numberOfPages,\n this.labelLastPage,\n SLOT_NAME_LAST_TEXT,\n this.lastText,\n this.lastClass,\n numberOfPages,\n 'pagination-goto-last'\n )\n }\n $buttons.push($lastPageBtn)\n\n // Assemble the pagination buttons\n const $pagination = h(\n 'ul',\n {\n staticClass: 'pagination',\n class: ['b-pagination', this.btnSize, this.alignment, this.styleClass],\n attrs: {\n role: isNav ? null : 'menubar',\n 'aria-disabled': disabled ? 'true' : 'false',\n 'aria-label': isNav ? null : ariaLabel || null\n },\n // We disable keyboard left/right nav when `<b-pagination-nav>`\n on: isNav ? {} : { keydown: this.handleKeyNav },\n ref: 'ul'\n },\n $buttons\n )\n\n // If we are `<b-pagination-nav>`, wrap in `<nav>` wrapper\n if (isNav) {\n return h(\n 'nav',\n {\n attrs: {\n 'aria-disabled': disabled ? 'true' : null,\n 'aria-hidden': disabled ? 'true' : 'false',\n 'aria-label': isNav ? ariaLabel || null : null\n }\n },\n [$pagination]\n )\n }\n\n return $pagination\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_PAGINATION } from '../../constants/components'\nimport { EVENT_NAME_CHANGE, EVENT_NAME_PAGE_CLICK } from '../../constants/events'\nimport { PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { BvEvent } from '../../utils/bv-event.class'\nimport { attemptFocus, isVisible } from '../../utils/dom'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { mathCeil, mathMax } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { MODEL_PROP_NAME, paginationMixin, props as paginationProps } from '../../mixins/pagination'\n\n// --- Constants ---\n\nconst DEFAULT_PER_PAGE = 20\nconst DEFAULT_TOTAL_ROWS = 0\n\n// --- Helper methods ---\n\n// Sanitize the provided per page number (converting to a number)\nconst sanitizePerPage = value => mathMax(toInteger(value) || DEFAULT_PER_PAGE, 1)\n\n// Sanitize the provided total rows number (converting to a number)\nconst sanitizeTotalRows = value => mathMax(toInteger(value) || DEFAULT_TOTAL_ROWS, 0)\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...paginationProps,\n ariaControls: makeProp(PROP_TYPE_STRING),\n perPage: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_PER_PAGE),\n totalRows: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_TOTAL_ROWS)\n }),\n NAME_PAGINATION\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BPagination = /*#__PURE__*/ Vue.extend({\n name: NAME_PAGINATION,\n // The render function is brought in via the `paginationMixin`\n mixins: [paginationMixin],\n props,\n computed: {\n numberOfPages() {\n const result = mathCeil(sanitizeTotalRows(this.totalRows) / sanitizePerPage(this.perPage))\n return result < 1 ? 1 : result\n },\n // Used for watching changes to `perPage` and `numberOfPages`\n pageSizeNumberOfPages() {\n return {\n perPage: sanitizePerPage(this.perPage),\n totalRows: sanitizeTotalRows(this.totalRows),\n numberOfPages: this.numberOfPages\n }\n }\n },\n watch: {\n pageSizeNumberOfPages(newValue, oldValue) {\n if (!isUndefinedOrNull(oldValue)) {\n if (newValue.perPage !== oldValue.perPage && newValue.totalRows === oldValue.totalRows) {\n // If the page size changes, reset to page 1\n this.currentPage = 1\n } else if (\n newValue.numberOfPages !== oldValue.numberOfPages &&\n this.currentPage > newValue.numberOfPages\n ) {\n // If `numberOfPages` changes and is less than\n // the `currentPage` number, reset to page 1\n this.currentPage = 1\n }\n }\n this.localNumberOfPages = newValue.numberOfPages\n }\n },\n created() {\n // Set the initial page count\n this.localNumberOfPages = this.numberOfPages\n // Set the initial page value\n const currentPage = toInteger(this[MODEL_PROP_NAME], 0)\n if (currentPage > 0) {\n this.currentPage = currentPage\n } else {\n this.$nextTick(() => {\n // If this value parses to `NaN` or a value less than `1`\n // trigger an initial emit of `null` if no page specified\n this.currentPage = 0\n })\n }\n },\n methods: {\n // These methods are used by the render function\n onClick(event, pageNumber) {\n // Dont do anything if clicking the current active page\n if (pageNumber === this.currentPage) {\n return\n }\n\n const { target } = event\n\n // Emit a user-cancelable `page-click` event\n const clickEvent = new BvEvent(EVENT_NAME_PAGE_CLICK, {\n cancelable: true,\n vueTarget: this,\n target\n })\n this.$emit(clickEvent.type, clickEvent, pageNumber)\n if (clickEvent.defaultPrevented) {\n return\n }\n\n // Update the `v-model`\n this.currentPage = pageNumber\n // Emit event triggered by user interaction\n this.$emit(EVENT_NAME_CHANGE, this.currentPage)\n\n // Keep the current button focused if possible\n this.$nextTick(() => {\n if (isVisible(target) && this.$el.contains(target)) {\n attemptFocus(target)\n } else {\n this.focusCurrent()\n }\n })\n },\n makePage(pageNum) {\n return pageNum\n },\n /* istanbul ignore next */\n linkProps() {\n // No props, since we render a plain button\n return {}\n }\n }\n})\n","import { BPagination } from './pagination'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst PaginationPlugin = /*#__PURE__*/ pluginFactory({\n components: { BPagination }\n})\n\nexport { PaginationPlugin, BPagination }\n","import { Vue } from '../../vue'\nimport { NAME_PAGINATION_NAV } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport { EVENT_NAME_CHANGE, EVENT_NAME_PAGE_CLICK } from '../../constants/events'\nimport {\n PROP_TYPE_ARRAY,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_FUNCTION,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { BvEvent } from '../../utils/bv-event.class'\nimport { attemptBlur, requestAF } from '../../utils/dom'\nimport { isArray, isUndefined, isObject } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { mathMax } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport { omit, sortKeys } from '../../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { computeHref, parseQuery } from '../../utils/router'\nimport { toString } from '../../utils/string'\nimport { warn } from '../../utils/warn'\nimport { paginationMixin, props as paginationProps } from '../../mixins/pagination'\nimport { props as BLinkProps } from '../link/link'\n\n// --- Helper methods ---\n\n// Sanitize the provided number of pages (converting to a number)\nexport const sanitizeNumberOfPages = value => mathMax(toInteger(value, 0), 1)\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\n\nconst props = makePropsConfigurable(\n sortKeys({\n ...paginationProps,\n ...linkProps,\n baseUrl: makeProp(PROP_TYPE_STRING, '/'),\n linkGen: makeProp(PROP_TYPE_FUNCTION),\n // Disable auto page number detection if `true`\n noPageDetect: makeProp(PROP_TYPE_BOOLEAN, false),\n numberOfPages: makeProp(\n PROP_TYPE_NUMBER_STRING,\n 1,\n /* istanbul ignore next */\n value => {\n const number = toInteger(value, 0)\n if (number < 1) {\n warn('Prop \"number-of-pages\" must be a number greater than \"0\"', NAME_PAGINATION_NAV)\n return false\n }\n return true\n }\n ),\n pageGen: makeProp(PROP_TYPE_FUNCTION),\n // Optional array of page links\n pages: makeProp(PROP_TYPE_ARRAY),\n useRouter: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_PAGINATION_NAV\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BPaginationNav = /*#__PURE__*/ Vue.extend({\n name: NAME_PAGINATION_NAV,\n // The render function is brought in via the pagination mixin\n mixins: [paginationMixin],\n props,\n computed: {\n // Used by render function to trigger wrapping in '<nav>' element\n isNav() {\n return true\n },\n computedValue() {\n // Returns the value prop as a number or `null` if undefined or < 1\n const value = toInteger(this.value, 0)\n return value < 1 ? null : value\n }\n },\n watch: {\n numberOfPages() {\n this.$nextTick(() => {\n this.setNumberOfPages()\n })\n },\n pages() {\n this.$nextTick(() => {\n this.setNumberOfPages()\n })\n }\n },\n created() {\n this.setNumberOfPages()\n },\n mounted() {\n if (this.$router) {\n // We only add the watcher if vue router is detected\n this.$watch('$route', () => {\n this.$nextTick(() => {\n requestAF(() => {\n this.guessCurrentPage()\n })\n })\n })\n }\n },\n methods: {\n setNumberOfPages() {\n if (isArray(this.pages) && this.pages.length > 0) {\n this.localNumberOfPages = this.pages.length\n } else {\n this.localNumberOfPages = sanitizeNumberOfPages(this.numberOfPages)\n }\n this.$nextTick(() => {\n this.guessCurrentPage()\n })\n },\n onClick(event, pageNumber) {\n // Dont do anything if clicking the current active page\n if (pageNumber === this.currentPage) {\n return\n }\n\n const target = event.currentTarget || event.target\n\n // Emit a user-cancelable `page-click` event\n const clickEvent = new BvEvent(EVENT_NAME_PAGE_CLICK, {\n cancelable: true,\n vueTarget: this,\n target\n })\n this.$emit(clickEvent.type, clickEvent, pageNumber)\n if (clickEvent.defaultPrevented) {\n return\n }\n\n // Update the `v-model`\n // Done in in requestAF() to allow browser to complete the\n // native browser click handling of a link\n requestAF(() => {\n this.currentPage = pageNumber\n this.$emit(EVENT_NAME_CHANGE, pageNumber)\n })\n\n // Emulate native link click page reloading behaviour by blurring the\n // paginator and returning focus to the document\n // Done in a `nextTick()` to ensure rendering complete\n this.$nextTick(() => {\n attemptBlur(target)\n })\n },\n getPageInfo(pageNumber) {\n if (\n !isArray(this.pages) ||\n this.pages.length === 0 ||\n isUndefined(this.pages[pageNumber - 1])\n ) {\n const link = `${this.baseUrl}${pageNumber}`\n return {\n link: this.useRouter ? { path: link } : link,\n text: toString(pageNumber)\n }\n }\n const info = this.pages[pageNumber - 1]\n if (isObject(info)) {\n const link = info.link\n return {\n // Normalize link for router use\n link: isObject(link) ? link : this.useRouter ? { path: link } : link,\n // Make sure text has a value\n text: toString(info.text || pageNumber)\n }\n } else {\n return { link: toString(info), text: toString(pageNumber) }\n }\n },\n makePage(pageNumber) {\n const { pageGen } = this\n const info = this.getPageInfo(pageNumber)\n if (hasPropFunction(pageGen)) {\n return pageGen(pageNumber, info)\n }\n return info.text\n },\n makeLink(pageNumber) {\n const { linkGen } = this\n const info = this.getPageInfo(pageNumber)\n if (hasPropFunction(linkGen)) {\n return linkGen(pageNumber, info)\n }\n return info.link\n },\n linkProps(pageNumber) {\n const props = pluckProps(linkProps, this)\n const link = this.makeLink(pageNumber)\n if (this.useRouter || isObject(link)) {\n props.to = link\n } else {\n props.href = link\n }\n return props\n },\n resolveLink(to = '') {\n // Given a to (or href string), convert to normalized route-like structure\n // Works only client side!\n let link\n try {\n // Convert the `to` to a HREF via a temporary `a` tag\n link = document.createElement('a')\n link.href = computeHref({ to }, 'a', '/', '/')\n // We need to add the anchor to the document to make sure the\n // `pathname` is correctly detected in any browser (i.e. IE)\n document.body.appendChild(link)\n // Once href is assigned, the link will be normalized to the full URL bits\n const { pathname, hash, search } = link\n // Remove link from document\n document.body.removeChild(link)\n // Return the location in a route-like object\n return { path: pathname, hash, query: parseQuery(search) }\n } catch (e) {\n /* istanbul ignore next */\n try {\n link && link.parentNode && link.parentNode.removeChild(link)\n } catch {}\n /* istanbul ignore next */\n return {}\n }\n },\n resolveRoute(to = '') {\n // Given a to (or href string), convert to normalized route location structure\n // Works only when router available!\n try {\n const route = this.$router.resolve(to, this.$route).route\n return { path: route.path, hash: route.hash, query: route.query }\n } catch (e) {\n /* istanbul ignore next */\n return {}\n }\n },\n guessCurrentPage() {\n const { $router, $route } = this\n let guess = this.computedValue\n // This section only occurs if we are client side, or server-side with `$router`\n if (!this.noPageDetect && !guess && (IS_BROWSER || (!IS_BROWSER && $router))) {\n // Current route (if router available)\n const currentRoute =\n $router && $route ? { path: $route.path, hash: $route.hash, query: $route.query } : {}\n // Current page full HREF (if client side)\n // Can't be done as a computed prop!\n const loc = IS_BROWSER ? window.location || document.location : null\n const currentLink = loc\n ? { path: loc.pathname, hash: loc.hash, query: parseQuery(loc.search) }\n : /* istanbul ignore next */ {}\n // Loop through the possible pages looking for a match until found\n for (let pageNumber = 1; !guess && pageNumber <= this.localNumberOfPages; pageNumber++) {\n const to = this.makeLink(pageNumber)\n if ($router && (isObject(to) || this.useRouter)) {\n // Resolve the page via the `$router`\n guess = looseEqual(this.resolveRoute(to), currentRoute) ? pageNumber : null\n } else if (IS_BROWSER) {\n // If no `$router` available (or `!this.useRouter` when `to` is a string)\n // we compare using parsed URIs\n guess = looseEqual(this.resolveLink(to), currentLink) ? pageNumber : null\n } else {\n // Probably SSR, but no `$router` so we can't guess,\n // so lets break out of the loop early\n /* istanbul ignore next */\n guess = -1\n }\n }\n }\n // We set `currentPage` to `0` to trigger an `$emit('input', null)`\n // As the default for `currentPage` is `-1` when no value is specified\n // Valid page numbers are greater than `0`\n this.currentPage = guess > 0 ? guess : 0\n }\n }\n})\n","import { BPaginationNav } from './pagination-nav'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst PaginationNavPlugin = /*#__PURE__*/ pluginFactory({\n components: { BPaginationNav }\n})\n\nexport { PaginationNavPlugin, BPaginationNav }\n","// Base on-demand component for tooltip / popover templates\n//\n// Currently:\n// Responsible for positioning and transitioning the template\n// Templates are only instantiated when shown, and destroyed when hidden\n//\n\nimport Popper from 'popper.js'\nimport { Vue } from '../../../vue'\nimport { NAME_POPPER } from '../../../constants/components'\nimport {\n EVENT_NAME_HIDDEN,\n EVENT_NAME_HIDE,\n EVENT_NAME_SHOW,\n EVENT_NAME_SHOWN,\n HOOK_EVENT_NAME_DESTROYED\n} from '../../../constants/events'\nimport {\n PROP_TYPE_ARRAY_STRING,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../../constants/props'\nimport { HTMLElement, SVGElement } from '../../../constants/safe-types'\nimport { getCS, requestAF, select } from '../../../utils/dom'\nimport { toFloat } from '../../../utils/number'\nimport { makeProp } from '../../../utils/props'\nimport { BVTransition } from '../../transition/bv-transition'\n\n// --- Constants ---\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: 'right',\n BOTTOM: 'bottom',\n LEFT: 'left',\n TOPLEFT: 'top',\n TOPRIGHT: 'top',\n RIGHTTOP: 'right',\n RIGHTBOTTOM: 'right',\n BOTTOMLEFT: 'bottom',\n BOTTOMRIGHT: 'bottom',\n LEFTTOP: 'left',\n LEFTBOTTOM: 'left'\n}\n\nconst OffsetMap = {\n AUTO: 0,\n TOPLEFT: -1,\n TOP: 0,\n TOPRIGHT: +1,\n RIGHTTOP: -1,\n RIGHT: 0,\n RIGHTBOTTOM: +1,\n BOTTOMLEFT: -1,\n BOTTOM: 0,\n BOTTOMRIGHT: +1,\n LEFTTOP: -1,\n LEFT: 0,\n LEFTBOTTOM: +1\n}\n\n// --- Props ---\n\nexport const props = {\n // The minimum distance (in `px`) from the edge of the\n // tooltip/popover that the arrow can be positioned\n arrowPadding: makeProp(PROP_TYPE_NUMBER_STRING, 6),\n // 'scrollParent', 'viewport', 'window', or `Element`\n boundary: makeProp([HTMLElement, PROP_TYPE_STRING], 'scrollParent'),\n // Tooltip/popover will try and stay away from\n // boundary edge by this many pixels\n boundaryPadding: makeProp(PROP_TYPE_NUMBER_STRING, 5),\n fallbackPlacement: makeProp(PROP_TYPE_ARRAY_STRING, 'flip'),\n offset: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n placement: makeProp(PROP_TYPE_STRING, 'top'),\n // Element that the tooltip/popover is positioned relative to\n target: makeProp([HTMLElement, SVGElement])\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BVPopper = /*#__PURE__*/ Vue.extend({\n name: NAME_POPPER,\n props,\n data() {\n return {\n // reactive props set by parent\n noFade: false,\n // State related data\n localShow: true,\n attachment: this.getAttachment(this.placement)\n }\n },\n computed: {\n /* istanbul ignore next */\n templateType() {\n // Overridden by template component\n return 'unknown'\n },\n popperConfig() {\n const { placement } = this\n return {\n placement: this.getAttachment(placement),\n modifiers: {\n offset: { offset: this.getOffset(placement) },\n flip: { behavior: this.fallbackPlacement },\n // `arrow.element` can also be a reference to an HTML Element\n // maybe we should make this a `$ref` in the templates?\n arrow: { element: '.arrow' },\n preventOverflow: {\n padding: this.boundaryPadding,\n boundariesElement: this.boundary\n }\n },\n onCreate: data => {\n // Handle flipping arrow classes\n if (data.originalPlacement !== data.placement) {\n /* istanbul ignore next: can't test in JSDOM */\n this.popperPlacementChange(data)\n }\n },\n onUpdate: data => {\n // Handle flipping arrow classes\n this.popperPlacementChange(data)\n }\n }\n }\n },\n created() {\n // Note: We are created on-demand, and should be guaranteed that\n // DOM is rendered/ready by the time the created hook runs\n this.$_popper = null\n // Ensure we show as we mount\n this.localShow = true\n // Create popper instance before shown\n this.$on(EVENT_NAME_SHOW, el => {\n this.popperCreate(el)\n })\n // Self destruct handler\n const handleDestroy = () => {\n this.$nextTick(() => {\n // In a `requestAF()` to release control back to application\n requestAF(() => {\n this.$destroy()\n })\n })\n }\n // Self destruct if parent destroyed\n this.$parent.$once(HOOK_EVENT_NAME_DESTROYED, handleDestroy)\n // Self destruct after hidden\n this.$once(EVENT_NAME_HIDDEN, handleDestroy)\n },\n beforeMount() {\n // Ensure that the attachment position is correct before mounting\n // as our propsData is added after `new Template({...})`\n this.attachment = this.getAttachment(this.placement)\n },\n updated() {\n // Update popper if needed\n // TODO: Should this be a watcher on `this.popperConfig` instead?\n this.updatePopper()\n },\n beforeDestroy() {\n this.destroyPopper()\n },\n destroyed() {\n // Make sure template is removed from DOM\n const el = this.$el\n el && el.parentNode && el.parentNode.removeChild(el)\n },\n methods: {\n // \"Public\" method to trigger hide template\n hide() {\n this.localShow = false\n },\n // Private\n getAttachment(placement) {\n return AttachmentMap[String(placement).toUpperCase()] || 'auto'\n },\n getOffset(placement) {\n if (!this.offset) {\n // Could set a ref for the arrow element\n const arrow = this.$refs.arrow || select('.arrow', this.$el)\n const arrowOffset = toFloat(getCS(arrow).width, 0) + toFloat(this.arrowPadding, 0)\n switch (OffsetMap[String(placement).toUpperCase()] || 0) {\n /* istanbul ignore next: can't test in JSDOM */\n case +1:\n /* istanbul ignore next: can't test in JSDOM */\n return `+50%p - ${arrowOffset}px`\n /* istanbul ignore next: can't test in JSDOM */\n case -1:\n /* istanbul ignore next: can't test in JSDOM */\n return `-50%p + ${arrowOffset}px`\n default:\n return 0\n }\n }\n /* istanbul ignore next */\n return this.offset\n },\n popperCreate(el) {\n this.destroyPopper()\n // We use `el` rather than `this.$el` just in case the original\n // mountpoint root element type was changed by the template\n this.$_popper = new Popper(this.target, el, this.popperConfig)\n },\n destroyPopper() {\n this.$_popper && this.$_popper.destroy()\n this.$_popper = null\n },\n updatePopper() {\n this.$_popper && this.$_popper.scheduleUpdate()\n },\n popperPlacementChange(data) {\n // Callback used by popper to adjust the arrow placement\n this.attachment = this.getAttachment(data.placement)\n },\n /* istanbul ignore next */\n renderTemplate(h) {\n // Will be overridden by templates\n return h('div')\n }\n },\n render(h) {\n const { noFade } = this\n\n // Note: 'show' and 'fade' classes are only appled during transition\n return h(\n BVTransition,\n {\n // Transitions as soon as mounted\n props: { appear: true, noFade },\n on: {\n // Events used by parent component/instance\n beforeEnter: el => this.$emit(EVENT_NAME_SHOW, el),\n afterEnter: el => this.$emit(EVENT_NAME_SHOWN, el),\n beforeLeave: el => this.$emit(EVENT_NAME_HIDE, el),\n afterLeave: el => this.$emit(EVENT_NAME_HIDDEN, el)\n }\n },\n [this.localShow ? this.renderTemplate(h) : h()]\n )\n }\n})\n","import { Vue } from '../../../vue'\nimport { NAME_TOOLTIP_TEMPLATE } from '../../../constants/components'\nimport {\n EVENT_NAME_FOCUSIN,\n EVENT_NAME_FOCUSOUT,\n EVENT_NAME_MOUSEENTER,\n EVENT_NAME_MOUSELEAVE\n} from '../../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../../constants/props'\nimport { isFunction } from '../../../utils/inspect'\nimport { makeProp } from '../../../utils/props'\nimport { scopedStyleMixin } from '../../../mixins/scoped-style'\nimport { BVPopper } from './bv-popper'\n\n// --- Props ---\n\nexport const props = {\n // Used only by the directive versions\n html: makeProp(PROP_TYPE_BOOLEAN, false),\n // Other non-reactive (while open) props are pulled in from BVPopper\n id: makeProp(PROP_TYPE_STRING)\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BVTooltipTemplate = /*#__PURE__*/ Vue.extend({\n name: NAME_TOOLTIP_TEMPLATE,\n extends: BVPopper,\n mixins: [scopedStyleMixin],\n props,\n data() {\n // We use data, rather than props to ensure reactivity\n // Parent component will directly set this data\n return {\n title: '',\n content: '',\n variant: null,\n customClass: null,\n interactive: true\n }\n },\n computed: {\n templateType() {\n return 'tooltip'\n },\n templateClasses() {\n const { variant, attachment, templateType } = this\n\n return [\n {\n // Disables pointer events to hide the tooltip when the user\n // hovers over its content\n noninteractive: !this.interactive,\n [`b-${templateType}-${variant}`]: variant,\n // `attachment` will come from BVToolpop\n [`bs-${templateType}-${attachment}`]: attachment\n },\n this.customClass\n ]\n },\n templateAttributes() {\n const { id } = this\n\n return {\n // Apply attributes from root tooltip component\n ...this.$parent.$parent.$attrs,\n\n id,\n role: 'tooltip',\n tabindex: '-1',\n\n // Add the scoped style data attribute to the template root element\n ...this.scopedStyleAttrs\n }\n },\n templateListeners() {\n // Used for hover/focus trigger listeners\n return {\n mouseenter: /* istanbul ignore next */ event => {\n this.$emit(EVENT_NAME_MOUSEENTER, event)\n },\n mouseleave: /* istanbul ignore next */ event => {\n this.$emit(EVENT_NAME_MOUSELEAVE, event)\n },\n focusin: /* istanbul ignore next */ event => {\n this.$emit(EVENT_NAME_FOCUSIN, event)\n },\n focusout: /* istanbul ignore next */ event => {\n this.$emit(EVENT_NAME_FOCUSOUT, event)\n }\n }\n }\n },\n methods: {\n renderTemplate(h) {\n const { title } = this\n\n // Title can be a scoped slot function\n const $title = isFunction(title) ? title({}) : title\n\n // Directive versions only\n const domProps = this.html && !isFunction(title) ? { innerHTML: title } : {}\n\n return h(\n 'div',\n {\n staticClass: 'tooltip b-tooltip',\n class: this.templateClasses,\n attrs: this.templateAttributes,\n on: this.templateListeners\n },\n [\n h('div', {\n staticClass: 'arrow',\n ref: 'arrow'\n }),\n h(\n 'div',\n {\n staticClass: 'tooltip-inner',\n domProps\n },\n [$title]\n )\n ]\n )\n }\n }\n})\n","// Tooltip \"Class\" (Built as a renderless Vue instance)\n//\n// Handles trigger events, etc.\n// Instantiates template on demand\n\nimport { COMPONENT_UID_KEY, Vue } from '../../../vue'\nimport { NAME_MODAL, NAME_TOOLTIP_HELPER } from '../../../constants/components'\nimport {\n EVENT_NAME_DISABLE,\n EVENT_NAME_DISABLED,\n EVENT_NAME_ENABLE,\n EVENT_NAME_ENABLED,\n EVENT_NAME_FOCUSIN,\n EVENT_NAME_FOCUSOUT,\n EVENT_NAME_HIDDEN,\n EVENT_NAME_HIDE,\n EVENT_NAME_MOUSEENTER,\n EVENT_NAME_MOUSELEAVE,\n EVENT_NAME_SHOW,\n EVENT_NAME_SHOWN,\n EVENT_OPTIONS_NO_CAPTURE,\n HOOK_EVENT_NAME_BEFORE_DESTROY,\n HOOK_EVENT_NAME_DESTROYED\n} from '../../../constants/events'\nimport { arrayIncludes, concat, from as arrayFrom } from '../../../utils/array'\nimport {\n attemptFocus,\n closest,\n contains,\n getAttr,\n getById,\n hasAttr,\n hasClass,\n isDisabled,\n isElement,\n isVisible,\n removeAttr,\n requestAF,\n select,\n setAttr\n} from '../../../utils/dom'\nimport {\n eventOff,\n eventOn,\n eventOnOff,\n getRootActionEventName,\n getRootEventName\n} from '../../../utils/events'\nimport { getScopeId } from '../../../utils/get-scope-id'\nimport { identity } from '../../../utils/identity'\nimport {\n isFunction,\n isNumber,\n isPlainObject,\n isString,\n isUndefined,\n isUndefinedOrNull\n} from '../../../utils/inspect'\nimport { looseEqual } from '../../../utils/loose-equal'\nimport { mathMax } from '../../../utils/math'\nimport { noop } from '../../../utils/noop'\nimport { toInteger } from '../../../utils/number'\nimport { keys } from '../../../utils/object'\nimport { warn } from '../../../utils/warn'\nimport { BvEvent } from '../../../utils/bv-event.class'\nimport { listenOnRootMixin } from '../../../mixins/listen-on-root'\nimport { BVTooltipTemplate } from './bv-tooltip-template'\n\n// --- Constants ---\n\n// Modal container selector for appending tooltip/popover\nconst MODAL_SELECTOR = '.modal-content'\n\n// Modal `$root` hidden event\nconst ROOT_EVENT_NAME_MODAL_HIDDEN = getRootEventName(NAME_MODAL, EVENT_NAME_HIDDEN)\n\n// Sidebar container selector for appending tooltip/popover\nconst SIDEBAR_SELECTOR = '.b-sidebar'\n\n// For finding the container to append to\nconst CONTAINER_SELECTOR = [MODAL_SELECTOR, SIDEBAR_SELECTOR].join(', ')\n\n// For dropdown sniffing\nconst DROPDOWN_CLASS = 'dropdown'\nconst DROPDOWN_OPEN_SELECTOR = '.dropdown-menu.show'\n\n// Data attribute to temporary store the `title` attribute's value\nconst DATA_TITLE_ATTR = 'data-original-title'\n\n// Data specific to popper and template\n// We don't use props, as we need reactivity (we can't pass reactive props)\nconst templateData = {\n // Text string or Scoped slot function\n title: '',\n // Text string or Scoped slot function\n content: '',\n // String\n variant: null,\n // String, Array, Object\n customClass: null,\n // String or array of Strings (overwritten by BVPopper)\n triggers: '',\n // String (overwritten by BVPopper)\n placement: 'auto',\n // String or array of strings\n fallbackPlacement: 'flip',\n // Element or Component reference (or function that returns element) of\n // the element that will have the trigger events bound, and is also\n // default element for positioning\n target: null,\n // HTML ID, Element or Component reference\n container: null, // 'body'\n // Boolean\n noFade: false,\n // 'scrollParent', 'viewport', 'window', Element, or Component reference\n boundary: 'scrollParent',\n // Tooltip/popover will try and stay away from\n // boundary edge by this many pixels (Number)\n boundaryPadding: 5,\n // Arrow offset (Number)\n offset: 0,\n // Hover/focus delay (Number or Object)\n delay: 0,\n // Arrow of Tooltip/popover will try and stay away from\n // the edge of tooltip/popover edge by this many pixels\n arrowPadding: 6,\n // Interactive state (Boolean)\n interactive: true,\n // Disabled state (Boolean)\n disabled: false,\n // ID to use for tooltip/popover\n id: null,\n // Flag used by directives only, for HTML content\n html: false\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BVTooltip = /*#__PURE__*/ Vue.extend({\n name: NAME_TOOLTIP_HELPER,\n mixins: [listenOnRootMixin],\n data() {\n return {\n // BTooltip/BPopover/VBTooltip/VBPopover will update this data\n // Via the exposed updateData() method on this instance\n // BVPopover will override some of these defaults\n ...templateData,\n // State management data\n activeTrigger: {\n // manual: false,\n hover: false,\n click: false,\n focus: false\n },\n localShow: false\n }\n },\n computed: {\n templateType() {\n // Overwritten by BVPopover\n return 'tooltip'\n },\n computedId() {\n return this.id || `__bv_${this.templateType}_${this[COMPONENT_UID_KEY]}__`\n },\n computedDelay() {\n // Normalizes delay into object form\n const delay = { show: 0, hide: 0 }\n if (isPlainObject(this.delay)) {\n delay.show = mathMax(toInteger(this.delay.show, 0), 0)\n delay.hide = mathMax(toInteger(this.delay.hide, 0), 0)\n } else if (isNumber(this.delay) || isString(this.delay)) {\n delay.show = delay.hide = mathMax(toInteger(this.delay, 0), 0)\n }\n return delay\n },\n computedTriggers() {\n // Returns the triggers in sorted array form\n // TODO: Switch this to object form for easier lookup\n return concat(this.triggers)\n .filter(identity)\n .join(' ')\n .trim()\n .toLowerCase()\n .split(/\\s+/)\n .sort()\n },\n isWithActiveTrigger() {\n for (const trigger in this.activeTrigger) {\n if (this.activeTrigger[trigger]) {\n return true\n }\n }\n return false\n },\n computedTemplateData() {\n const { title, content, variant, customClass, noFade, interactive } = this\n return { title, content, variant, customClass, noFade, interactive }\n }\n },\n watch: {\n computedTriggers(newTriggers, oldTriggers) {\n // Triggers have changed, so re-register them\n /* istanbul ignore next */\n if (!looseEqual(newTriggers, oldTriggers)) {\n this.$nextTick(() => {\n // Disable trigger listeners\n this.unListen()\n // Clear any active triggers that are no longer in the list of triggers\n oldTriggers.forEach(trigger => {\n if (!arrayIncludes(newTriggers, trigger)) {\n if (this.activeTrigger[trigger]) {\n this.activeTrigger[trigger] = false\n }\n }\n })\n // Re-enable the trigger listeners\n this.listen()\n })\n }\n },\n computedTemplateData() {\n // If any of the while open reactive \"props\" change,\n // ensure that the template updates accordingly\n this.handleTemplateUpdate()\n },\n title(newValue, oldValue) {\n // Make sure to hide the tooltip when the title is set empty\n if (newValue !== oldValue && !newValue) {\n this.hide()\n }\n },\n disabled(newValue) {\n if (newValue) {\n this.disable()\n } else {\n this.enable()\n }\n }\n },\n created() {\n // Create non-reactive properties\n this.$_tip = null\n this.$_hoverTimeout = null\n this.$_hoverState = ''\n this.$_visibleInterval = null\n this.$_enabled = !this.disabled\n this.$_noop = noop.bind(this)\n\n // Destroy ourselves when the parent is destroyed\n if (this.$parent) {\n this.$parent.$once(HOOK_EVENT_NAME_BEFORE_DESTROY, () => {\n this.$nextTick(() => {\n // In a `requestAF()` to release control back to application\n requestAF(() => {\n this.$destroy()\n })\n })\n })\n }\n\n this.$nextTick(() => {\n const target = this.getTarget()\n if (target && contains(document.body, target)) {\n // Copy the parent's scoped style attribute\n this.scopeId = getScopeId(this.$parent)\n // Set up all trigger handlers and listeners\n this.listen()\n } else {\n /* istanbul ignore next */\n warn(\n isString(this.target)\n ? `Unable to find target element by ID \"#${this.target}\" in document.`\n : 'The provided target is no valid HTML element.',\n this.templateType\n )\n }\n })\n },\n /* istanbul ignore next */\n updated() {\n // Usually called when the slots/data changes\n this.$nextTick(this.handleTemplateUpdate)\n },\n /* istanbul ignore next */\n deactivated() {\n // In a keepalive that has been deactivated, so hide\n // the tooltip/popover if it is showing\n this.forceHide()\n },\n beforeDestroy() {\n // Remove all handler/listeners\n this.unListen()\n this.setWhileOpenListeners(false)\n // Clear any timeouts/intervals\n this.clearHoverTimeout()\n this.clearVisibilityInterval()\n // Destroy the template\n this.destroyTemplate()\n // Remove any other private properties created during create\n this.$_noop = null\n },\n methods: {\n // --- Methods for creating and destroying the template ---\n getTemplate() {\n // Overridden by BVPopover\n return BVTooltipTemplate\n },\n updateData(data = {}) {\n // Method for updating popper/template data\n // We only update data if it exists, and has not changed\n let titleUpdated = false\n keys(templateData).forEach(prop => {\n if (!isUndefined(data[prop]) && this[prop] !== data[prop]) {\n this[prop] = data[prop]\n if (prop === 'title') {\n titleUpdated = true\n }\n }\n })\n // If the title has updated, we may need to handle the `title`\n // attribute on the trigger target\n // We only do this while the template is open\n if (titleUpdated && this.localShow) {\n this.fixTitle()\n }\n },\n createTemplateAndShow() {\n // Creates the template instance and show it\n const container = this.getContainer()\n const Template = this.getTemplate()\n const $tip = (this.$_tip = new Template({\n parent: this,\n // The following is not reactive to changes in the props data\n propsData: {\n // These values cannot be changed while template is showing\n id: this.computedId,\n html: this.html,\n placement: this.placement,\n fallbackPlacement: this.fallbackPlacement,\n target: this.getPlacementTarget(),\n boundary: this.getBoundary(),\n // Ensure the following are integers\n offset: toInteger(this.offset, 0),\n arrowPadding: toInteger(this.arrowPadding, 0),\n boundaryPadding: toInteger(this.boundaryPadding, 0)\n }\n }))\n // We set the initial reactive data (values that can be changed while open)\n this.handleTemplateUpdate()\n // Template transition phase events (handled once only)\n // When the template has mounted, but not visibly shown yet\n $tip.$once(EVENT_NAME_SHOW, this.onTemplateShow)\n // When the template has completed showing\n $tip.$once(EVENT_NAME_SHOWN, this.onTemplateShown)\n // When the template has started to hide\n $tip.$once(EVENT_NAME_HIDE, this.onTemplateHide)\n // When the template has completed hiding\n $tip.$once(EVENT_NAME_HIDDEN, this.onTemplateHidden)\n // When the template gets destroyed for any reason\n $tip.$once(HOOK_EVENT_NAME_DESTROYED, this.destroyTemplate)\n // Convenience events from template\n // To save us from manually adding/removing DOM\n // listeners to tip element when it is open\n $tip.$on(EVENT_NAME_FOCUSIN, this.handleEvent)\n $tip.$on(EVENT_NAME_FOCUSOUT, this.handleEvent)\n $tip.$on(EVENT_NAME_MOUSEENTER, this.handleEvent)\n $tip.$on(EVENT_NAME_MOUSELEAVE, this.handleEvent)\n // Mount (which triggers the `show`)\n $tip.$mount(container.appendChild(document.createElement('div')))\n // Template will automatically remove its markup from DOM when hidden\n },\n hideTemplate() {\n // Trigger the template to start hiding\n // The template will emit the `hide` event after this and\n // then emit the `hidden` event once it is fully hidden\n // The `hook:destroyed` will also be called (safety measure)\n this.$_tip && this.$_tip.hide()\n // Clear out any stragging active triggers\n this.clearActiveTriggers()\n // Reset the hover state\n this.$_hoverState = ''\n },\n // Destroy the template instance and reset state\n destroyTemplate() {\n this.setWhileOpenListeners(false)\n this.clearHoverTimeout()\n this.$_hoverState = ''\n this.clearActiveTriggers()\n this.localPlacementTarget = null\n try {\n this.$_tip.$destroy()\n } catch {}\n this.$_tip = null\n this.removeAriaDescribedby()\n this.restoreTitle()\n this.localShow = false\n },\n getTemplateElement() {\n return this.$_tip ? this.$_tip.$el : null\n },\n handleTemplateUpdate() {\n // Update our template title/content \"props\"\n // So that the template updates accordingly\n const $tip = this.$_tip\n if ($tip) {\n const props = ['title', 'content', 'variant', 'customClass', 'noFade', 'interactive']\n // Only update the values if they have changed\n props.forEach(prop => {\n if ($tip[prop] !== this[prop]) {\n $tip[prop] = this[prop]\n }\n })\n }\n },\n // --- Show/Hide handlers ---\n // Show the tooltip\n show() {\n const target = this.getTarget()\n if (\n !target ||\n !contains(document.body, target) ||\n !isVisible(target) ||\n this.dropdownOpen() ||\n ((isUndefinedOrNull(this.title) || this.title === '') &&\n (isUndefinedOrNull(this.content) || this.content === ''))\n ) {\n // If trigger element isn't in the DOM or is not visible, or\n // is on an open dropdown toggle, or has no content, then\n // we exit without showing\n return\n }\n // If tip already exists, exit early\n if (this.$_tip || this.localShow) {\n /* istanbul ignore next */\n return\n }\n // In the process of showing\n this.localShow = true\n // Create a cancelable BvEvent\n const showEvent = this.buildEvent(EVENT_NAME_SHOW, { cancelable: true })\n this.emitEvent(showEvent)\n // Don't show if event cancelled\n /* istanbul ignore if */\n if (showEvent.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 hideEvent = this.buildEvent(EVENT_NAME_HIDE, { cancelable: !force })\n this.emitEvent(hideEvent)\n /* istanbul ignore if: ignore for now */\n if (hideEvent.defaultPrevented) {\n // Don't hide if event cancelled\n return\n }\n\n // Tell the template to hide\n this.hideTemplate()\n },\n forceHide() {\n // Forcefully hides/destroys the template, regardless of any active triggers\n const tip = this.getTemplateElement()\n if (!tip || !this.localShow) {\n /* istanbul ignore next */\n return\n }\n // Disable while open listeners/watchers\n // This is also done in the template `hide` event handler\n this.setWhileOpenListeners(false)\n // Clear any hover enter/leave event\n this.clearHoverTimeout()\n this.$_hoverState = ''\n this.clearActiveTriggers()\n // Disable the fade animation on the template\n if (this.$_tip) {\n this.$_tip.noFade = true\n }\n // Hide the tip (with force = true)\n this.hide(true)\n },\n enable() {\n this.$_enabled = true\n // Create a non-cancelable BvEvent\n this.emitEvent(this.buildEvent(EVENT_NAME_ENABLED))\n },\n disable() {\n this.$_enabled = false\n // Create a non-cancelable BvEvent\n this.emitEvent(this.buildEvent(EVENT_NAME_DISABLED))\n },\n // --- Handlers for template events ---\n // When template is inserted into DOM, but not yet shown\n onTemplateShow() {\n // Enable while open listeners/watchers\n this.setWhileOpenListeners(true)\n },\n // When template show transition completes\n onTemplateShown() {\n const prevHoverState = this.$_hoverState\n this.$_hoverState = ''\n /* istanbul ignore next: occasional Node 10 coverage error */\n if (prevHoverState === 'out') {\n this.leave(null)\n }\n // Emit a non-cancelable BvEvent 'shown'\n this.emitEvent(this.buildEvent(EVENT_NAME_SHOWN))\n },\n // When template is starting to hide\n onTemplateHide() {\n // Disable while open listeners/watchers\n this.setWhileOpenListeners(false)\n },\n // When template has completed closing (just before it self destructs)\n onTemplateHidden() {\n // Destroy the template\n this.destroyTemplate()\n // Emit a non-cancelable BvEvent 'shown'\n this.emitEvent(this.buildEvent(EVENT_NAME_HIDDEN))\n },\n // --- Helper methods ---\n getTarget() {\n let { target } = this\n if (isString(target)) {\n target = getById(target.replace(/^#/, ''))\n } else if (isFunction(target)) {\n target = target()\n } else if (target) {\n target = target.$el || target\n }\n return isElement(target) ? target : null\n },\n getPlacementTarget() {\n // This is the target that the tooltip will be placed on, which may not\n // necessarily be the same element that has the trigger event listeners\n // For now, this is the same as target\n // TODO:\n // Add in child selector support\n // Add in visibility checks for this element\n // Fallback to target if not found\n return this.getTarget()\n },\n getTargetId() {\n // Returns the ID of the trigger element\n const target = this.getTarget()\n return target && target.id ? target.id : null\n },\n getContainer() {\n // Handle case where container may be a component ref\n const container = this.container ? this.container.$el || this.container : false\n const body = document.body\n const target = this.getTarget()\n // If we are in a modal, we append to the modal, If we\n // are in a sidebar, we append to the sidebar, else append\n // to body, unless a container is specified\n // TODO:\n // Template should periodically check to see if it is in dom\n // And if not, self destruct (if container got v-if'ed out of DOM)\n // Or this could possibly be part of the visibility check\n return container === false\n ? closest(CONTAINER_SELECTOR, target) || body\n : /*istanbul ignore next */ isString(container)\n ? /*istanbul ignore next */ getById(container.replace(/^#/, '')) || body\n : /*istanbul ignore next */ body\n },\n getBoundary() {\n return this.boundary ? this.boundary.$el || this.boundary : 'scrollParent'\n },\n isInModal() {\n const target = this.getTarget()\n return target && closest(MODAL_SELECTOR, target)\n },\n isDropdown() {\n // Returns true if trigger is a dropdown\n const target = this.getTarget()\n return target && hasClass(target, DROPDOWN_CLASS)\n },\n dropdownOpen() {\n // Returns true if trigger is a dropdown and the dropdown menu is open\n const target = this.getTarget()\n return this.isDropdown() && target && select(DROPDOWN_OPEN_SELECTOR, target)\n },\n clearHoverTimeout() {\n clearTimeout(this.$_hoverTimeout)\n this.$_hoverTimeout = null\n },\n clearVisibilityInterval() {\n clearInterval(this.$_visibleInterval)\n this.$_visibleInterval = null\n },\n clearActiveTriggers() {\n for (const trigger in this.activeTrigger) {\n this.activeTrigger[trigger] = false\n }\n },\n addAriaDescribedby() {\n // Add aria-describedby on trigger element, without removing any other IDs\n const target = this.getTarget()\n let desc = getAttr(target, 'aria-describedby') || ''\n desc = desc\n .split(/\\s+/)\n .concat(this.computedId)\n .join(' ')\n .trim()\n // Update/add aria-described by\n setAttr(target, 'aria-describedby', desc)\n },\n removeAriaDescribedby() {\n // Remove aria-describedby on trigger element, without removing any other IDs\n const target = this.getTarget()\n let desc = getAttr(target, 'aria-describedby') || ''\n desc = desc\n .split(/\\s+/)\n .filter(d => d !== this.computedId)\n .join(' ')\n .trim()\n // Update or remove aria-describedby\n if (desc) {\n /* istanbul ignore next */\n setAttr(target, 'aria-describedby', desc)\n } else {\n removeAttr(target, 'aria-describedby')\n }\n },\n fixTitle() {\n // If the target has a `title` attribute,\n // remove it and store it on a data attribute\n const target = this.getTarget()\n if (hasAttr(target, 'title')) {\n // Get `title` attribute value and remove it from target\n const title = getAttr(target, 'title')\n setAttr(target, 'title', '')\n // Only set the data attribute when the value is truthy\n if (title) {\n setAttr(target, DATA_TITLE_ATTR, title)\n }\n }\n },\n restoreTitle() {\n // If the target had a `title` attribute,\n // restore it and remove the data attribute\n const target = this.getTarget()\n if (hasAttr(target, DATA_TITLE_ATTR)) {\n // Get data attribute value and remove it from target\n const title = getAttr(target, DATA_TITLE_ATTR)\n removeAttr(target, DATA_TITLE_ATTR)\n // Only restore the `title` attribute when the value is truthy\n if (title) {\n setAttr(target, 'title', title)\n }\n }\n },\n // --- BvEvent helpers ---\n buildEvent(type, options = {}) {\n // Defaults to a non-cancellable event\n return new BvEvent(type, {\n cancelable: false,\n target: this.getTarget(),\n relatedTarget: this.getTemplateElement() || null,\n componentId: this.computedId,\n vueTarget: this,\n // Add in option overrides\n ...options\n })\n },\n emitEvent(bvEvent) {\n const { type } = bvEvent\n this.emitOnRoot(getRootEventName(this.templateType, type), bvEvent)\n this.$emit(type, bvEvent)\n },\n // --- Event handler setup methods ---\n listen() {\n // Enable trigger event handlers\n const el = this.getTarget()\n if (!el) {\n /* istanbul ignore next */\n return\n }\n // Listen for global show/hide events\n this.setRootListener(true)\n // Set up our listeners on the target trigger element\n this.computedTriggers.forEach(trigger => {\n if (trigger === 'click') {\n eventOn(el, 'click', this.handleEvent, EVENT_OPTIONS_NO_CAPTURE)\n } else if (trigger === 'focus') {\n eventOn(el, 'focusin', this.handleEvent, EVENT_OPTIONS_NO_CAPTURE)\n eventOn(el, 'focusout', this.handleEvent, EVENT_OPTIONS_NO_CAPTURE)\n } else if (trigger === 'blur') {\n // Used to close $tip when element loses focus\n /* istanbul ignore next */\n eventOn(el, 'focusout', this.handleEvent, EVENT_OPTIONS_NO_CAPTURE)\n } else if (trigger === 'hover') {\n eventOn(el, 'mouseenter', this.handleEvent, EVENT_OPTIONS_NO_CAPTURE)\n eventOn(el, 'mouseleave', this.handleEvent, EVENT_OPTIONS_NO_CAPTURE)\n }\n }, this)\n },\n /* istanbul ignore next */\n unListen() {\n // Remove trigger event handlers\n const events = ['click', 'focusin', 'focusout', 'mouseenter', 'mouseleave']\n const target = this.getTarget()\n\n // Stop listening for global show/hide/enable/disable events\n this.setRootListener(false)\n\n // Clear out any active target listeners\n events.forEach(event => {\n target && eventOff(target, event, this.handleEvent, EVENT_OPTIONS_NO_CAPTURE)\n }, this)\n },\n setRootListener(on) {\n // Listen for global `bv::{hide|show}::{tooltip|popover}` hide request event\n const $root = this.$root\n if ($root) {\n const method = on ? '$on' : '$off'\n const type = this.templateType\n $root[method](getRootActionEventName(type, EVENT_NAME_HIDE), this.doHide)\n $root[method](getRootActionEventName(type, EVENT_NAME_SHOW), this.doShow)\n $root[method](getRootActionEventName(type, EVENT_NAME_DISABLE), this.doDisable)\n $root[method](getRootActionEventName(type, EVENT_NAME_ENABLE), this.doEnable)\n }\n },\n setWhileOpenListeners(on) {\n // Events that are only registered when the template is showing\n // Modal close events\n this.setModalListener(on)\n // Dropdown open events (if we are attached to a dropdown)\n this.setDropdownListener(on)\n // Periodic $element visibility check\n // For handling when tip target is in <keepalive>, tabs, carousel, etc\n this.visibleCheck(on)\n // On-touch start listeners\n this.setOnTouchStartListener(on)\n },\n // Handler for periodic visibility check\n visibleCheck(on) {\n this.clearVisibilityInterval()\n const target = this.getTarget()\n if (on) {\n this.$_visibleInterval = setInterval(() => {\n const tip = this.getTemplateElement()\n if (tip && this.localShow && (!target.parentNode || !isVisible(target))) {\n // Target element is no longer visible or not in DOM, so force-hide the tooltip\n this.forceHide()\n }\n }, 100)\n }\n },\n setModalListener(on) {\n // Handle case where tooltip/target is in a modal\n if (this.isInModal()) {\n // We can listen for modal hidden events on `$root`\n this.$root[on ? '$on' : '$off'](ROOT_EVENT_NAME_MODAL_HIDDEN, this.forceHide)\n }\n },\n /* istanbul ignore next: JSDOM doesn't support `ontouchstart` */\n setOnTouchStartListener(on) {\n // If this is a touch-enabled device we add extra empty\n // `mouseover` listeners to the body's immediate children\n // Only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n arrayFrom(document.body.children).forEach(el => {\n eventOnOff(on, el, 'mouseover', this.$_noop)\n })\n }\n },\n setDropdownListener(on) {\n const target = this.getTarget()\n if (!target || !this.$root || !this.isDropdown) {\n return\n }\n // We can listen for dropdown shown events on its instance\n // TODO:\n // We could grab the ID from the dropdown, and listen for\n // $root events for that particular dropdown id\n // Dropdown shown and hidden events will need to emit\n // Note: Dropdown auto-ID happens in a `$nextTick()` after mount\n // So the ID lookup would need to be done in a `$nextTick()`\n if (target.__vue__) {\n target.__vue__[on ? '$on' : '$off'](EVENT_NAME_SHOWN, this.forceHide)\n }\n },\n // --- Event handlers ---\n handleEvent(event) {\n // General trigger event handler\n // target is the trigger element\n const target = this.getTarget()\n if (!target || isDisabled(target) || !this.$_enabled || this.dropdownOpen()) {\n // If disabled or not enabled, or if a dropdown that is open, don't do anything\n // If tip is shown before element gets disabled, then tip will not\n // close until no longer disabled or forcefully closed\n return\n }\n const type = event.type\n const triggers = this.computedTriggers\n\n if (type === 'click' && arrayIncludes(triggers, 'click')) {\n this.click(event)\n } else if (type === 'mouseenter' && arrayIncludes(triggers, 'hover')) {\n // `mouseenter` is a non-bubbling event\n this.enter(event)\n } else if (type === 'focusin' && arrayIncludes(triggers, 'focus')) {\n // `focusin` is a bubbling event\n // `event` includes `relatedTarget` (element losing focus)\n this.enter(event)\n } else if (\n (type === 'focusout' &&\n (arrayIncludes(triggers, 'focus') || arrayIncludes(triggers, 'blur'))) ||\n (type === 'mouseleave' && arrayIncludes(triggers, 'hover'))\n ) {\n // `focusout` is a bubbling event\n // `mouseleave` is a non-bubbling event\n // `tip` is the template (will be null if not open)\n const tip = this.getTemplateElement()\n // `eventTarget` is the element which is losing focus/hover and\n const eventTarget = event.target\n // `relatedTarget` is the element gaining focus/hover\n const relatedTarget = event.relatedTarget\n /* istanbul ignore next */\n if (\n // From tip to target\n (tip && contains(tip, eventTarget) && contains(target, relatedTarget)) ||\n // From target to tip\n (tip && contains(target, eventTarget) && contains(tip, relatedTarget)) ||\n // Within tip\n (tip && contains(tip, eventTarget) && contains(tip, relatedTarget)) ||\n // Within target\n (contains(target, eventTarget) && contains(target, relatedTarget))\n ) {\n // If focus/hover moves within `tip` and `target`, don't trigger a leave\n return\n }\n // Otherwise trigger a leave\n this.leave(event)\n }\n },\n doHide(id) {\n // Programmatically hide tooltip or popover\n if (!id || (this.getTargetId() === id || this.computedId === id)) {\n // Close all tooltips or popovers, or this specific tip (with ID)\n this.forceHide()\n }\n },\n doShow(id) {\n // Programmatically show tooltip or popover\n if (!id || (this.getTargetId() === id || this.computedId === id)) {\n // Open all tooltips or popovers, or this specific tip (with ID)\n this.show()\n }\n },\n /*istanbul ignore next: ignore for now */\n doDisable(id) /*istanbul ignore next: ignore for now */ {\n // Programmatically disable tooltip or popover\n if (!id || (this.getTargetId() === id || this.computedId === id)) {\n // Disable all tooltips or popovers (no ID), or this specific tip (with ID)\n this.disable()\n }\n },\n /*istanbul ignore next: ignore for now */\n doEnable(id) /*istanbul ignore next: ignore for now */ {\n // Programmatically enable tooltip or popover\n if (!id || (this.getTargetId() === id || this.computedId === id)) {\n // Enable all tooltips or popovers (no ID), or this specific tip (with ID)\n this.enable()\n }\n },\n click(event) {\n if (!this.$_enabled || this.dropdownOpen()) {\n /* istanbul ignore next */\n return\n }\n // Get around a WebKit bug where `click` does not trigger focus events\n // On most browsers, `click` triggers a `focusin`/`focus` event first\n // Needed so that trigger 'click blur' works on iOS\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/5099\n // We use `currentTarget` rather than `target` to trigger on the\n // element, not the inner content\n attemptFocus(event.currentTarget)\n this.activeTrigger.click = !this.activeTrigger.click\n if (this.isWithActiveTrigger) {\n this.enter(null)\n } else {\n /* istanbul ignore next */\n this.leave(null)\n }\n },\n /* istanbul ignore next */\n toggle() {\n // Manual toggle handler\n if (!this.$_enabled || this.dropdownOpen()) {\n /* istanbul ignore next */\n return\n }\n // Should we register as an active trigger?\n // this.activeTrigger.manual = !this.activeTrigger.manual\n if (this.localShow) {\n this.leave(null)\n } else {\n this.enter(null)\n }\n },\n enter(event = null) {\n // Opening trigger handler\n // Note: Click events are sent with event === null\n if (event) {\n this.activeTrigger[event.type === 'focusin' ? 'focus' : 'hover'] = true\n }\n /* istanbul ignore next */\n if (this.localShow || this.$_hoverState === 'in') {\n this.$_hoverState = 'in'\n return\n }\n this.clearHoverTimeout()\n this.$_hoverState = 'in'\n if (!this.computedDelay.show) {\n this.show()\n } else {\n // Hide any title attribute while enter delay is active\n this.fixTitle()\n this.$_hoverTimeout = setTimeout(() => {\n /* istanbul ignore else */\n if (this.$_hoverState === 'in') {\n this.show()\n } else if (!this.localShow) {\n this.restoreTitle()\n }\n }, this.computedDelay.show)\n }\n },\n leave(event = null) {\n // Closing trigger handler\n // Note: Click events are sent with event === null\n if (event) {\n this.activeTrigger[event.type === 'focusout' ? 'focus' : 'hover'] = false\n /* istanbul ignore next */\n if (event.type === 'focusout' && arrayIncludes(this.computedTriggers, 'blur')) {\n // Special case for `blur`: we clear out the other triggers\n this.activeTrigger.click = false\n this.activeTrigger.hover = false\n }\n }\n /* istanbul ignore next: ignore for now */\n if (this.isWithActiveTrigger) {\n return\n }\n this.clearHoverTimeout()\n this.$_hoverState = 'out'\n if (!this.computedDelay.hide) {\n this.hide()\n } else {\n this.$_hoverTimeout = setTimeout(() => {\n if (this.$_hoverState === 'out') {\n this.hide()\n }\n }, this.computedDelay.hide)\n }\n }\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TOOLTIP } from '../../constants/components'\nimport {\n EVENT_NAME_CLOSE,\n EVENT_NAME_DISABLE,\n EVENT_NAME_DISABLED,\n EVENT_NAME_ENABLE,\n EVENT_NAME_ENABLED,\n EVENT_NAME_HIDDEN,\n EVENT_NAME_HIDE,\n EVENT_NAME_OPEN,\n EVENT_NAME_SHOW,\n EVENT_NAME_SHOWN,\n MODEL_EVENT_NAME_PREFIX\n} from '../../constants/events'\nimport {\n PROP_TYPE_ARRAY_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_FUNCTION,\n PROP_TYPE_NUMBER_OBJECT_STRING,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_OBJECT,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { HTMLElement, SVGElement } from '../../constants/safe-types'\nimport { getScopeId } from '../../utils/get-scope-id'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { pick } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BVTooltip } from './helpers/bv-tooltip'\n\n// --- Constants ---\n\nconst MODEL_PROP_NAME_ENABLED = 'disabled'\nconst MODEL_EVENT_NAME_ENABLED = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_ENABLED\n\nconst MODEL_PROP_NAME_SHOW = 'show'\nconst MODEL_EVENT_NAME_SHOW = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_SHOW\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n // String: scrollParent, window, or viewport\n // Element: element reference\n // Object: Vue component\n boundary: makeProp([HTMLElement, PROP_TYPE_OBJECT, PROP_TYPE_STRING], 'scrollParent'),\n boundaryPadding: makeProp(PROP_TYPE_NUMBER_STRING, 50),\n // String: HTML ID of container, if null body is used (default)\n // HTMLElement: element reference reference\n // Object: Vue Component\n container: makeProp([HTMLElement, PROP_TYPE_OBJECT, PROP_TYPE_STRING]),\n customClass: makeProp(PROP_TYPE_STRING),\n delay: makeProp(PROP_TYPE_NUMBER_OBJECT_STRING, 50),\n [MODEL_PROP_NAME_ENABLED]: makeProp(PROP_TYPE_BOOLEAN, false),\n fallbackPlacement: makeProp(PROP_TYPE_ARRAY_STRING, 'flip'),\n // ID to use for tooltip element\n // If not provided on will automatically be generated\n id: makeProp(PROP_TYPE_STRING),\n noFade: makeProp(PROP_TYPE_BOOLEAN, false),\n noninteractive: makeProp(PROP_TYPE_BOOLEAN, false),\n offset: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n placement: makeProp(PROP_TYPE_STRING, 'top'),\n [MODEL_PROP_NAME_SHOW]: makeProp(PROP_TYPE_BOOLEAN, false),\n // String ID of element, or element/component reference\n // Or function that returns one of the above\n // Required\n target: makeProp(\n [HTMLElement, SVGElement, PROP_TYPE_FUNCTION, PROP_TYPE_OBJECT, PROP_TYPE_STRING],\n undefined,\n true\n ),\n title: makeProp(PROP_TYPE_STRING),\n triggers: makeProp(PROP_TYPE_ARRAY_STRING, 'hover focus'),\n variant: makeProp(PROP_TYPE_STRING)\n },\n NAME_TOOLTIP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BTooltip = /*#__PURE__*/ Vue.extend({\n name: NAME_TOOLTIP,\n mixins: [normalizeSlotMixin],\n inheritAttrs: false,\n props,\n data() {\n return {\n localShow: this[MODEL_PROP_NAME_SHOW],\n localTitle: '',\n localContent: ''\n }\n },\n computed: {\n // Data that will be passed to the template and popper\n templateData() {\n return {\n title: this.localTitle,\n content: this.localContent,\n interactive: !this.noninteractive,\n // Pass these props as is\n ...pick(this.$props, [\n 'boundary',\n 'boundaryPadding',\n 'container',\n 'customClass',\n 'delay',\n 'fallbackPlacement',\n 'id',\n 'noFade',\n 'offset',\n 'placement',\n 'target',\n 'target',\n 'triggers',\n 'variant',\n MODEL_PROP_NAME_ENABLED\n ])\n }\n },\n // Used to watch for changes to the title and content props\n templateTitleContent() {\n const { title, content } = this\n return { title, content }\n }\n },\n watch: {\n [MODEL_PROP_NAME_SHOW](newValue, oldValue) {\n if (newValue !== oldValue && newValue !== this.localShow && this.$_toolpop) {\n if (newValue) {\n this.$_toolpop.show()\n } else {\n // We use `forceHide()` to override any active triggers\n this.$_toolpop.forceHide()\n }\n }\n },\n [MODEL_PROP_NAME_ENABLED](newValue) {\n if (newValue) {\n this.doDisable()\n } else {\n this.doEnable()\n }\n },\n localShow(newValue) {\n // TODO: May need to be done in a `$nextTick()`\n this.$emit(MODEL_EVENT_NAME_SHOW, newValue)\n },\n templateData() {\n this.$nextTick(() => {\n if (this.$_toolpop) {\n this.$_toolpop.updateData(this.templateData)\n }\n })\n },\n // Watchers for title/content props (prop changes do not trigger the `updated()` hook)\n templateTitleContent() {\n this.$nextTick(this.updateContent)\n }\n },\n created() {\n // Create private non-reactive props\n this.$_toolpop = null\n },\n updated() {\n // Update the `propData` object\n // Done in a `$nextTick()` to ensure slot(s) have updated\n this.$nextTick(this.updateContent)\n },\n beforeDestroy() {\n // Shutdown our local event listeners\n this.$off(EVENT_NAME_OPEN, this.doOpen)\n this.$off(EVENT_NAME_CLOSE, this.doClose)\n this.$off(EVENT_NAME_DISABLE, this.doDisable)\n this.$off(EVENT_NAME_ENABLE, this.doEnable)\n // Destroy the tip instance\n if (this.$_toolpop) {\n this.$_toolpop.$destroy()\n this.$_toolpop = null\n }\n },\n mounted() {\n // Instantiate a new BVTooltip instance\n // Done in a `$nextTick()` to ensure DOM has completed rendering\n // so that target can be found\n this.$nextTick(() => {\n // Load the on demand child instance\n const Component = this.getComponent()\n // Ensure we have initial content\n this.updateContent()\n // Pass down the scoped style attribute if available\n const scopeId = getScopeId(this) || getScopeId(this.$parent)\n // Create the instance\n const $toolpop = (this.$_toolpop = new Component({\n parent: this,\n // Pass down the scoped style ID\n _scopeId: scopeId || undefined\n }))\n // Set the initial data\n $toolpop.updateData(this.templateData)\n // Set listeners\n $toolpop.$on(EVENT_NAME_SHOW, this.onShow)\n $toolpop.$on(EVENT_NAME_SHOWN, this.onShown)\n $toolpop.$on(EVENT_NAME_HIDE, this.onHide)\n $toolpop.$on(EVENT_NAME_HIDDEN, this.onHidden)\n $toolpop.$on(EVENT_NAME_DISABLED, this.onDisabled)\n $toolpop.$on(EVENT_NAME_ENABLED, this.onEnabled)\n // Initially disabled?\n if (this[MODEL_PROP_NAME_ENABLED]) {\n // Initially disabled\n this.doDisable()\n }\n // Listen to open signals from others\n this.$on(EVENT_NAME_OPEN, this.doOpen)\n // Listen to close signals from others\n this.$on(EVENT_NAME_CLOSE, this.doClose)\n // Listen to disable signals from others\n this.$on(EVENT_NAME_DISABLE, this.doDisable)\n // Listen to enable signals from others\n this.$on(EVENT_NAME_ENABLE, this.doEnable)\n // Initially show tooltip?\n if (this.localShow) {\n $toolpop.show()\n }\n })\n },\n methods: {\n getComponent() {\n // Overridden by BPopover\n return BVTooltip\n },\n updateContent() {\n // Overridden by BPopover\n // Tooltip: Default slot is `title`\n // Popover: Default slot is `content`, `title` slot is title\n // We pass a scoped slot function reference by default (Vue v2.6x)\n // And pass the title prop as a fallback\n this.setTitle(this.normalizeSlot() || this.title)\n },\n // Helper methods for `updateContent()`\n setTitle(value) {\n value = isUndefinedOrNull(value) ? '' : value\n // We only update the value if it has changed\n if (this.localTitle !== value) {\n this.localTitle = value\n }\n },\n setContent(value) {\n value = isUndefinedOrNull(value) ? '' : value\n // We only update the value if it has changed\n if (this.localContent !== value) {\n this.localContent = value\n }\n },\n // --- Template event handlers ---\n onShow(bvEvent) {\n // Placeholder\n this.$emit(EVENT_NAME_SHOW, bvEvent)\n if (bvEvent) {\n this.localShow = !bvEvent.defaultPrevented\n }\n },\n onShown(bvEvent) {\n // Tip is now showing\n this.localShow = true\n this.$emit(EVENT_NAME_SHOWN, bvEvent)\n },\n onHide(bvEvent) {\n this.$emit(EVENT_NAME_HIDE, bvEvent)\n },\n onHidden(bvEvent) {\n // Tip is no longer showing\n this.$emit(EVENT_NAME_HIDDEN, bvEvent)\n this.localShow = false\n },\n onDisabled(bvEvent) {\n // Prevent possible endless loop if user mistakenly\n // fires `disabled` instead of `disable`\n if (bvEvent && bvEvent.type === EVENT_NAME_DISABLED) {\n this.$emit(MODEL_EVENT_NAME_ENABLED, true)\n this.$emit(EVENT_NAME_DISABLED, bvEvent)\n }\n },\n onEnabled(bvEvent) {\n // Prevent possible endless loop if user mistakenly\n // fires `enabled` instead of `enable`\n if (bvEvent && bvEvent.type === EVENT_NAME_ENABLED) {\n this.$emit(MODEL_EVENT_NAME_ENABLED, false)\n this.$emit(EVENT_NAME_ENABLED, bvEvent)\n }\n },\n // --- Local event listeners ---\n doOpen() {\n !this.localShow && this.$_toolpop && this.$_toolpop.show()\n },\n doClose() {\n this.localShow && this.$_toolpop && this.$_toolpop.hide()\n },\n doDisable() {\n this.$_toolpop && this.$_toolpop.disable()\n },\n doEnable() {\n this.$_toolpop && this.$_toolpop.enable()\n }\n },\n render(h) {\n // Always renders a comment node\n // TODO:\n // Future: Possibly render a target slot (single root element)\n // which we can apply the listeners to (pass `this.$el` to BVTooltip)\n return h()\n }\n})\n","import { Vue } from '../../../vue'\nimport { NAME_POPOVER_TEMPLATE } from '../../../constants/components'\nimport { isFunction, isUndefinedOrNull } from '../../../utils/inspect'\nimport { BVTooltipTemplate } from '../../tooltip/helpers/bv-tooltip-template'\n\n// @vue/component\nexport const BVPopoverTemplate = /*#__PURE__*/ Vue.extend({\n name: NAME_POPOVER_TEMPLATE,\n extends: BVTooltipTemplate,\n computed: {\n templateType() {\n return 'popover'\n }\n },\n methods: {\n renderTemplate(h) {\n const { title, content } = this\n\n // Title and content could be a scoped slot function\n const $title = isFunction(title) ? title({}) : title\n const $content = isFunction(content) ? content({}) : content\n\n // Directive usage only\n const titleDomProps = this.html && !isFunction(title) ? { innerHTML: title } : {}\n const contentDomProps = this.html && !isFunction(content) ? { innerHTML: content } : {}\n\n return h(\n 'div',\n {\n staticClass: 'popover b-popover',\n class: this.templateClasses,\n attrs: this.templateAttributes,\n on: this.templateListeners\n },\n [\n h('div', {\n staticClass: 'arrow',\n ref: 'arrow'\n }),\n isUndefinedOrNull($title) || $title === ''\n ? /* istanbul ignore next */ h()\n : h('h3', { staticClass: 'popover-header', domProps: titleDomProps }, [$title]),\n isUndefinedOrNull($content) || $content === ''\n ? /* istanbul ignore next */ h()\n : h('div', { staticClass: 'popover-body', domProps: contentDomProps }, [$content])\n ]\n )\n }\n }\n})\n","// Popover \"Class\" (Built as a renderless Vue instance)\n// Inherits from BVTooltip\n//\n// Handles trigger events, etc.\n// Instantiates template on demand\n\nimport { Vue } from '../../../vue'\nimport { NAME_POPOVER_HELPER } from '../../../constants/components'\nimport { BVTooltip } from '../../tooltip/helpers/bv-tooltip'\nimport { BVPopoverTemplate } from './bv-popover-template'\n\n// @vue/component\nexport const BVPopover = /*#__PURE__*/ Vue.extend({\n name: NAME_POPOVER_HELPER,\n extends: BVTooltip,\n computed: {\n // Overwrites BVTooltip\n templateType() {\n return 'popover'\n }\n },\n methods: {\n getTemplate() {\n // Overwrites BVTooltip\n return BVPopoverTemplate\n }\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_POPOVER } from '../../constants/components'\nimport { EVENT_NAME_CLICK } from '../../constants/events'\nimport { PROP_TYPE_ARRAY_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_TITLE } from '../../constants/slots'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BTooltip, props as BTooltipProps } from '../tooltip/tooltip'\nimport { BVPopover } from './helpers/bv-popover'\nimport { sortKeys } from '../../utils/object'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...BTooltipProps,\n content: makeProp(PROP_TYPE_STRING),\n placement: makeProp(PROP_TYPE_STRING, 'right'),\n triggers: makeProp(PROP_TYPE_ARRAY_STRING, EVENT_NAME_CLICK)\n }),\n NAME_POPOVER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BPopover = /*#__PURE__*/ Vue.extend({\n name: NAME_POPOVER,\n extends: BTooltip,\n inheritAttrs: false,\n props,\n methods: {\n getComponent() {\n // Overridden by BPopover\n return BVPopover\n },\n updateContent() {\n // Tooltip: Default slot is `title`\n // Popover: Default slot is `content`, `title` slot is title\n // We pass a scoped slot function references by default (Vue v2.6x)\n // And pass the title prop as a fallback\n this.setContent(this.normalizeSlot() || this.content)\n this.setTitle(this.normalizeSlot(SLOT_NAME_TITLE) || this.title)\n }\n }\n // Render function provided by BTooltip\n})\n","import { NAME_POPOVER } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport { EVENT_NAME_SHOW } from '../../constants/events'\nimport { concat } from '../../utils/array'\nimport { getComponentConfig } from '../../utils/config'\nimport { getScopeId } from '../../utils/get-scope-id'\nimport { identity } from '../../utils/identity'\nimport {\n isFunction,\n isNumber,\n isPlainObject,\n isString,\n isUndefined,\n isUndefinedOrNull\n} from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { toInteger } from '../../utils/number'\nimport { keys } from '../../utils/object'\nimport { BVPopover } from '../../components/popover/helpers/bv-popover'\n\n// Key which we use to store tooltip object on element\nconst BV_POPOVER = '__BV_Popover__'\n\n// Default trigger\nconst DefaultTrigger = 'click'\n\n// Valid event triggers\nconst validTriggers = {\n focus: true,\n hover: true,\n click: true,\n blur: true,\n manual: true\n}\n\n// Directive modifier test regular expressions. Pre-compile for performance\nconst htmlRE = /^html$/i\nconst noFadeRE = /^nofade$/i\nconst placementRE = /^(auto|top(left|right)?|bottom(left|right)?|left(top|bottom)?|right(top|bottom)?)$/i\nconst boundaryRE = /^(window|viewport|scrollParent)$/i\nconst delayRE = /^d\\d+$/i\nconst delayShowRE = /^ds\\d+$/i\nconst delayHideRE = /^dh\\d+$/i\nconst offsetRE = /^o-?\\d+$/i\nconst variantRE = /^v-.+$/i\nconst spacesRE = /\\s+/\n\n// Build a Popover config based on bindings (if any)\n// Arguments and modifiers take precedence over passed value config object\nconst parseBindings = (bindings, vnode) => /* istanbul ignore next: not easy to test */ {\n // We start out with a basic config\n let config = {\n title: undefined,\n content: undefined,\n trigger: '', // Default set below if needed\n placement: 'right',\n fallbackPlacement: 'flip',\n container: false, // Default of body\n animation: true,\n offset: 0,\n disabled: false,\n id: null,\n html: false,\n delay: getComponentConfig(NAME_POPOVER, 'delay', 50),\n boundary: String(getComponentConfig(NAME_POPOVER, 'boundary', 'scrollParent')),\n boundaryPadding: toInteger(getComponentConfig(NAME_POPOVER, 'boundaryPadding', 5), 0),\n variant: getComponentConfig(NAME_POPOVER, 'variant'),\n customClass: getComponentConfig(NAME_POPOVER, 'customClass')\n }\n\n // Process `bindings.value`\n if (isString(bindings.value) || isNumber(bindings.value)) {\n // Value is popover content (html optionally supported)\n config.content = bindings.value\n } else if (isFunction(bindings.value)) {\n // Content generator function\n config.content = bindings.value\n } else if (isPlainObject(bindings.value)) {\n // Value is config object, so merge\n config = { ...config, ...bindings.value }\n }\n\n // If argument, assume element ID of container element\n if (bindings.arg) {\n // Element ID specified as arg\n // We must prepend '#' to become a CSS selector\n config.container = `#${bindings.arg}`\n }\n\n // If title is not provided, try title attribute\n if (isUndefined(config.title)) {\n // Try attribute\n const data = vnode.data || {}\n config.title = data.attrs && !isUndefinedOrNull(data.attrs.title) ? data.attrs.title : undefined\n }\n\n // Normalize delay\n if (!isPlainObject(config.delay)) {\n config.delay = {\n show: toInteger(config.delay, 0),\n hide: toInteger(config.delay, 0)\n }\n }\n\n // Process modifiers\n keys(bindings.modifiers).forEach(mod => {\n if (htmlRE.test(mod)) {\n // Title/content allows HTML\n config.html = true\n } else if (noFadeRE.test(mod)) {\n // No animation\n config.animation = false\n } else if (placementRE.test(mod)) {\n // Placement of popover\n config.placement = mod\n } else if (boundaryRE.test(mod)) {\n // Boundary of popover\n mod = mod === 'scrollparent' ? 'scrollParent' : mod\n config.boundary = mod\n } else if (delayRE.test(mod)) {\n // Delay value\n const delay = toInteger(mod.slice(1), 0)\n config.delay.show = delay\n config.delay.hide = delay\n } else if (delayShowRE.test(mod)) {\n // Delay show value\n config.delay.show = toInteger(mod.slice(2), 0)\n } else if (delayHideRE.test(mod)) {\n // Delay hide value\n config.delay.hide = toInteger(mod.slice(2), 0)\n } else if (offsetRE.test(mod)) {\n // Offset value, negative allowed\n config.offset = toInteger(mod.slice(1), 0)\n } else if (variantRE.test(mod)) {\n // Variant\n config.variant = mod.slice(2) || null\n }\n })\n\n // Special handling of event trigger modifiers trigger is\n // a space separated list\n const selectedTriggers = {}\n\n // Parse current config object trigger\n concat(config.trigger || '')\n .filter(identity)\n .join(' ')\n .trim()\n .toLowerCase()\n .split(spacesRE)\n .forEach(trigger => {\n if (validTriggers[trigger]) {\n selectedTriggers[trigger] = true\n }\n })\n\n // Parse modifiers for triggers\n keys(bindings.modifiers).forEach(mod => {\n mod = mod.toLowerCase()\n if (validTriggers[mod]) {\n // If modifier is a valid trigger\n selectedTriggers[mod] = true\n }\n })\n\n // Sanitize triggers\n config.trigger = keys(selectedTriggers).join(' ')\n if (config.trigger === 'blur') {\n // Blur by itself is useless, so convert it to 'focus'\n config.trigger = 'focus'\n }\n if (!config.trigger) {\n // Use default trigger\n config.trigger = DefaultTrigger\n }\n\n return config\n}\n\n// Add or update Popover on our element\nconst applyPopover = (el, bindings, vnode) => {\n if (!IS_BROWSER) {\n /* istanbul ignore next */\n return\n }\n const config = parseBindings(bindings, vnode)\n if (!el[BV_POPOVER]) {\n const $parent = vnode.context\n el[BV_POPOVER] = new BVPopover({\n parent: $parent,\n // Add the parent's scoped style attribute data\n _scopeId: getScopeId($parent, undefined)\n })\n el[BV_POPOVER].__bv_prev_data__ = {}\n el[BV_POPOVER].$on(EVENT_NAME_SHOW, () => /* istanbul ignore next: for now */ {\n // Before showing the popover, we update the title\n // and content if they are functions\n const data = {}\n if (isFunction(config.title)) {\n data.title = config.title(el)\n }\n if (isFunction(config.content)) {\n data.content = config.content(el)\n }\n if (keys(data).length > 0) {\n el[BV_POPOVER].updateData(data)\n }\n })\n }\n const data = {\n title: config.title,\n content: config.content,\n triggers: config.trigger,\n placement: config.placement,\n fallbackPlacement: config.fallbackPlacement,\n variant: config.variant,\n customClass: config.customClass,\n container: config.container,\n boundary: config.boundary,\n delay: config.delay,\n offset: config.offset,\n noFade: !config.animation,\n id: config.id,\n disabled: config.disabled,\n html: config.html\n }\n const oldData = el[BV_POPOVER].__bv_prev_data__\n el[BV_POPOVER].__bv_prev_data__ = data\n if (!looseEqual(data, oldData)) {\n // We only update the instance if data has changed\n const newData = {\n target: el\n }\n keys(data).forEach(prop => {\n // We only pass data properties that have changed\n if (data[prop] !== oldData[prop]) {\n // If title/content is a function, we execute it here\n newData[prop] =\n (prop === 'title' || prop === 'content') && isFunction(data[prop])\n ? /* istanbul ignore next */ data[prop](el)\n : data[prop]\n }\n })\n el[BV_POPOVER].updateData(newData)\n }\n}\n\n// Remove Popover from our element\nconst removePopover = el => {\n if (el[BV_POPOVER]) {\n el[BV_POPOVER].$destroy()\n el[BV_POPOVER] = null\n }\n delete el[BV_POPOVER]\n}\n\n// Export our directive\nexport const VBPopover = {\n bind(el, bindings, vnode) {\n applyPopover(el, bindings, vnode)\n },\n // We use `componentUpdated` here instead of `update`, as the former\n // waits until the containing component and children have finished updating\n componentUpdated(el, bindings, vnode) {\n // Performed in a `$nextTick()` to prevent endless render/update loops\n vnode.context.$nextTick(() => {\n applyPopover(el, bindings, vnode)\n })\n },\n unbind(el) {\n removePopover(el)\n }\n}\n","import { VBPopover } from './popover'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBPopoverPlugin = /*#__PURE__*/ pluginFactory({\n directives: { VBPopover }\n})\n\nexport { VBPopoverPlugin, VBPopover }\n","import { BPopover } from './popover'\nimport { VBPopoverPlugin } from '../../directives/popover'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst PopoverPlugin = /*#__PURE__*/ pluginFactory({\n components: { BPopover },\n plugins: { VBPopoverPlugin }\n})\n\nexport { PopoverPlugin, BPopover }\n","import { Vue } from '../../vue'\nimport { NAME_PROGRESS_BAR } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { htmlOrText } from '../../utils/html'\nimport { isBoolean } from '../../utils/inspect'\nimport { mathMax, mathPow } from '../../utils/math'\nimport { toFixed, toFloat, toInteger } from '../../utils/number'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n animated: makeProp(PROP_TYPE_BOOLEAN, null),\n label: makeProp(PROP_TYPE_STRING),\n labelHtml: makeProp(PROP_TYPE_STRING),\n max: makeProp(PROP_TYPE_NUMBER_STRING, null),\n precision: makeProp(PROP_TYPE_NUMBER_STRING, null),\n showProgress: makeProp(PROP_TYPE_BOOLEAN, null),\n showValue: makeProp(PROP_TYPE_BOOLEAN, null),\n striped: makeProp(PROP_TYPE_BOOLEAN, null),\n value: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n variant: makeProp(PROP_TYPE_STRING)\n },\n NAME_PROGRESS_BAR\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BProgressBar = /*#__PURE__*/ Vue.extend({\n name: NAME_PROGRESS_BAR,\n mixins: [normalizeSlotMixin],\n inject: {\n bvProgress: {\n default: /* istanbul ignore next */ () => ({})\n }\n },\n props,\n computed: {\n progressBarClasses() {\n const { computedAnimated, computedVariant } = this\n return [\n computedVariant ? `bg-${computedVariant}` : '',\n this.computedStriped || computedAnimated ? 'progress-bar-striped' : '',\n computedAnimated ? 'progress-bar-animated' : ''\n ]\n },\n progressBarStyles() {\n return {\n width: 100 * (this.computedValue / this.computedMax) + '%'\n }\n },\n computedValue() {\n return toFloat(this.value, 0)\n },\n computedMax() {\n // Prefer our max over parent setting\n // Default to `100` for invalid values (`-x`, `0`, `NaN`)\n const max = toFloat(this.max) || toFloat(this.bvProgress.max, 0)\n return max > 0 ? max : 100\n },\n computedPrecision() {\n // Prefer our precision over parent setting\n // Default to `0` for invalid values (`-x`, `NaN`)\n return mathMax(toInteger(this.precision, toInteger(this.bvProgress.precision, 0)), 0)\n },\n computedProgress() {\n const precision = this.computedPrecision\n const p = mathPow(10, precision)\n return toFixed((100 * p * this.computedValue) / this.computedMax / p, precision)\n },\n computedVariant() {\n // Prefer our variant over parent setting\n return this.variant || this.bvProgress.variant\n },\n computedStriped() {\n // Prefer our striped over parent setting\n return isBoolean(this.striped) ? this.striped : this.bvProgress.striped || false\n },\n computedAnimated() {\n // Prefer our animated over parent setting\n return isBoolean(this.animated) ? this.animated : this.bvProgress.animated || false\n },\n computedShowProgress() {\n // Prefer our showProgress over parent setting\n return isBoolean(this.showProgress)\n ? this.showProgress\n : this.bvProgress.showProgress || false\n },\n computedShowValue() {\n // Prefer our showValue over parent setting\n return isBoolean(this.showValue) ? this.showValue : this.bvProgress.showValue || false\n }\n },\n render(h) {\n const { label, labelHtml, computedValue, computedPrecision } = this\n\n let $children\n let domProps = {}\n if (this.hasNormalizedSlot()) {\n $children = this.normalizeSlot()\n } else if (label || labelHtml) {\n domProps = htmlOrText(labelHtml, label)\n } else if (this.computedShowProgress) {\n $children = this.computedProgress\n } else if (this.computedShowValue) {\n $children = toFixed(computedValue, computedPrecision)\n }\n\n return h(\n 'div',\n {\n staticClass: 'progress-bar',\n class: this.progressBarClasses,\n style: this.progressBarStyles,\n attrs: {\n role: 'progressbar',\n 'aria-valuemin': '0',\n 'aria-valuemax': toString(this.computedMax),\n 'aria-valuenow': toFixed(computedValue, computedPrecision)\n },\n domProps\n },\n $children\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_PROGRESS } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BProgressBar, props as BProgressBarProps } from './progress-bar'\n\n// --- Props ---\n\nconst progressBarProps = omit(BProgressBarProps, ['label', 'labelHtml'])\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...progressBarProps,\n animated: makeProp(PROP_TYPE_BOOLEAN, false),\n height: makeProp(PROP_TYPE_STRING),\n max: makeProp(PROP_TYPE_NUMBER_STRING, 100),\n precision: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n showProgress: makeProp(PROP_TYPE_BOOLEAN, false),\n showValue: makeProp(PROP_TYPE_BOOLEAN, false),\n striped: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_PROGRESS\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BProgress = /*#__PURE__*/ Vue.extend({\n name: NAME_PROGRESS,\n mixins: [normalizeSlotMixin],\n provide() {\n return { bvProgress: this }\n },\n props,\n computed: {\n progressHeight() {\n return { height: this.height || null }\n }\n },\n render(h) {\n let $childNodes = this.normalizeSlot()\n if (!$childNodes) {\n $childNodes = h(BProgressBar, { props: pluckProps(progressBarProps, this.$props) })\n }\n\n return h(\n 'div',\n {\n staticClass: 'progress',\n style: this.progressHeight\n },\n [$childNodes]\n )\n }\n})\n","import { BProgress } from './progress'\nimport { BProgressBar } from './progress-bar'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ProgressPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BProgress,\n BProgressBar\n }\n})\n\nexport { ProgressPlugin, BProgress, BProgressBar }\n","import { Vue } from '../../vue'\nimport { NAME_COLLAPSE, NAME_SIDEBAR } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport { EVENT_NAME_CHANGE, EVENT_NAME_HIDDEN, EVENT_NAME_SHOWN } from '../../constants/events'\nimport { CODE_ESC } from '../../constants/key-codes'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_STRING,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport {\n SLOT_NAME_DEFAULT,\n SLOT_NAME_FOOTER,\n SLOT_NAME_HEADER,\n SLOT_NAME_HEADER_CLOSE,\n SLOT_NAME_TITLE\n} from '../../constants/slots'\nimport { attemptFocus, contains, getActiveElement, getTabables } from '../../utils/dom'\nimport { getRootActionEventName, getRootEventName } from '../../utils/events'\nimport { makeModelMixin } from '../../utils/model'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BIconX } from '../../icons/icons'\nimport { BButtonClose } from '../button/button-close'\nimport { BVTransition } from '../transition/bv-transition'\n\n// --- Constants ---\n\nconst CLASS_NAME = 'b-sidebar'\n\nconst ROOT_ACTION_EVENT_NAME_REQUEST_STATE = getRootActionEventName(NAME_COLLAPSE, 'request-state')\nconst ROOT_ACTION_EVENT_NAME_TOGGLE = getRootActionEventName(NAME_COLLAPSE, 'toggle')\n\nconst ROOT_EVENT_NAME_STATE = getRootEventName(NAME_COLLAPSE, 'state')\nconst ROOT_EVENT_NAME_SYNC_STATE = getRootEventName(NAME_COLLAPSE, 'sync-state')\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('visible', {\n type: PROP_TYPE_BOOLEAN,\n defaultValue: false,\n event: EVENT_NAME_CHANGE\n})\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ariaLabel: makeProp(PROP_TYPE_STRING),\n ariaLabelledby: makeProp(PROP_TYPE_STRING),\n // If `true`, shows a basic backdrop\n backdrop: makeProp(PROP_TYPE_BOOLEAN, false),\n backdropVariant: makeProp(PROP_TYPE_STRING, 'dark'),\n bgVariant: makeProp(PROP_TYPE_STRING, 'light'),\n bodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n // `aria-label` for close button\n closeLabel: makeProp(PROP_TYPE_STRING),\n footerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n footerTag: makeProp(PROP_TYPE_STRING, 'footer'),\n headerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n headerTag: makeProp(PROP_TYPE_STRING, 'header'),\n lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n noCloseOnBackdrop: makeProp(PROP_TYPE_BOOLEAN, false),\n noCloseOnEsc: makeProp(PROP_TYPE_BOOLEAN, false),\n noCloseOnRouteChange: makeProp(PROP_TYPE_BOOLEAN, false),\n noEnforceFocus: makeProp(PROP_TYPE_BOOLEAN, false),\n noHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n noHeaderClose: makeProp(PROP_TYPE_BOOLEAN, false),\n noSlide: makeProp(PROP_TYPE_BOOLEAN, false),\n right: makeProp(PROP_TYPE_BOOLEAN, false),\n shadow: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n sidebarClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n textVariant: makeProp(PROP_TYPE_STRING, 'dark'),\n title: makeProp(PROP_TYPE_STRING),\n width: makeProp(PROP_TYPE_STRING),\n zIndex: makeProp(PROP_TYPE_NUMBER_STRING)\n }),\n NAME_SIDEBAR\n)\n\n// --- Render methods ---\n\nconst renderHeaderTitle = (h, ctx) => {\n // Render a empty `<span>` when to title was provided\n const title = ctx.normalizeSlot(SLOT_NAME_TITLE, ctx.slotScope) || ctx.title\n if (!title) {\n return h('span')\n }\n\n return h('strong', { attrs: { id: ctx.safeId('__title__') } }, [title])\n}\n\nconst renderHeaderClose = (h, ctx) => {\n if (ctx.noHeaderClose) {\n return h()\n }\n\n const { closeLabel, textVariant, hide } = ctx\n\n return h(\n BButtonClose,\n {\n props: { ariaLabel: closeLabel, textVariant },\n on: { click: hide },\n ref: 'close-button'\n },\n [ctx.normalizeSlot(SLOT_NAME_HEADER_CLOSE) || h(BIconX)]\n )\n}\n\nconst renderHeader = (h, ctx) => {\n if (ctx.noHeader) {\n return h()\n }\n\n let $content = ctx.normalizeSlot(SLOT_NAME_HEADER, ctx.slotScope)\n if (!$content) {\n const $title = renderHeaderTitle(h, ctx)\n const $close = renderHeaderClose(h, ctx)\n $content = ctx.right ? [$close, $title] : [$title, $close]\n }\n\n return h(\n ctx.headerTag,\n {\n staticClass: `${CLASS_NAME}-header`,\n class: ctx.headerClass,\n key: 'header'\n },\n $content\n )\n}\n\nconst renderBody = (h, ctx) => {\n return h(\n 'div',\n {\n staticClass: `${CLASS_NAME}-body`,\n class: ctx.bodyClass,\n key: 'body'\n },\n [ctx.normalizeSlot(SLOT_NAME_DEFAULT, ctx.slotScope)]\n )\n}\n\nconst renderFooter = (h, ctx) => {\n const $footer = ctx.normalizeSlot(SLOT_NAME_FOOTER, ctx.slotScope)\n if (!$footer) {\n return h()\n }\n\n return h(\n ctx.footerTag,\n {\n staticClass: `${CLASS_NAME}-footer`,\n class: ctx.footerClass,\n key: 'footer'\n },\n [$footer]\n )\n}\n\nconst renderContent = (h, ctx) => {\n // We render the header even if `lazy` is enabled as it\n // acts as the accessible label for the sidebar\n const $header = renderHeader(h, ctx)\n if (ctx.lazy && !ctx.isOpen) {\n return $header\n }\n\n return [$header, renderBody(h, ctx), renderFooter(h, ctx)]\n}\n\nconst renderBackdrop = (h, ctx) => {\n if (!ctx.backdrop) {\n return h()\n }\n\n const { backdropVariant } = ctx\n\n return h('div', {\n directives: [{ name: 'show', value: ctx.localShow }],\n staticClass: 'b-sidebar-backdrop',\n class: { [`bg-${backdropVariant}`]: backdropVariant },\n on: { click: ctx.onBackdropClick }\n })\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BSidebar = /*#__PURE__*/ Vue.extend({\n name: NAME_SIDEBAR,\n mixins: [attrsMixin, idMixin, modelMixin, listenOnRootMixin, normalizeSlotMixin],\n inheritAttrs: false,\n props,\n data() {\n const visible = !!this[MODEL_PROP_NAME]\n return {\n // Internal `v-model` state\n localShow: visible,\n // For lazy render triggering\n isOpen: visible\n }\n },\n computed: {\n transitionProps() {\n return this.noSlide\n ? /* istanbul ignore next */ { css: true }\n : {\n css: true,\n enterClass: '',\n enterActiveClass: 'slide',\n enterToClass: 'show',\n leaveClass: 'show',\n leaveActiveClass: 'slide',\n leaveToClass: ''\n }\n },\n slotScope() {\n const { hide, right, localShow: visible } = this\n return { hide, right, visible }\n },\n hasTitle() {\n const { $scopedSlots, $slots } = this\n return (\n !this.noHeader &&\n !this.hasNormalizedSlot(SLOT_NAME_HEADER) &&\n !!(this.normalizeSlot(SLOT_NAME_TITLE, this.slotScope, $scopedSlots, $slots) || this.title)\n )\n },\n titleId() {\n return this.hasTitle ? this.safeId('__title__') : null\n },\n computedAttrs() {\n return {\n ...this.bvAttrs,\n id: this.safeId(),\n tabindex: '-1',\n role: 'dialog',\n 'aria-modal': this.backdrop ? 'true' : 'false',\n 'aria-hidden': this.localShow ? null : 'true',\n 'aria-label': this.ariaLabel || null,\n 'aria-labelledby': this.ariaLabelledby || this.titleId || null\n }\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue, oldValue) {\n if (newValue !== oldValue) {\n this.localShow = newValue\n }\n },\n localShow(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.emitState(newValue)\n this.$emit(MODEL_EVENT_NAME, newValue)\n }\n },\n /* istanbul ignore next */\n $route(newValue = {}, oldValue = {}) {\n if (!this.noCloseOnRouteChange && newValue.fullPath !== oldValue.fullPath) {\n this.hide()\n }\n }\n },\n created() {\n // Define non-reactive properties\n this.$_returnFocusEl = null\n },\n mounted() {\n // Add `$root` listeners\n this.listenOnRoot(ROOT_ACTION_EVENT_NAME_TOGGLE, this.handleToggle)\n this.listenOnRoot(ROOT_ACTION_EVENT_NAME_REQUEST_STATE, this.handleSync)\n // Send out a gratuitous state event to ensure toggle button is synced\n this.$nextTick(() => {\n this.emitState(this.localShow)\n })\n },\n /* istanbul ignore next */\n activated() {\n this.emitSync()\n },\n beforeDestroy() {\n this.localShow = false\n this.$_returnFocusEl = null\n },\n methods: {\n hide() {\n this.localShow = false\n },\n emitState(state = this.localShow) {\n this.emitOnRoot(ROOT_EVENT_NAME_STATE, this.safeId(), state)\n },\n emitSync(state = this.localShow) {\n this.emitOnRoot(ROOT_EVENT_NAME_SYNC_STATE, this.safeId(), state)\n },\n handleToggle(id) {\n // Note `safeId()` can be null until after mount\n if (id && id === this.safeId()) {\n this.localShow = !this.localShow\n }\n },\n handleSync(id) {\n // Note `safeId()` can be null until after mount\n if (id && id === this.safeId()) {\n this.$nextTick(() => {\n this.emitSync(this.localShow)\n })\n }\n },\n onKeydown(event) {\n const { keyCode } = event\n if (!this.noCloseOnEsc && keyCode === CODE_ESC && this.localShow) {\n this.hide()\n }\n },\n onBackdropClick() {\n if (this.localShow && !this.noCloseOnBackdrop) {\n this.hide()\n }\n },\n /* istanbul ignore next */\n onTopTrapFocus() {\n const tabables = getTabables(this.$refs.content)\n this.enforceFocus(tabables.reverse()[0])\n },\n /* istanbul ignore next */\n onBottomTrapFocus() {\n const tabables = getTabables(this.$refs.content)\n this.enforceFocus(tabables[0])\n },\n onBeforeEnter() {\n // Returning focus to `document.body` may cause unwanted scrolls,\n // so we exclude setting focus on body\n this.$_returnFocusEl = getActiveElement(IS_BROWSER ? [document.body] : [])\n // Trigger lazy render\n this.isOpen = true\n },\n onAfterEnter(el) {\n if (!contains(el, getActiveElement())) {\n this.enforceFocus(el)\n }\n this.$emit(EVENT_NAME_SHOWN)\n },\n onAfterLeave() {\n this.enforceFocus(this.$_returnFocusEl)\n this.$_returnFocusEl = null\n // Trigger lazy render\n this.isOpen = false\n this.$emit(EVENT_NAME_HIDDEN)\n },\n enforceFocus(el) {\n if (!this.noEnforceFocus) {\n attemptFocus(el)\n }\n }\n },\n render(h) {\n const { bgVariant, width, textVariant, localShow } = this\n const shadow = this.shadow === '' ? true : this.shadow\n\n let $sidebar = h(\n this.tag,\n {\n staticClass: CLASS_NAME,\n class: [\n {\n shadow: shadow === true,\n [`shadow-${shadow}`]: shadow && shadow !== true,\n [`${CLASS_NAME}-right`]: this.right,\n [`bg-${bgVariant}`]: bgVariant,\n [`text-${textVariant}`]: textVariant\n },\n this.sidebarClass\n ],\n style: { width },\n attrs: this.computedAttrs,\n directives: [{ name: 'show', value: localShow }],\n ref: 'content'\n },\n [renderContent(h, this)]\n )\n\n $sidebar = h(\n 'transition',\n {\n props: this.transitionProps,\n on: {\n beforeEnter: this.onBeforeEnter,\n afterEnter: this.onAfterEnter,\n afterLeave: this.onAfterLeave\n }\n },\n [$sidebar]\n )\n\n const $backdrop = h(BVTransition, { props: { noFade: this.noSlide } }, [\n renderBackdrop(h, this)\n ])\n\n let $tabTrapTop = h()\n let $tabTrapBottom = h()\n if (this.backdrop && localShow) {\n $tabTrapTop = h('div', {\n attrs: { tabindex: '0' },\n on: { focus: this.onTopTrapFocus }\n })\n $tabTrapBottom = h('div', {\n attrs: { tabindex: '0' },\n on: { focus: this.onBottomTrapFocus }\n })\n }\n\n return h(\n 'div',\n {\n staticClass: 'b-sidebar-outer',\n style: { zIndex: this.zIndex },\n attrs: { tabindex: '-1' },\n on: { keydown: this.onKeydown }\n },\n [$tabTrapTop, $sidebar, $tabTrapBottom, $backdrop]\n )\n }\n})\n","import { BSidebar } from './sidebar'\nimport { VBTogglePlugin } from '../../directives/toggle'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst SidebarPlugin = /*#__PURE__*/ pluginFactory({\n components: { BSidebar },\n plugins: { VBTogglePlugin }\n})\n\nexport { SidebarPlugin, BSidebar }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_SKELETON } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n animation: makeProp(PROP_TYPE_STRING, 'wave'),\n height: makeProp(PROP_TYPE_STRING),\n size: makeProp(PROP_TYPE_STRING),\n type: makeProp(PROP_TYPE_STRING, 'text'),\n variant: makeProp(PROP_TYPE_STRING),\n width: makeProp(PROP_TYPE_STRING)\n },\n NAME_SKELETON\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BSkeleton = /*#__PURE__*/ Vue.extend({\n name: NAME_SKELETON,\n functional: true,\n props,\n render(h, { data, props }) {\n const { size, animation, variant } = props\n\n return h(\n 'div',\n mergeData(data, {\n staticClass: 'b-skeleton',\n style: {\n width: size || props.width,\n height: size || props.height\n },\n class: {\n [`b-skeleton-${props.type}`]: true,\n [`b-skeleton-animate-${animation}`]: animation,\n [`bg-${variant}`]: variant\n }\n })\n )\n }\n})\n","import { Vue, mergeData } from '../vue'\nimport { NAME_ICONSTACK } from '../constants/components'\nimport { omit } from '../utils/object'\nimport { makePropsConfigurable } from '../utils/props'\nimport { BVIconBase, props as BVIconBaseProps } from './helpers/icon-base'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n omit(BVIconBaseProps, ['content', 'stacked']),\n NAME_ICONSTACK\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BIconstack = /*#__PURE__*/ Vue.extend({\n name: NAME_ICONSTACK,\n functional: true,\n props,\n render(h, { data, props, children }) {\n return h(\n BVIconBase,\n mergeData(data, {\n staticClass: 'b-iconstack',\n props\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_SKELETON_ICON } from '../../constants/components'\nimport { PROP_TYPE_OBJECT, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BIcon } from '../../icons'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n animation: makeProp(PROP_TYPE_STRING, 'wave'),\n icon: makeProp(PROP_TYPE_STRING),\n iconProps: makeProp(PROP_TYPE_OBJECT, {})\n },\n NAME_SKELETON_ICON\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BSkeletonIcon = /*#__PURE__*/ Vue.extend({\n name: NAME_SKELETON_ICON,\n functional: true,\n props,\n render(h, { data, props }) {\n const { icon, animation } = props\n\n const $icon = h(BIcon, {\n staticClass: 'b-skeleton-icon',\n props: {\n ...props.iconProps,\n icon\n }\n })\n\n return h(\n 'div',\n mergeData(data, {\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_SKELETON_IMG } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BAspect } from '../aspect'\nimport { BSkeleton } from './skeleton'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n animation: makeProp(PROP_TYPE_STRING),\n aspect: makeProp(PROP_TYPE_STRING, '16:9'),\n cardImg: makeProp(PROP_TYPE_STRING),\n height: makeProp(PROP_TYPE_STRING),\n noAspect: makeProp(PROP_TYPE_BOOLEAN, false),\n variant: makeProp(PROP_TYPE_STRING),\n width: makeProp(PROP_TYPE_STRING)\n },\n NAME_SKELETON_IMG\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BSkeletonImg = /*#__PURE__*/ Vue.extend({\n name: NAME_SKELETON_IMG,\n functional: true,\n props,\n render(h, { data, props }) {\n const { aspect, width, height, animation, variant, cardImg } = props\n\n const $img = h(\n BSkeleton,\n mergeData(data, {\n props: {\n type: 'img',\n width,\n height,\n animation,\n variant\n },\n class: { [`card-img-${cardImg}`]: cardImg }\n })\n )\n\n return props.noAspect ? $img : h(BAspect, { props: { aspect } }, [$img])\n }\n})\n","// Mixin to determine if an event listener has been registered\n// either via `v-on:name` (in the parent) or programmatically\n// via `vm.$on('name', ...)`\n// See: https://github.com/vuejs/vue/issues/10825\nimport { Vue } from '../vue'\nimport { isArray, isUndefined } from '../utils/inspect'\n\n// @vue/component\nexport const hasListenerMixin = Vue.extend({\n methods: {\n hasListener(name) {\n // Only includes listeners registered via `v-on:name`\n const $listeners = this.$listeners || {}\n // Includes `v-on:name` and `this.$on('name')` registered listeners\n // Note this property is not part of the public Vue API, but it is\n // the only way to determine if a listener was added via `vm.$on`\n const $events = this._events || {}\n // Registered listeners in `this._events` are always an array,\n // but might be zero length\n return !isUndefined($listeners[name]) || (isArray($events[name]) && $events[name].length > 0)\n }\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TR } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst LIGHT = 'light'\nconst DARK = 'dark'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n variant: makeProp(PROP_TYPE_STRING)\n },\n NAME_TR\n)\n\n// --- Main component ---\n\n// TODO:\n// In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n// to the child elements, so this can be converted to a functional component\n// @vue/component\nexport const BTr = /*#__PURE__*/ Vue.extend({\n name: NAME_TR,\n mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n provide() {\n return {\n bvTableTr: this\n }\n },\n inject: {\n bvTableRowGroup: {\n default: /* istanbul ignore next */ () => ({})\n }\n },\n inheritAttrs: false,\n props,\n computed: {\n // Sniffed by `<b-td>` / `<b-th>`\n inTbody() {\n return this.bvTableRowGroup.isTbody\n },\n // Sniffed by `<b-td>` / `<b-th>`\n inThead() {\n return this.bvTableRowGroup.isThead\n },\n // Sniffed by `<b-td>` / `<b-th>`\n inTfoot() {\n return this.bvTableRowGroup.isTfoot\n },\n // Sniffed by `<b-td>` / `<b-th>`\n isDark() {\n return this.bvTableRowGroup.isDark\n },\n // Sniffed by `<b-td>` / `<b-th>`\n isStacked() {\n return this.bvTableRowGroup.isStacked\n },\n // Sniffed by `<b-td>` / `<b-th>`\n isResponsive() {\n return this.bvTableRowGroup.isResponsive\n },\n // Sniffed by `<b-td>` / `<b-th>`\n // Sticky headers are only supported in thead\n isStickyHeader() {\n return this.bvTableRowGroup.isStickyHeader\n },\n // Sniffed by <b-tr> / `<b-td>` / `<b-th>`\n // Needed to handle header background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n hasStickyHeader() {\n return !this.isStacked && this.bvTableRowGroup.hasStickyHeader\n },\n // Sniffed by `<b-td>` / `<b-th>`\n tableVariant() {\n return this.bvTableRowGroup.tableVariant\n },\n // Sniffed by `<b-td>` / `<b-th>`\n headVariant() {\n return this.inThead ? this.bvTableRowGroup.headVariant : null\n },\n // Sniffed by `<b-td>` / `<b-th>`\n footVariant() {\n return this.inTfoot ? this.bvTableRowGroup.footVariant : null\n },\n isRowDark() {\n return this.headVariant === LIGHT || this.footVariant === LIGHT\n ? /* istanbul ignore next */ false\n : this.headVariant === DARK || this.footVariant === DARK\n ? /* istanbul ignore next */ true\n : this.isDark\n },\n trClasses() {\n const { variant } = this\n return [variant ? `${this.isRowDark ? 'bg' : 'table'}-${variant}` : null]\n },\n trAttrs() {\n return { role: 'row', ...this.bvAttrs }\n }\n },\n render(h) {\n return h(\n 'tr',\n {\n class: this.trClasses,\n attrs: this.trAttrs,\n // Pass native listeners to child\n on: this.bvListeners\n },\n this.normalizeSlot()\n )\n }\n})\n","import { Vue } from '../../../vue'\nimport { SLOT_NAME_BOTTOM_ROW } from '../../../constants/slots'\nimport { isFunction } from '../../../utils/inspect'\nimport { BTr } from '../tr'\n\n// --- Props ---\n\nexport const props = {}\n\n// --- Mixin ---\n\n// @vue/component\nexport const bottomRowMixin = Vue.extend({\n props,\n methods: {\n renderBottomRow() {\n const { computedFields: fields, stacked, tbodyTrClass, tbodyTrAttr } = this\n const h = this.$createElement\n\n // Static bottom row slot (hidden in visibly stacked mode as we can't control the data-label)\n // If in *always* stacked mode, we don't bother rendering the row\n if (!this.hasNormalizedSlot(SLOT_NAME_BOTTOM_ROW) || stacked === true || stacked === '') {\n return h()\n }\n\n return h(\n BTr,\n {\n staticClass: 'b-table-bottom-row',\n class: [\n isFunction(tbodyTrClass)\n ? /* istanbul ignore next */ tbodyTrClass(null, 'row-bottom')\n : tbodyTrClass\n ],\n attrs: isFunction(tbodyTrAttr)\n ? /* istanbul ignore next */ tbodyTrAttr(null, 'row-bottom')\n : tbodyTrAttr,\n key: 'b-bottom-row'\n },\n this.normalizeSlot(SLOT_NAME_BOTTOM_ROW, { columns: fields.length, fields })\n )\n }\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TABLE_CELL } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { isTag } from '../../utils/dom'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { toInteger } from '../../utils/number'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Helper methods ---\n\n// Parse a rowspan or colspan into a digit (or `null` if < `1` )\nconst parseSpan = value => {\n value = toInteger(value, 0)\n return value > 0 ? value : null\n}\n\n/* istanbul ignore next */\nconst spanValidator = value => isUndefinedOrNull(value) || parseSpan(value) > 0\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n colspan: makeProp(PROP_TYPE_NUMBER_STRING, null, spanValidator),\n rowspan: makeProp(PROP_TYPE_NUMBER_STRING, null, spanValidator),\n stackedHeading: makeProp(PROP_TYPE_STRING),\n stickyColumn: makeProp(PROP_TYPE_BOOLEAN, false),\n variant: makeProp(PROP_TYPE_STRING)\n },\n NAME_TABLE_CELL\n)\n\n// --- Main component ---\n\n// TODO:\n// In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n// to the child elements, so this can be converted to a functional component\n// @vue/component\nexport const BTd = /*#__PURE__*/ Vue.extend({\n name: NAME_TABLE_CELL,\n // Mixin order is important!\n mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n inject: {\n bvTableTr: {\n default: /* istanbul ignore next */ () => ({})\n }\n },\n inheritAttrs: false,\n props,\n computed: {\n // Overridden by `<b-th>`\n tag() {\n return 'td'\n },\n inTbody() {\n return this.bvTableTr.inTbody\n },\n inThead() {\n return this.bvTableTr.inThead\n },\n inTfoot() {\n return this.bvTableTr.inTfoot\n },\n isDark() {\n return this.bvTableTr.isDark\n },\n isStacked() {\n return this.bvTableTr.isStacked\n },\n // We only support stacked-heading in tbody in stacked mode\n isStackedCell() {\n return this.inTbody && this.isStacked\n },\n isResponsive() {\n return this.bvTableTr.isResponsive\n },\n // Needed to handle header background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n // Sticky headers only apply to cells in table `thead`\n isStickyHeader() {\n return this.bvTableTr.isStickyHeader\n },\n // Needed to handle header background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n hasStickyHeader() {\n return this.bvTableTr.hasStickyHeader\n },\n // Needed to handle background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n // Sticky column cells are only available in responsive\n // mode (horizontal scrolling) or when sticky header mode\n // Applies to cells in `thead`, `tbody` and `tfoot`\n isStickyColumn() {\n return !this.isStacked && (this.isResponsive || this.hasStickyHeader) && this.stickyColumn\n },\n rowVariant() {\n return this.bvTableTr.variant\n },\n headVariant() {\n return this.bvTableTr.headVariant\n },\n footVariant() {\n return this.bvTableTr.footVariant\n },\n tableVariant() {\n return this.bvTableTr.tableVariant\n },\n computedColspan() {\n return parseSpan(this.colspan)\n },\n computedRowspan() {\n return parseSpan(this.rowspan)\n },\n // We use computed props here for improved performance by caching\n // the results of the string interpolation\n cellClasses() {\n let { variant, headVariant, isStickyColumn } = this\n if (\n (!variant && this.isStickyHeader && !headVariant) ||\n (!variant && isStickyColumn && this.inTfoot && !this.footVariant) ||\n (!variant && isStickyColumn && this.inThead && !headVariant) ||\n (!variant && isStickyColumn && this.inTbody)\n ) {\n // Needed for sticky-header mode as Bootstrap v4 table cells do\n // not inherit parent's `background-color`\n variant = this.rowVariant || this.tableVariant || 'b-table-default'\n }\n return [\n variant ? `${this.isDark ? 'bg' : 'table'}-${variant}` : null,\n isStickyColumn ? 'b-table-sticky-column' : null\n ]\n },\n cellAttrs() {\n const { stackedHeading } = this\n\n // We use computed props here for improved performance by caching\n // the results of the object spread (Object.assign)\n const headOrFoot = this.inThead || this.inTfoot\n // Make sure col/rowspan's are > 0 or null\n const colspan = this.computedColspan\n const rowspan = this.computedRowspan\n // Default role and scope\n let role = 'cell'\n let scope = null\n\n // Compute role and scope\n // We only add scopes with an explicit span of 1 or greater\n if (headOrFoot) {\n // Header or footer cells\n role = 'columnheader'\n scope = colspan > 0 ? 'colspan' : 'col'\n } else if (isTag(this.tag, 'th')) {\n // th's in tbody\n role = 'rowheader'\n scope = rowspan > 0 ? 'rowgroup' : 'row'\n }\n\n return {\n colspan,\n rowspan,\n role,\n scope,\n // Allow users to override role/scope plus add other attributes\n ...this.bvAttrs,\n // Add in the stacked cell label data-attribute if in\n // stacked mode (if a stacked heading label is provided)\n 'data-label':\n this.isStackedCell && !isUndefinedOrNull(stackedHeading)\n ? /* istanbul ignore next */ toString(stackedHeading)\n : null\n }\n }\n },\n render(h) {\n const $content = [this.normalizeSlot()]\n\n return h(\n this.tag,\n {\n class: this.cellClasses,\n attrs: this.cellAttrs,\n // Transfer any native listeners\n on: this.bvListeners\n },\n [this.isStackedCell ? h('div', [$content]) : $content]\n )\n }\n})\n","import { Vue } from '../../../vue'\nimport { MODEL_EVENT_NAME_PREFIX } from '../../../constants/events'\nimport { PROP_TYPE_BOOLEAN } from '../../../constants/props'\nimport { SLOT_NAME_TABLE_BUSY } from '../../../constants/slots'\nimport { stopEvent } from '../../../utils/events'\nimport { isFunction } from '../../../utils/inspect'\nimport { makeProp } from '../../../utils/props'\nimport { BTr } from '../tr'\nimport { BTd } from '../td'\n\n// --- Constants ---\n\nconst MODEL_PROP_NAME_BUSY = 'busy'\nconst MODEL_EVENT_NAME_BUSY = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_BUSY\n\n// --- Props ---\n\nexport const props = {\n [MODEL_PROP_NAME_BUSY]: makeProp(PROP_TYPE_BOOLEAN, false)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const busyMixin = Vue.extend({\n props,\n data() {\n return {\n localBusy: false\n }\n },\n computed: {\n computedBusy() {\n return this[MODEL_PROP_NAME_BUSY] || this.localBusy\n }\n },\n watch: {\n localBusy(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.$emit(MODEL_EVENT_NAME_BUSY, newValue)\n }\n }\n },\n methods: {\n // Event handler helper\n stopIfBusy(event) {\n // If table is busy (via provider) then don't propagate\n if (this.computedBusy) {\n stopEvent(event)\n return true\n }\n return false\n },\n // Render the busy indicator or return `null` if not busy\n renderBusy() {\n const { tbodyTrClass, tbodyTrAttr } = this\n const h = this.$createElement\n\n // Return a busy indicator row, or `null` if not busy\n if (this.computedBusy && this.hasNormalizedSlot(SLOT_NAME_TABLE_BUSY)) {\n return h(\n BTr,\n {\n staticClass: 'b-table-busy-slot',\n class: [\n isFunction(tbodyTrClass)\n ? /* istanbul ignore next */ tbodyTrClass(null, SLOT_NAME_TABLE_BUSY)\n : tbodyTrClass\n ],\n attrs: isFunction(tbodyTrAttr)\n ? /* istanbul ignore next */ tbodyTrAttr(null, SLOT_NAME_TABLE_BUSY)\n : tbodyTrAttr,\n key: 'table-busy-slot'\n },\n [\n h(BTd, { props: { colspan: this.computedFields.length || null } }, [\n this.normalizeSlot(SLOT_NAME_TABLE_BUSY)\n ])\n ]\n )\n }\n\n // We return `null` here so that we can determine if we need to\n // render the table items rows or not\n return null\n }\n }\n})\n","import { Vue } from '../../../vue'\nimport { PROP_TYPE_STRING } from '../../../constants/props'\nimport { SLOT_NAME_TABLE_CAPTION } from '../../../constants/slots'\nimport { htmlOrText } from '../../../utils/html'\nimport { makeProp } from '../../../utils/props'\n\n// --- Props ---\n\nexport const props = {\n caption: makeProp(PROP_TYPE_STRING),\n captionHtml: makeProp(PROP_TYPE_STRING)\n // `caption-top` is part of table-render mixin (styling)\n // captionTop: makeProp(PROP_TYPE_BOOLEAN, false)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const captionMixin = Vue.extend({\n props,\n computed: {\n captionId() {\n return this.isStacked ? this.safeId('_caption_') : null\n }\n },\n methods: {\n renderCaption() {\n const { caption, captionHtml } = this\n const h = this.$createElement\n\n let $caption = h()\n const hasCaptionSlot = this.hasNormalizedSlot(SLOT_NAME_TABLE_CAPTION)\n if (hasCaptionSlot || caption || captionHtml) {\n $caption = h(\n 'caption',\n {\n attrs: { id: this.captionId },\n domProps: hasCaptionSlot ? {} : htmlOrText(captionHtml, caption),\n key: 'caption',\n ref: 'caption'\n },\n this.normalizeSlot(SLOT_NAME_TABLE_CAPTION)\n )\n }\n\n return $caption\n }\n }\n})\n","import { Vue } from '../../../vue'\nimport { SLOT_NAME_TABLE_COLGROUP } from '../../../constants/slots'\n\n// --- Props ---\n\nexport const props = {}\n\n// --- Mixin ---\n\n// @vue/component\nexport const colgroupMixin = Vue.extend({\n methods: {\n renderColgroup() {\n const { computedFields: fields } = this\n const h = this.$createElement\n\n let $colgroup = h()\n if (this.hasNormalizedSlot(SLOT_NAME_TABLE_COLGROUP)) {\n $colgroup = h('colgroup', { key: 'colgroup' }, [\n this.normalizeSlot(SLOT_NAME_TABLE_COLGROUP, { columns: fields.length, fields })\n ])\n }\n\n return $colgroup\n }\n }\n})\n","import { Vue } from '../../../vue'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../../constants/props'\nimport {\n SLOT_NAME_EMPTY,\n SLOT_NAME_EMPTYFILTERED,\n SLOT_NAME_TABLE_BUSY\n} from '../../../constants/slots'\nimport { htmlOrText } from '../../../utils/html'\nimport { isFunction } from '../../../utils/inspect'\nimport { makeProp } from '../../../utils/props'\nimport { BTr } from '../tr'\nimport { BTd } from '../td'\n\n// --- Props ---\n\nexport const props = {\n emptyFilteredHtml: makeProp(PROP_TYPE_STRING),\n emptyFilteredText: makeProp(PROP_TYPE_STRING, 'There are no records matching your request'),\n emptyHtml: makeProp(PROP_TYPE_STRING),\n emptyText: makeProp(PROP_TYPE_STRING, 'There are no records to show'),\n showEmpty: makeProp(PROP_TYPE_BOOLEAN, false)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const emptyMixin = Vue.extend({\n props,\n methods: {\n renderEmpty() {\n const { computedItems: items } = this\n const h = this.$createElement\n\n let $empty = h()\n if (\n this.showEmpty &&\n (!items || items.length === 0) &&\n !(this.computedBusy && this.hasNormalizedSlot(SLOT_NAME_TABLE_BUSY))\n ) {\n const {\n computedFields: fields,\n isFiltered,\n emptyText,\n emptyHtml,\n emptyFilteredText,\n emptyFilteredHtml,\n tbodyTrClass,\n tbodyTrAttr\n } = this\n\n $empty = this.normalizeSlot(isFiltered ? SLOT_NAME_EMPTYFILTERED : SLOT_NAME_EMPTY, {\n emptyFilteredHtml,\n emptyFilteredText,\n emptyHtml,\n emptyText,\n fields,\n // Not sure why this is included, as it will always be an empty array\n items\n })\n\n if (!$empty) {\n $empty = h('div', {\n class: ['text-center', 'my-2'],\n domProps: isFiltered\n ? htmlOrText(emptyFilteredHtml, emptyFilteredText)\n : htmlOrText(emptyHtml, emptyText)\n })\n }\n\n $empty = h(BTd, { props: { colspan: fields.length || null } }, [\n h(\n 'div',\n {\n attrs: {\n role: 'alert',\n 'aria-live': 'polite'\n }\n },\n [$empty]\n )\n ])\n\n $empty = h(\n BTr,\n {\n staticClass: 'b-table-empty-row',\n class: [\n isFunction(tbodyTrClass)\n ? /* istanbul ignore next */ tbodyTrClass(null, 'row-empty')\n : tbodyTrClass\n ],\n attrs: isFunction(tbodyTrAttr)\n ? /* istanbul ignore next */ tbodyTrAttr(null, 'row-empty')\n : tbodyTrAttr,\n key: isFiltered ? 'b-empty-filtered-row' : 'b-empty-row'\n },\n [$empty]\n )\n }\n\n return $empty\n }\n }\n})\n","import { isDate, isObject, isUndefinedOrNull } from './inspect'\nimport { keys } from './object'\nimport { toString } from './string'\n\n// Recursively stringifies the values of an object, space separated, in an\n// SSR safe deterministic way (keys are sorted before stringification)\n//\n// ex:\n// { b: 3, c: { z: 'zzz', d: null, e: 2 }, d: [10, 12, 11], a: 'one' }\n// becomes\n// 'one 3 2 zzz 10 12 11'\n//\n// Strings are returned as-is\n// Numbers get converted to string\n// `null` and `undefined` values are filtered out\n// Dates are converted to their native string format\nexport const stringifyObjectValues = value => {\n if (isUndefinedOrNull(value)) {\n return ''\n }\n // Arrays are also object, and keys just returns the array indexes\n // Date objects we convert to strings\n if (isObject(value) && !isDate(value)) {\n return keys(value)\n .sort() // Sort to prevent SSR issues on pre-rendered sorted tables\n .map(k => stringifyObjectValues(value[k]))\n .filter(v => !!v) // Ignore empty strings\n .join(' ')\n }\n return toString(value)\n}\n","// Constants used by table helpers\n\nexport const FIELD_KEY_CELL_VARIANT = '_cellVariants'\nexport const FIELD_KEY_ROW_VARIANT = '_rowVariant'\nexport const FIELD_KEY_SHOW_DETAILS = '_showDetails'\n\n// Object of item keys that should be ignored for headers and\n// stringification and filter events\nexport const IGNORED_FIELD_KEYS = [\n FIELD_KEY_CELL_VARIANT,\n FIELD_KEY_ROW_VARIANT,\n FIELD_KEY_SHOW_DETAILS\n].reduce((result, key) => ({ ...result, [key]: true }), {})\n\n// Filter CSS selector for click/dblclick/etc. events\n// If any of these selectors match the clicked element, we ignore the event\nexport const EVENT_FILTER = [\n 'a',\n 'a *', // Include content inside links\n 'button',\n 'button *', // Include content inside buttons\n 'input:not(.disabled):not([disabled])',\n 'select:not(.disabled):not([disabled])',\n 'textarea:not(.disabled):not([disabled])',\n '[role=\"link\"]',\n '[role=\"link\"] *',\n '[role=\"button\"]',\n '[role=\"button\"] *',\n '[tabindex]:not(.disabled):not([disabled])'\n].join(',')\n","import { arrayIncludes } from '../../../utils/array'\nimport { isArray, isFunction } from '../../../utils/inspect'\nimport { clone, keys, pick } from '../../../utils/object'\nimport { IGNORED_FIELD_KEYS } from './constants'\n\n// Return a copy of a row after all reserved fields have been filtered out\nexport const sanitizeRow = (row, ignoreFields, includeFields, fieldsObj = {}) => {\n // We first need to format the row based on the field configurations\n // This ensures that we add formatted values for keys that may not\n // exist in the row itself\n const formattedRow = keys(fieldsObj).reduce((result, key) => {\n const field = fieldsObj[key]\n const { filterByFormatted } = field\n const formatter = isFunction(filterByFormatted)\n ? /* istanbul ignore next */ filterByFormatted\n : filterByFormatted\n ? /* istanbul ignore next */ field.formatter\n : null\n\n if (isFunction(formatter)) {\n result[key] = formatter(row[key], key, row)\n }\n\n return result\n }, clone(row))\n\n // Determine the allowed keys:\n // - Ignore special fields that start with `_`\n // - Ignore fields in the `ignoreFields` array\n // - Include only fields in the `includeFields` array\n const allowedKeys = keys(formattedRow).filter(\n key =>\n !IGNORED_FIELD_KEYS[key] &&\n !(isArray(ignoreFields) && ignoreFields.length > 0 && arrayIncludes(ignoreFields, key)) &&\n !(isArray(includeFields) && includeFields.length > 0 && !arrayIncludes(includeFields, key))\n )\n\n return pick(formattedRow, allowedKeys)\n}\n","import { Vue } from '../../../vue'\nimport { NAME_TABLE } from '../../../constants/components'\nimport { EVENT_NAME_FILTERED } from '../../../constants/events'\nimport {\n PROP_TYPE_REG_EXP,\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_FUNCTION,\n PROP_TYPE_ARRAY,\n PROP_TYPE_NUMBER_STRING\n} from '../../../constants/props'\nimport { RX_DIGITS, RX_SPACES } from '../../../constants/regex'\nimport { concat } from '../../../utils/array'\nimport { cloneDeep } from '../../../utils/clone-deep'\nimport { identity } from '../../../utils/identity'\nimport { isFunction, isString, isRegExp } from '../../../utils/inspect'\nimport { looseEqual } from '../../../utils/loose-equal'\nimport { toInteger } from '../../../utils/number'\nimport { hasPropFunction, makeProp } from '../../../utils/props'\nimport { escapeRegExp } from '../../../utils/string'\nimport { warn } from '../../../utils/warn'\nimport { stringifyRecordValues } from './stringify-record-values'\n\n// --- Constants ---\n\nconst DEBOUNCE_DEPRECATED_MSG =\n 'Prop \"filter-debounce\" is deprecated. Use the debounce feature of \"<b-form-input>\" instead.'\n\n// --- Props ---\n\nexport const props = {\n filter: makeProp([...PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_REG_EXP]),\n filterDebounce: makeProp(PROP_TYPE_NUMBER_STRING, 0, value => {\n return RX_DIGITS.test(String(value))\n }),\n filterFunction: makeProp(PROP_TYPE_FUNCTION),\n filterIgnoredFields: makeProp(PROP_TYPE_ARRAY, []),\n filterIncludedFields: makeProp(PROP_TYPE_ARRAY, [])\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const filteringMixin = Vue.extend({\n props,\n data() {\n return {\n // Flag for displaying which empty slot to show and some event triggering\n isFiltered: false,\n // Where we store the copy of the filter criteria after debouncing\n // We pre-set it with the sanitized filter value\n localFilter: this.filterSanitize(this.filter)\n }\n },\n computed: {\n computedFilterIgnored() {\n return concat(this.filterIgnoredFields || []).filter(identity)\n },\n computedFilterIncluded() {\n return concat(this.filterIncludedFields || []).filter(identity)\n },\n computedFilterDebounce() {\n const ms = toInteger(this.filterDebounce, 0)\n /* istanbul ignore next */\n if (ms > 0) {\n warn(DEBOUNCE_DEPRECATED_MSG, NAME_TABLE)\n }\n return ms\n },\n localFiltering() {\n return this.hasProvider ? !!this.noProviderFiltering : true\n },\n // For watching changes to `filteredItems` vs `localItems`\n filteredCheck() {\n const { filteredItems, localItems, localFilter } = this\n return { filteredItems, localItems, localFilter }\n },\n // Sanitized/normalize filter-function prop\n localFilterFn() {\n // Return `null` to signal to use internal filter function\n const { filterFunction } = this\n return hasPropFunction(filterFunction) ? filterFunction : null\n },\n // Returns the records in `localItems` that match the filter criteria\n // Returns the original `localItems` array if not sorting\n filteredItems() {\n // Note the criteria is debounced and sanitized\n const { localItems: items, localFilter: criteria } = this\n\n // Resolve the filtering function, when requested\n // We prefer the provided filtering function and fallback to the internal one\n // When no filtering criteria is specified the filtering factories will return `null`\n const filterFn = this.localFiltering\n ? this.filterFnFactory(this.localFilterFn, criteria) ||\n this.defaultFilterFnFactory(criteria)\n : null\n\n // We only do local filtering when requested and there are records to filter\n return filterFn && items.length > 0 ? items.filter(filterFn) : items\n }\n },\n watch: {\n // Watch for debounce being set to 0\n computedFilterDebounce(newValue) {\n if (!newValue && this.$_filterTimer) {\n this.clearFilterTimer()\n this.localFilter = this.filterSanitize(this.filter)\n }\n },\n // Watch for changes to the filter criteria, and debounce if necessary\n filter: {\n // We need a deep watcher in case the user passes\n // an object when using `filter-function`\n deep: true,\n handler(newCriteria) {\n const timeout = this.computedFilterDebounce\n this.clearFilterTimer()\n if (timeout && timeout > 0) {\n // If we have a debounce time, delay the update of `localFilter`\n this.$_filterTimer = setTimeout(() => {\n this.localFilter = this.filterSanitize(newCriteria)\n }, timeout)\n } else {\n // Otherwise, immediately update `localFilter` with `newFilter` value\n this.localFilter = this.filterSanitize(newCriteria)\n }\n }\n },\n // Watch for changes to the filter criteria and filtered items vs `localItems`\n // Set visual state and emit events as required\n filteredCheck({ filteredItems, localFilter }) {\n // Determine if the dataset is filtered or not\n let isFiltered = false\n if (!localFilter) {\n // If filter criteria is falsey\n isFiltered = false\n } else if (looseEqual(localFilter, []) || looseEqual(localFilter, {})) {\n // If filter criteria is an empty array or object\n isFiltered = false\n } else if (localFilter) {\n // If filter criteria is truthy\n isFiltered = true\n }\n if (isFiltered) {\n this.$emit(EVENT_NAME_FILTERED, filteredItems, filteredItems.length)\n }\n this.isFiltered = isFiltered\n },\n isFiltered(newValue, oldValue) {\n if (newValue === false && oldValue === true) {\n // We need to emit a filtered event if `isFiltered` transitions from `true` to\n // `false` so that users can update their pagination controls\n const { localItems } = this\n this.$emit(EVENT_NAME_FILTERED, localItems, localItems.length)\n }\n }\n },\n created() {\n // Create private non-reactive props\n this.$_filterTimer = null\n // If filter is \"pre-set\", set the criteria\n // This will trigger any watchers/dependents\n // this.localFilter = this.filterSanitize(this.filter)\n // Set the initial filtered state in a `$nextTick()` so that\n // we trigger a filtered event if needed\n this.$nextTick(() => {\n this.isFiltered = Boolean(this.localFilter)\n })\n },\n beforeDestroy() {\n this.clearFilterTimer()\n },\n methods: {\n clearFilterTimer() {\n clearTimeout(this.$_filterTimer)\n this.$_filterTimer = null\n },\n filterSanitize(criteria) {\n // Sanitizes filter criteria based on internal or external filtering\n if (\n this.localFiltering &&\n !this.localFilterFn &&\n !(isString(criteria) || isRegExp(criteria))\n ) {\n // If using internal filter function, which only accepts string or RegExp,\n // return '' to signify no filter\n return ''\n }\n\n // Could be a string, object or array, as needed by external filter function\n // We use `cloneDeep` to ensure we have a new copy of an object or array\n // without Vue's reactive observers\n return cloneDeep(criteria)\n },\n // Filter Function factories\n filterFnFactory(filterFn, criteria) {\n // Wrapper factory for external filter functions\n // Wrap the provided filter-function and return a new function\n // Returns `null` if no filter-function defined or if criteria is falsey\n // Rather than directly grabbing `this.computedLocalFilterFn` or `this.filterFunction`\n // we have it passed, so that the caller computed prop will be reactive to changes\n // in the original filter-function (as this routine is a method)\n if (\n !filterFn ||\n !isFunction(filterFn) ||\n !criteria ||\n looseEqual(criteria, []) ||\n looseEqual(criteria, {})\n ) {\n return null\n }\n\n // Build the wrapped filter test function, passing the criteria to the provided function\n const fn = item => {\n // Generated function returns true if the criteria matches part\n // of the serialized data, otherwise false\n return filterFn(item, criteria)\n }\n\n // Return the wrapped function\n return fn\n },\n defaultFilterFnFactory(criteria) {\n // Generates the default filter function, using the given filter criteria\n // Returns `null` if no criteria or criteria format not supported\n if (!criteria || !(isString(criteria) || isRegExp(criteria))) {\n // Built in filter can only support strings or RegExp criteria (at the moment)\n return null\n }\n\n // Build the RegExp needed for filtering\n let regExp = criteria\n if (isString(regExp)) {\n // Escape special RegExp characters in the string and convert contiguous\n // whitespace to \\s+ matches\n const pattern = escapeRegExp(criteria).replace(RX_SPACES, '\\\\s+')\n // Build the RegExp (no need for global flag, as we only need\n // to find the value once in the string)\n regExp = new RegExp(`.*${pattern}.*`, 'i')\n }\n\n // Generate the wrapped filter test function to use\n const fn = item => {\n // This searches all row values (and sub property values) in the entire (excluding\n // special `_` prefixed keys), because we convert the record to a space-separated\n // string containing all the value properties (recursively), even ones that are\n // not visible (not specified in this.fields)\n // Users can ignore filtering on specific fields, or on only certain fields,\n // and can optionall specify searching results of fields with formatter\n //\n // TODO: Enable searching on scoped slots (optional, as it will be SLOW)\n //\n // Generated function returns true if the criteria matches part of\n // the serialized data, otherwise false\n //\n // We set `lastIndex = 0` on the `RegExp` in case someone specifies the `/g` global flag\n regExp.lastIndex = 0\n return regExp.test(\n stringifyRecordValues(\n item,\n this.computedFilterIgnored,\n this.computedFilterIncluded,\n this.computedFieldsObj\n )\n )\n }\n\n // Return the generated function\n return fn\n }\n }\n})\n","import { isObject } from '../../../utils/inspect'\nimport { stringifyObjectValues } from '../../../utils/stringify-object-values'\nimport { sanitizeRow } from './sanitize-row'\n\n// Stringifies the values of a record, ignoring any special top level field keys\n// TODO: Add option to stringify `scopedSlot` items\nexport const stringifyRecordValues = (row, ignoreFields, includeFields, fieldsObj) => {\n return isObject(row)\n ? stringifyObjectValues(sanitizeRow(row, ignoreFields, includeFields, fieldsObj))\n : /* istanbul ignore next */ ''\n}\n","import { identity } from '../../../utils/identity'\nimport { isArray, isFunction, isObject, isString } from '../../../utils/inspect'\nimport { clone, keys } from '../../../utils/object'\nimport { startCase } from '../../../utils/string'\nimport { IGNORED_FIELD_KEYS } from './constants'\n\n// Private function to massage field entry into common object format\nconst processField = (key, value) => {\n let field = null\n if (isString(value)) {\n // Label shortcut\n field = { key, label: value }\n } else if (isFunction(value)) {\n // Formatter shortcut\n field = { key, formatter: value }\n } else if (isObject(value)) {\n field = clone(value)\n field.key = field.key || key\n } else if (value !== false) {\n // Fallback to just key\n /* istanbul ignore next */\n field = { key }\n }\n return field\n}\n\n// We normalize fields into an array of objects\n// [ { key:..., label:..., ...}, {...}, ..., {..}]\nexport const normalizeFields = (origFields, items) => {\n const fields = []\n\n if (isArray(origFields)) {\n // Normalize array Form\n origFields.filter(identity).forEach(f => {\n if (isString(f)) {\n fields.push({ key: f, label: startCase(f) })\n } else if (isObject(f) && f.key && isString(f.key)) {\n // Full object definition. We use assign so that we don't mutate the original\n fields.push(clone(f))\n } else if (isObject(f) && keys(f).length === 1) {\n // Shortcut object (i.e. { 'foo_bar': 'This is Foo Bar' }\n const key = keys(f)[0]\n const field = processField(key, f[key])\n if (field) {\n fields.push(field)\n }\n }\n })\n }\n\n // If no field provided, take a sample from first record (if exits)\n if (fields.length === 0 && isArray(items) && items.length > 0) {\n const sample = items[0]\n keys(sample).forEach(k => {\n if (!IGNORED_FIELD_KEYS[k]) {\n fields.push({ key: k, label: startCase(k) })\n }\n })\n }\n\n // Ensure we have a unique array of fields and that they have String labels\n const memo = {}\n return fields.filter(f => {\n if (!memo[f.key]) {\n memo[f.key] = true\n f.label = isString(f.label) ? f.label : startCase(f.key)\n return true\n }\n return false\n })\n}\n","import { Vue } from '../../../vue'\nimport { EVENT_NAME_CONTEXT_CHANGED } from '../../../constants/events'\nimport { PROP_TYPE_ARRAY, PROP_TYPE_STRING } from '../../../constants/props'\nimport { isArray, isFunction, isString } from '../../../utils/inspect'\nimport { looseEqual } from '../../../utils/loose-equal'\nimport { mathMax } from '../../../utils/math'\nimport { makeModelMixin } from '../../../utils/model'\nimport { toInteger } from '../../../utils/number'\nimport { clone, sortKeys } from '../../../utils/object'\nimport { makeProp } from '../../../utils/props'\nimport { normalizeFields } from './normalize-fields'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n type: PROP_TYPE_ARRAY,\n defaultValue: []\n})\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }\n\n// --- Props ---\n\nexport const props = sortKeys({\n ...modelProps,\n fields: makeProp(PROP_TYPE_ARRAY, null),\n // Provider mixin adds in `Function` type\n items: makeProp(PROP_TYPE_ARRAY, []),\n // Primary key for record\n // If provided the value in each row must be unique!\n primaryKey: makeProp(PROP_TYPE_STRING),\n // `v-model` for retrieving the current displayed rows\n [MODEL_PROP_NAME]: makeProp(PROP_TYPE_ARRAY, [])\n})\n\n// --- Mixin ---\n\n// @vue/component\nexport const itemsMixin = Vue.extend({\n mixins: [modelMixin],\n props,\n data() {\n const { items } = this\n\n return {\n // Our local copy of the items\n // Must be an array\n localItems: isArray(items) ? items.slice() : []\n }\n },\n computed: {\n computedFields() {\n // We normalize fields into an array of objects\n // `[ { key:..., label:..., ...}, {...}, ..., {..}]`\n return normalizeFields(this.fields, this.localItems)\n },\n computedFieldsObj() {\n // Fields as a simple lookup hash object\n // Mainly for formatter lookup and use in `scopedSlots` for convenience\n // If the field has a formatter, it normalizes formatter to a\n // function ref or `undefined` if no formatter\n const { $parent } = this\n return this.computedFields.reduce((obj, f) => {\n // We use object spread here so we don't mutate the original field object\n obj[f.key] = clone(f)\n if (f.formatter) {\n // Normalize formatter to a function ref or `undefined`\n let formatter = f.formatter\n if (isString(formatter) && isFunction($parent[formatter])) {\n formatter = $parent[formatter]\n } else if (!isFunction(formatter)) {\n /* istanbul ignore next */\n formatter = undefined\n }\n // Return formatter function or `undefined` if none\n obj[f.key].formatter = formatter\n }\n return obj\n }, {})\n },\n computedItems() {\n // Fallback if various mixins not provided\n return (\n this.paginatedItems ||\n this.sortedItems ||\n this.filteredItems ||\n this.localItems ||\n /* istanbul ignore next */\n []\n ).slice()\n },\n context() {\n // Current state of sorting, filtering and pagination props/values\n return {\n filter: this.localFilter,\n sortBy: this.localSortBy,\n sortDesc: this.localSortDesc,\n perPage: mathMax(toInteger(this.perPage, 0), 0),\n currentPage: mathMax(toInteger(this.currentPage, 0), 1),\n apiUrl: this.apiUrl\n }\n }\n },\n watch: {\n items(newValue) {\n // Set `localItems`/`filteredItems` to a copy of the provided array\n this.localItems = isArray(newValue) ? newValue.slice() : []\n },\n // Watch for changes on `computedItems` and update the `v-model`\n computedItems(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(MODEL_EVENT_NAME, newValue)\n }\n },\n // Watch for context changes\n context(newValue, oldValue) {\n // Emit context information for external paging/filtering/sorting handling\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(EVENT_NAME_CONTEXT_CHANGED, newValue)\n }\n }\n },\n mounted() {\n // Initially update the `v-model` of displayed items\n this.$emit(MODEL_EVENT_NAME, this.computedItems)\n },\n methods: {\n // Method to get the formatter method for a given field key\n getFieldFormatter(key) {\n const field = this.computedFieldsObj[key]\n // `this.computedFieldsObj` has pre-normalized the formatter to a\n // function ref if present, otherwise `undefined`\n return field ? field.formatter : undefined\n }\n }\n})\n","import { Vue } from '../../../vue'\nimport { PROP_TYPE_NUMBER_STRING } from '../../../constants/props'\nimport { mathMax } from '../../../utils/math'\nimport { toInteger } from '../../../utils/number'\nimport { makeProp } from '../../../utils/props'\n\n// --- Props ---\n\nexport const props = {\n currentPage: makeProp(PROP_TYPE_NUMBER_STRING, 1),\n perPage: makeProp(PROP_TYPE_NUMBER_STRING, 0)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const paginationMixin = Vue.extend({\n props,\n computed: {\n localPaging() {\n return this.hasProvider ? !!this.noProviderPaging : true\n },\n paginatedItems() {\n let items = this.sortedItems || this.filteredItems || this.localItems || []\n const currentPage = mathMax(toInteger(this.currentPage, 1), 1)\n const perPage = mathMax(toInteger(this.perPage, 0), 0)\n // Apply local pagination\n if (this.localPaging && perPage) {\n // Grab the current page of data (which may be past filtered items limit)\n items = items.slice((currentPage - 1) * perPage, currentPage * perPage)\n }\n // Return the items to display in the table\n return items\n }\n }\n})\n","import { Vue } from '../../../vue'\nimport { NAME_TABLE } from '../../../constants/components'\nimport { EVENT_NAME_REFRESH, EVENT_NAME_REFRESHED } from '../../../constants/events'\nimport {\n PROP_TYPE_ARRAY_FUNCTION,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_STRING\n} from '../../../constants/props'\nimport { getRootActionEventName, getRootEventName } from '../../../utils/events'\nimport { isArray, isFunction, isPromise } from '../../../utils/inspect'\nimport { looseEqual } from '../../../utils/loose-equal'\nimport { clone } from '../../../utils/object'\nimport { makeProp } from '../../../utils/props'\nimport { warn } from '../../../utils/warn'\nimport { listenOnRootMixin } from '../../../mixins/listen-on-root'\n\n// --- Constants ---\n\nconst ROOT_EVENT_NAME_REFRESHED = getRootEventName(NAME_TABLE, EVENT_NAME_REFRESHED)\nconst ROOT_ACTION_EVENT_NAME_REFRESH = getRootActionEventName(NAME_TABLE, EVENT_NAME_REFRESH)\n\n// --- Props ---\n\nexport const props = {\n // Passed to the context object\n // Not used by `<b-table>` directly\n apiUrl: makeProp(PROP_TYPE_STRING),\n // Adds in 'Function' support\n items: makeProp(PROP_TYPE_ARRAY_FUNCTION, []),\n noProviderFiltering: makeProp(PROP_TYPE_BOOLEAN, false),\n noProviderPaging: makeProp(PROP_TYPE_BOOLEAN, false),\n noProviderSorting: makeProp(PROP_TYPE_BOOLEAN, false)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const providerMixin = Vue.extend({\n mixins: [listenOnRootMixin],\n props,\n computed: {\n hasProvider() {\n return isFunction(this.items)\n },\n providerTriggerContext() {\n // Used to trigger the provider function via a watcher. Only the fields that\n // are needed for triggering a provider update are included. Note that the\n // regular this.context is sent to the provider during fetches though, as they\n // may need all the prop info.\n const ctx = {\n apiUrl: this.apiUrl,\n filter: null,\n sortBy: null,\n sortDesc: null,\n perPage: null,\n currentPage: null\n }\n if (!this.noProviderFiltering) {\n // Either a string, or could be an object or array.\n ctx.filter = this.localFilter\n }\n if (!this.noProviderSorting) {\n ctx.sortBy = this.localSortBy\n ctx.sortDesc = this.localSortDesc\n }\n if (!this.noProviderPaging) {\n ctx.perPage = this.perPage\n ctx.currentPage = this.currentPage\n }\n return clone(ctx)\n }\n },\n watch: {\n // Provider update triggering\n items(newValue) {\n // If a new provider has been specified, trigger an update\n if (this.hasProvider || isFunction(newValue)) {\n this.$nextTick(this._providerUpdate)\n }\n },\n providerTriggerContext(newValue, oldValue) {\n // Trigger the provider to update as the relevant context values have changed.\n if (!looseEqual(newValue, oldValue)) {\n this.$nextTick(this._providerUpdate)\n }\n }\n },\n mounted() {\n // Call the items provider if necessary\n if (this.hasProvider && (!this.localItems || this.localItems.length === 0)) {\n // Fetch on mount if localItems is empty\n this._providerUpdate()\n }\n // Listen for global messages to tell us to force refresh the table\n this.listenOnRoot(ROOT_ACTION_EVENT_NAME_REFRESH, id => {\n if (id === this.id || id === this) {\n this.refresh()\n }\n })\n },\n methods: {\n refresh() {\n const { items, refresh } = this\n\n // Public Method: Force a refresh of the provider function\n this.$off(EVENT_NAME_REFRESHED, refresh)\n if (this.computedBusy) {\n // Can't force an update when forced busy by user (busy prop === true)\n if (this.localBusy && this.hasProvider) {\n // But if provider running (localBusy), re-schedule refresh once `refreshed` emitted\n this.$on(EVENT_NAME_REFRESHED, refresh)\n }\n } else {\n this.clearSelected()\n if (this.hasProvider) {\n this.$nextTick(this._providerUpdate)\n } else {\n /* istanbul ignore next */\n this.localItems = isArray(items) ? items.slice() : []\n }\n }\n },\n // Provider related methods\n _providerSetLocal(items) {\n this.localItems = isArray(items) ? items.slice() : []\n this.localBusy = false\n this.$emit(EVENT_NAME_REFRESHED)\n // New root emit\n if (this.id) {\n this.emitOnRoot(ROOT_EVENT_NAME_REFRESHED, this.id)\n }\n },\n _providerUpdate() {\n // Refresh the provider function items.\n if (!this.hasProvider) {\n // Do nothing if no provider\n return\n }\n // If table is busy, wait until refreshed before calling again\n if (this.computedBusy) {\n // Schedule a new refresh once `refreshed` is emitted\n this.$nextTick(this.refresh)\n return\n }\n\n // Set internal busy state\n this.localBusy = true\n\n // Call provider function with context and optional callback after DOM is fully updated\n this.$nextTick(() => {\n try {\n // Call provider function passing it the context and optional callback\n const data = this.items(this.context, this._providerSetLocal)\n if (isPromise(data)) {\n // Provider returned Promise\n data.then(items => {\n // Provider resolved with items\n this._providerSetLocal(items)\n })\n } else if (isArray(data)) {\n // Provider returned Array data\n this._providerSetLocal(data)\n } else {\n /* istanbul ignore if */\n if (this.items.length !== 2) {\n // Check number of arguments provider function requested\n // Provider not using callback (didn't request second argument), so we clear\n // busy state as most likely there was an error in the provider function\n /* istanbul ignore next */\n warn(\n \"Provider function didn't request callback and did not return a promise or data.\",\n NAME_TABLE\n )\n this.localBusy = false\n }\n }\n } catch (e) /* istanbul ignore next */ {\n // Provider function borked on us, so we spew out a warning\n // and clear the busy state\n warn(`Provider function error [${e.name}] ${e.message}.`, NAME_TABLE)\n this.localBusy = false\n this.$off(EVENT_NAME_REFRESHED, this.refresh)\n }\n })\n }\n }\n})\n","import { Vue } from '../../../vue'\nimport {\n EVENT_NAME_CONTEXT_CHANGED,\n EVENT_NAME_FILTERED,\n EVENT_NAME_ROW_CLICKED,\n EVENT_NAME_ROW_SELECTED\n} from '../../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../../constants/props'\nimport { arrayIncludes, createArray } from '../../../utils/array'\nimport { identity } from '../../../utils/identity'\nimport { isArray, isNumber } from '../../../utils/inspect'\nimport { looseEqual } from '../../../utils/loose-equal'\nimport { mathMax, mathMin } from '../../../utils/math'\nimport { makeProp } from '../../../utils/props'\nimport { toString } from '../../../utils/string'\nimport { sanitizeRow } from './sanitize-row'\n\n// --- Constants ---\n\nconst SELECT_MODES = ['range', 'multi', 'single']\n\nconst ROLE_GRID = 'grid'\n\n// --- Props ---\n\nexport const props = {\n // Disable use of click handlers for row selection\n noSelectOnClick: makeProp(PROP_TYPE_BOOLEAN, false),\n selectMode: makeProp(PROP_TYPE_STRING, 'multi', value => {\n return arrayIncludes(SELECT_MODES, value)\n }),\n selectable: makeProp(PROP_TYPE_BOOLEAN, false),\n selectedVariant: makeProp(PROP_TYPE_STRING, 'active')\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const selectableMixin = Vue.extend({\n props,\n data() {\n return {\n selectedRows: [],\n selectedLastRow: -1\n }\n },\n computed: {\n isSelectable() {\n return this.selectable && this.selectMode\n },\n hasSelectableRowClick() {\n return this.isSelectable && !this.noSelectOnClick\n },\n supportsSelectableRows() {\n return true\n },\n selectableHasSelection() {\n const { selectedRows } = this\n return (\n this.isSelectable && selectedRows && selectedRows.length > 0 && selectedRows.some(identity)\n )\n },\n selectableIsMultiSelect() {\n return this.isSelectable && arrayIncludes(['range', 'multi'], this.selectMode)\n },\n selectableTableClasses() {\n const { isSelectable } = this\n return {\n 'b-table-selectable': isSelectable,\n [`b-table-select-${this.selectMode}`]: isSelectable,\n 'b-table-selecting': this.selectableHasSelection,\n 'b-table-selectable-no-click': isSelectable && !this.hasSelectableRowClick\n }\n },\n selectableTableAttrs() {\n if (!this.isSelectable) {\n return {}\n }\n\n const role = this.bvAttrs.role || ROLE_GRID\n\n return {\n role,\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': role === ROLE_GRID ? toString(this.selectableIsMultiSelect) : null\n }\n }\n },\n watch: {\n computedItems(newValue, oldValue) {\n // Reset for selectable\n let equal = false\n if (this.isSelectable && this.selectedRows.length > 0) {\n // Quick check against array length\n equal = isArray(newValue) && isArray(oldValue) && newValue.length === oldValue.length\n for (let i = 0; equal && i < newValue.length; i++) {\n // Look for the first non-loosely equal row, after ignoring reserved fields\n equal = looseEqual(sanitizeRow(newValue[i]), sanitizeRow(oldValue[i]))\n }\n }\n if (!equal) {\n this.clearSelected()\n }\n },\n selectable(newValue) {\n this.clearSelected()\n this.setSelectionHandlers(newValue)\n },\n selectMode() {\n this.clearSelected()\n },\n hasSelectableRowClick(newValue) {\n this.clearSelected()\n this.setSelectionHandlers(!newValue)\n },\n selectedRows(selectedRows, oldValue) {\n if (this.isSelectable && !looseEqual(selectedRows, oldValue)) {\n const items = []\n // `.forEach()` skips over non-existent indices (on sparse arrays)\n selectedRows.forEach((v, idx) => {\n if (v) {\n items.push(this.computedItems[idx])\n }\n })\n this.$emit(EVENT_NAME_ROW_SELECTED, items)\n }\n }\n },\n beforeMount() {\n // Set up handlers if needed\n if (this.isSelectable) {\n this.setSelectionHandlers(true)\n }\n },\n methods: {\n // Public methods\n selectRow(index) {\n // Select a particular row (indexed based on computedItems)\n if (\n this.isSelectable &&\n isNumber(index) &&\n index >= 0 &&\n index < this.computedItems.length &&\n !this.isRowSelected(index)\n ) {\n const selectedRows = this.selectableIsMultiSelect ? this.selectedRows.slice() : []\n selectedRows[index] = true\n this.selectedLastClicked = -1\n this.selectedRows = selectedRows\n }\n },\n unselectRow(index) {\n // Un-select a particular row (indexed based on `computedItems`)\n if (this.isSelectable && isNumber(index) && this.isRowSelected(index)) {\n const selectedRows = this.selectedRows.slice()\n selectedRows[index] = false\n this.selectedLastClicked = -1\n this.selectedRows = selectedRows\n }\n },\n selectAllRows() {\n const length = this.computedItems.length\n if (this.isSelectable && length > 0) {\n this.selectedLastClicked = -1\n this.selectedRows = this.selectableIsMultiSelect ? createArray(length, true) : [true]\n }\n },\n isRowSelected(index) {\n // Determine if a row is selected (indexed based on `computedItems`)\n return !!(isNumber(index) && this.selectedRows[index])\n },\n clearSelected() {\n // Clear any active selected row(s)\n this.selectedLastClicked = -1\n this.selectedRows = []\n },\n // Internal private methods\n selectableRowClasses(index) {\n if (this.isSelectable && this.isRowSelected(index)) {\n const variant = this.selectedVariant\n return {\n 'b-table-row-selected': true,\n [`${this.dark ? 'bg' : 'table'}-${variant}`]: variant\n }\n }\n\n return {}\n },\n selectableRowAttrs(index) {\n return {\n 'aria-selected': !this.isSelectable ? null : this.isRowSelected(index) ? 'true' : 'false'\n }\n },\n setSelectionHandlers(on) {\n const method = on && !this.noSelectOnClick ? '$on' : '$off'\n // Handle row-clicked event\n this[method](EVENT_NAME_ROW_CLICKED, this.selectionHandler)\n // Clear selection on filter, pagination, and sort changes\n this[method](EVENT_NAME_FILTERED, this.clearSelected)\n this[method](EVENT_NAME_CONTEXT_CHANGED, this.clearSelected)\n },\n selectionHandler(item, index, event) {\n /* istanbul ignore if: should never happen */\n if (!this.isSelectable || this.noSelectOnClick) {\n // Don't do anything if table is not in selectable mode\n this.clearSelected()\n return\n }\n const { selectMode, selectedLastRow } = this\n let selectedRows = this.selectedRows.slice()\n let selected = !selectedRows[index]\n // Note 'multi' mode needs no special event handling\n if (selectMode === 'single') {\n selectedRows = []\n } else if (selectMode === 'range') {\n if (selectedLastRow > -1 && event.shiftKey) {\n // range\n for (\n let idx = mathMin(selectedLastRow, index);\n idx <= mathMax(selectedLastRow, index);\n idx++\n ) {\n selectedRows[idx] = true\n }\n selected = true\n } else {\n if (!(event.ctrlKey || event.metaKey)) {\n // Clear range selection if any\n selectedRows = []\n selected = true\n }\n if (selected) this.selectedLastRow = index\n }\n }\n selectedRows[index] = selected\n this.selectedRows = selectedRows\n }\n }\n})\n","/*\n * Consistent and stable sort function across JavaScript platforms\n *\n * Inconsistent sorts can cause SSR problems between client and server\n * such as in <b-table> if sortBy is applied to the data on server side render.\n * Chrome and V8 native sorts are inconsistent/unstable\n *\n * This function uses native sort with fallback to index compare when the a and b\n * compare returns 0\n *\n * Algorithm based on:\n * https://stackoverflow.com/questions/1427608/fast-stable-sorting-algorithm-implementation-in-javascript/45422645#45422645\n *\n * @param {array} array to sort\n * @param {function} sort compare function\n * @return {array}\n */\nexport const stableSort = (array, compareFn) => {\n // Using `.bind(compareFn)` on the wrapped anonymous function improves\n // performance by avoiding the function call setup. We don't use an arrow\n // function here as it binds `this` to the `stableSort` context rather than\n // the `compareFn` context, which wouldn't give us the performance increase.\n return array\n .map((a, index) => [index, a])\n .sort(\n function(a, b) {\n return this(a[1], b[1]) || a[0] - b[0]\n }.bind(compareFn)\n )\n .map(e => e[1])\n}\n","import { get } from '../../../utils/get'\nimport { isDate, isFunction, isNumber, isNumeric, isUndefinedOrNull } from '../../../utils/inspect'\nimport { toFloat } from '../../../utils/number'\nimport { stringifyObjectValues } from '../../../utils/stringify-object-values'\n\nconst normalizeValue = value => {\n if (isUndefinedOrNull(value)) {\n return ''\n }\n if (isNumeric(value)) {\n return toFloat(value, value)\n }\n return value\n}\n\n// Default sort compare routine\n//\n// TODO:\n// Add option to sort by multiple columns (tri-state per column,\n// plus order of columns in sort) where `sortBy` could be an array\n// of objects `[ {key: 'foo', sortDir: 'asc'}, {key:'bar', sortDir: 'desc'} ...]`\n// or an array of arrays `[ ['foo','asc'], ['bar','desc'] ]`\n// Multisort will most likely be handled in `mixin-sort.js` by\n// calling this method for each sortBy\nexport const defaultSortCompare = (\n a,\n b,\n { sortBy = null, formatter = null, locale = undefined, localeOptions = {}, nullLast = false } = {}\n) => {\n // Get the value by `sortBy`\n let aa = get(a, sortBy, null)\n let bb = get(b, sortBy, null)\n\n // Apply user-provided formatter\n if (isFunction(formatter)) {\n aa = formatter(aa, sortBy, a)\n bb = formatter(bb, sortBy, b)\n }\n\n // Internally normalize value\n // `null` / `undefined` => ''\n // `'0'` => `0`\n aa = normalizeValue(aa)\n bb = normalizeValue(bb)\n\n if ((isDate(aa) && isDate(bb)) || (isNumber(aa) && isNumber(bb))) {\n // Special case for comparing dates and numbers\n // Internally dates are compared via their epoch number values\n return aa < bb ? -1 : aa > bb ? 1 : 0\n } else if (nullLast && aa === '' && bb !== '') {\n // Special case when sorting `null` / `undefined` / '' last\n return 1\n } else if (nullLast && aa !== '' && bb === '') {\n // Special case when sorting `null` / `undefined` / '' last\n return -1\n }\n\n // Do localized string comparison\n return stringifyObjectValues(aa).localeCompare(stringifyObjectValues(bb), locale, localeOptions)\n}\n","import { Vue } from '../../../vue'\nimport {\n EVENT_NAME_HEAD_CLICKED,\n EVENT_NAME_SORT_CHANGED,\n MODEL_EVENT_NAME_PREFIX\n} from '../../../constants/events'\nimport {\n PROP_TYPE_ARRAY_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_FUNCTION,\n PROP_TYPE_OBJECT,\n PROP_TYPE_STRING\n} from '../../../constants/props'\nimport { arrayIncludes } from '../../../utils/array'\nimport { isFunction, isUndefinedOrNull } from '../../../utils/inspect'\nimport { makeProp } from '../../../utils/props'\nimport { stableSort } from '../../../utils/stable-sort'\nimport { trim } from '../../../utils/string'\nimport { defaultSortCompare } from './default-sort-compare'\n\n// --- Constants ---\n\nconst MODEL_PROP_NAME_SORT_BY = 'sortBy'\nconst MODEL_EVENT_NAME_SORT_BY = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_SORT_BY\n\nconst MODEL_PROP_NAME_SORT_DESC = 'sortDesc'\nconst MODEL_EVENT_NAME_SORT_DESC = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_SORT_DESC\n\nconst SORT_DIRECTION_ASC = 'asc'\nconst SORT_DIRECTION_DESC = 'desc'\nconst SORT_DIRECTION_LAST = 'last'\nconst SORT_DIRECTIONS = [SORT_DIRECTION_ASC, SORT_DIRECTION_DESC, SORT_DIRECTION_LAST]\n\n// --- Props ---\n\nexport const props = {\n labelSortAsc: makeProp(PROP_TYPE_STRING, 'Click to sort ascending'),\n labelSortClear: makeProp(PROP_TYPE_STRING, 'Click to clear sorting'),\n labelSortDesc: makeProp(PROP_TYPE_STRING, 'Click to sort descending'),\n noFooterSorting: makeProp(PROP_TYPE_BOOLEAN, false),\n noLocalSorting: makeProp(PROP_TYPE_BOOLEAN, false),\n // Another prop that should have had a better name\n // It should be `noSortClear` (on non-sortable headers)\n // We will need to make sure the documentation is clear on what\n // this prop does (as well as in the code for future reference)\n noSortReset: makeProp(PROP_TYPE_BOOLEAN, false),\n [MODEL_PROP_NAME_SORT_BY]: makeProp(PROP_TYPE_STRING),\n sortCompare: makeProp(PROP_TYPE_FUNCTION),\n // String: locale code\n // Array: array of Locale strings\n sortCompareLocale: makeProp(PROP_TYPE_ARRAY_STRING),\n // Supported localCompare options, see `options` section of:\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/localeCompare\n sortCompareOptions: makeProp(PROP_TYPE_OBJECT, { numeric: true }),\n // TODO: Make this tri-state: `true`, `false`, `null`\n [MODEL_PROP_NAME_SORT_DESC]: makeProp(PROP_TYPE_BOOLEAN, false),\n // This prop is named incorrectly\n // It should be `initialSortDirection` as it is a bit misleading\n // (not to mention it screws up the ARIA label on the headers)\n sortDirection: makeProp(PROP_TYPE_STRING, SORT_DIRECTION_ASC, value => {\n return arrayIncludes(SORT_DIRECTIONS, value)\n }),\n // Place the sorting icon on the left of the header cells\n sortIconLeft: makeProp(PROP_TYPE_BOOLEAN, false),\n // Sort null and undefined to appear last\n sortNullLast: makeProp(PROP_TYPE_BOOLEAN, false)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const sortingMixin = Vue.extend({\n props,\n data() {\n return {\n localSortBy: this[MODEL_PROP_NAME_SORT_BY] || '',\n localSortDesc: this[MODEL_PROP_NAME_SORT_DESC] || false\n }\n },\n computed: {\n localSorting() {\n return this.hasProvider ? !!this.noProviderSorting : !this.noLocalSorting\n },\n isSortable() {\n return this.computedFields.some(f => f.sortable)\n },\n // Sorts the filtered items and returns a new array of the sorted items\n // When not sorted, the original items array will be returned\n sortedItems() {\n const {\n localSortBy: sortBy,\n localSortDesc: sortDesc,\n sortCompareLocale: locale,\n sortNullLast: nullLast,\n sortCompare,\n localSorting\n } = this\n const items = (this.filteredItems || this.localItems || []).slice()\n const localeOptions = { ...this.sortCompareOptions, usage: 'sort' }\n\n if (sortBy && localSorting) {\n const field = this.computedFieldsObj[sortBy] || {}\n const sortByFormatted = field.sortByFormatted\n const formatter = isFunction(sortByFormatted)\n ? /* istanbul ignore next */ sortByFormatted\n : sortByFormatted\n ? this.getFieldFormatter(sortBy)\n : undefined\n\n // `stableSort` returns a new array, and leaves the original array intact\n return stableSort(items, (a, b) => {\n let result = null\n // Call user provided `sortCompare` routine first\n if (isFunction(sortCompare)) {\n // TODO:\n // Change the `sortCompare` signature to the one of `defaultSortCompare`\n // with the next major version bump\n result = sortCompare(a, b, sortBy, sortDesc, formatter, localeOptions, locale)\n }\n // Fallback to built-in `defaultSortCompare` if `sortCompare`\n // is not defined or returns `null`/`false`\n if (isUndefinedOrNull(result) || result === false) {\n result = defaultSortCompare(a, b, {\n sortBy,\n formatter,\n locale,\n localeOptions,\n nullLast\n })\n }\n // Negate result if sorting in descending order\n return (result || 0) * (sortDesc ? -1 : 1)\n })\n }\n\n return items\n }\n },\n watch: {\n /* istanbul ignore next: pain in the butt to test */\n isSortable(newValue) {\n if (newValue) {\n if (this.isSortable) {\n this.$on(EVENT_NAME_HEAD_CLICKED, this.handleSort)\n }\n } else {\n this.$off(EVENT_NAME_HEAD_CLICKED, this.handleSort)\n }\n },\n [MODEL_PROP_NAME_SORT_DESC](newValue) {\n /* istanbul ignore next */\n if (newValue === this.localSortDesc) {\n return\n }\n this.localSortDesc = newValue || false\n },\n [MODEL_PROP_NAME_SORT_BY](newValue) {\n /* istanbul ignore next */\n if (newValue === this.localSortBy) {\n return\n }\n this.localSortBy = newValue || ''\n },\n // Update .sync props\n localSortDesc(newValue, oldValue) {\n // Emit update to sort-desc.sync\n if (newValue !== oldValue) {\n this.$emit(MODEL_EVENT_NAME_SORT_DESC, newValue)\n }\n },\n localSortBy(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.$emit(MODEL_EVENT_NAME_SORT_BY, newValue)\n }\n }\n },\n created() {\n if (this.isSortable) {\n this.$on(EVENT_NAME_HEAD_CLICKED, this.handleSort)\n }\n },\n methods: {\n // Handlers\n // Need to move from thead-mixin\n handleSort(key, field, event, isFoot) {\n if (!this.isSortable) {\n /* istanbul ignore next */\n return\n }\n if (isFoot && this.noFooterSorting) {\n return\n }\n // TODO: make this tri-state sorting\n // cycle desc => asc => none => desc => ...\n let sortChanged = false\n const toggleLocalSortDesc = () => {\n const sortDirection = field.sortDirection || this.sortDirection\n if (sortDirection === SORT_DIRECTION_ASC) {\n this.localSortDesc = false\n } else if (sortDirection === SORT_DIRECTION_DESC) {\n this.localSortDesc = true\n } else {\n // sortDirection === 'last'\n // Leave at last sort direction from previous column\n }\n }\n if (field.sortable) {\n const sortKey = !this.localSorting && field.sortKey ? field.sortKey : key\n if (this.localSortBy === sortKey) {\n // Change sorting direction on current column\n this.localSortDesc = !this.localSortDesc\n } else {\n // Start sorting this column ascending\n this.localSortBy = sortKey\n // this.localSortDesc = false\n toggleLocalSortDesc()\n }\n sortChanged = true\n } else if (this.localSortBy && !this.noSortReset) {\n this.localSortBy = ''\n toggleLocalSortDesc()\n sortChanged = true\n }\n if (sortChanged) {\n // Sorting parameters changed\n this.$emit(EVENT_NAME_SORT_CHANGED, this.context)\n }\n },\n // methods to compute classes and attrs for thead>th cells\n sortTheadThClasses(key, field, isFoot) {\n return {\n // If sortable and sortIconLeft are true, then place sort icon on the left\n 'b-table-sort-icon-left':\n field.sortable && this.sortIconLeft && !(isFoot && this.noFooterSorting)\n }\n },\n sortTheadThAttrs(key, field, isFoot) {\n const { isSortable, noFooterSorting, localSortDesc, localSortBy, localSorting } = this\n if (!isSortable || (isFoot && noFooterSorting)) {\n // No attributes if not a sortable table\n return {}\n }\n\n const sortable = field.sortable\n const sortKey = !localSorting ? field.sortKey ?? key : key\n\n // Assemble the aria-sort attribute value\n const ariaSort =\n sortable && localSortBy === sortKey\n ? localSortDesc\n ? 'descending'\n : 'ascending'\n : sortable\n ? 'none'\n : null\n // Return the attribute\n return {\n 'aria-sort': ariaSort\n }\n },\n // A label to be placed in an `.sr-only` element in the header cell\n sortTheadThLabel(key, field, isFoot) {\n // No label if not a sortable table\n if (!this.isSortable || (isFoot && this.noFooterSorting)) {\n return null\n }\n const { localSortBy, localSortDesc, labelSortAsc, labelSortDesc } = this\n const { sortable } = field\n // The correctness of these labels is very important for screen reader users\n let labelSorting = ''\n if (sortable) {\n if (localSortBy === key) {\n // Currently sorted sortable column\n labelSorting = localSortDesc ? labelSortAsc : labelSortDesc\n } else {\n // Not currently sorted sortable column\n // Not using nested ternary's here for clarity/readability\n // Default for `aria-label`\n labelSorting = localSortDesc ? labelSortDesc : labelSortAsc\n // Handle `sortDirection` setting\n const sortDirection = this.sortDirection || field.sortDirection\n if (sortDirection === SORT_DIRECTION_ASC) {\n labelSorting = labelSortAsc\n } else if (sortDirection === SORT_DIRECTION_DESC) {\n labelSorting = labelSortDesc\n }\n }\n } else if (!this.noSortReset) {\n // Non sortable column\n labelSorting = localSortBy ? this.labelSortClear : ''\n }\n // Return the `.sr-only` sort label or `null` if no label\n return trim(labelSorting) || null\n }\n }\n})\n","import { Vue } from '../../../vue'\nimport { PROP_TYPE_BOOLEAN_STRING } from '../../../constants/props'\nimport { makeProp } from '../../../utils/props'\n\n// --- Props ---\n\nexport const props = {\n stacked: makeProp(PROP_TYPE_BOOLEAN_STRING, false)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const stackedMixin = Vue.extend({\n props,\n computed: {\n isStacked() {\n const { stacked } = this\n // `true` when always stacked, or returns breakpoint specified\n return stacked === '' ? true : stacked\n },\n isStackedAlways() {\n return this.isStacked === true\n },\n stackedTableClasses() {\n const { isStackedAlways } = this\n return {\n 'b-table-stacked': isStackedAlways,\n [`b-table-stacked-${this.stacked}`]: !isStackedAlways && this.isStacked\n }\n }\n }\n})\n","import { Vue } from '../../../vue'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_STRING,\n PROP_TYPE_STRING\n} from '../../../constants/props'\nimport { identity } from '../../../utils/identity'\nimport { isBoolean } from '../../../utils/inspect'\nimport { makeProp } from '../../../utils/props'\nimport { toString } from '../../../utils/string'\nimport { attrsMixin } from '../../../mixins/attrs'\n\n// Main `<table>` render mixin\n// Includes all main table styling options\n\n// --- Props ---\n\nexport const props = {\n bordered: makeProp(PROP_TYPE_BOOLEAN, false),\n borderless: makeProp(PROP_TYPE_BOOLEAN, false),\n captionTop: makeProp(PROP_TYPE_BOOLEAN, false),\n dark: makeProp(PROP_TYPE_BOOLEAN, false),\n fixed: makeProp(PROP_TYPE_BOOLEAN, false),\n hover: makeProp(PROP_TYPE_BOOLEAN, false),\n noBorderCollapse: makeProp(PROP_TYPE_BOOLEAN, false),\n outlined: makeProp(PROP_TYPE_BOOLEAN, false),\n responsive: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n small: makeProp(PROP_TYPE_BOOLEAN, false),\n // If a string, it is assumed to be the table `max-height` value\n stickyHeader: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n striped: makeProp(PROP_TYPE_BOOLEAN, false),\n tableClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n tableVariant: makeProp(PROP_TYPE_STRING)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const tableRendererMixin = Vue.extend({\n mixins: [attrsMixin],\n provide() {\n return {\n bvTable: this\n }\n },\n // Don't place attributes on root element automatically,\n // as table could be wrapped in responsive `<div>`\n inheritAttrs: false,\n props,\n computed: {\n // Layout related computed props\n isResponsive() {\n const { responsive } = this\n return responsive === '' ? true : responsive\n },\n isStickyHeader() {\n let { stickyHeader } = this\n stickyHeader = stickyHeader === '' ? true : stickyHeader\n return this.isStacked ? false : stickyHeader\n },\n wrapperClasses() {\n const { isResponsive } = this\n return [\n this.isStickyHeader ? 'b-table-sticky-header' : '',\n isResponsive === true\n ? 'table-responsive'\n : isResponsive\n ? `table-responsive-${this.responsive}`\n : ''\n ].filter(identity)\n },\n wrapperStyles() {\n const { isStickyHeader } = this\n return isStickyHeader && !isBoolean(isStickyHeader) ? { maxHeight: isStickyHeader } : {}\n },\n tableClasses() {\n let { hover, tableVariant } = this\n hover = this.isTableSimple\n ? hover\n : hover && this.computedItems.length > 0 && !this.computedBusy\n\n return [\n // User supplied classes\n this.tableClass,\n // Styling classes\n {\n 'table-striped': this.striped,\n 'table-hover': hover,\n 'table-dark': this.dark,\n 'table-bordered': this.bordered,\n 'table-borderless': this.borderless,\n 'table-sm': this.small,\n // The following are b-table custom styles\n border: this.outlined,\n 'b-table-fixed': this.fixed,\n 'b-table-caption-top': this.captionTop,\n 'b-table-no-border-collapse': this.noBorderCollapse\n },\n tableVariant ? `${this.dark ? 'bg' : 'table'}-${tableVariant}` : '',\n // Stacked table classes\n this.stackedTableClasses,\n // Selectable classes\n this.selectableTableClasses\n ]\n },\n tableAttrs() {\n const {\n computedItems: items,\n filteredItems,\n computedFields: fields,\n selectableTableAttrs\n } = this\n\n const ariaAttrs = this.isTableSimple\n ? {}\n : {\n 'aria-busy': toString(this.computedBusy),\n 'aria-colcount': toString(fields.length),\n // Preserve user supplied `aria-describedby`, if provided\n 'aria-describedby':\n this.bvAttrs['aria-describedby'] || this.$refs.caption ? this.captionId : null\n }\n\n const rowCount =\n items && filteredItems && filteredItems.length > items.length\n ? toString(filteredItems.length)\n : null\n\n return {\n // We set `aria-rowcount` before merging in `$attrs`,\n // in case user has supplied their own\n 'aria-rowcount': rowCount,\n // Merge in user supplied `$attrs` if any\n ...this.bvAttrs,\n // Now we can override any `$attrs` here\n id: this.safeId(),\n role: this.bvAttrs.role || 'table',\n ...ariaAttrs,\n ...selectableTableAttrs\n }\n }\n },\n render(h) {\n const {\n wrapperClasses,\n renderCaption,\n renderColgroup,\n renderThead,\n renderTbody,\n renderTfoot\n } = this\n\n const $content = []\n if (this.isTableSimple) {\n $content.push(this.normalizeSlot())\n } else {\n // Build the `<caption>` (from caption mixin)\n $content.push(renderCaption ? renderCaption() : null)\n\n // Build the `<colgroup>`\n $content.push(renderColgroup ? renderColgroup() : null)\n\n // Build the `<thead>`\n $content.push(renderThead ? renderThead() : null)\n\n // Build the `<tbody>`\n $content.push(renderTbody ? renderTbody() : null)\n\n // Build the `<tfoot>`\n $content.push(renderTfoot ? renderTfoot() : null)\n }\n\n // Assemble `<table>`\n const $table = h(\n 'table',\n {\n staticClass: 'table b-table',\n class: this.tableClasses,\n attrs: this.tableAttrs,\n key: 'b-table'\n },\n $content.filter(identity)\n )\n\n // Add responsive/sticky wrapper if needed and return table\n return wrapperClasses.length > 0\n ? h(\n 'div',\n {\n class: wrapperClasses,\n style: this.wrapperStyles,\n key: 'wrap'\n },\n [$table]\n )\n : $table\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TBODY } from '../../constants/components'\nimport { PROP_TYPE_OBJECT } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n tbodyTransitionHandlers: makeProp(PROP_TYPE_OBJECT),\n tbodyTransitionProps: makeProp(PROP_TYPE_OBJECT)\n },\n NAME_TBODY\n)\n\n// --- Main component ---\n\n// TODO:\n// In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n// to the child elements, so this can be converted to a functional component\n// @vue/component\nexport const BTbody = /*#__PURE__*/ Vue.extend({\n name: NAME_TBODY,\n mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n provide() {\n return {\n bvTableRowGroup: this\n }\n },\n inject: {\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n bvTable: {\n default: /* istanbul ignore next */ () => ({})\n }\n },\n inheritAttrs: false,\n props,\n computed: {\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n isTbody() {\n return true\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n isDark() {\n return this.bvTable.dark\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n isStacked() {\n return this.bvTable.isStacked\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n isResponsive() {\n return this.bvTable.isResponsive\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n // Sticky headers are only supported in thead\n isStickyHeader() {\n return false\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n // Needed to handle header background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n hasStickyHeader() {\n return !this.isStacked && this.bvTable.stickyHeader\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n tableVariant() {\n return this.bvTable.tableVariant\n },\n isTransitionGroup() {\n return this.tbodyTransitionProps || this.tbodyTransitionHandlers\n },\n tbodyAttrs() {\n return { role: 'rowgroup', ...this.bvAttrs }\n },\n tbodyProps() {\n const { tbodyTransitionProps } = this\n return tbodyTransitionProps ? { ...tbodyTransitionProps, tag: 'tbody' } : {}\n }\n },\n render(h) {\n const data = {\n props: this.tbodyProps,\n attrs: this.tbodyAttrs\n }\n if (this.isTransitionGroup) {\n // We use native listeners if a transition group for any delegated events\n data.on = this.tbodyTransitionHandlers || {}\n data.nativeOn = this.bvListeners\n } else {\n // Otherwise we place any listeners on the tbody element\n data.on = this.bvListeners\n }\n\n return h(this.isTransitionGroup ? 'transition-group' : 'tbody', data, this.normalizeSlot())\n }\n})\n","import { closest, getAttr, getById, matches, select } from '../../../utils/dom'\nimport { EVENT_FILTER } from './constants'\n\nconst TABLE_TAG_NAMES = ['TD', 'TH', 'TR']\n\n// Returns `true` if we should ignore the click/double-click/keypress event\n// Avoids having the user need to use `@click.stop` on the form control\nexport const filterEvent = event => {\n // Exit early when we don't have a target element\n if (!event || !event.target) {\n /* istanbul ignore next */\n return false\n }\n const el = event.target\n // Exit early when element is disabled or a table element\n if (el.disabled || TABLE_TAG_NAMES.indexOf(el.tagName) !== -1) {\n return false\n }\n // Ignore the click when it was inside a dropdown menu\n if (closest('.dropdown-menu', el)) {\n return true\n }\n const label = el.tagName === 'LABEL' ? el : closest('label', el)\n // If the label's form control is not disabled then we don't propagate event\n // Modern browsers have `label.control` that references the associated input, but IE 11\n // does not have this property on the label element, so we resort to DOM lookups\n if (label) {\n const labelFor = getAttr(label, 'for')\n const input = labelFor ? getById(labelFor) : select('input, select, textarea', label)\n if (input && !input.disabled) {\n return true\n }\n }\n // Otherwise check if the event target matches one of the selectors in the\n // event filter (i.e. anchors, non disabled inputs, etc.)\n // Return `true` if we should ignore the event\n return matches(el, EVENT_FILTER)\n}\n","import { getSel, isElement } from '../../../utils/dom'\n\n// Helper to determine if a there is an active text selection on the document page\n// Used to filter out click events caused by the mouse up at end of selection\n//\n// Accepts an element as only argument to test to see if selection overlaps or is\n// contained within the element\nexport const textSelectionActive = (el = document) => {\n const sel = getSel()\n return sel && sel.toString().trim() !== '' && sel.containsNode && isElement(el)\n ? /* istanbul ignore next */ sel.containsNode(el, true)\n : false\n}\n","import { Vue } from '../../vue'\nimport { NAME_TH } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { BTd, props as BTdProps } from './td'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(BTdProps, NAME_TH)\n\n// --- Main component ---\n\n// TODO:\n// In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n// to the child elements, so this can be converted to a functional component\n// @vue/component\nexport const BTh = /*#__PURE__*/ Vue.extend({\n name: NAME_TH,\n extends: BTd,\n props,\n computed: {\n tag() {\n return 'th'\n }\n }\n})\n","import { Vue } from '../../../vue'\nimport {\n EVENT_NAME_ROW_CLICKED,\n EVENT_NAME_ROW_HOVERED,\n EVENT_NAME_ROW_UNHOVERED\n} from '../../../constants/events'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_FUNCTION,\n PROP_TYPE_OBJECT_FUNCTION\n} from '../../../constants/props'\nimport { SLOT_NAME_ROW_DETAILS } from '../../../constants/slots'\nimport { get } from '../../../utils/get'\nimport { isFunction, isString, isUndefinedOrNull } from '../../../utils/inspect'\nimport { makeProp } from '../../../utils/props'\nimport { toString } from '../../../utils/string'\nimport { BTr } from '../tr'\nimport { BTd } from '../td'\nimport { BTh } from '../th'\nimport { FIELD_KEY_CELL_VARIANT, FIELD_KEY_ROW_VARIANT, FIELD_KEY_SHOW_DETAILS } from './constants'\n\n// --- Props ---\n\nexport const props = {\n detailsTdClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n tbodyTrAttr: makeProp(PROP_TYPE_OBJECT_FUNCTION),\n tbodyTrClass: makeProp([...PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_FUNCTION])\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const tbodyRowMixin = Vue.extend({\n props,\n methods: {\n // Methods for computing classes, attributes and styles for table cells\n getTdValues(item, key, tdValue, defaultValue) {\n const { $parent } = this\n if (tdValue) {\n const value = get(item, key, '')\n if (isFunction(tdValue)) {\n return tdValue(value, key, item)\n } else if (isString(tdValue) && isFunction($parent[tdValue])) {\n return $parent[tdValue](value, key, item)\n }\n return tdValue\n }\n return defaultValue\n },\n getThValues(item, key, thValue, type, defaultValue) {\n const { $parent } = this\n if (thValue) {\n const value = get(item, key, '')\n if (isFunction(thValue)) {\n return thValue(value, key, item, type)\n } else if (isString(thValue) && isFunction($parent[thValue])) {\n return $parent[thValue](value, key, item, type)\n }\n return thValue\n }\n return defaultValue\n },\n // Method to get the value for a field\n getFormattedValue(item, field) {\n const { key } = field\n const formatter = this.getFieldFormatter(key)\n let value = get(item, key, null)\n if (isFunction(formatter)) {\n value = formatter(value, key, item)\n }\n return isUndefinedOrNull(value) ? '' : value\n },\n // Factory function methods\n toggleDetailsFactory(hasDetailsSlot, item) {\n // Returns a function to toggle a row's details slot\n return () => {\n if (hasDetailsSlot) {\n this.$set(item, FIELD_KEY_SHOW_DETAILS, !item[FIELD_KEY_SHOW_DETAILS])\n }\n }\n },\n // Row event handlers\n rowHovered(event) {\n // `mouseenter` handler (non-bubbling)\n // `this.tbodyRowEventStopped` from tbody mixin\n if (!this.tbodyRowEventStopped(event)) {\n // `this.emitTbodyRowEvent` from tbody mixin\n this.emitTbodyRowEvent(EVENT_NAME_ROW_HOVERED, event)\n }\n },\n rowUnhovered(event) {\n // `mouseleave` handler (non-bubbling)\n // `this.tbodyRowEventStopped` from tbody mixin\n if (!this.tbodyRowEventStopped(event)) {\n // `this.emitTbodyRowEvent` from tbody mixin\n this.emitTbodyRowEvent(EVENT_NAME_ROW_UNHOVERED, event)\n }\n },\n // Renders a TD or TH for a row's field\n renderTbodyRowCell(field, colIndex, item, rowIndex) {\n const { isStacked } = this\n const { key, label, isRowHeader } = field\n const h = this.$createElement\n const hasDetailsSlot = this.hasNormalizedSlot(SLOT_NAME_ROW_DETAILS)\n const formatted = this.getFormattedValue(item, field)\n const stickyColumn =\n !isStacked && (this.isResponsive || this.stickyHeader) && field.stickyColumn\n // We only uses the helper components for sticky columns to\n // improve performance of BTable/BTableLite by reducing the\n // total number of vue instances created during render\n const cellTag = stickyColumn ? (isRowHeader ? BTh : BTd) : isRowHeader ? 'th' : 'td'\n const cellVariant =\n item[FIELD_KEY_CELL_VARIANT] && item[FIELD_KEY_CELL_VARIANT][key]\n ? item[FIELD_KEY_CELL_VARIANT][key]\n : field.variant || null\n const data = {\n // For the Vue key, we concatenate the column index and\n // field key (as field keys could be duplicated)\n // TODO: Although we do prevent duplicate field keys...\n // So we could change this to: `row-${rowIndex}-cell-${key}`\n class: [field.class ? field.class : '', this.getTdValues(item, key, field.tdClass, '')],\n props: {},\n attrs: {\n 'aria-colindex': String(colIndex + 1),\n ...(isRowHeader\n ? this.getThValues(item, key, field.thAttr, 'row', {})\n : this.getTdValues(item, key, field.tdAttr, {}))\n },\n key: `row-${rowIndex}-cell-${colIndex}-${key}`\n }\n if (stickyColumn) {\n // We are using the helper BTd or BTh\n data.props = {\n stackedHeading: isStacked ? label : null,\n stickyColumn: true,\n variant: cellVariant\n }\n } else {\n // Using native TD or TH element, so we need to\n // add in the attributes and variant class\n data.attrs['data-label'] = isStacked && !isUndefinedOrNull(label) ? toString(label) : null\n data.attrs.role = isRowHeader ? 'rowheader' : 'cell'\n data.attrs.scope = isRowHeader ? 'row' : null\n // Add in the variant class\n if (cellVariant) {\n data.class.push(`${this.dark ? 'bg' : 'table'}-${cellVariant}`)\n }\n }\n\n const slotScope = {\n item,\n index: rowIndex,\n field,\n unformatted: get(item, key, ''),\n value: formatted,\n toggleDetails: this.toggleDetailsFactory(hasDetailsSlot, item),\n detailsShowing: Boolean(item[FIELD_KEY_SHOW_DETAILS])\n }\n // If table supports selectable mode, then add in the following scope\n // this.supportsSelectableRows will be undefined if mixin isn't loaded\n if (this.supportsSelectableRows) {\n slotScope.rowSelected = this.isRowSelected(rowIndex)\n slotScope.selectRow = () => this.selectRow(rowIndex)\n slotScope.unselectRow = () => this.unselectRow(rowIndex)\n }\n\n // The new `v-slot` syntax doesn't like a slot name starting with\n // a square bracket and if using in-document HTML templates, the\n // v-slot attributes are lower-cased by the browser.\n // Switched to round bracket syntax to prevent confusion with\n // dynamic slot name syntax.\n // We look for slots in this order: `cell(${key})`, `cell(${key.toLowerCase()})`, 'cell()'\n // Slot names are now cached by mixin tbody in `this.$_bodyFieldSlotNameCache`\n // Will be `null` if no slot (or fallback slot) exists\n const slotName = this.$_bodyFieldSlotNameCache[key]\n let $childNodes = slotName ? this.normalizeSlot(slotName, slotScope) : toString(formatted)\n if (this.isStacked) {\n // We wrap in a DIV to ensure rendered as a single cell when visually stacked!\n $childNodes = [h('div', [$childNodes])]\n }\n\n // Render either a td or th cell\n return h(cellTag, data, [$childNodes])\n },\n // Renders an item's row (or rows if details supported)\n renderTbodyRow(item, rowIndex) {\n const {\n computedFields: fields,\n striped,\n primaryKey,\n currentPage,\n perPage,\n tbodyTrClass,\n tbodyTrAttr\n } = this\n const h = this.$createElement\n const hasDetailsSlot = this.hasNormalizedSlot(SLOT_NAME_ROW_DETAILS)\n const rowShowDetails = item[FIELD_KEY_SHOW_DETAILS] && hasDetailsSlot\n const hasRowClickHandler =\n this.$listeners[EVENT_NAME_ROW_CLICKED] || this.hasSelectableRowClick\n\n // We can return more than one TR if rowDetails enabled\n const $rows = []\n\n // Details ID needed for `aria-details` when details showing\n // We set it to `null` when not showing so that attribute\n // does not appear on the element\n const detailsId = rowShowDetails ? this.safeId(`_details_${rowIndex}_`) : null\n\n // For each item data field in row\n const $tds = fields.map((field, colIndex) => {\n return this.renderTbodyRowCell(field, colIndex, item, rowIndex)\n })\n\n // Calculate the row number in the dataset (indexed from 1)\n let ariaRowIndex = null\n if (currentPage && perPage && perPage > 0) {\n ariaRowIndex = String((currentPage - 1) * perPage + rowIndex + 1)\n }\n\n // Create a unique :key to help ensure that sub components are re-rendered rather than\n // re-used, which can cause issues. If a primary key is not provided we use the rendered\n // rows index within the tbody.\n // See: https://github.com/bootstrap-vue/bootstrap-vue/issues/2410\n const primaryKeyValue = toString(get(item, primaryKey)) || null\n const rowKey = primaryKeyValue || toString(rowIndex)\n\n // If primary key is provided, use it to generate a unique ID on each tbody > tr\n // In the format of '{tableId}__row_{primaryKeyValue}'\n const rowId = primaryKeyValue ? this.safeId(`_row_${primaryKeyValue}`) : null\n\n // Selectable classes and attributes\n const selectableClasses = this.selectableRowClasses ? this.selectableRowClasses(rowIndex) : {}\n const selectableAttrs = this.selectableRowAttrs ? this.selectableRowAttrs(rowIndex) : {}\n\n // Additional classes and attributes\n const userTrClasses = isFunction(tbodyTrClass) ? tbodyTrClass(item, 'row') : tbodyTrClass\n const userTrAttrs = isFunction(tbodyTrAttr)\n ? /* istanbul ignore next */ tbodyTrAttr(item, 'row')\n : tbodyTrAttr\n\n // Add the item row\n $rows.push(\n h(\n BTr,\n {\n class: [userTrClasses, selectableClasses, rowShowDetails ? 'b-table-has-details' : ''],\n props: { variant: item[FIELD_KEY_ROW_VARIANT] || null },\n attrs: {\n id: rowId,\n ...userTrAttrs,\n // Users cannot override the following attributes\n tabindex: hasRowClickHandler ? '0' : null,\n 'data-pk': primaryKeyValue || null,\n 'aria-details': detailsId,\n 'aria-owns': detailsId,\n 'aria-rowindex': ariaRowIndex,\n ...selectableAttrs\n },\n on: {\n // Note: These events are not A11Y friendly!\n mouseenter: this.rowHovered,\n mouseleave: this.rowUnhovered\n },\n key: `__b-table-row-${rowKey}__`,\n ref: 'item-rows',\n refInFor: true\n },\n $tds\n )\n )\n\n // Row Details slot\n if (rowShowDetails) {\n const detailsScope = {\n item,\n index: rowIndex,\n fields,\n toggleDetails: this.toggleDetailsFactory(hasDetailsSlot, item)\n }\n // If table supports selectable mode, then add in the following scope\n // this.supportsSelectableRows will be undefined if mixin isn't loaded\n if (this.supportsSelectableRows) {\n detailsScope.rowSelected = this.isRowSelected(rowIndex)\n detailsScope.selectRow = () => this.selectRow(rowIndex)\n detailsScope.unselectRow = () => this.unselectRow(rowIndex)\n }\n\n // Render the details slot in a TD\n const $details = h(\n BTd,\n {\n props: { colspan: fields.length },\n class: this.detailsTdClass\n },\n [this.normalizeSlot(SLOT_NAME_ROW_DETAILS, detailsScope)]\n )\n\n // Add a hidden row to keep table row striping consistent when details showing\n // Only added if the table is striped\n if (striped) {\n $rows.push(\n // We don't use `BTr` here as we don't need the extra functionality\n h('tr', {\n staticClass: 'd-none',\n attrs: {\n 'aria-hidden': 'true',\n role: 'presentation'\n },\n key: `__b-table-details-stripe__${rowKey}`\n })\n )\n }\n\n // Add the actual details row\n const userDetailsTrClasses = isFunction(this.tbodyTrClass)\n ? /* istanbul ignore next */ this.tbodyTrClass(item, SLOT_NAME_ROW_DETAILS)\n : this.tbodyTrClass\n const userDetailsTrAttrs = isFunction(this.tbodyTrAttr)\n ? /* istanbul ignore next */ this.tbodyTrAttr(item, SLOT_NAME_ROW_DETAILS)\n : this.tbodyTrAttr\n $rows.push(\n h(\n BTr,\n {\n staticClass: 'b-table-details',\n class: [userDetailsTrClasses],\n props: { variant: item[FIELD_KEY_ROW_VARIANT] || null },\n attrs: {\n ...userDetailsTrAttrs,\n // Users cannot override the following attributes\n id: detailsId,\n tabindex: '-1'\n },\n key: `__b-table-details__${rowKey}`\n },\n [$details]\n )\n )\n } else if (hasDetailsSlot) {\n // Only add the placeholder if a the table has a row-details slot defined (but not shown)\n $rows.push(h())\n if (striped) {\n // Add extra placeholder if table is striped\n $rows.push(h())\n }\n }\n\n // Return the row(s)\n return $rows\n }\n }\n})\n","import { Vue } from '../../../vue'\nimport {\n EVENT_NAME_ROW_CLICKED,\n EVENT_NAME_ROW_CONTEXTMENU,\n EVENT_NAME_ROW_DBLCLICKED,\n EVENT_NAME_ROW_MIDDLE_CLICKED\n} from '../../../constants/events'\nimport {\n CODE_DOWN,\n CODE_END,\n CODE_ENTER,\n CODE_HOME,\n CODE_SPACE,\n CODE_UP\n} from '../../../constants/key-codes'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING } from '../../../constants/props'\nimport { arrayIncludes, from as arrayFrom } from '../../../utils/array'\nimport { attemptFocus, closest, isActiveElement, isElement } from '../../../utils/dom'\nimport { stopEvent } from '../../../utils/events'\nimport { sortKeys } from '../../../utils/object'\nimport { makeProp, pluckProps } from '../../../utils/props'\nimport { BTbody, props as BTbodyProps } from '../tbody'\nimport { filterEvent } from './filter-event'\nimport { textSelectionActive } from './text-selection-active'\nimport { tbodyRowMixin, props as tbodyRowProps } from './mixin-tbody-row'\n\n// --- Helper methods ---\n\nconst getCellSlotName = value => `cell(${value || ''})`\n\n// --- Props ---\n\nexport const props = sortKeys({\n ...BTbodyProps,\n ...tbodyRowProps,\n tbodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n})\n\n// --- Mixin ---\n\n// @vue/component\nexport const tbodyMixin = Vue.extend({\n mixins: [tbodyRowMixin],\n props,\n beforeDestroy() {\n this.$_bodyFieldSlotNameCache = null\n },\n methods: {\n // Returns all the item TR elements (excludes detail and spacer rows)\n // `this.$refs['item-rows']` is an array of item TR components/elements\n // Rows should all be `<b-tr>` components, but we map to TR elements\n // Also note that `this.$refs['item-rows']` may not always be in document order\n getTbodyTrs() {\n const { $refs } = this\n const tbody = $refs.tbody ? $refs.tbody.$el || $refs.tbody : null\n const trs = ($refs['item-rows'] || []).map(tr => tr.$el || tr)\n return tbody && tbody.children && tbody.children.length > 0 && trs && trs.length > 0\n ? arrayFrom(tbody.children).filter(tr => arrayIncludes(trs, tr))\n : /* istanbul ignore next */ []\n },\n // Returns index of a particular TBODY item TR\n // We set `true` on closest to include self in result\n getTbodyTrIndex(el) {\n /* istanbul ignore next: should not normally happen */\n if (!isElement(el)) {\n return -1\n }\n const tr = el.tagName === 'TR' ? el : closest('tr', el, true)\n return tr ? this.getTbodyTrs().indexOf(tr) : -1\n },\n // Emits a row event, with the item object, row index and original event\n emitTbodyRowEvent(type, event) {\n if (type && this.hasListener(type) && event && event.target) {\n const rowIndex = this.getTbodyTrIndex(event.target)\n if (rowIndex > -1) {\n // The array of TRs correlate to the `computedItems` array\n const item = this.computedItems[rowIndex]\n this.$emit(type, item, rowIndex, event)\n }\n }\n },\n tbodyRowEventStopped(event) {\n return this.stopIfBusy && this.stopIfBusy(event)\n },\n // Delegated row event handlers\n onTbodyRowKeydown(event) {\n // Keyboard navigation and row click emulation\n const { target, keyCode } = event\n if (\n this.tbodyRowEventStopped(event) ||\n target.tagName !== 'TR' ||\n !isActiveElement(target) ||\n target.tabIndex !== 0\n ) {\n // Early exit if not an item row TR\n return\n }\n\n if (arrayIncludes([CODE_ENTER, CODE_SPACE], keyCode)) {\n // Emulated click for keyboard users, transfer to click handler\n stopEvent(event)\n this.onTBodyRowClicked(event)\n } else if (arrayIncludes([CODE_UP, CODE_DOWN, CODE_HOME, CODE_END], keyCode)) {\n // Keyboard navigation\n const rowIndex = this.getTbodyTrIndex(target)\n if (rowIndex > -1) {\n stopEvent(event)\n const trs = this.getTbodyTrs()\n const shift = event.shiftKey\n if (keyCode === CODE_HOME || (shift && keyCode === CODE_UP)) {\n // Focus first row\n attemptFocus(trs[0])\n } else if (keyCode === CODE_END || (shift && keyCode === CODE_DOWN)) {\n // Focus last row\n attemptFocus(trs[trs.length - 1])\n } else if (keyCode === CODE_UP && rowIndex > 0) {\n // Focus previous row\n attemptFocus(trs[rowIndex - 1])\n } else if (keyCode === CODE_DOWN && rowIndex < trs.length - 1) {\n // Focus next row\n attemptFocus(trs[rowIndex + 1])\n }\n }\n }\n },\n onTBodyRowClicked(event) {\n const { $refs } = this\n const tbody = $refs.tbody ? $refs.tbody.$el || $refs.tbody : null\n // Don't emit event when the table is busy, the user clicked\n // on a non-disabled control or is selecting text\n if (\n this.tbodyRowEventStopped(event) ||\n filterEvent(event) ||\n textSelectionActive(tbody || this.$el)\n ) {\n return\n }\n this.emitTbodyRowEvent(EVENT_NAME_ROW_CLICKED, event)\n },\n onTbodyRowMiddleMouseRowClicked(event) {\n if (!this.tbodyRowEventStopped(event) && event.which === 2) {\n this.emitTbodyRowEvent(EVENT_NAME_ROW_MIDDLE_CLICKED, event)\n }\n },\n onTbodyRowContextmenu(event) {\n if (!this.tbodyRowEventStopped(event)) {\n this.emitTbodyRowEvent(EVENT_NAME_ROW_CONTEXTMENU, event)\n }\n },\n onTbodyRowDblClicked(event) {\n if (!this.tbodyRowEventStopped(event) && !filterEvent(event)) {\n this.emitTbodyRowEvent(EVENT_NAME_ROW_DBLCLICKED, event)\n }\n },\n // Render the tbody element and children\n // Note:\n // Row hover handlers are handled by the tbody-row mixin\n // As mouseenter/mouseleave events do not bubble\n renderTbody() {\n const { computedItems: items, renderBusy, renderTopRow, renderEmpty, renderBottomRow } = this\n const h = this.$createElement\n const hasRowClickHandler =\n this.hasListener(EVENT_NAME_ROW_CLICKED) || this.hasSelectableRowClick\n\n // Prepare the tbody rows\n const $rows = []\n\n // Add the item data rows or the busy slot\n const $busy = renderBusy ? renderBusy() : null\n if ($busy) {\n // If table is busy and a busy slot, then return only the busy \"row\" indicator\n $rows.push($busy)\n } else {\n // Table isn't busy, or we don't have a busy slot\n\n // Create a slot cache for improved performance when looking up cell slot names\n // Values will be keyed by the field's `key` and will store the slot's name\n // Slots could be dynamic (i.e. `v-if`), so we must compute on each render\n // Used by tbody-row mixin render helper\n const cache = {}\n let defaultSlotName = getCellSlotName()\n defaultSlotName = this.hasNormalizedSlot(defaultSlotName) ? defaultSlotName : null\n this.computedFields.forEach(field => {\n const { key } = field\n const slotName = getCellSlotName(key)\n const lowercaseSlotName = getCellSlotName(key.toLowerCase())\n cache[key] = this.hasNormalizedSlot(slotName)\n ? slotName\n : this.hasNormalizedSlot(lowercaseSlotName)\n ? /* istanbul ignore next */ lowercaseSlotName\n : defaultSlotName\n })\n // Created as a non-reactive property so to not trigger component updates\n // Must be a fresh object each render\n this.$_bodyFieldSlotNameCache = cache\n\n // Add static top row slot (hidden in visibly stacked mode\n // as we can't control `data-label` attr)\n $rows.push(renderTopRow ? renderTopRow() : h())\n\n // Render the rows\n items.forEach((item, rowIndex) => {\n // Render the individual item row (rows if details slot)\n $rows.push(this.renderTbodyRow(item, rowIndex))\n })\n\n // Empty items / empty filtered row slot (only shows if `items.length < 1`)\n $rows.push(renderEmpty ? renderEmpty() : h())\n\n // Static bottom row slot (hidden in visibly stacked mode\n // as we can't control `data-label` attr)\n $rows.push(renderBottomRow ? renderBottomRow() : h())\n }\n\n // Note: these events will only emit if a listener is registered\n const handlers = {\n auxclick: this.onTbodyRowMiddleMouseRowClicked,\n // TODO:\n // Perhaps we do want to automatically prevent the\n // default context menu from showing if there is a\n // `row-contextmenu` listener registered\n contextmenu: this.onTbodyRowContextmenu,\n // The following event(s) is not considered A11Y friendly\n dblclick: this.onTbodyRowDblClicked\n // Hover events (`mouseenter`/`mouseleave`) are handled by `tbody-row` mixin\n }\n // Add in click/keydown listeners if needed\n if (hasRowClickHandler) {\n handlers.click = this.onTBodyRowClicked\n handlers.keydown = this.onTbodyRowKeydown\n }\n\n // Assemble rows into the tbody\n const $tbody = h(\n BTbody,\n {\n class: this.tbodyClass || null,\n props: pluckProps(BTbodyProps, this.$props),\n // BTbody transfers all native event listeners to the root element\n // TODO: Only set the handlers if the table is not busy\n on: handlers,\n ref: 'tbody'\n },\n $rows\n )\n\n // Return the assembled tbody\n return $tbody\n }\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TFOOT } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n // Supported values: 'lite', 'dark', or null\n footVariant: makeProp(PROP_TYPE_STRING)\n },\n NAME_TFOOT\n)\n\n// --- Main component ---\n\n// TODO:\n// In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n// to the child elements, so this can be converted to a functional component\n// @vue/component\nexport const BTfoot = /*#__PURE__*/ Vue.extend({\n name: NAME_TFOOT,\n mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n provide() {\n return {\n bvTableRowGroup: this\n }\n },\n inject: {\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n bvTable: {\n default: /* istanbul ignore next */ () => ({})\n }\n },\n inheritAttrs: false,\n props,\n computed: {\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n isTfoot() {\n return true\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n isDark() {\n return this.bvTable.dark\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n isStacked() {\n return this.bvTable.isStacked\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n isResponsive() {\n return this.bvTable.isResponsive\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n // Sticky headers are only supported in thead\n isStickyHeader() {\n return false\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n // Needed to handle header background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n hasStickyHeader() {\n return !this.isStacked && this.bvTable.stickyHeader\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n tableVariant() {\n return this.bvTable.tableVariant\n },\n tfootClasses() {\n return [this.footVariant ? `thead-${this.footVariant}` : null]\n },\n tfootAttrs() {\n return { ...this.bvAttrs, role: 'rowgroup' }\n }\n },\n render(h) {\n return h(\n 'tfoot',\n {\n class: this.tfootClasses,\n attrs: this.tfootAttrs,\n // Pass down any native listeners\n on: this.bvListeners\n },\n this.normalizeSlot()\n )\n }\n})\n","import { Vue } from '../../../vue'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_STRING\n} from '../../../constants/props'\nimport { SLOT_NAME_CUSTOM_FOOT } from '../../../constants/slots'\nimport { makeProp } from '../../../utils/props'\nimport { BTfoot } from '../tfoot'\n\n// --- Props ---\n\nexport const props = {\n footClone: makeProp(PROP_TYPE_BOOLEAN, false),\n // Any Bootstrap theme variant (or custom)\n // Falls back to `headRowVariant`\n footRowVariant: makeProp(PROP_TYPE_STRING),\n // 'dark', 'light', or `null` (or custom)\n footVariant: makeProp(PROP_TYPE_STRING),\n tfootClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n tfootTrClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const tfootMixin = Vue.extend({\n props,\n methods: {\n renderTFootCustom() {\n const h = this.$createElement\n if (this.hasNormalizedSlot(SLOT_NAME_CUSTOM_FOOT)) {\n return h(\n BTfoot,\n {\n class: this.tfootClass || null,\n props: { footVariant: this.footVariant || this.headVariant || null },\n key: 'bv-tfoot-custom'\n },\n this.normalizeSlot(SLOT_NAME_CUSTOM_FOOT, {\n items: this.computedItems.slice(),\n fields: this.computedFields.slice(),\n columns: this.computedFields.length\n })\n )\n }\n\n return h()\n },\n renderTfoot() {\n // Passing true to renderThead will make it render a tfoot\n return this.footClone ? this.renderThead(true) : this.renderTFootCustom()\n }\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_THEAD } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n // Also sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n // Supported values: 'lite', 'dark', or `null`\n headVariant: makeProp(PROP_TYPE_STRING)\n },\n NAME_THEAD\n)\n\n// --- Main component ---\n\n// TODO:\n// In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n// to the child elements, so this can be converted to a functional component\n// @vue/component\nexport const BThead = /*#__PURE__*/ Vue.extend({\n name: NAME_THEAD,\n mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n provide() {\n return {\n bvTableRowGroup: this\n }\n },\n inject: {\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n bvTable: {\n default: /* istanbul ignore next */ () => ({})\n }\n },\n inheritAttrs: false,\n props,\n computed: {\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n isThead() {\n return true\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n isDark() {\n return this.bvTable.dark\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n isStacked() {\n return this.bvTable.isStacked\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n isResponsive() {\n return this.bvTable.isResponsive\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n // Needed to handle header background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n // Sticky headers only apply to cells in table `thead`\n isStickyHeader() {\n return !this.isStacked && this.bvTable.stickyHeader\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n // Needed to handle header background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n hasStickyHeader() {\n return !this.isStacked && this.bvTable.stickyHeader\n },\n // Sniffed by `<b-tr>` / `<b-td>` / `<b-th>`\n tableVariant() {\n return this.bvTable.tableVariant\n },\n theadClasses() {\n return [this.headVariant ? `thead-${this.headVariant}` : null]\n },\n theadAttrs() {\n return { role: 'rowgroup', ...this.bvAttrs }\n }\n },\n render(h) {\n return h(\n 'thead',\n {\n class: this.theadClasses,\n attrs: this.theadAttrs,\n // Pass down any native listeners\n on: this.bvListeners\n },\n this.normalizeSlot()\n )\n }\n})\n","import { Vue } from '../../../vue'\nimport { EVENT_NAME_HEAD_CLICKED } from '../../../constants/events'\nimport { CODE_ENTER, CODE_SPACE } from '../../../constants/key-codes'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../../constants/props'\nimport { SLOT_NAME_THEAD_TOP } from '../../../constants/slots'\nimport { stopEvent } from '../../../utils/events'\nimport { htmlOrText } from '../../../utils/html'\nimport { identity } from '../../../utils/identity'\nimport { isUndefinedOrNull } from '../../../utils/inspect'\nimport { noop } from '../../../utils/noop'\nimport { makeProp } from '../../../utils/props'\nimport { startCase } from '../../../utils/string'\nimport { BThead } from '../thead'\nimport { BTfoot } from '../tfoot'\nimport { BTr } from '../tr'\nimport { BTh } from '../th'\nimport { filterEvent } from './filter-event'\nimport { textSelectionActive } from './text-selection-active'\n\n// --- Helper methods ---\n\nconst getHeadSlotName = value => `head(${value || ''})`\n\nconst getFootSlotName = value => `foot(${value || ''})`\n\n// --- Props ---\n\nexport const props = {\n // Any Bootstrap theme variant (or custom)\n headRowVariant: makeProp(PROP_TYPE_STRING),\n // 'light', 'dark' or `null` (or custom)\n headVariant: makeProp(PROP_TYPE_STRING),\n theadClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n theadTrClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const theadMixin = Vue.extend({\n props,\n methods: {\n fieldClasses(field) {\n // Header field (<th>) classes\n return [field.class ? field.class : '', field.thClass ? field.thClass : '']\n },\n headClicked(event, field, isFoot) {\n if (this.stopIfBusy && this.stopIfBusy(event)) {\n // If table is busy (via provider) then don't propagate\n return\n } else if (filterEvent(event)) {\n // Clicked on a non-disabled control so ignore\n return\n } else if (textSelectionActive(this.$el)) {\n // User is selecting text, so ignore\n /* istanbul ignore next: JSDOM doesn't support getSelection() */\n return\n }\n stopEvent(event)\n this.$emit(EVENT_NAME_HEAD_CLICKED, field.key, field, event, isFoot)\n },\n renderThead(isFoot = false) {\n const {\n computedFields: fields,\n isSortable,\n isSelectable,\n headVariant,\n footVariant,\n headRowVariant,\n footRowVariant\n } = this\n const h = this.$createElement\n\n // In always stacked mode, we don't bother rendering the head/foot\n // Or if no field headings (empty table)\n if (this.isStackedAlways || fields.length === 0) {\n return h()\n }\n\n const hasHeadClickListener = isSortable || this.hasListener(EVENT_NAME_HEAD_CLICKED)\n\n // Reference to `selectAllRows` and `clearSelected()`, if table is selectable\n const selectAllRows = isSelectable ? this.selectAllRows : noop\n const clearSelected = isSelectable ? this.clearSelected : noop\n\n // Helper function to generate a field <th> cell\n const makeCell = (field, colIndex) => {\n const { label, labelHtml, variant, stickyColumn, key } = field\n\n let ariaLabel = null\n if (!field.label.trim() && !field.headerTitle) {\n // In case field's label and title are empty/blank\n // We need to add a hint about what the column is about for non-sighted users\n /* istanbul ignore next */\n ariaLabel = startCase(field.key)\n }\n\n const on = {}\n if (hasHeadClickListener) {\n on.click = event => {\n this.headClicked(event, field, isFoot)\n }\n on.keydown = event => {\n const keyCode = event.keyCode\n if (keyCode === CODE_ENTER || keyCode === CODE_SPACE) {\n this.headClicked(event, field, isFoot)\n }\n }\n }\n\n const sortAttrs = isSortable ? this.sortTheadThAttrs(key, field, isFoot) : {}\n const sortClass = isSortable ? this.sortTheadThClasses(key, field, isFoot) : null\n const sortLabel = isSortable ? this.sortTheadThLabel(key, field, isFoot) : null\n\n const data = {\n class: [\n {\n // We need to make the header cell relative when we have\n // a `.sr-only` sort label to work around overflow issues\n 'position-relative': sortLabel\n },\n this.fieldClasses(field),\n sortClass\n ],\n props: { variant, stickyColumn },\n style: field.thStyle || {},\n attrs: {\n // We only add a `tabindex` of `0` if there is a head-clicked listener\n // and the current field is sortable\n tabindex: hasHeadClickListener && field.sortable ? '0' : null,\n abbr: field.headerAbbr || null,\n title: field.headerTitle || null,\n 'aria-colindex': colIndex + 1,\n 'aria-label': ariaLabel,\n ...this.getThValues(null, key, field.thAttr, isFoot ? 'foot' : 'head', {}),\n ...sortAttrs\n },\n on,\n key\n }\n\n // Handle edge case where in-document templates are used with new\n // `v-slot:name` syntax where the browser lower-cases the v-slot's\n // name (attributes become lower cased when parsed by the browser)\n // We have replaced the square bracket syntax with round brackets\n // to prevent confusion with dynamic slot names\n let slotNames = [\n getHeadSlotName(key),\n getHeadSlotName(key.toLowerCase()),\n getHeadSlotName()\n ]\n // Footer will fallback to header slot names\n if (isFoot) {\n slotNames = [\n getFootSlotName(key),\n getFootSlotName(key.toLowerCase()),\n getFootSlotName(),\n ...slotNames\n ]\n }\n\n const scope = {\n label,\n column: key,\n field,\n isFoot,\n // Add in row select methods\n selectAllRows,\n clearSelected\n }\n\n const $content =\n this.normalizeSlot(slotNames, scope) ||\n h('div', { domProps: htmlOrText(labelHtml, label) })\n\n const $srLabel = sortLabel ? h('span', { staticClass: 'sr-only' }, ` (${sortLabel})`) : null\n\n // Return the header cell\n return h(BTh, data, [$content, $srLabel].filter(identity))\n }\n\n // Generate the array of <th> cells\n const $cells = fields.map(makeCell).filter(identity)\n\n // Generate the row(s)\n const $trs = []\n if (isFoot) {\n $trs.push(\n h(\n BTr,\n {\n class: this.tfootTrClass,\n props: {\n variant: isUndefinedOrNull(footRowVariant)\n ? headRowVariant\n : /* istanbul ignore next */ footRowVariant\n }\n },\n $cells\n )\n )\n } else {\n const scope = {\n columns: fields.length,\n fields,\n // Add in row select methods\n selectAllRows,\n clearSelected\n }\n $trs.push(this.normalizeSlot(SLOT_NAME_THEAD_TOP, scope) || h())\n\n $trs.push(\n h(\n BTr,\n {\n class: this.theadTrClass,\n props: { variant: headRowVariant }\n },\n $cells\n )\n )\n }\n\n return h(\n isFoot ? BTfoot : BThead,\n {\n class: (isFoot ? this.tfootClass : this.theadClass) || null,\n props: isFoot\n ? { footVariant: footVariant || headVariant || null }\n : { headVariant: headVariant || null },\n key: isFoot ? 'bv-tfoot' : 'bv-thead'\n },\n $trs\n )\n }\n }\n})\n","import { Vue } from '../../../vue'\nimport { SLOT_NAME_TOP_ROW } from '../../../constants/slots'\nimport { isFunction } from '../../../utils/inspect'\nimport { BTr } from '../tr'\n\n// --- Props ---\n\nexport const props = {}\n\n// --- Mixin ---\n\n// @vue/component\nexport const topRowMixin = Vue.extend({\n methods: {\n renderTopRow() {\n const { computedFields: fields, stacked, tbodyTrClass, tbodyTrAttr } = this\n const h = this.$createElement\n\n // Add static Top Row slot (hidden in visibly stacked mode as we can't control the data-label)\n // If in *always* stacked mode, we don't bother rendering the row\n if (!this.hasNormalizedSlot(SLOT_NAME_TOP_ROW) || stacked === true || stacked === '') {\n return h()\n }\n\n return h(\n BTr,\n {\n staticClass: 'b-table-top-row',\n class: [isFunction(tbodyTrClass) ? tbodyTrClass(null, 'row-top') : tbodyTrClass],\n attrs: isFunction(tbodyTrAttr) ? tbodyTrAttr(null, 'row-top') : tbodyTrAttr,\n key: 'b-top-row'\n },\n [this.normalizeSlot(SLOT_NAME_TOP_ROW, { columns: fields.length, fields })]\n )\n }\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TABLE } from '../../constants/components'\nimport { sortKeys } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { hasListenerMixin } from '../../mixins/has-listener'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { bottomRowMixin, props as bottomRowProps } from './helpers/mixin-bottom-row'\nimport { busyMixin, props as busyProps } from './helpers/mixin-busy'\nimport { captionMixin, props as captionProps } from './helpers/mixin-caption'\nimport { colgroupMixin, props as colgroupProps } from './helpers/mixin-colgroup'\nimport { emptyMixin, props as emptyProps } from './helpers/mixin-empty'\nimport { filteringMixin, props as filteringProps } from './helpers/mixin-filtering'\nimport { itemsMixin, props as itemsProps } from './helpers/mixin-items'\nimport { paginationMixin, props as paginationProps } from './helpers/mixin-pagination'\nimport { providerMixin, props as providerProps } from './helpers/mixin-provider'\nimport { selectableMixin, props as selectableProps } from './helpers/mixin-selectable'\nimport { sortingMixin, props as sortingProps } from './helpers/mixin-sorting'\nimport { stackedMixin, props as stackedProps } from './helpers/mixin-stacked'\nimport { tableRendererMixin, props as tableRendererProps } from './helpers/mixin-table-renderer'\nimport { tbodyMixin, props as tbodyProps } from './helpers/mixin-tbody'\nimport { tfootMixin, props as tfootProps } from './helpers/mixin-tfoot'\nimport { theadMixin, props as theadProps } from './helpers/mixin-thead'\nimport { topRowMixin, props as topRowProps } from './helpers/mixin-top-row'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...bottomRowProps,\n ...busyProps,\n ...captionProps,\n ...colgroupProps,\n ...emptyProps,\n ...filteringProps,\n ...itemsProps,\n ...paginationProps,\n ...providerProps,\n ...selectableProps,\n ...sortingProps,\n ...stackedProps,\n ...tableRendererProps,\n ...tbodyProps,\n ...tfootProps,\n ...theadProps,\n ...topRowProps\n }),\n NAME_TABLE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BTable = /*#__PURE__*/ Vue.extend({\n name: NAME_TABLE,\n // Order of mixins is important!\n // They are merged from first to last, followed by this component\n mixins: [\n // General mixins\n attrsMixin,\n hasListenerMixin,\n idMixin,\n normalizeSlotMixin,\n // Required table mixins\n itemsMixin,\n tableRendererMixin,\n stackedMixin,\n theadMixin,\n tfootMixin,\n tbodyMixin,\n // Table features mixins\n stackedMixin,\n filteringMixin,\n sortingMixin,\n paginationMixin,\n captionMixin,\n colgroupMixin,\n selectableMixin,\n emptyMixin,\n topRowMixin,\n bottomRowMixin,\n busyMixin,\n providerMixin\n ],\n props\n // Render function is provided by `tableRendererMixin`\n})\n","import { Vue } from '../../vue'\nimport { NAME_TABLE_LITE } from '../../constants/components'\nimport { sortKeys } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { hasListenerMixin } from '../../mixins/has-listener'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { captionMixin, props as captionProps } from './helpers/mixin-caption'\nimport { colgroupMixin, props as colgroupProps } from './helpers/mixin-colgroup'\nimport { itemsMixin, props as itemsProps } from './helpers/mixin-items'\nimport { stackedMixin, props as stackedProps } from './helpers/mixin-stacked'\nimport { tableRendererMixin, props as tableRendererProps } from './helpers/mixin-table-renderer'\nimport { tbodyMixin, props as tbodyProps } from './helpers/mixin-tbody'\nimport { tfootMixin, props as tfootProps } from './helpers/mixin-tfoot'\nimport { theadMixin, props as theadProps } from './helpers/mixin-thead'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...captionProps,\n ...colgroupProps,\n ...itemsProps,\n ...stackedProps,\n ...tableRendererProps,\n ...tbodyProps,\n ...tfootProps,\n ...theadProps\n }),\n NAME_TABLE_LITE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BTableLite = /*#__PURE__*/ Vue.extend({\n name: NAME_TABLE_LITE,\n // Order of mixins is important!\n // They are merged from first to last, followed by this component\n mixins: [\n // General mixins\n attrsMixin,\n hasListenerMixin,\n idMixin,\n normalizeSlotMixin,\n // Required table mixins\n itemsMixin,\n tableRendererMixin,\n stackedMixin,\n theadMixin,\n tfootMixin,\n tbodyMixin,\n // Table features mixins\n // These are pretty lightweight, and are useful for lightweight tables\n captionMixin,\n colgroupMixin\n ],\n props\n // Render function is provided by `tableRendererMixin`\n})\n","import { Vue } from '../../vue'\nimport { NAME_TABLE_SIMPLE } from '../../constants/components'\nimport { sortKeys } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { hasListenerMixin } from '../../mixins/has-listener'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { stackedMixin, props as stackedProps } from './helpers/mixin-stacked'\nimport { tableRendererMixin, props as tableRendererProps } from './helpers/mixin-table-renderer'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...stackedProps,\n ...tableRendererProps\n }),\n NAME_TABLE_SIMPLE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BTableSimple = /*#__PURE__*/ Vue.extend({\n name: NAME_TABLE_SIMPLE,\n // Order of mixins is important!\n // They are merged from first to last, followed by this component\n mixins: [\n // General mixins\n attrsMixin,\n hasListenerMixin,\n idMixin,\n normalizeSlotMixin,\n // Required table mixins\n tableRendererMixin,\n // Table features mixins\n // Stacked requires extra handling by users via\n // the table cell `stacked-heading` prop\n stackedMixin\n ],\n props,\n computed: {\n isTableSimple() {\n return true\n }\n }\n // Render function is provided by `tableRendererMixin`\n})\n","import { BTable } from './table'\nimport { BTableLite } from './table-lite'\nimport { BTableSimple } from './table-simple'\nimport { BTbody } from './tbody'\nimport { BThead } from './thead'\nimport { BTfoot } from './tfoot'\nimport { BTr } from './tr'\nimport { BTd } from './td'\nimport { BTh } from './th'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst TableLitePlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BTableLite\n }\n})\n\nconst TableSimplePlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BTableSimple,\n BTbody,\n BThead,\n BTfoot,\n BTr,\n BTd,\n BTh\n }\n})\n\nconst TablePlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BTable\n },\n plugins: {\n TableLitePlugin,\n TableSimplePlugin\n }\n})\n\nexport {\n // Plugins\n TablePlugin,\n TableLitePlugin,\n TableSimplePlugin,\n // Table components\n BTable,\n BTableLite,\n BTableSimple,\n // Helper components\n BTbody,\n BThead,\n BTfoot,\n BTr,\n BTd,\n BTh\n}\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_SKELETON_TABLE } from '../../constants/components'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_NUMBER,\n PROP_TYPE_OBJECT,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { createArray } from '../../utils/array'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BSkeleton } from './skeleton'\nimport { BTableSimple } from '../table'\n\n// --- Helper methods ---\n\nconst isPositiveNumber = value => value > 0\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n animation: makeProp(PROP_TYPE_STRING),\n columns: makeProp(PROP_TYPE_NUMBER, 5, isPositiveNumber),\n hideHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n rows: makeProp(PROP_TYPE_NUMBER, 3, isPositiveNumber),\n showFooter: makeProp(PROP_TYPE_BOOLEAN, false),\n tableProps: makeProp(PROP_TYPE_OBJECT, {})\n },\n NAME_SKELETON_TABLE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BSkeletonTable = /*#__PURE__*/ Vue.extend({\n name: NAME_SKELETON_TABLE,\n functional: true,\n props,\n render(h, { data, props }) {\n const { animation, columns } = props\n\n const $th = h('th', [h(BSkeleton, { props: { animation } })])\n const $thTr = h('tr', createArray(columns, $th))\n\n const $td = h('td', [h(BSkeleton, { props: { width: '75%', animation } })])\n const $tdTr = h('tr', createArray(columns, $td))\n const $tbody = h('tbody', createArray(props.rows, $tdTr))\n\n const $thead = !props.hideHeader ? h('thead', [$thTr]) : h()\n const $tfoot = props.showFooter ? h('tfoot', [$thTr]) : h()\n\n return h(BTableSimple, mergeData(data, { props: { ...props.tableProps } }), [\n $thead,\n $tbody,\n $tfoot\n ])\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_SKELETON_WRAPPER } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_LOADING } from '../../constants/slots'\nimport { normalizeSlot } from '../../utils/normalize-slot'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n loading: makeProp(PROP_TYPE_BOOLEAN, false)\n },\n NAME_SKELETON_WRAPPER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BSkeletonWrapper = /*#__PURE__*/ Vue.extend({\n name: NAME_SKELETON_WRAPPER,\n functional: true,\n props,\n render(h, { data, props, slots, scopedSlots }) {\n const $slots = slots()\n const $scopedSlots = scopedSlots || {}\n const slotScope = {}\n\n if (props.loading) {\n return h(\n 'div',\n mergeData(data, {\n attrs: {\n role: 'alert',\n 'aria-live': 'polite',\n 'aria-busy': true\n },\n staticClass: 'b-skeleton-wrapper',\n key: 'loading'\n }),\n normalizeSlot(SLOT_NAME_LOADING, slotScope, $scopedSlots, $slots)\n )\n }\n\n return normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots)\n }\n})\n","import { pluginFactory } from '../../utils/plugins'\nimport { BSkeleton } from './skeleton'\nimport { BSkeletonIcon } from './skeleton-icon'\nimport { BSkeletonImg } from './skeleton-img'\nimport { BSkeletonTable } from './skeleton-table'\nimport { BSkeletonWrapper } from './skeleton-wrapper'\n\nconst SkeletonPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BSkeleton,\n BSkeletonIcon,\n BSkeletonImg,\n BSkeletonTable,\n BSkeletonWrapper\n }\n})\n\nexport { SkeletonPlugin, BSkeleton, BSkeletonIcon, BSkeletonImg, BSkeletonTable, BSkeletonWrapper }\n","import { BSpinner } from './spinner'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst SpinnerPlugin = /*#__PURE__*/ pluginFactory({\n components: { BSpinner }\n})\n\nexport { SpinnerPlugin, BSpinner }\n","import { COMPONENT_UID_KEY, Vue } from '../../vue'\nimport { NAME_TABS, NAME_TAB_BUTTON_HELPER } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport {\n EVENT_NAME_ACTIVATE_TAB,\n EVENT_NAME_CHANGED,\n EVENT_NAME_CLICK,\n EVENT_NAME_FIRST,\n EVENT_NAME_LAST,\n EVENT_NAME_NEXT,\n EVENT_NAME_PREV\n} from '../../constants/events'\nimport {\n CODE_DOWN,\n CODE_END,\n CODE_HOME,\n CODE_LEFT,\n CODE_RIGHT,\n CODE_SPACE,\n CODE_UP\n} from '../../constants/key-codes'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_NUMBER,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport {\n SLOT_NAME_EMPTY,\n SLOT_NAME_TABS_END,\n SLOT_NAME_TABS_START,\n SLOT_NAME_TITLE\n} from '../../constants/slots'\nimport { arrayIncludes } from '../../utils/array'\nimport { BvEvent } from '../../utils/bv-event.class'\nimport { attemptFocus, selectAll, requestAF } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isEvent } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { mathMax } from '../../utils/math'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { omit, sortKeys } from '../../utils/object'\nimport { observeDom } from '../../utils/observe-dom'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { stableSort } from '../../utils/stable-sort'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BLink } from '../link/link'\nimport { BNav, props as BNavProps } from '../nav/nav'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', { type: PROP_TYPE_NUMBER })\n\n// --- Helper methods ---\n\n// Filter function to filter out disabled tabs\nconst notDisabled = tab => !tab.disabled\n\n// --- Helper components ---\n\n// @vue/component\nconst BVTabButton = /*#__PURE__*/ Vue.extend({\n name: NAME_TAB_BUTTON_HELPER,\n inject: {\n bvTabs: {\n default: /* istanbul ignore next */ () => ({})\n }\n },\n props: {\n controls: makeProp(PROP_TYPE_STRING),\n id: makeProp(PROP_TYPE_STRING),\n noKeyNav: makeProp(PROP_TYPE_BOOLEAN, false),\n posInSet: makeProp(PROP_TYPE_NUMBER),\n setSize: makeProp(PROP_TYPE_NUMBER),\n // Reference to the child <b-tab> instance\n tab: makeProp(),\n tabIndex: makeProp(PROP_TYPE_NUMBER)\n },\n methods: {\n focus() {\n attemptFocus(this.$refs.link)\n },\n handleEvent(event) {\n /* istanbul ignore next */\n if (this.tab.disabled) {\n return\n }\n const { type, keyCode, shiftKey } = event\n if (type === 'click') {\n stopEvent(event)\n this.$emit(EVENT_NAME_CLICK, event)\n } else if (type === 'keydown' && keyCode === CODE_SPACE) {\n // For ARIA tabs the SPACE key will also trigger a click/select\n // Even with keyboard navigation disabled, SPACE should \"click\" the button\n // See: https://github.com/bootstrap-vue/bootstrap-vue/issues/4323\n stopEvent(event)\n this.$emit(EVENT_NAME_CLICK, event)\n } else if (type === 'keydown' && !this.noKeyNav) {\n // For keyboard navigation\n if ([CODE_UP, CODE_LEFT, CODE_HOME].indexOf(keyCode) !== -1) {\n stopEvent(event)\n if (shiftKey || keyCode === CODE_HOME) {\n this.$emit(EVENT_NAME_FIRST, event)\n } else {\n this.$emit(EVENT_NAME_PREV, event)\n }\n } else if ([CODE_DOWN, CODE_RIGHT, CODE_END].indexOf(keyCode) !== -1) {\n stopEvent(event)\n if (shiftKey || keyCode === CODE_END) {\n this.$emit(EVENT_NAME_LAST, event)\n } else {\n this.$emit(EVENT_NAME_NEXT, event)\n }\n }\n }\n }\n },\n render(h) {\n const { id, tabIndex, setSize, posInSet, controls, handleEvent } = this\n const {\n title,\n localActive,\n disabled,\n titleItemClass,\n titleLinkClass,\n titleLinkAttributes\n } = this.tab\n\n const $link = h(\n BLink,\n {\n staticClass: 'nav-link',\n class: [\n {\n active: localActive && !disabled,\n disabled\n },\n titleLinkClass,\n // Apply <b-tabs> `activeNavItemClass` styles when the tab is active\n localActive ? this.bvTabs.activeNavItemClass : null\n ],\n props: { disabled },\n attrs: {\n ...titleLinkAttributes,\n id,\n role: 'tab',\n // Roving tab index when keynav enabled\n tabindex: tabIndex,\n 'aria-selected': localActive && !disabled ? 'true' : 'false',\n 'aria-setsize': setSize,\n 'aria-posinset': posInSet,\n 'aria-controls': controls\n },\n on: {\n click: handleEvent,\n keydown: handleEvent\n },\n ref: 'link'\n },\n [this.tab.normalizeSlot(SLOT_NAME_TITLE) || title]\n )\n\n return h(\n 'li',\n {\n staticClass: 'nav-item',\n class: [titleItemClass],\n attrs: { role: 'presentation' }\n },\n [$link]\n )\n }\n})\n\n// --- Props ---\n\nconst navProps = omit(BNavProps, ['tabs', 'isNavBar', 'cardHeader'])\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ...navProps,\n // Only applied to the currently active `<b-nav-item>`\n activeNavItemClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n // Only applied to the currently active `<b-tab>`\n // This prop is sniffed by the `<b-tab>` child\n activeTabClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n card: makeProp(PROP_TYPE_BOOLEAN, false),\n contentClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n // Synonym for 'bottom'\n end: makeProp(PROP_TYPE_BOOLEAN, false),\n // This prop is sniffed by the `<b-tab>` child\n lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n navClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n navWrapperClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n noFade: makeProp(PROP_TYPE_BOOLEAN, false),\n noKeyNav: makeProp(PROP_TYPE_BOOLEAN, false),\n noNavStyle: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n }),\n NAME_TABS\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BTabs = /*#__PURE__*/ Vue.extend({\n name: NAME_TABS,\n mixins: [idMixin, modelMixin, normalizeSlotMixin],\n provide() {\n return {\n bvTabs: this\n }\n },\n props,\n data() {\n return {\n // Index of current tab\n currentTab: toInteger(this[MODEL_PROP_NAME], -1),\n // Array of direct child `<b-tab>` instances, in DOM order\n tabs: [],\n // Array of child instances registered (for triggering reactive updates)\n registeredTabs: []\n }\n },\n computed: {\n fade() {\n // This computed prop is sniffed by the tab child\n return !this.noFade\n },\n localNavClass() {\n const classes = []\n if (this.card && this.vertical) {\n classes.push('card-header', 'h-100', 'border-bottom-0', 'rounded-0')\n }\n return [...classes, this.navClass]\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue, oldValue) {\n if (newValue !== oldValue) {\n newValue = toInteger(newValue, -1)\n oldValue = toInteger(oldValue, 0)\n\n const $tab = this.tabs[newValue]\n if ($tab && !$tab.disabled) {\n this.activateTab($tab)\n } else {\n // Try next or prev tabs\n if (newValue < oldValue) {\n this.previousTab()\n } else {\n this.nextTab()\n }\n }\n }\n },\n currentTab(newValue) {\n let index = -1\n\n // Ensure only one tab is active at most\n this.tabs.forEach(($tab, i) => {\n if (i === newValue && !$tab.disabled) {\n $tab.localActive = true\n index = i\n } else {\n $tab.localActive = false\n }\n })\n\n // Update the v-model\n this.$emit(MODEL_EVENT_NAME, index)\n },\n // If tabs added, removed, or re-ordered, we emit a `changed` event\n tabs(newValue, oldValue) {\n // We use `_uid` instead of `safeId()`, as the later is changed in a `$nextTick()`\n // if no explicit ID is provided, causing duplicate emits\n if (\n !looseEqual(\n newValue.map($tab => $tab[COMPONENT_UID_KEY]),\n oldValue.map($tab => $tab[COMPONENT_UID_KEY])\n )\n ) {\n // In a `$nextTick()` to ensure `currentTab` has been set first\n this.$nextTick(() => {\n // We emit shallow copies of the new and old arrays of tabs,\n // to prevent users from potentially mutating the internal arrays\n this.$emit(EVENT_NAME_CHANGED, newValue.slice(), oldValue.slice())\n })\n }\n },\n // 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 registeredTabs() {\n this.updateTabs()\n }\n },\n created() {\n // Create private non-reactive props\n this.$_observer = null\n },\n mounted() {\n this.setObserver(true)\n },\n beforeDestroy() {\n this.setObserver(false)\n // Ensure no references to child instances exist\n this.tabs = []\n },\n methods: {\n registerTab($tab) {\n if (!arrayIncludes(this.registeredTabs, $tab)) {\n this.registeredTabs.push($tab)\n }\n },\n unregisterTab($tab) {\n this.registeredTabs = this.registeredTabs.slice().filter($t => $t !== $tab)\n },\n // DOM observer is needed to detect changes in order of tabs\n setObserver(on = true) {\n this.$_observer && this.$_observer.disconnect()\n this.$_observer = null\n\n if (on) {\n /* istanbul ignore next: difficult to test mutation observer in JSDOM */\n const handler = () => {\n this.$nextTick(() => {\n requestAF(() => {\n this.updateTabs()\n })\n })\n }\n\n // Watch for changes to `<b-tab>` sub components\n this.$_observer = observeDom(this.$refs.content, handler, {\n childList: true,\n subtree: false,\n attributes: true,\n attributeFilter: ['id']\n })\n }\n },\n getTabs() {\n const $tabs = this.registeredTabs.filter(\n $tab => $tab.$children.filter($t => $t._isTab).length === 0\n )\n\n // DOM Order of Tabs\n let order = []\n /* istanbul ignore next: too difficult to test */\n if (IS_BROWSER && $tabs.length > 0) {\n // We rely on the DOM when mounted to get the \"true\" order of the `<b-tab>` children\n // `querySelectorAll()` always returns elements in document order, regardless of\n // order specified in the selector\n const selector = $tabs.map($tab => `#${$tab.safeId()}`).join(', ')\n order = selectAll(selector, this.$el)\n .map($el => $el.id)\n .filter(identity)\n }\n\n // Stable sort keeps the original order if not found in the `order` array,\n // which will be an empty array before mount\n return stableSort($tabs, (a, b) => order.indexOf(a.safeId()) - order.indexOf(b.safeId()))\n },\n updateTabs() {\n const $tabs = this.getTabs()\n\n // 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\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 // Ensure only one tab is active at a time\n $tabs.forEach(($tab, index) => {\n $tab.localActive = index === tabIndex\n })\n\n this.tabs = $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 const { currentTab, tabs: $tabs } = this\n let result = false\n\n if ($tab) {\n const index = $tabs.indexOf($tab)\n if (index !== currentTab && index > -1 && !$tab.disabled) {\n const tabEvent = new BvEvent(EVENT_NAME_ACTIVATE_TAB, {\n cancelable: true,\n vueTarget: this,\n componentId: this.safeId()\n })\n\n this.$emit(tabEvent.type, index, currentTab, tabEvent)\n\n if (!tabEvent.defaultPrevented) {\n this.currentTab = index\n result = true\n }\n }\n }\n\n // Couldn't set tab, so ensure v-model is up to date\n /* istanbul ignore next: should rarely happen */\n if (!result && this[MODEL_PROP_NAME] !== currentTab) {\n this.$emit(MODEL_EVENT_NAME, currentTab)\n }\n\n return result\n },\n // Deactivate a tab given a `<b-tab>` instance\n // Accessed by `<b-tab>`\n deactivateTab($tab) {\n if ($tab) {\n // Find first non-disabled tab that isn't the one being deactivated\n // If no tabs are available, then don't deactivate current tab\n return this.activateTab(this.tabs.filter($t => $t !== $tab).find(notDisabled))\n }\n /* istanbul ignore next: should never/rarely happen */\n return false\n },\n // Focus a tab button given its `<b-tab>` instance\n focusButton($tab) {\n // Wrap in `$nextTick()` to ensure DOM has completed rendering\n this.$nextTick(() => {\n attemptFocus(this.getButtonForTab($tab))\n })\n },\n // Emit a click event on a specified `<b-tab>` component instance\n emitTabClick(tab, event) {\n if (isEvent(event) && tab && tab.$emit && !tab.disabled) {\n tab.$emit(EVENT_NAME_CLICK, event)\n }\n },\n // Click handler\n clickTab($tab, event) {\n this.activateTab($tab)\n this.emitTabClick($tab, event)\n },\n // Move to first non-disabled tab\n firstTab(focus) {\n const $tab = this.tabs.find(notDisabled)\n if (this.activateTab($tab) && focus) {\n this.focusButton($tab)\n this.emitTabClick($tab, focus)\n }\n },\n // Move to previous non-disabled tab\n previousTab(focus) {\n const currentIndex = mathMax(this.currentTab, 0)\n const $tab = this.tabs\n .slice(0, currentIndex)\n .reverse()\n .find(notDisabled)\n if (this.activateTab($tab) && focus) {\n this.focusButton($tab)\n this.emitTabClick($tab, focus)\n }\n },\n // Move to next non-disabled tab\n nextTab(focus) {\n const currentIndex = mathMax(this.currentTab, -1)\n const $tab = this.tabs.slice(currentIndex + 1).find(notDisabled)\n if (this.activateTab($tab) && focus) {\n this.focusButton($tab)\n this.emitTabClick($tab, focus)\n }\n },\n // Move to last non-disabled tab\n lastTab(focus) {\n const $tab = this.tabs\n .slice()\n .reverse()\n .find(notDisabled)\n if (this.activateTab($tab) && focus) {\n this.focusButton($tab)\n this.emitTabClick($tab, focus)\n }\n }\n },\n render(h) {\n const {\n align,\n card,\n end,\n fill,\n firstTab,\n justified,\n lastTab,\n nextTab,\n noKeyNav,\n noNavStyle,\n pills,\n previousTab,\n small,\n tabs: $tabs,\n vertical\n } = this\n\n // Currently active tab\n const $activeTab = $tabs.find($tab => $tab.localActive && !$tab.disabled)\n\n // Tab button to allow focusing when no active tab found (keynav only)\n const $fallbackTab = $tabs.find($tab => !$tab.disabled)\n\n // For each `<b-tab>` found create the tab buttons\n const $buttons = $tabs.map(($tab, index) => {\n const { safeId } = $tab\n\n // Ensure at least one tab button is focusable when keynav enabled (if possible)\n let tabIndex = null\n if (!noKeyNav) {\n // Buttons are not in tab index unless active, or a fallback tab\n tabIndex = -1\n if ($tab === $activeTab || (!$activeTab && $tab === $fallbackTab)) {\n // Place tab button in tab sequence\n tabIndex = null\n }\n }\n\n return h(BVTabButton, {\n props: {\n controls: safeId ? safeId() : null,\n id: $tab.controlledBy || (safeId ? safeId(`_BV_tab_button_`) : null),\n noKeyNav,\n posInSet: index + 1,\n setSize: $tabs.length,\n tab: $tab,\n tabIndex\n },\n on: {\n [EVENT_NAME_CLICK]: event => {\n this.clickTab($tab, event)\n },\n [EVENT_NAME_FIRST]: firstTab,\n [EVENT_NAME_PREV]: previousTab,\n [EVENT_NAME_NEXT]: nextTab,\n [EVENT_NAME_LAST]: lastTab\n },\n key: $tab[COMPONENT_UID_KEY] || index,\n ref: 'buttons',\n // Needed to make `this.$refs.buttons` an array\n refInFor: true\n })\n })\n\n let $nav = h(\n BNav,\n {\n class: this.localNavClass,\n attrs: {\n role: 'tablist',\n id: this.safeId('_BV_tab_controls_')\n },\n props: {\n fill,\n justified,\n align,\n tabs: !noNavStyle && !pills,\n pills: !noNavStyle && pills,\n vertical,\n small,\n cardHeader: card && !vertical\n },\n ref: 'nav'\n },\n [\n this.normalizeSlot(SLOT_NAME_TABS_START) || h(),\n $buttons,\n this.normalizeSlot(SLOT_NAME_TABS_END) || h()\n ]\n )\n\n $nav = h(\n 'div',\n {\n class: [\n {\n 'card-header': card && !vertical && !end,\n 'card-footer': card && !vertical && end,\n 'col-auto': vertical\n },\n this.navWrapperClass\n ],\n key: 'bv-tabs-nav'\n },\n [$nav]\n )\n\n const $children = this.normalizeSlot() || []\n\n let $empty = h()\n if ($children.length === 0) {\n $empty = h(\n 'div',\n {\n class: ['tab-pane', 'active', { 'card-body': card }],\n key: 'bv-empty-tab'\n },\n this.normalizeSlot(SLOT_NAME_EMPTY)\n )\n }\n\n const $content = h(\n 'div',\n {\n staticClass: 'tab-content',\n class: [{ col: vertical }, this.contentClass],\n attrs: { id: this.safeId('_BV_tab_container_') },\n key: 'bv-content',\n ref: 'content'\n },\n [$children, $empty]\n )\n\n // Render final output\n return h(\n this.tag,\n {\n staticClass: 'tabs',\n class: {\n row: vertical,\n 'no-gutters': vertical && card\n },\n attrs: { id: this.safeId() }\n },\n [end ? $content : h(), $nav, end ? h() : $content]\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_TAB } from '../../constants/components'\nimport { MODEL_EVENT_NAME_PREFIX } from '../../constants/events'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_OBJECT,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_TITLE } from '../../constants/slots'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BVTransition } from '../transition/bv-transition'\n\n// --- Constants ---\n\nconst MODEL_PROP_NAME_ACTIVE = 'active'\nconst MODEL_EVENT_NAME_ACTIVE = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_ACTIVE\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n [MODEL_PROP_NAME_ACTIVE]: makeProp(PROP_TYPE_BOOLEAN, false),\n buttonId: makeProp(PROP_TYPE_STRING),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n noBody: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n title: makeProp(PROP_TYPE_STRING),\n // Sniffed by `<b-tabs>` and added to nav `li.nav-item`\n titleItemClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n titleLinkAttributes: makeProp(PROP_TYPE_OBJECT),\n // Sniffed by `<b-tabs>` and added to nav `a.nav-link`\n titleLinkClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n }),\n NAME_TAB\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BTab = /*#__PURE__*/ Vue.extend({\n name: NAME_TAB,\n mixins: [idMixin, normalizeSlotMixin],\n inject: {\n bvTabs: {\n default: () => ({})\n }\n },\n props,\n data() {\n return {\n localActive: this[MODEL_PROP_NAME_ACTIVE] && !this.disabled\n }\n },\n computed: {\n // For parent sniffing of child\n _isTab() {\n return true\n },\n tabClasses() {\n const { localActive: active, disabled } = this\n\n return [\n {\n active,\n disabled,\n 'card-body': this.bvTabs.card && !this.noBody\n },\n // Apply <b-tabs> `activeTabClass` styles when this tab is active\n active ? this.bvTabs.activeTabClass : null\n ]\n },\n controlledBy() {\n return this.buttonId || this.safeId('__BV_tab_button__')\n },\n computedNoFade() {\n return !(this.bvTabs.fade || false)\n },\n computedLazy() {\n return this.bvTabs.lazy || this.lazy\n }\n },\n watch: {\n [MODEL_PROP_NAME_ACTIVE](newValue, oldValue) {\n if (newValue !== oldValue) {\n if (newValue) {\n // If activated post mount\n this.activate()\n } else {\n /* istanbul ignore next */\n if (!this.deactivate()) {\n // Tab couldn't be deactivated, so we reset the synced active prop\n // Deactivation will fail if no other tabs to activate\n this.$emit(MODEL_EVENT_NAME_ACTIVE, this.localActive)\n }\n }\n }\n },\n disabled(newValue, oldValue) {\n if (newValue !== oldValue) {\n const { firstTab } = this.bvTabs\n if (newValue && this.localActive && firstTab) {\n this.localActive = false\n firstTab()\n }\n }\n },\n localActive(newValue) {\n // Make `active` prop work with `.sync` modifier\n this.$emit(MODEL_EVENT_NAME_ACTIVE, newValue)\n }\n },\n mounted() {\n // Inform `<b-tabs>` of our presence\n this.registerTab()\n },\n updated() {\n // Force the tab button content to update (since slots are not reactive)\n // Only done if we have a title slot, as the title prop is reactive\n const { updateButton } = this.bvTabs\n if (updateButton && this.hasNormalizedSlot(SLOT_NAME_TITLE)) {\n updateButton(this)\n }\n },\n beforeDestroy() {\n // Inform `<b-tabs>` of our departure\n this.unregisterTab()\n },\n methods: {\n // Private methods\n registerTab() {\n // Inform `<b-tabs>` of our presence\n const { registerTab } = this.bvTabs\n if (registerTab) {\n registerTab(this)\n }\n },\n unregisterTab() {\n // Inform `<b-tabs>` of our departure\n const { unregisterTab } = this.bvTabs\n if (unregisterTab) {\n unregisterTab(this)\n }\n },\n // Public methods\n activate() {\n // Not inside a `<b-tabs>` component or tab is disabled\n const { activateTab } = this.bvTabs\n return activateTab && !this.disabled ? activateTab(this) : false\n },\n deactivate() {\n // Not inside a `<b-tabs>` component or not active to begin with\n const { deactivateTab } = this.bvTabs\n return deactivateTab && this.localActive ? deactivateTab(this) : false\n }\n },\n render(h) {\n const { localActive } = this\n\n const $content = h(\n this.tag,\n {\n staticClass: 'tab-pane',\n class: this.tabClasses,\n directives: [{ name: 'show', value: localActive }],\n attrs: {\n role: 'tabpanel',\n id: this.safeId(),\n 'aria-hidden': localActive ? 'false' : 'true',\n 'aria-labelledby': this.controlledBy || null\n },\n ref: 'panel'\n },\n // Render content lazily if requested\n [localActive || !this.computedLazy ? this.normalizeSlot() : h()]\n )\n\n return h(\n BVTransition,\n {\n props: {\n mode: 'out-in',\n noFade: this.computedNoFade\n }\n },\n [$content]\n )\n }\n})\n","import { BTabs } from './tabs'\nimport { BTab } from './tab'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst TabsPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BTabs,\n BTab\n }\n})\n\nexport { TabsPlugin, BTabs, BTab }\n","import { BTime } from './time'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst TimePlugin = /*#__PURE__*/ pluginFactory({\n components: { BTime }\n})\n\nexport { TimePlugin, BTime }\n","\n /*! \n * portal-vue © Thorsten Lünborg, 2019 \n * \n * Version: 2.1.7\n * \n * LICENCE: MIT \n * \n * https://github.com/linusborg/portal-vue\n * \n */\n\nimport Vue from 'vue';\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n}\n\nfunction _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\nvar inBrowser = typeof window !== 'undefined';\nfunction freeze(item) {\n if (Array.isArray(item) || _typeof(item) === 'object') {\n return Object.freeze(item);\n }\n\n return item;\n}\nfunction combinePassengers(transports) {\n var slotProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return transports.reduce(function (passengers, transport) {\n var temp = transport.passengers[0];\n var newPassengers = typeof temp === 'function' ? temp(slotProps) : transport.passengers;\n return passengers.concat(newPassengers);\n }, []);\n}\nfunction stableSort(array, compareFn) {\n return array.map(function (v, idx) {\n return [idx, v];\n }).sort(function (a, b) {\n return compareFn(a[1], b[1]) || a[0] - b[0];\n }).map(function (c) {\n return c[1];\n });\n}\nfunction pick(obj, keys) {\n return keys.reduce(function (acc, key) {\n if (obj.hasOwnProperty(key)) {\n acc[key] = obj[key];\n }\n\n return acc;\n }, {});\n}\n\nvar transports = {};\nvar targets = {};\nvar sources = {};\nvar Wormhole = Vue.extend({\n data: function data() {\n return {\n transports: transports,\n targets: targets,\n sources: sources,\n trackInstances: inBrowser\n };\n },\n methods: {\n open: function open(transport) {\n if (!inBrowser) return;\n var to = transport.to,\n from = transport.from,\n passengers = transport.passengers,\n _transport$order = transport.order,\n order = _transport$order === void 0 ? Infinity : _transport$order;\n if (!to || !from || !passengers) return;\n var newTransport = {\n to: to,\n from: from,\n passengers: freeze(passengers),\n order: order\n };\n var keys = Object.keys(this.transports);\n\n if (keys.indexOf(to) === -1) {\n Vue.set(this.transports, to, []);\n }\n\n var currentIndex = this.$_getTransportIndex(newTransport); // Copying the array here so that the PortalTarget change event will actually contain two distinct arrays\n\n var newTransports = this.transports[to].slice(0);\n\n if (currentIndex === -1) {\n newTransports.push(newTransport);\n } else {\n newTransports[currentIndex] = newTransport;\n }\n\n this.transports[to] = stableSort(newTransports, function (a, b) {\n return a.order - b.order;\n });\n },\n close: function close(transport) {\n var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var to = transport.to,\n from = transport.from;\n if (!to || !from && force === false) return;\n\n if (!this.transports[to]) {\n return;\n }\n\n if (force) {\n this.transports[to] = [];\n } else {\n var index = this.$_getTransportIndex(transport);\n\n if (index >= 0) {\n // Copying the array here so that the PortalTarget change event will actually contain two distinct arrays\n var newTransports = this.transports[to].slice(0);\n newTransports.splice(index, 1);\n this.transports[to] = newTransports;\n }\n }\n },\n registerTarget: function registerTarget(target, vm, force) {\n if (!inBrowser) return;\n\n if (this.trackInstances && !force && this.targets[target]) {\n console.warn(\"[portal-vue]: Target \".concat(target, \" already exists\"));\n }\n\n this.$set(this.targets, target, Object.freeze([vm]));\n },\n unregisterTarget: function unregisterTarget(target) {\n this.$delete(this.targets, target);\n },\n registerSource: function registerSource(source, vm, force) {\n if (!inBrowser) return;\n\n if (this.trackInstances && !force && this.sources[source]) {\n console.warn(\"[portal-vue]: source \".concat(source, \" already exists\"));\n }\n\n this.$set(this.sources, source, Object.freeze([vm]));\n },\n unregisterSource: function unregisterSource(source) {\n this.$delete(this.sources, source);\n },\n hasTarget: function hasTarget(to) {\n return !!(this.targets[to] && this.targets[to][0]);\n },\n hasSource: function hasSource(to) {\n return !!(this.sources[to] && this.sources[to][0]);\n },\n hasContentFor: function hasContentFor(to) {\n return !!this.transports[to] && !!this.transports[to].length;\n },\n // Internal\n $_getTransportIndex: function $_getTransportIndex(_ref) {\n var to = _ref.to,\n from = _ref.from;\n\n for (var i in this.transports[to]) {\n if (this.transports[to][i].from === from) {\n return +i;\n }\n }\n\n return -1;\n }\n }\n});\nvar wormhole = new Wormhole(transports);\n\nvar _id = 1;\nvar Portal = Vue.extend({\n name: 'portal',\n props: {\n disabled: {\n type: Boolean\n },\n name: {\n type: String,\n default: function _default() {\n return String(_id++);\n }\n },\n order: {\n type: Number,\n default: 0\n },\n slim: {\n type: Boolean\n },\n slotProps: {\n type: Object,\n default: function _default() {\n return {};\n }\n },\n tag: {\n type: String,\n default: 'DIV'\n },\n to: {\n type: String,\n default: function _default() {\n return String(Math.round(Math.random() * 10000000));\n }\n }\n },\n created: function created() {\n var _this = this;\n\n this.$nextTick(function () {\n wormhole.registerSource(_this.name, _this);\n });\n },\n mounted: function mounted() {\n if (!this.disabled) {\n this.sendUpdate();\n }\n },\n updated: function updated() {\n if (this.disabled) {\n this.clear();\n } else {\n this.sendUpdate();\n }\n },\n beforeDestroy: function beforeDestroy() {\n wormhole.unregisterSource(this.name);\n this.clear();\n },\n watch: {\n to: function to(newValue, oldValue) {\n oldValue && oldValue !== newValue && this.clear(oldValue);\n this.sendUpdate();\n }\n },\n methods: {\n clear: function clear(target) {\n var closer = {\n from: this.name,\n to: target || this.to\n };\n wormhole.close(closer);\n },\n normalizeSlots: function normalizeSlots() {\n return this.$scopedSlots.default ? [this.$scopedSlots.default] : this.$slots.default;\n },\n normalizeOwnChildren: function normalizeOwnChildren(children) {\n return typeof children === 'function' ? children(this.slotProps) : children;\n },\n sendUpdate: function sendUpdate() {\n var slotContent = this.normalizeSlots();\n\n if (slotContent) {\n var transport = {\n from: this.name,\n to: this.to,\n passengers: _toConsumableArray(slotContent),\n order: this.order\n };\n wormhole.open(transport);\n } else {\n this.clear();\n }\n }\n },\n render: function render(h) {\n var children = this.$slots.default || this.$scopedSlots.default || [];\n var Tag = this.tag;\n\n if (children && this.disabled) {\n return children.length <= 1 && this.slim ? this.normalizeOwnChildren(children)[0] : h(Tag, [this.normalizeOwnChildren(children)]);\n } else {\n return this.slim ? h() : h(Tag, {\n class: {\n 'v-portal': true\n },\n style: {\n display: 'none'\n },\n key: 'v-portal-placeholder'\n });\n }\n }\n});\n\nvar PortalTarget = Vue.extend({\n name: 'portalTarget',\n props: {\n multiple: {\n type: Boolean,\n default: false\n },\n name: {\n type: String,\n required: true\n },\n slim: {\n type: Boolean,\n default: false\n },\n slotProps: {\n type: Object,\n default: function _default() {\n return {};\n }\n },\n tag: {\n type: String,\n default: 'div'\n },\n transition: {\n type: [String, Object, Function]\n }\n },\n data: function data() {\n return {\n transports: wormhole.transports,\n firstRender: true\n };\n },\n created: function created() {\n var _this = this;\n\n this.$nextTick(function () {\n wormhole.registerTarget(_this.name, _this);\n });\n },\n watch: {\n ownTransports: function ownTransports() {\n this.$emit('change', this.children().length > 0);\n },\n name: function name(newVal, oldVal) {\n /**\r\n * TODO\r\n * This should warn as well ...\r\n */\n wormhole.unregisterTarget(oldVal);\n wormhole.registerTarget(newVal, this);\n }\n },\n mounted: function mounted() {\n var _this2 = this;\n\n if (this.transition) {\n this.$nextTick(function () {\n // only when we have a transition, because it causes a re-render\n _this2.firstRender = false;\n });\n }\n },\n beforeDestroy: function beforeDestroy() {\n wormhole.unregisterTarget(this.name);\n },\n computed: {\n ownTransports: function ownTransports() {\n var transports = this.transports[this.name] || [];\n\n if (this.multiple) {\n return transports;\n }\n\n return transports.length === 0 ? [] : [transports[transports.length - 1]];\n },\n passengers: function passengers() {\n return combinePassengers(this.ownTransports, this.slotProps);\n }\n },\n methods: {\n // can't be a computed prop because it has to \"react\" to $slot changes.\n children: function children() {\n return this.passengers.length !== 0 ? this.passengers : this.$scopedSlots.default ? this.$scopedSlots.default(this.slotProps) : this.$slots.default || [];\n },\n // can't be a computed prop because it has to \"react\" to this.children().\n noWrapper: function noWrapper() {\n var noWrapper = this.slim && !this.transition;\n\n if (noWrapper && this.children().length > 1) {\n console.warn('[portal-vue]: PortalTarget with `slim` option received more than one child element.');\n }\n\n return noWrapper;\n }\n },\n render: function render(h) {\n var noWrapper = this.noWrapper();\n var children = this.children();\n var Tag = this.transition || this.tag;\n return noWrapper ? children[0] : this.slim && !Tag ? h() : h(Tag, {\n props: {\n // if we have a transition component, pass the tag if it exists\n tag: this.transition && this.tag ? this.tag : undefined\n },\n class: {\n 'vue-portal-target': true\n }\n }, children);\n }\n});\n\nvar _id$1 = 0;\nvar portalProps = ['disabled', 'name', 'order', 'slim', 'slotProps', 'tag', 'to'];\nvar targetProps = ['multiple', 'transition'];\nvar MountingPortal = Vue.extend({\n name: 'MountingPortal',\n inheritAttrs: false,\n props: {\n append: {\n type: [Boolean, String]\n },\n bail: {\n type: Boolean\n },\n mountTo: {\n type: String,\n required: true\n },\n // Portal\n disabled: {\n type: Boolean\n },\n // name for the portal\n name: {\n type: String,\n default: function _default() {\n return 'mounted_' + String(_id$1++);\n }\n },\n order: {\n type: Number,\n default: 0\n },\n slim: {\n type: Boolean\n },\n slotProps: {\n type: Object,\n default: function _default() {\n return {};\n }\n },\n tag: {\n type: String,\n default: 'DIV'\n },\n // name for the target\n to: {\n type: String,\n default: function _default() {\n return String(Math.round(Math.random() * 10000000));\n }\n },\n // Target\n multiple: {\n type: Boolean,\n default: false\n },\n targetSlim: {\n type: Boolean\n },\n targetSlotProps: {\n type: Object,\n default: function _default() {\n return {};\n }\n },\n targetTag: {\n type: String,\n default: 'div'\n },\n transition: {\n type: [String, Object, Function]\n }\n },\n created: function created() {\n if (typeof document === 'undefined') return;\n var el = document.querySelector(this.mountTo);\n\n if (!el) {\n console.error(\"[portal-vue]: Mount Point '\".concat(this.mountTo, \"' not found in document\"));\n return;\n }\n\n var props = this.$props; // Target already exists\n\n if (wormhole.targets[props.name]) {\n if (props.bail) {\n console.warn(\"[portal-vue]: Target \".concat(props.name, \" is already mounted.\\n Aborting because 'bail: true' is set\"));\n } else {\n this.portalTarget = wormhole.targets[props.name];\n }\n\n return;\n }\n\n var append = props.append;\n\n if (append) {\n var type = typeof append === 'string' ? append : 'DIV';\n var mountEl = document.createElement(type);\n el.appendChild(mountEl);\n el = mountEl;\n } // get props for target from $props\n // we have to rename a few of them\n\n\n var _props = pick(this.$props, targetProps);\n\n _props.slim = this.targetSlim;\n _props.tag = this.targetTag;\n _props.slotProps = this.targetSlotProps;\n _props.name = this.to;\n this.portalTarget = new PortalTarget({\n el: el,\n parent: this.$parent || this,\n propsData: _props\n });\n },\n beforeDestroy: function beforeDestroy() {\n var target = this.portalTarget;\n\n if (this.append) {\n var el = target.$el;\n el.parentNode.removeChild(el);\n }\n\n target.$destroy();\n },\n render: function render(h) {\n if (!this.portalTarget) {\n console.warn(\"[portal-vue] Target wasn't mounted\");\n return h();\n } // if there's no \"manual\" scoped slot, so we create a <Portal> ourselves\n\n\n if (!this.$scopedSlots.manual) {\n var props = pick(this.$props, portalProps);\n return h(Portal, {\n props: props,\n attrs: this.$attrs,\n on: this.$listeners,\n scopedSlots: this.$scopedSlots\n }, this.$slots.default);\n } // else, we render the scoped slot\n\n\n var content = this.$scopedSlots.manual({\n to: this.to\n }); // if user used <template> for the scoped slot\n // content will be an array\n\n if (Array.isArray(content)) {\n content = content[0];\n }\n\n if (!content) return h();\n return content;\n }\n});\n\nfunction install(Vue$$1) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n Vue$$1.component(options.portalName || 'Portal', Portal);\n Vue$$1.component(options.portalTargetName || 'PortalTarget', PortalTarget);\n Vue$$1.component(options.MountingPortalName || 'MountingPortal', MountingPortal);\n}\n\nvar index = {\n install: install\n};\n\nexport default index;\nexport { Portal, PortalTarget, MountingPortal, wormhole as Wormhole };\n//# sourceMappingURL=portal-vue.esm.js.map\n","import { PortalTarget, Wormhole } from 'portal-vue'\nimport { Vue } from '../../vue'\nimport { NAME_TOASTER } from '../../constants/components'\nimport { EVENT_NAME_DESTROYED } from '../../constants/events'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { removeClass, requestAF } from '../../utils/dom'\nimport { getRootEventName } from '../../utils/events'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { warn } from '../../utils/warn'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Helper components ---\n\n// @vue/component\nexport const DefaultTransition = /*#__PURE__*/ Vue.extend({\n mixins: [normalizeSlotMixin],\n data() {\n return {\n // Transition classes base name\n name: 'b-toaster'\n }\n },\n methods: {\n onAfterEnter(el) {\n // Work around a Vue.js bug where `*-enter-to` class is not removed\n // See: https://github.com/vuejs/vue/pull/7901\n // The `*-move` class is also stuck on elements that moved,\n // but there are no JavaScript hooks to handle after move\n // See: https://github.com/vuejs/vue/pull/7906\n requestAF(() => {\n removeClass(el, `${this.name}-enter-to`)\n })\n }\n },\n render(h) {\n return h(\n 'transition-group',\n {\n props: { tag: 'div', name: this.name },\n on: { afterEnter: this.onAfterEnter }\n },\n this.normalizeSlot()\n )\n }\n})\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n // Allowed: 'true' or 'false' or `null`\n ariaAtomic: makeProp(PROP_TYPE_STRING),\n ariaLive: makeProp(PROP_TYPE_STRING),\n name: makeProp(PROP_TYPE_STRING, undefined, true), // Required\n // Aria role\n role: makeProp(PROP_TYPE_STRING)\n },\n NAME_TOASTER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BToaster = /*#__PURE__*/ Vue.extend({\n name: NAME_TOASTER,\n mixins: [listenOnRootMixin],\n props,\n data() {\n return {\n // We don't render on SSR or if a an existing target found\n doRender: false,\n dead: false,\n // Toaster names cannot change once created\n staticName: this.name\n }\n },\n beforeMount() {\n const { name } = this\n this.staticName = name\n\n /* istanbul ignore if */\n if (Wormhole.hasTarget(name)) {\n warn(`A \"<portal-target>\" with name \"${name}\" already exists in the document.`, NAME_TOASTER)\n this.dead = true\n } else {\n this.doRender = true\n }\n },\n 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 if (this.doRender) {\n this.emitOnRoot(getRootEventName(NAME_TOASTER, EVENT_NAME_DESTROYED), this.name)\n }\n },\n destroyed() {\n // Remove from DOM if needed\n const { $el } = this\n /* istanbul ignore next: difficult to test */\n if ($el && $el.parentNode) {\n $el.parentNode.removeChild($el)\n }\n },\n render(h) {\n let $toaster = h('div', { class: ['d-none', { 'b-dead-toaster': this.dead }] })\n if (this.doRender) {\n const $target = h(PortalTarget, {\n staticClass: 'b-toaster-slot',\n props: {\n name: this.staticName,\n multiple: true,\n tag: 'div',\n slim: false,\n // transition: this.transition || DefaultTransition\n transition: DefaultTransition\n }\n })\n\n $toaster = h(\n 'div',\n {\n staticClass: 'b-toaster',\n class: [this.staticName],\n attrs: {\n id: this.staticName,\n // Fallback to null to make sure attribute doesn't exist\n role: this.role || null,\n 'aria-live': this.ariaLive,\n 'aria-atomic': this.ariaAtomic\n }\n },\n [$target]\n )\n }\n\n return $toaster\n }\n})\n","import { Portal, Wormhole } from 'portal-vue'\nimport { COMPONENT_UID_KEY, Vue } from '../../vue'\nimport { NAME_TOAST, NAME_TOASTER } from '../../constants/components'\nimport {\n EVENT_NAME_CHANGE,\n EVENT_NAME_DESTROYED,\n EVENT_NAME_HIDDEN,\n EVENT_NAME_HIDE,\n EVENT_NAME_SHOW,\n EVENT_NAME_SHOWN,\n EVENT_OPTIONS_NO_CAPTURE\n} from '../../constants/events'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_TOAST_TITLE } from '../../constants/slots'\nimport { BvEvent } from '../../utils/bv-event.class'\nimport { requestAF } from '../../utils/dom'\nimport { getRootActionEventName, getRootEventName, eventOnOff } from '../../utils/events'\nimport { mathMax } from '../../utils/math'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { pick, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { scopedStyleMixin } from '../../mixins/scoped-style'\nimport { BButtonClose } from '../button/button-close'\nimport { BLink, props as BLinkProps } from '../link/link'\nimport { BVTransition } from '../transition/bv-transition'\nimport { BToaster } from './toaster'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('visible', {\n type: PROP_TYPE_BOOLEAN,\n defaultValue: false,\n event: EVENT_NAME_CHANGE\n})\n\nconst MIN_DURATION = 1000\n\n// --- Props ---\n\nconst linkProps = pick(BLinkProps, ['href', 'to'])\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\n ...linkProps,\n appendToast: makeProp(PROP_TYPE_BOOLEAN, false),\n autoHideDelay: makeProp(PROP_TYPE_NUMBER_STRING, 5000),\n bodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n headerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n headerTag: makeProp(PROP_TYPE_STRING, 'header'),\n // Switches role to 'status' and aria-live to 'polite'\n isStatus: makeProp(PROP_TYPE_BOOLEAN, false),\n noAutoHide: makeProp(PROP_TYPE_BOOLEAN, false),\n noCloseButton: makeProp(PROP_TYPE_BOOLEAN, false),\n noFade: makeProp(PROP_TYPE_BOOLEAN, false),\n noHoverPause: makeProp(PROP_TYPE_BOOLEAN, false),\n solid: makeProp(PROP_TYPE_BOOLEAN, false),\n // Render the toast in place, rather than in a portal-target\n static: makeProp(PROP_TYPE_BOOLEAN, false),\n title: makeProp(PROP_TYPE_STRING),\n toastClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n toaster: makeProp(PROP_TYPE_STRING, 'b-toaster-top-right'),\n variant: makeProp(PROP_TYPE_STRING)\n }),\n NAME_TOAST\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BToast = /*#__PURE__*/ Vue.extend({\n name: NAME_TOAST,\n mixins: [\n attrsMixin,\n idMixin,\n modelMixin,\n listenOnRootMixin,\n normalizeSlotMixin,\n scopedStyleMixin\n ],\n inheritAttrs: false,\n props,\n data() {\n return {\n isMounted: false,\n doRender: false,\n localShow: false,\n isTransitioning: false,\n isHiding: false,\n order: 0,\n dismissStarted: 0,\n resumeDismiss: 0\n }\n },\n computed: {\n toastClasses() {\n const { appendToast, variant } = this\n\n return {\n 'b-toast-solid': this.solid,\n 'b-toast-append': appendToast,\n 'b-toast-prepend': !appendToast,\n [`b-toast-${variant}`]: variant\n }\n },\n slotScope() {\n const { hide } = this\n return { hide }\n },\n computedDuration() {\n // Minimum supported duration is 1 second\n return mathMax(toInteger(this.autoHideDelay, 0), MIN_DURATION)\n },\n computedToaster() {\n return String(this.toaster)\n },\n transitionHandlers() {\n return {\n beforeEnter: this.onBeforeEnter,\n afterEnter: this.onAfterEnter,\n beforeLeave: this.onBeforeLeave,\n afterLeave: this.onAfterLeave\n }\n },\n computedAttrs() {\n return {\n ...this.bvAttrs,\n id: this.safeId(),\n tabindex: '0'\n }\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue) {\n this[newValue ? 'show' : 'hide']()\n },\n localShow(newValue) {\n if (newValue !== this[MODEL_PROP_NAME]) {\n this.$emit(MODEL_EVENT_NAME, newValue)\n }\n },\n /* istanbul ignore next */\n toaster() {\n // If toaster target changed, make sure toaster exists\n this.$nextTick(this.ensureToaster)\n },\n /* istanbul ignore next */\n static(newValue) {\n // If static changes to true, and the toast is showing,\n // ensure the toaster target exists\n if (newValue && this.localShow) {\n this.ensureToaster()\n }\n }\n },\n created() {\n // Create private non-reactive props\n this.$_dismissTimer = null\n },\n mounted() {\n this.isMounted = true\n this.$nextTick(() => {\n if (this[MODEL_PROP_NAME]) {\n requestAF(() => {\n this.show()\n })\n }\n })\n // Listen for global $root show events\n this.listenOnRoot(getRootActionEventName(NAME_TOAST, EVENT_NAME_SHOW), id => {\n if (id === this.safeId()) {\n this.show()\n }\n })\n // Listen for global $root hide events\n this.listenOnRoot(getRootActionEventName(NAME_TOAST, EVENT_NAME_HIDE), id => {\n if (!id || id === this.safeId()) {\n this.hide()\n }\n })\n // Make sure we hide when toaster is destroyed\n /* istanbul ignore next: difficult to test */\n this.listenOnRoot(getRootEventName(NAME_TOASTER, EVENT_NAME_DESTROYED), toaster => {\n /* istanbul ignore next */\n if (toaster === this.computedToaster) {\n this.hide()\n }\n })\n },\n beforeDestroy() {\n this.clearDismissTimer()\n },\n methods: {\n show() {\n if (!this.localShow) {\n this.ensureToaster()\n const showEvent = this.buildEvent(EVENT_NAME_SHOW)\n this.emitEvent(showEvent)\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 hideEvent = this.buildEvent(EVENT_NAME_HIDE)\n this.emitEvent(hideEvent)\n this.setHoverHandler(false)\n this.dismissStarted = this.resumeDismiss = 0\n this.clearDismissTimer()\n this.isHiding = true\n requestAF(() => {\n this.localShow = false\n })\n }\n },\n buildEvent(type, options = {}) {\n return new BvEvent(type, {\n cancelable: false,\n target: this.$el || null,\n relatedTarget: null,\n ...options,\n vueTarget: this,\n componentId: this.safeId()\n })\n },\n emitEvent(bvEvent) {\n const { type } = bvEvent\n this.emitOnRoot(getRootEventName(NAME_TOAST, type), bvEvent)\n this.$emit(type, bvEvent)\n },\n ensureToaster() {\n if (this.static) {\n return\n }\n\n const { computedToaster } = this\n if (!Wormhole.hasTarget(computedToaster)) {\n const div = document.createElement('div')\n document.body.appendChild(div)\n\n const toaster = new BToaster({\n parent: this.$root,\n propsData: { name: computedToaster }\n })\n\n toaster.$mount(div)\n }\n },\n startDismissTimer() {\n this.clearDismissTimer()\n if (!this.noAutoHide) {\n this.$_dismissTimer = setTimeout(this.hide, this.resumeDismiss || this.computedDuration)\n this.dismissStarted = Date.now()\n this.resumeDismiss = 0\n }\n },\n clearDismissTimer() {\n clearTimeout(this.$_dismissTimer)\n this.$_dismissTimer = null\n },\n setHoverHandler(on) {\n const el = this.$refs['b-toast']\n eventOnOff(on, el, 'mouseenter', this.onPause, EVENT_OPTIONS_NO_CAPTURE)\n eventOnOff(on, el, 'mouseleave', this.onUnPause, EVENT_OPTIONS_NO_CAPTURE)\n },\n onPause() {\n // Determine time remaining, and then pause timer\n if (this.noAutoHide || this.noHoverPause || !this.$_dismissTimer || this.resumeDismiss) {\n return\n }\n const passed = Date.now() - this.dismissStarted\n if (passed > 0) {\n this.clearDismissTimer()\n this.resumeDismiss = mathMax(this.computedDuration - passed, MIN_DURATION)\n }\n },\n onUnPause() {\n // Restart timer with max of time remaining or 1 second\n if (this.noAutoHide || this.noHoverPause || !this.resumeDismiss) {\n this.resumeDismiss = this.dismissStarted = 0\n return\n }\n this.startDismissTimer()\n },\n onLinkClick() {\n // We delay the close to allow time for the\n // browser to process the link click\n this.$nextTick(() => {\n requestAF(() => {\n this.hide()\n })\n })\n },\n onBeforeEnter() {\n this.isTransitioning = true\n },\n onAfterEnter() {\n this.isTransitioning = false\n const hiddenEvent = this.buildEvent(EVENT_NAME_SHOWN)\n this.emitEvent(hiddenEvent)\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 hiddenEvent = this.buildEvent(EVENT_NAME_HIDDEN)\n this.emitEvent(hiddenEvent)\n this.doRender = false\n },\n // Render helper for generating the toast\n makeToast(h) {\n const { title, slotScope } = this\n const link = isLink(this)\n const $headerContent = []\n\n const $title = this.normalizeSlot(SLOT_NAME_TOAST_TITLE, slotScope)\n if ($title) {\n $headerContent.push($title)\n } else if (title) {\n $headerContent.push(h('strong', { staticClass: 'mr-2' }, title))\n }\n\n if (!this.noCloseButton) {\n $headerContent.push(\n h(BButtonClose, {\n staticClass: 'ml-auto mb-1',\n on: {\n click: () => {\n this.hide()\n }\n }\n })\n )\n }\n\n let $header = h()\n if ($headerContent.length > 0) {\n $header = h(\n this.headerTag,\n {\n staticClass: 'toast-header',\n class: this.headerClass\n },\n $headerContent\n )\n }\n\n const $body = h(\n link ? BLink : 'div',\n {\n staticClass: 'toast-body',\n class: this.bodyClass,\n props: link ? pluckProps(linkProps, this) : {},\n on: link ? { click: this.onLinkClick } : {}\n },\n this.normalizeSlot(SLOT_NAME_DEFAULT, slotScope)\n )\n\n return h(\n 'div',\n {\n staticClass: 'toast',\n class: this.toastClass,\n attrs: this.computedAttrs,\n key: `toast-${this[COMPONENT_UID_KEY]}`,\n ref: 'toast'\n },\n [$header, $body]\n )\n }\n },\n render(h) {\n if (!this.doRender || !this.isMounted) {\n return h()\n }\n\n const { order, static: isStatic, isHiding, isStatus } = this\n const name = `b-toast-${this[COMPONENT_UID_KEY]}`\n\n const $toast = h(\n 'div',\n {\n staticClass: 'b-toast',\n class: this.toastClasses,\n attrs: {\n // If scoped styles are applied and the toast is not static,\n // make sure the scoped style data attribute is applied\n ...(isStatic ? {} : this.scopedStyleAttrs),\n id: this.safeId('_toast_outer'),\n role: isHiding ? null : isStatus ? 'status' : 'alert',\n 'aria-live': isHiding ? null : isStatus ? 'polite' : 'assertive',\n 'aria-atomic': isHiding ? null : 'true'\n },\n key: name,\n ref: 'b-toast'\n },\n [\n h(\n BVTransition,\n {\n props: { noFade: this.noFade },\n on: this.transitionHandlers\n },\n [this.localShow ? this.makeToast(h) : h()]\n )\n ]\n )\n\n return h(\n Portal,\n {\n props: {\n name,\n to: this.computedToaster,\n order,\n slim: true,\n disabled: isStatic\n }\n },\n [$toast]\n )\n }\n})\n","/**\n * Plugin for adding `$bvToast` property to all Vue instances\n */\n\nimport { NAME_TOAST, NAME_TOASTER, NAME_TOAST_POP } from '../../../constants/components'\nimport {\n EVENT_NAME_DESTROYED,\n EVENT_NAME_HIDDEN,\n EVENT_NAME_HIDE,\n EVENT_NAME_SHOW,\n HOOK_EVENT_NAME_DESTROYED\n} from '../../../constants/events'\nimport { concat } from '../../../utils/array'\nimport { getComponentConfig } from '../../../utils/config'\nimport { requestAF } from '../../../utils/dom'\nimport { getRootEventName, getRootActionEventName } from '../../../utils/events'\nimport { isUndefined, isString } from '../../../utils/inspect'\nimport {\n assign,\n defineProperties,\n defineProperty,\n hasOwnProperty,\n keys,\n omit,\n readonlyDescriptor\n} from '../../../utils/object'\nimport { pluginFactory } from '../../../utils/plugins'\nimport { warn, warnNotClient } from '../../../utils/warn'\nimport { BToast, props as toastProps } from '../toast'\n\n// --- Constants ---\n\nconst PROP_NAME = '$bvToast'\nconst PROP_NAME_PRIV = '_bv__toast'\n\n// Base toast props that are allowed\n// Some may be ignored or overridden on some message boxes\n// Prop ID is allowed, but really only should be used for testing\n// We need to add it in explicitly as it comes from the `idMixin`\nconst BASE_PROPS = ['id', ...keys(omit(toastProps, ['static', 'visible']))]\n\n// Map prop names to toast slot names\nconst propsToSlots = {\n toastContent: 'default',\n title: 'toast-title'\n}\n\n// --- Helper methods ---\n\n// Method to filter only recognized props that are not undefined\nconst filterOptions = options => {\n return BASE_PROPS.reduce((memo, key) => {\n if (!isUndefined(options[key])) {\n memo[key] = options[key]\n }\n return memo\n }, {})\n}\n\n// Method to install `$bvToast` VM injection\nconst plugin = Vue => {\n // Create a private sub-component constructor that\n // extends BToast and self-destructs after hidden\n // @vue/component\n const BVToastPop = Vue.extend({\n name: NAME_TOAST_POP,\n extends: BToast,\n destroyed() {\n // Make sure we not in document any more\n const { $el } = this\n if ($el && $el.parentNode) {\n $el.parentNode.removeChild($el)\n }\n },\n mounted() {\n // Self destruct handler\n const handleDestroy = () => {\n // Ensure the toast has been force hidden\n this.localShow = false\n this.doRender = false\n this.$nextTick(() => {\n this.$nextTick(() => {\n // In a `requestAF()` to release control back to application\n // and to allow the portal-target time to remove the content\n requestAF(() => {\n this.$destroy()\n })\n })\n })\n }\n // Self destruct if parent destroyed\n this.$parent.$once(HOOK_EVENT_NAME_DESTROYED, handleDestroy)\n // Self destruct after hidden\n this.$once(EVENT_NAME_HIDDEN, handleDestroy)\n // Self destruct when toaster is destroyed\n this.listenOnRoot(getRootEventName(NAME_TOASTER, EVENT_NAME_DESTROYED), toaster => {\n /* istanbul ignore next: hard to test */\n if (toaster === this.toaster) {\n handleDestroy()\n }\n })\n }\n })\n\n // Private method to generate the on-demand toast\n const makeToast = (props, $parent) => {\n if (warnNotClient(PROP_NAME)) {\n /* istanbul ignore next */\n return\n }\n // Create an instance of `BVToastPop` component\n const toast = new BVToastPop({\n // We set parent as the local VM so these toasts can emit events on the\n // app `$root`, and it ensures `BToast` is destroyed when parent is destroyed\n parent: $parent,\n propsData: {\n ...filterOptions(getComponentConfig(NAME_TOAST)),\n // Add in (filtered) user supplied props\n ...omit(props, keys(propsToSlots)),\n // Props that can't be overridden\n static: false,\n visible: true\n }\n })\n // Convert certain props to slots\n keys(propsToSlots).forEach(prop => {\n let value = props[prop]\n if (!isUndefined(value)) {\n // Can be a string, or array of VNodes\n if (prop === 'title' && isString(value)) {\n // Special case for title if it is a string, we wrap in a <strong>\n value = [$parent.$createElement('strong', { class: 'mr-2' }, value)]\n }\n toast.$slots[propsToSlots[prop]] = concat(value)\n }\n })\n // Create a mount point (a DIV) and mount it (which triggers the show)\n const div = document.createElement('div')\n document.body.appendChild(div)\n toast.$mount(div)\n }\n\n // Declare BvToast instance property class\n class BvToast {\n constructor(vm) {\n // Assign the new properties to this instance\n assign(this, { _vm: vm, _root: vm.$root })\n // Set these properties as read-only and non-enumerable\n defineProperties(this, {\n _vm: readonlyDescriptor(),\n _root: readonlyDescriptor()\n })\n }\n\n // --- Public Instance methods ---\n\n // Opens a user defined toast and returns immediately\n toast(content, options = {}) {\n if (!content || warnNotClient(PROP_NAME)) {\n /* istanbul ignore next */\n return\n }\n makeToast({ ...filterOptions(options), toastContent: content }, this._vm)\n }\n\n // shows a `<b-toast>` component with the specified ID\n show(id) {\n if (id) {\n this._root.$emit(getRootActionEventName(NAME_TOAST, EVENT_NAME_SHOW), id)\n }\n }\n\n // Hide a toast with specified ID, or if not ID all toasts\n hide(id = null) {\n this._root.$emit(getRootActionEventName(NAME_TOAST, EVENT_NAME_HIDE), id)\n }\n }\n\n // Add our instance mixin\n Vue.mixin({\n beforeCreate() {\n // Because we need access to `$root` for `$emits`, and VM for parenting,\n // we have to create a fresh instance of `BvToast` for each VM\n this[PROP_NAME_PRIV] = new BvToast(this)\n }\n })\n\n // Define our read-only `$bvToast` instance property\n // Placed in an if just in case in HMR mode\n if (!hasOwnProperty(Vue.prototype, PROP_NAME)) {\n defineProperty(Vue.prototype, PROP_NAME, {\n get() {\n /* istanbul ignore next */\n if (!this || !this[PROP_NAME_PRIV]) {\n warn(`\"${PROP_NAME}\" must be accessed from a Vue instance \"this\" context.`, NAME_TOAST)\n }\n return this[PROP_NAME_PRIV]\n }\n })\n }\n}\n\nexport const BVToastPlugin = /*#__PURE__*/ pluginFactory({\n plugins: { plugin }\n})\n","import { BVToastPlugin } from './helpers/bv-toast'\nimport { BToast } from './toast'\nimport { BToaster } from './toaster'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ToastPlugin = /*#__PURE__*/ pluginFactory({\n components: { BToast, BToaster },\n // $bvToast injection\n plugins: { BVToastPlugin }\n})\n\nexport { ToastPlugin, BToast, BToaster }\n","import { NAME_TOOLTIP } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport { EVENT_NAME_SHOW } from '../../constants/events'\nimport { concat } from '../../utils/array'\nimport { getComponentConfig } from '../../utils/config'\nimport { getScopeId } from '../../utils/get-scope-id'\nimport { identity } from '../../utils/identity'\nimport {\n isFunction,\n isNumber,\n isPlainObject,\n isString,\n isUndefined,\n isUndefinedOrNull\n} from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { toInteger } from '../../utils/number'\nimport { keys } from '../../utils/object'\nimport { BVTooltip } from '../../components/tooltip/helpers/bv-tooltip'\n\n// Key which we use to store tooltip object on element\nconst BV_TOOLTIP = '__BV_Tooltip__'\n\n// Default trigger\nconst DefaultTrigger = 'hover focus'\n\n// Valid event triggers\nconst validTriggers = {\n focus: true,\n hover: true,\n click: true,\n blur: true,\n manual: true\n}\n\n// Directive modifier test regular expressions. Pre-compile for performance\nconst htmlRE = /^html$/i\nconst noninteractiveRE = /^noninteractive$/i\nconst noFadeRE = /^nofade$/i\nconst placementRE = /^(auto|top(left|right)?|bottom(left|right)?|left(top|bottom)?|right(top|bottom)?)$/i\nconst boundaryRE = /^(window|viewport|scrollParent)$/i\nconst delayRE = /^d\\d+$/i\nconst delayShowRE = /^ds\\d+$/i\nconst delayHideRE = /^dh\\d+$/i\nconst offsetRE = /^o-?\\d+$/i\nconst variantRE = /^v-.+$/i\nconst spacesRE = /\\s+/\n\n// Build a Tooltip config based on bindings (if any)\n// Arguments and modifiers take precedence over passed value config object\nconst parseBindings = (bindings, vnode) => /* istanbul ignore next: not easy to test */ {\n // We start out with a basic config\n let config = {\n title: undefined,\n trigger: '', // Default set below if needed\n placement: 'top',\n fallbackPlacement: 'flip',\n container: false, // Default of body\n animation: true,\n offset: 0,\n id: null,\n html: false,\n interactive: true,\n disabled: false,\n delay: getComponentConfig(NAME_TOOLTIP, 'delay', 50),\n boundary: String(getComponentConfig(NAME_TOOLTIP, 'boundary', 'scrollParent')),\n boundaryPadding: toInteger(getComponentConfig(NAME_TOOLTIP, 'boundaryPadding', 5), 0),\n variant: getComponentConfig(NAME_TOOLTIP, 'variant'),\n customClass: getComponentConfig(NAME_TOOLTIP, 'customClass')\n }\n\n // Process `bindings.value`\n if (isString(bindings.value) || isNumber(bindings.value)) {\n // Value is tooltip content (HTML optionally supported)\n config.title = bindings.value\n } else if (isFunction(bindings.value)) {\n // Title generator function\n config.title = bindings.value\n } else if (isPlainObject(bindings.value)) {\n // Value is config object, so merge\n config = { ...config, ...bindings.value }\n }\n\n // If title is not provided, try title attribute\n if (isUndefined(config.title)) {\n // Try attribute\n const data = vnode.data || {}\n config.title = data.attrs && !isUndefinedOrNull(data.attrs.title) ? data.attrs.title : undefined\n }\n\n // Normalize delay\n if (!isPlainObject(config.delay)) {\n config.delay = {\n show: toInteger(config.delay, 0),\n hide: toInteger(config.delay, 0)\n }\n }\n\n // If argument, assume element ID of container element\n if (bindings.arg) {\n // Element ID specified as arg\n // We must prepend '#' to become a CSS selector\n config.container = `#${bindings.arg}`\n }\n\n // Process modifiers\n keys(bindings.modifiers).forEach(mod => {\n if (htmlRE.test(mod)) {\n // Title allows HTML\n config.html = true\n } else if (noninteractiveRE.test(mod)) {\n // Noninteractive\n config.interactive = false\n } else if (noFadeRE.test(mod)) {\n // No animation\n config.animation = false\n } else if (placementRE.test(mod)) {\n // Placement of tooltip\n config.placement = mod\n } else if (boundaryRE.test(mod)) {\n // Boundary of tooltip\n mod = mod === 'scrollparent' ? 'scrollParent' : mod\n config.boundary = mod\n } else if (delayRE.test(mod)) {\n // Delay value\n const delay = toInteger(mod.slice(1), 0)\n config.delay.show = delay\n config.delay.hide = delay\n } else if (delayShowRE.test(mod)) {\n // Delay show value\n config.delay.show = toInteger(mod.slice(2), 0)\n } else if (delayHideRE.test(mod)) {\n // Delay hide value\n config.delay.hide = toInteger(mod.slice(2), 0)\n } else if (offsetRE.test(mod)) {\n // Offset value, negative allowed\n config.offset = toInteger(mod.slice(1), 0)\n } else if (variantRE.test(mod)) {\n // Variant\n config.variant = mod.slice(2) || null\n }\n })\n\n // Special handling of event trigger modifiers trigger is\n // a space separated list\n const selectedTriggers = {}\n\n // Parse current config object trigger\n concat(config.trigger || '')\n .filter(identity)\n .join(' ')\n .trim()\n .toLowerCase()\n .split(spacesRE)\n .forEach(trigger => {\n if (validTriggers[trigger]) {\n selectedTriggers[trigger] = true\n }\n })\n\n // Parse modifiers for triggers\n keys(bindings.modifiers).forEach(mod => {\n mod = mod.toLowerCase()\n if (validTriggers[mod]) {\n // If modifier is a valid trigger\n selectedTriggers[mod] = true\n }\n })\n\n // Sanitize triggers\n config.trigger = keys(selectedTriggers).join(' ')\n if (config.trigger === 'blur') {\n // Blur by itself is useless, so convert it to 'focus'\n config.trigger = 'focus'\n }\n if (!config.trigger) {\n // Use default trigger\n config.trigger = DefaultTrigger\n }\n\n // Return the config\n return config\n}\n\n// Add/update Tooltip on our element\nconst applyTooltip = (el, bindings, vnode) => {\n if (!IS_BROWSER) {\n /* istanbul ignore next */\n return\n }\n const config = parseBindings(bindings, vnode)\n if (!el[BV_TOOLTIP]) {\n const $parent = vnode.context\n el[BV_TOOLTIP] = new BVTooltip({\n parent: $parent,\n // Add the parent's scoped style attribute data\n _scopeId: getScopeId($parent, undefined)\n })\n el[BV_TOOLTIP].__bv_prev_data__ = {}\n el[BV_TOOLTIP].$on(EVENT_NAME_SHOW, () => /* istanbul ignore next: for now */ {\n // Before showing the tooltip, we update the title if it is a function\n if (isFunction(config.title)) {\n el[BV_TOOLTIP].updateData({\n title: config.title(el)\n })\n }\n })\n }\n const data = {\n title: config.title,\n triggers: config.trigger,\n placement: config.placement,\n fallbackPlacement: config.fallbackPlacement,\n variant: config.variant,\n customClass: config.customClass,\n container: config.container,\n boundary: config.boundary,\n delay: config.delay,\n offset: config.offset,\n noFade: !config.animation,\n id: config.id,\n interactive: config.interactive,\n disabled: config.disabled,\n html: config.html\n }\n const oldData = el[BV_TOOLTIP].__bv_prev_data__\n el[BV_TOOLTIP].__bv_prev_data__ = data\n if (!looseEqual(data, oldData)) {\n // We only update the instance if data has changed\n const newData = {\n target: el\n }\n keys(data).forEach(prop => {\n // We only pass data properties that have changed\n if (data[prop] !== oldData[prop]) {\n // if title is a function, we execute it here\n newData[prop] = prop === 'title' && isFunction(data[prop]) ? data[prop](el) : data[prop]\n }\n })\n el[BV_TOOLTIP].updateData(newData)\n }\n}\n\n// Remove Tooltip on our element\nconst removeTooltip = el => {\n if (el[BV_TOOLTIP]) {\n el[BV_TOOLTIP].$destroy()\n el[BV_TOOLTIP] = null\n }\n delete el[BV_TOOLTIP]\n}\n\n// Export our directive\nexport const VBTooltip = {\n bind(el, bindings, vnode) {\n applyTooltip(el, bindings, vnode)\n },\n // We use `componentUpdated` here instead of `update`, as the former\n // waits until the containing component and children have finished updating\n componentUpdated(el, bindings, vnode) {\n // Performed in a `$nextTick()` to prevent render update loops\n vnode.context.$nextTick(() => {\n applyTooltip(el, bindings, vnode)\n })\n },\n unbind(el) {\n removeTooltip(el)\n }\n}\n","import { VBTooltip } from './tooltip'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBTooltipPlugin = /*#__PURE__*/ pluginFactory({\n directives: { VBTooltip }\n})\n\nexport { VBTooltipPlugin, VBTooltip }\n","import { pluginFactory } from '../utils/plugins'\n\n// Component group plugins\nimport { AlertPlugin } from './alert'\nimport { AspectPlugin } from './aspect'\nimport { AvatarPlugin } from './avatar'\nimport { BadgePlugin } from './badge'\nimport { BreadcrumbPlugin } from './breadcrumb'\nimport { ButtonPlugin } from './button'\nimport { ButtonGroupPlugin } from './button-group'\nimport { ButtonToolbarPlugin } from './button-toolbar'\nimport { CalendarPlugin } from './calendar'\nimport { CardPlugin } from './card'\nimport { CarouselPlugin } from './carousel'\nimport { CollapsePlugin } from './collapse'\nimport { DropdownPlugin } from './dropdown'\nimport { EmbedPlugin } from './embed'\nimport { FormPlugin } from './form'\nimport { FormCheckboxPlugin } from './form-checkbox'\nimport { FormDatepickerPlugin } from './form-datepicker'\nimport { FormFilePlugin } from './form-file'\nimport { FormGroupPlugin } from './form-group'\nimport { FormInputPlugin } from './form-input'\nimport { FormRadioPlugin } from './form-radio'\nimport { FormRatingPlugin } from './form-rating'\nimport { FormSelectPlugin } from './form-select'\nimport { FormSpinbuttonPlugin } from './form-spinbutton'\nimport { FormTagsPlugin } from './form-tags'\nimport { FormTextareaPlugin } from './form-textarea'\nimport { FormTimepickerPlugin } from './form-timepicker'\nimport { ImagePlugin } from './image'\nimport { InputGroupPlugin } from './input-group'\nimport { JumbotronPlugin } from './jumbotron'\nimport { LayoutPlugin } from './layout'\nimport { LinkPlugin } from './link'\nimport { ListGroupPlugin } from './list-group'\nimport { MediaPlugin } from './media'\nimport { ModalPlugin } from './modal'\nimport { NavPlugin } from './nav'\nimport { NavbarPlugin } from './navbar'\nimport { OverlayPlugin } from './overlay'\nimport { PaginationPlugin } from './pagination'\nimport { PaginationNavPlugin } from './pagination-nav'\nimport { PopoverPlugin } from './popover'\nimport { ProgressPlugin } from './progress'\nimport { SidebarPlugin } from './sidebar'\nimport { SkeletonPlugin } from './skeleton'\nimport { SpinnerPlugin } from './spinner'\n// Table plugin includes TableLitePlugin and TableSimplePlugin\nimport { TablePlugin } from './table'\nimport { TabsPlugin } from './tabs'\nimport { TimePlugin } from './time'\nimport { ToastPlugin } from './toast'\nimport { TooltipPlugin } from './tooltip'\n\n// Main plugin to install all component group plugins\nexport const componentsPlugin = /*#__PURE__*/ pluginFactory({\n plugins: {\n AlertPlugin,\n AspectPlugin,\n AvatarPlugin,\n BadgePlugin,\n BreadcrumbPlugin,\n ButtonPlugin,\n ButtonGroupPlugin,\n ButtonToolbarPlugin,\n CalendarPlugin,\n CardPlugin,\n CarouselPlugin,\n CollapsePlugin,\n DropdownPlugin,\n EmbedPlugin,\n FormPlugin,\n FormCheckboxPlugin,\n FormDatepickerPlugin,\n FormFilePlugin,\n FormGroupPlugin,\n FormInputPlugin,\n FormRadioPlugin,\n FormRatingPlugin,\n FormSelectPlugin,\n FormSpinbuttonPlugin,\n FormTagsPlugin,\n FormTextareaPlugin,\n FormTimepickerPlugin,\n ImagePlugin,\n InputGroupPlugin,\n JumbotronPlugin,\n LayoutPlugin,\n LinkPlugin,\n ListGroupPlugin,\n MediaPlugin,\n ModalPlugin,\n NavPlugin,\n NavbarPlugin,\n OverlayPlugin,\n PaginationPlugin,\n PaginationNavPlugin,\n PopoverPlugin,\n ProgressPlugin,\n SidebarPlugin,\n SkeletonPlugin,\n SpinnerPlugin,\n TablePlugin,\n TabsPlugin,\n TimePlugin,\n ToastPlugin,\n TooltipPlugin\n }\n})\n","import { BTooltip } from './tooltip'\nimport { VBTooltipPlugin } from '../../directives/tooltip'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst TooltipPlugin = /*#__PURE__*/ pluginFactory({\n components: { BTooltip },\n plugins: { VBTooltipPlugin }\n})\n\nexport { TooltipPlugin, BTooltip }\n","import { VBHover } from './hover'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBHoverPlugin = /*#__PURE__*/ pluginFactory({\n directives: { VBHover }\n})\n\nexport { VBHoverPlugin, VBHover }\n","import { VBModal } from './modal'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBModalPlugin = /*#__PURE__*/ pluginFactory({\n directives: { VBModal }\n})\n\nexport { VBModalPlugin, VBModal }\n","/*\n * Scrollspy class definition\n */\n\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../../../constants/events'\nimport { RX_HREF } from '../../../constants/regex'\nimport {\n addClass,\n closest,\n getAttr,\n getBCR,\n hasClass,\n isElement,\n isVisible,\n matches,\n offset,\n position,\n removeClass,\n select,\n selectAll\n} from '../../../utils/dom'\nimport { getRootEventName, eventOn, eventOff } from '../../../utils/events'\nimport { identity } from '../../../utils/identity'\nimport { isString, isUndefined } from '../../../utils/inspect'\nimport { mathMax } from '../../../utils/math'\nimport { toInteger } from '../../../utils/number'\nimport { hasOwnProperty, toString as objectToString } from '../../../utils/object'\nimport { observeDom } from '../../../utils/observe-dom'\nimport { warn } from '../../../utils/warn'\n\n/*\n * Constants / Defaults\n */\n\nconst NAME = 'v-b-scrollspy'\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown, .dropup'\nconst SELECTOR_DROPDOWN_ITEMS = '.dropdown-item'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst ROOT_EVENT_NAME_ACTIVATE = getRootEventName('BVScrollspy', 'activate')\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\nconst Default = {\n element: 'body',\n offset: 10,\n method: 'auto',\n throttle: 75\n}\n\nconst DefaultType = {\n element: '(string|element|component)',\n offset: 'number',\n method: 'string',\n throttle: 'number'\n}\n\n// Transition Events\nconst TransitionEndEvents = [\n 'webkitTransitionEnd',\n 'transitionend',\n 'otransitionend',\n 'oTransitionEnd'\n]\n\n/*\n * Utility Methods\n */\n\n// Better var type detection\nconst toType = obj => /* istanbul ignore next: not easy to test */ {\n return objectToString(obj)\n .match(/\\s([a-zA-Z]+)/)[1]\n .toLowerCase()\n}\n\n// Check config properties for expected types\n/* istanbul ignore next */\nconst typeCheckConfig = (\n componentName,\n config,\n configTypes\n) => /* istanbul ignore next: not easy to test */ {\n for (const property in configTypes) {\n if (hasOwnProperty(configTypes, property)) {\n const expectedTypes = configTypes[property]\n const value = config[property]\n let valueType = value && isElement(value) ? 'element' : toType(value)\n // handle Vue instances\n valueType = value && value._isVue ? 'component' : valueType\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n /* istanbul ignore next */\n warn(\n `${componentName}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\"`\n )\n }\n }\n }\n}\n\n/*\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n/* istanbul ignore next: not easy to test */\nexport class BVScrollspy /* istanbul ignore next: not easy to test */ {\n constructor(element, config, $root) {\n // The element we activate links in\n this.$el = element\n this.$scroller = null\n this.$selector = [SELECTOR_NAV_LINKS, SELECTOR_LIST_ITEMS, SELECTOR_DROPDOWN_ITEMS].join(',')\n this.$offsets = []\n this.$targets = []\n this.$activeTarget = null\n this.$scrollHeight = 0\n this.$resizeTimeout = null\n this.$scrollerObserver = null\n this.$targetsObserver = null\n this.$root = $root || null\n this.$config = null\n\n this.updateConfig(config)\n }\n\n static get Name() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n updateConfig(config, $root) {\n if (this.$scroller) {\n // Just in case out scroll element has changed\n this.unlisten()\n this.$scroller = null\n }\n const cfg = { ...this.constructor.Default, ...config }\n if ($root) {\n this.$root = $root\n }\n typeCheckConfig(this.constructor.Name, cfg, this.constructor.DefaultType)\n this.$config = cfg\n\n if (this.$root) {\n const self = this\n this.$root.$nextTick(() => {\n self.listen()\n })\n } else {\n this.listen()\n }\n }\n\n dispose() {\n this.unlisten()\n clearTimeout(this.$resizeTimeout)\n this.$resizeTimeout = null\n this.$el = null\n this.$config = null\n this.$scroller = null\n this.$selector = null\n this.$offsets = null\n this.$targets = null\n this.$activeTarget = null\n this.$scrollHeight = null\n }\n\n listen() {\n const scroller = this.getScroller()\n if (scroller && scroller.tagName !== 'BODY') {\n eventOn(scroller, 'scroll', this, EVENT_OPTIONS_NO_CAPTURE)\n }\n eventOn(window, 'scroll', this, EVENT_OPTIONS_NO_CAPTURE)\n eventOn(window, 'resize', this, EVENT_OPTIONS_NO_CAPTURE)\n eventOn(window, 'orientationchange', this, EVENT_OPTIONS_NO_CAPTURE)\n TransitionEndEvents.forEach(eventName => {\n eventOn(window, eventName, this, EVENT_OPTIONS_NO_CAPTURE)\n })\n this.setObservers(true)\n // Schedule a refresh\n this.handleEvent('refresh')\n }\n\n unlisten() {\n const scroller = this.getScroller()\n this.setObservers(false)\n if (scroller && scroller.tagName !== 'BODY') {\n eventOff(scroller, 'scroll', this, EVENT_OPTIONS_NO_CAPTURE)\n }\n eventOff(window, 'scroll', this, EVENT_OPTIONS_NO_CAPTURE)\n eventOff(window, 'resize', this, EVENT_OPTIONS_NO_CAPTURE)\n eventOff(window, 'orientationchange', this, EVENT_OPTIONS_NO_CAPTURE)\n TransitionEndEvents.forEach(eventName => {\n eventOff(window, eventName, this, EVENT_OPTIONS_NO_CAPTURE)\n })\n }\n\n setObservers(on) {\n // We observe both the scroller for content changes, and the target links\n this.$scrollerObserver && this.$scrollerObserver.disconnect()\n this.$targetsObserver && this.$targetsObserver.disconnect()\n this.$scrollerObserver = null\n this.$targetsObserver = null\n if (on) {\n this.$targetsObserver = observeDom(\n this.$el,\n () => {\n this.handleEvent('mutation')\n },\n {\n subtree: true,\n childList: true,\n attributes: true,\n attributeFilter: ['href']\n }\n )\n this.$scrollerObserver = observeDom(\n this.getScroller(),\n () => {\n this.handleEvent('mutation')\n },\n {\n subtree: true,\n childList: true,\n characterData: true,\n attributes: true,\n attributeFilter: ['id', 'style', 'class']\n }\n )\n }\n }\n\n // General event handler\n handleEvent(event) {\n const type = isString(event) ? event : event.type\n\n const self = this\n const resizeThrottle = () => {\n if (!self.$resizeTimeout) {\n self.$resizeTimeout = setTimeout(() => {\n self.refresh()\n self.process()\n self.$resizeTimeout = null\n }, self.$config.throttle)\n }\n }\n\n if (type === 'scroll') {\n if (!this.$scrollerObserver) {\n // Just in case we are added to the DOM before the scroll target is\n // We re-instantiate our listeners, just in case\n this.listen()\n }\n this.process()\n } else if (/(resize|orientationchange|mutation|refresh)/.test(type)) {\n // Postpone these events by throttle time\n resizeThrottle()\n }\n }\n\n // Refresh the list of target links on the element we are applied to\n refresh() {\n const scroller = this.getScroller()\n if (!scroller) {\n return\n }\n const autoMethod = scroller !== scroller.window ? METHOD_POSITION : METHOD_OFFSET\n const method = this.$config.method === 'auto' ? autoMethod : this.$config.method\n const methodFn = method === METHOD_POSITION ? position : offset\n const offsetBase = method === METHOD_POSITION ? this.getScrollTop() : 0\n\n this.$offsets = []\n this.$targets = []\n\n this.$scrollHeight = this.getScrollHeight()\n\n // Find all the unique link HREFs that we will control\n selectAll(this.$selector, this.$el)\n // Get HREF value\n .map(link => getAttr(link, 'href'))\n // Filter out HREFs that do not match our RegExp\n .filter(href => href && RX_HREF.test(href || ''))\n // Find all elements with ID that match HREF hash\n .map(href => {\n // Convert HREF into an ID (including # at beginning)\n const id = href.replace(RX_HREF, '$1').trim()\n if (!id) {\n return null\n }\n // Find the element with the ID specified by id\n const el = select(id, scroller)\n if (el && isVisible(el)) {\n return {\n offset: toInteger(methodFn(el).top, 0) + offsetBase,\n target: id\n }\n }\n return null\n })\n .filter(identity)\n // Sort them by their offsets (smallest first)\n .sort((a, b) => a.offset - b.offset)\n // record only unique targets/offsets\n .reduce((memo, item) => {\n if (!memo[item.target]) {\n this.$offsets.push(item.offset)\n this.$targets.push(item.target)\n memo[item.target] = true\n }\n return memo\n }, {})\n\n // Return this for easy chaining\n return this\n }\n\n // Handle activating/clearing\n process() {\n const scrollTop = this.getScrollTop() + this.$config.offset\n const scrollHeight = this.getScrollHeight()\n const maxScroll = this.$config.offset + scrollHeight - this.getOffsetHeight()\n\n if (this.$scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this.$targets[this.$targets.length - 1]\n if (this.$activeTarget !== target) {\n this.activate(target)\n }\n return\n }\n\n if (this.$activeTarget && scrollTop < this.$offsets[0] && this.$offsets[0] > 0) {\n this.$activeTarget = null\n this.clear()\n return\n }\n\n for (let i = this.$offsets.length; i--; ) {\n const isActiveTarget =\n this.$activeTarget !== this.$targets[i] &&\n scrollTop >= this.$offsets[i] &&\n (isUndefined(this.$offsets[i + 1]) || scrollTop < this.$offsets[i + 1])\n\n if (isActiveTarget) {\n this.activate(this.$targets[i])\n }\n }\n }\n\n getScroller() {\n if (this.$scroller) {\n return this.$scroller\n }\n let scroller = this.$config.element\n if (!scroller) {\n return null\n } else if (isElement(scroller.$el)) {\n scroller = scroller.$el\n } else if (isString(scroller)) {\n scroller = select(scroller)\n }\n if (!scroller) {\n return null\n }\n this.$scroller = scroller.tagName === 'BODY' ? window : scroller\n return this.$scroller\n }\n\n getScrollTop() {\n const scroller = this.getScroller()\n return scroller === window ? scroller.pageYOffset : scroller.scrollTop\n }\n\n getScrollHeight() {\n return (\n this.getScroller().scrollHeight ||\n mathMax(document.body.scrollHeight, document.documentElement.scrollHeight)\n )\n }\n\n getOffsetHeight() {\n const scroller = this.getScroller()\n return scroller === window ? window.innerHeight : getBCR(scroller).height\n }\n\n activate(target) {\n this.$activeTarget = target\n this.clear()\n\n // Grab the list of target links (<a href=\"{$target}\">)\n const links = selectAll(\n this.$selector\n // Split out the base selectors\n .split(',')\n // Map to a selector that matches links with HREF ending in the ID (including '#')\n .map(selector => `${selector}[href$=\"${target}\"]`)\n // Join back into a single selector string\n .join(','),\n this.$el\n )\n\n links.forEach(link => {\n if (hasClass(link, CLASS_NAME_DROPDOWN_ITEM)) {\n // This is a dropdown item, so find the .dropdown-toggle and set its state\n const dropdown = closest(SELECTOR_DROPDOWN, link)\n if (dropdown) {\n this.setActiveState(select(SELECTOR_DROPDOWN_TOGGLE, dropdown), true)\n }\n // Also set this link's state\n this.setActiveState(link, true)\n } else {\n // Set triggered link as active\n this.setActiveState(link, true)\n if (matches(link.parentElement, SELECTOR_NAV_ITEMS)) {\n // Handle nav-link inside nav-item, and set nav-item active\n this.setActiveState(link.parentElement, true)\n }\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n let el = link\n while (el) {\n el = closest(SELECTOR_NAV_LIST_GROUP, el)\n const sibling = el ? el.previousElementSibling : null\n if (sibling && matches(sibling, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)) {\n this.setActiveState(sibling, true)\n }\n // Handle special case where nav-link is inside a nav-item\n if (sibling && matches(sibling, SELECTOR_NAV_ITEMS)) {\n this.setActiveState(select(SELECTOR_NAV_LINKS, sibling), true)\n // Add active state to nav-item as well\n this.setActiveState(sibling, true)\n }\n }\n }\n })\n\n // Signal event to via $root, passing ID of activated target and reference to array of links\n if (links && links.length > 0 && this.$root) {\n this.$root.$emit(ROOT_EVENT_NAME_ACTIVATE, target, links)\n }\n }\n\n clear() {\n selectAll(`${this.$selector}, ${SELECTOR_NAV_ITEMS}`, this.$el)\n .filter(el => hasClass(el, CLASS_NAME_ACTIVE))\n .forEach(el => this.setActiveState(el, false))\n }\n\n setActiveState(el, active) {\n if (!el) {\n return\n }\n if (active) {\n addClass(el, CLASS_NAME_ACTIVE)\n } else {\n removeClass(el, CLASS_NAME_ACTIVE)\n }\n }\n}\n","import { IS_BROWSER } from '../../constants/env'\nimport { isNumber, isObject, isString } from '../../utils/inspect'\nimport { mathRound } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport { keys } from '../../utils/object'\nimport { BVScrollspy } from './helpers/bv-scrollspy.class'\n\n// Key we use to store our instance\nconst BV_SCROLLSPY = '__BV_Scrollspy__'\n\n// Pre-compiled regular expressions\nconst onlyDigitsRE = /^\\d+$/\nconst offsetRE = /^(auto|position|offset)$/\n\n// Build a Scrollspy config based on bindings (if any)\n// Arguments and modifiers take precedence over passed value config object\n/* istanbul ignore next: not easy to test */\nconst parseBindings = bindings => /* istanbul ignore next: not easy to test */ {\n const config = {}\n\n // If argument, assume element ID\n if (bindings.arg) {\n // Element ID specified as arg\n // We must prepend '#' to become a CSS selector\n config.element = `#${bindings.arg}`\n }\n\n // Process modifiers\n keys(bindings.modifiers).forEach(mod => {\n if (onlyDigitsRE.test(mod)) {\n // Offset value\n config.offset = toInteger(mod, 0)\n } else if (offsetRE.test(mod)) {\n // Offset method\n config.method = mod\n }\n })\n\n // Process value\n if (isString(bindings.value)) {\n // Value is a CSS ID or selector\n config.element = bindings.value\n } else if (isNumber(bindings.value)) {\n // Value is offset\n config.offset = mathRound(bindings.value)\n } else if (isObject(bindings.value)) {\n // Value is config object\n // Filter the object based on our supported config options\n keys(bindings.value)\n .filter(k => !!BVScrollspy.DefaultType[k])\n .forEach(k => {\n config[k] = bindings.value[k]\n })\n }\n\n return config\n}\n\n// Add or update Scrollspy on our element\nconst applyScrollspy = (el, bindings, vnode) => /* istanbul ignore next: not easy to test */ {\n if (!IS_BROWSER) {\n /* istanbul ignore next */\n return\n }\n const config = parseBindings(bindings)\n if (el[BV_SCROLLSPY]) {\n el[BV_SCROLLSPY].updateConfig(config, vnode.context.$root)\n } else {\n el[BV_SCROLLSPY] = new BVScrollspy(el, config, vnode.context.$root)\n }\n}\n\n// Remove Scrollspy on our element\n/* istanbul ignore next: not easy to test */\nconst removeScrollspy = el => /* istanbul ignore next: not easy to test */ {\n if (el[BV_SCROLLSPY]) {\n el[BV_SCROLLSPY].dispose()\n el[BV_SCROLLSPY] = null\n delete el[BV_SCROLLSPY]\n }\n}\n\n/*\n * Export our directive\n */\nexport const VBScrollspy = {\n /* istanbul ignore next: not easy to test */\n bind(el, bindings, vnode) {\n applyScrollspy(el, bindings, vnode)\n },\n /* istanbul ignore next: not easy to test */\n inserted(el, bindings, vnode) {\n applyScrollspy(el, bindings, vnode)\n },\n /* istanbul ignore next: not easy to test */\n update(el, bindings, vnode) {\n if (bindings.value !== bindings.oldValue) {\n applyScrollspy(el, bindings, vnode)\n }\n },\n /* istanbul ignore next: not easy to test */\n componentUpdated(el, bindings, vnode) {\n if (bindings.value !== bindings.oldValue) {\n applyScrollspy(el, bindings, vnode)\n }\n },\n /* istanbul ignore next: not easy to test */\n unbind(el) {\n removeScrollspy(el)\n }\n}\n","import { installFactory } from './utils/plugins'\nimport { componentsPlugin } from './components'\nimport { directivesPlugin } from './directives'\nimport { BVConfigPlugin } from './bv-config'\n\nconst NAME = 'BootstrapVue'\n\n// --- BootstrapVue installer ---\nconst install = /*#__PURE__*/ installFactory({\n plugins: {\n componentsPlugin,\n directivesPlugin\n }\n})\n\n// --- BootstrapVue plugin ---\nconst BootstrapVue = /*#__PURE__*/ {\n install,\n NAME\n}\n\n// --- Named exports for BvConfigPlugin ---\nexport {\n // Installer exported in case the consumer does not import `default`\n // as the plugin in CommonJS build (or does not have interop enabled for CommonJS)\n // Both the following will work:\n // BootstrapVue = require('bootstrap-vue')\n // BootstrapVue = require('bootstrap-vue').default\n // Vue.use(BootstrapVue)\n install,\n NAME,\n // BootstrapVue config plugin\n BVConfigPlugin,\n // `BVConfigPlugin` has been documented as `BVConfig` as well,\n // so we add an alias to the shorter name for backwards compat\n BVConfigPlugin as BVConfig,\n // Main BootstrapVue plugin\n BootstrapVue\n}\n\n// --- Export named injection plugins ---\n// TODO:\n// We should probably move injections into their own\n// parent directory (i.e. `/src/injections`)\nexport { BVModalPlugin } from './components/modal/helpers/bv-modal'\nexport { BVToastPlugin } from './components/toast/helpers/bv-toast'\n\n// Webpack 4 has optimization difficulties with re-export of re-exports,\n// so we import the components individually here for better tree shaking\n//\n// Webpack v5 fixes the optimizations with re-export of re-exports so this\n// can be reverted back to `export * from './table'` when Webpack v5 is released\n// See: https://github.com/webpack/webpack/pull/9203 (available in Webpack v5.0.0-alpha.15)\n\n// -- Export Icon components and IconPlugin/BootstrapVueIcons ---\n// export * from './icons'\nexport { IconsPlugin, BootstrapVueIcons } from './icons/plugin'\nexport { BIcon } from './icons/icon'\nexport { BIconstack } from './icons/iconstack'\n// This re-export is only a single level deep, which\n// Webpack 4 (usually) handles correctly when tree shaking\nexport * from './icons/icons'\n\n// --- Export all individual components and component group plugins as named exports ---\n\n// export * from './components/alert'\nexport { AlertPlugin } from './components/alert'\nexport { BAlert } from './components/alert/alert'\n\n// export * from './components/aspect'\nexport { AspectPlugin } from './components/aspect'\nexport { BAspect } from './components/aspect/aspect'\n\n// export * from './components/avatar'\nexport { AvatarPlugin } from './components/avatar'\nexport { BAvatar } from './components/avatar/avatar'\nexport { BAvatarGroup } from './components/avatar/avatar-group'\n\n// export * from './components/badge'\nexport { BadgePlugin } from './components/badge'\nexport { BBadge } from './components/badge/badge'\n\n// export * from './components/breadcrumb'\nexport { BreadcrumbPlugin } from './components/breadcrumb'\nexport { BBreadcrumb } from './components/breadcrumb/breadcrumb'\nexport { BBreadcrumbItem } from './components/breadcrumb/breadcrumb-item'\n\n// export * from './components/button'\nexport { ButtonPlugin } from './components/button'\nexport { BButton } from './components/button/button'\nexport { BButtonClose } from './components/button/button-close'\n\n// export * from './components/button-group'\nexport { ButtonGroupPlugin } from './components/button-group'\nexport { BButtonGroup } from './components/button-group/button-group'\n\n// export * from './components/button-toolbar'\nexport { ButtonToolbarPlugin } from './components/button-toolbar'\nexport { BButtonToolbar } from './components/button-toolbar/button-toolbar'\n\n// export * from './components/calendar'\nexport { CalendarPlugin } from './components/calendar'\nexport { BCalendar } from './components/calendar/calendar'\n\n// export * from './components/card'\nexport { CardPlugin } from './components/card'\nexport { BCard } from './components/card/card'\nexport { BCardBody } from './components/card/card-body'\nexport { BCardFooter } from './components/card/card-footer'\nexport { BCardGroup } from './components/card/card-group'\nexport { BCardHeader } from './components/card/card-header'\nexport { BCardImg } from './components/card/card-img'\nexport { BCardImgLazy } from './components/card/card-img-lazy'\nexport { BCardSubTitle } from './components/card/card-sub-title'\nexport { BCardText } from './components/card/card-text'\nexport { BCardTitle } from './components/card/card-title'\n\n// export * from './components/carousel'\nexport { CarouselPlugin } from './components/carousel'\nexport { BCarousel } from './components/carousel/carousel'\nexport { BCarouselSlide } from './components/carousel/carousel-slide'\n\n// export * from './components/collapse'\nexport { CollapsePlugin } from './components/collapse'\nexport { BCollapse } from './components/collapse/collapse'\n\n// export * from './components/dropdown'\nexport { DropdownPlugin } from './components/dropdown'\nexport { BDropdown } from './components/dropdown/dropdown'\nexport { BDropdownItem } from './components/dropdown/dropdown-item'\nexport { BDropdownItemButton } from './components/dropdown/dropdown-item-button'\nexport { BDropdownDivider } from './components/dropdown/dropdown-divider'\nexport { BDropdownForm } from './components/dropdown/dropdown-form'\nexport { BDropdownGroup } from './components/dropdown/dropdown-group'\nexport { BDropdownHeader } from './components/dropdown/dropdown-header'\nexport { BDropdownText } from './components/dropdown/dropdown-text'\n\n// export * from './components/embed'\nexport { EmbedPlugin } from './components/embed'\nexport { BEmbed } from './components/embed/embed'\n\n// export * from './components/form'\nexport { FormPlugin } from './components/form'\nexport { BForm } from './components/form/form'\nexport { BFormDatalist } from './components/form/form-datalist'\nexport { BFormText } from './components/form/form-text'\nexport { BFormInvalidFeedback } from './components/form/form-invalid-feedback'\nexport { BFormValidFeedback } from './components/form/form-valid-feedback'\n\n// export * from './components/form-checkbox'\nexport { FormCheckboxPlugin } from './components/form-checkbox'\nexport { BFormCheckbox } from './components/form-checkbox/form-checkbox'\nexport { BFormCheckboxGroup } from './components/form-checkbox/form-checkbox-group'\n\n// export * from './components/form-datepicker'\nexport { FormDatepickerPlugin } from './components/form-datepicker'\nexport { BFormDatepicker } from './components/form-datepicker/form-datepicker'\n\n// export * from './components/form-file'\nexport { FormFilePlugin } from './components/form-file'\nexport { BFormFile } from './components/form-file/form-file'\n\n// export * from './components/form-group'\nexport { FormGroupPlugin } from './components/form-group'\nexport { BFormGroup } from './components/form-group/form-group'\n\n// export * from './components/form-input'\nexport { FormInputPlugin } from './components/form-input'\nexport { BFormInput } from './components/form-input/form-input'\n\n// export * from './components/form-radio'\nexport { FormRadioPlugin } from './components/form-radio'\nexport { BFormRadio } from './components/form-radio/form-radio'\nexport { BFormRadioGroup } from './components/form-radio/form-radio-group'\n\n// export * from './components/form-rating'\nexport { FormRatingPlugin } from './components/form-rating'\nexport { BFormRating } from './components/form-rating/form-rating'\n\n// export * from './components/form-tags'\nexport { FormTagsPlugin } from './components/form-tags'\nexport { BFormTags } from './components/form-tags/form-tags'\nexport { BFormTag } from './components/form-tags/form-tag'\n\n// export * from './components/form-select'\nexport { FormSelectPlugin } from './components/form-select'\nexport { BFormSelect } from './components/form-select/form-select'\nexport { BFormSelectOption } from './components/form-select/form-select-option'\nexport { BFormSelectOptionGroup } from './components/form-select/form-select-option-group'\n\n// export * from './components/form-spinbutton'\nexport { FormSpinbuttonPlugin } from './components/form-spinbutton'\nexport { BFormSpinbutton } from './components/form-spinbutton/form-spinbutton'\n\n// export * from './components/form-textarea'\nexport { FormTextareaPlugin } from './components/form-textarea'\nexport { BFormTextarea } from './components/form-textarea/form-textarea'\n\n// export * from './components/form-timepicker'\nexport { FormTimepickerPlugin } from './components/form-timepicker'\nexport { BFormTimepicker } from './components/form-timepicker/form-timepicker'\n\n// export * from './components/image'\nexport { ImagePlugin } from './components/image'\nexport { BImg } from './components/image/img'\nexport { BImgLazy } from './components/image/img-lazy'\n\n// export * from './components/input-group'\nexport { InputGroupPlugin } from './components/input-group'\nexport { BInputGroup } from './components/input-group/input-group'\nexport { BInputGroupAddon } from './components/input-group/input-group-addon'\nexport { BInputGroupAppend } from './components/input-group/input-group-append'\nexport { BInputGroupPrepend } from './components/input-group/input-group-prepend'\nexport { BInputGroupText } from './components/input-group/input-group-text'\n\n// export * from './components/jumbotron'\nexport { JumbotronPlugin } from './components/jumbotron'\nexport { BJumbotron } from './components/jumbotron/jumbotron'\n\n// export * from './components/layout'\nexport { LayoutPlugin } from './components/layout'\nexport { BContainer } from './components/layout/container'\nexport { BRow } from './components/layout/row'\nexport { BCol } from './components/layout/col'\nexport { BFormRow } from './components/layout/form-row'\n\n// export * from './components/link'\nexport { LinkPlugin } from './components/link'\nexport { BLink } from './components/link/link'\n\n// export * from './components/list-group'\nexport { ListGroupPlugin } from './components/list-group'\nexport { BListGroup } from './components/list-group/list-group'\nexport { BListGroupItem } from './components/list-group/list-group-item'\n\n// export * from './components/media'\nexport { MediaPlugin } from './components/media'\nexport { BMedia } from './components/media/media'\nexport { BMediaAside } from './components/media/media-aside'\nexport { BMediaBody } from './components/media/media-body'\n\n// export * from './components/modal'\nexport { ModalPlugin } from './components/modal'\nexport { BModal } from './components/modal/modal'\n\n// export * from './components/nav'\nexport { NavPlugin } from './components/nav'\nexport { BNav } from './components/nav/nav'\nexport { BNavForm } from './components/nav/nav-form'\nexport { BNavItem } from './components/nav/nav-item'\nexport { BNavItemDropdown } from './components/nav/nav-item-dropdown'\nexport { BNavText } from './components/nav/nav-text'\n\n// export * from './components/navbar'\nexport { NavbarPlugin } from './components/navbar'\nexport { BNavbar } from './components/navbar/navbar'\nexport { BNavbarBrand } from './components/navbar/navbar-brand'\nexport { BNavbarNav } from './components/navbar/navbar-nav'\nexport { BNavbarToggle } from './components/navbar/navbar-toggle'\n\n// export * from './components/overlay'\nexport { OverlayPlugin } from './components/overlay'\nexport { BOverlay } from './components/overlay/overlay'\n\n// export * from './components/pagination'\nexport { PaginationPlugin } from './components/pagination'\nexport { BPagination } from './components/pagination/pagination'\n\n// export * from './components/pagination-nav'\nexport { PaginationNavPlugin } from './components/pagination-nav'\nexport { BPaginationNav } from './components/pagination-nav/pagination-nav'\n\n// export * from './components/popover'\nexport { PopoverPlugin } from './components/popover'\nexport { BPopover } from './components/popover/popover'\n\n// export * from './components/progress'\nexport { ProgressPlugin } from './components/progress'\nexport { BProgress } from './components/progress/progress'\nexport { BProgressBar } from './components/progress/progress-bar'\n\n// export * from './components/sidebar'\nexport { SidebarPlugin } from './components/sidebar'\nexport { BSidebar } from './components/sidebar/sidebar'\n\n// export * from './components/skeleton'\nexport { SkeletonPlugin } from './components/skeleton'\nexport { BSkeleton } from './components/skeleton/skeleton'\nexport { BSkeletonIcon } from './components/skeleton/skeleton-icon'\nexport { BSkeletonImg } from './components/skeleton/skeleton-img'\nexport { BSkeletonTable } from './components/skeleton/skeleton-table'\nexport { BSkeletonWrapper } from './components/skeleton/skeleton-wrapper'\n\n// export * from './components/spinner'\nexport { SpinnerPlugin } from './components/spinner'\nexport { BSpinner } from './components/spinner/spinner'\n\n// export * from './components/table'\nexport { TablePlugin, TableLitePlugin, TableSimplePlugin } from './components/table'\nexport { BTable } from './components/table/table'\nexport { BTableLite } from './components/table/table-lite'\nexport { BTableSimple } from './components/table/table-simple'\nexport { BTbody } from './components/table/tbody'\nexport { BThead } from './components/table/thead'\nexport { BTfoot } from './components/table/tfoot'\nexport { BTr } from './components/table/tr'\nexport { BTh } from './components/table/th'\nexport { BTd } from './components/table/td'\n\n// export * from './components/tabs'\nexport { TabsPlugin } from './components/tabs'\nexport { BTabs } from './components/tabs/tabs'\nexport { BTab } from './components/tabs/tab'\n\n// export * from './components/time'\nexport { TimePlugin } from './components/time'\nexport { BTime } from './components/time/time'\n\n// export * from './components/toast'\nexport { ToastPlugin } from './components/toast'\nexport { BToast } from './components/toast/toast'\nexport { BToaster } from './components/toast/toaster'\n\n// export * from './components/tooltip'\nexport { TooltipPlugin } from './components/tooltip'\nexport { BTooltip } from './components/tooltip/tooltip'\n\n// --- Named exports of all directives (VB<Name>) and plugins (VB<Name>Plugin) ---\n\n// Webpack 4 has optimization difficulties with re-export of re-exports,\n// so we import the directives individually here for better tree shaking\n//\n// Webpack v5 fixes the optimizations with re-export of re-exports so this\n// can be reverted back to `export * from './scrollspy'` when Webpack v5 is released\n// https://github.com/webpack/webpack/pull/9203 (available in Webpack v5.0.0-alpha.15)\n\n// export * from './directives/hover'\nexport { VBHoverPlugin } from './directives/hover'\nexport { VBHover } from './directives/hover/hover'\n\n// export * from './directives/modal'\nexport { VBModalPlugin } from './directives/modal'\nexport { VBModal } from './directives/modal/modal'\n\n// export * from './directives/popover'\nexport { VBPopoverPlugin } from './directives/popover'\nexport { VBPopover } from './directives/popover/popover'\n\n// export * from './directives/scrollspy'\nexport { VBScrollspyPlugin } from './directives/scrollspy'\nexport { VBScrollspy } from './directives/scrollspy/scrollspy'\n\n// export * from './directives/toggle'\nexport { VBTogglePlugin } from './directives/toggle'\nexport { VBToggle } from './directives/toggle/toggle'\n\n// export * from './directives/tooltip'\nexport { VBTooltipPlugin } from './directives/tooltip'\nexport { VBTooltip } from './directives/tooltip/tooltip'\n\n// export * from './directives/tooltip'\nexport { VBVisiblePlugin } from './directives/visible'\nexport { VBVisible } from './directives/visible/visible'\n\n// Default export is the BootstrapVue plugin\nexport default BootstrapVue\n","import { pluginFactory } from '../utils/plugins'\n\nimport { VBHoverPlugin } from './hover'\nimport { VBModalPlugin } from './modal'\nimport { VBPopoverPlugin } from './popover'\nimport { VBScrollspyPlugin } from './scrollspy'\nimport { VBTogglePlugin } from './toggle'\nimport { VBTooltipPlugin } from './tooltip'\nimport { VBVisiblePlugin } from './visible'\n\n// Main plugin for installing all directive plugins\nexport const directivesPlugin = /*#__PURE__*/ pluginFactory({\n plugins: {\n VBHoverPlugin,\n VBModalPlugin,\n VBPopoverPlugin,\n VBScrollspyPlugin,\n VBTogglePlugin,\n VBTooltipPlugin,\n VBVisiblePlugin\n }\n})\n","import { VBScrollspy } from './scrollspy'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBScrollspyPlugin = /*#__PURE__*/ pluginFactory({\n directives: { VBScrollspy }\n})\n\nexport { VBScrollspyPlugin, VBScrollspy }\n","import { VBVisible } from './visible'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBVisiblePlugin = /*#__PURE__*/ pluginFactory({\n directives: { VBVisible }\n})\n\nexport { VBVisiblePlugin, VBVisible }\n","// Main entry point for the browser build\nimport { vueUse } from './utils/plugins'\n\nimport { BootstrapVue } from './index'\n\n// Auto installation only occurs if window.Vue exists\nvueUse(BootstrapVue)\n\nexport default BootstrapVue\n"]}