{"version":3,"sources":["webpack:///./node_modules/bootstrap-vue/esm/mixins/form-selection.js","webpack:///./src/@core/mixins/table.js","webpack:///./src/views/components/table/TableEntries.vue?bdbd","webpack:///src/views/components/table/TableEntries.vue","webpack:///./src/views/components/table/TableEntries.vue?c4f3","webpack:///./src/views/components/table/TableEntries.vue?e232","webpack:///./src/@core/directives/animations.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-validity.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-footer.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-img.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card.js","webpack:///./src/views/forms/InputField.vue?b743","webpack:///src/views/forms/InputField.vue","webpack:///./src/views/forms/InputField.vue?501b","webpack:///./src/views/forms/InputField.vue?d085","webpack:///./node_modules/bootstrap-vue/esm/mixins/pagination.js","webpack:///./node_modules/bootstrap-vue/esm/components/pagination/pagination.js","webpack:///./node_modules/bootstrap-vue/esm/components/form/form-invalid-feedback.js","webpack:///./src/views/pages/operations-management/AuditTrail.vue?a152","webpack:///./node_modules/bootstrap-vue/esm/constants/date.js","webpack:///./node_modules/bootstrap-vue/esm/utils/date.js","webpack:///./node_modules/bootstrap-vue/esm/components/calendar/calendar.js","webpack:///./node_modules/bootstrap-vue/esm/directives/hover/hover.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-btn-label-control/bv-form-btn-label-control.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-datepicker/form-datepicker.js","webpack:///src/views/pages/operations-management/AuditTrail.vue","webpack:///./src/views/pages/operations-management/AuditTrail.vue?afef","webpack:///./src/views/pages/operations-management/AuditTrail.vue?fc4b","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-text.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-input/form-input.js","webpack:///./src/helpers/handleSpecialCharacter.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-title.js","webpack:///./node_modules/core-js/internals/object-is-extensible.js","webpack:///./node_modules/core-js/modules/es.set.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-sub-title.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-body.js","webpack:///./node_modules/core-js/internals/collection-strong.js","webpack:///./src/views/forms/InputField.vue?8193","webpack:///./node_modules/core-js/internals/collection.js","webpack:///./src/views/components/table/TableEntries.vue?3cd4","webpack:///./node_modules/bootstrap-vue/esm/icons/helpers/make-icon.js","webpack:///./node_modules/bootstrap-vue/esm/icons/icons.js","webpack:///./node_modules/bootstrap-vue/esm/utils/css-escape.js","webpack:///./node_modules/bootstrap-vue/esm/components/layout/form-row.js","webpack:///./node_modules/bootstrap-vue/esm/components/form/form-valid-feedback.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-group/form-group.js","webpack:///./src/helpers/capitalizeFirstLetter.js","webpack:///./node_modules/bootstrap-vue/esm/utils/locale.js","webpack:///./node_modules/bootstrap-vue/esm/components/form/form-text.js","webpack:///./node_modules/bootstrap-vue/esm/constants/popper.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/click-out.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/focus-in.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/dropdown.js","webpack:///./src/helpers/addSpaceToString.js","webpack:///./src/views/pages/operations-management/AuditTrail.vue?ca99","webpack:///./node_modules/bootstrap-vue/esm/icons/helpers/icon-base.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-size.js","webpack:///./src/views/components/button/Button.vue?5dc3","webpack:///src/views/components/button/Button.vue","webpack:///./src/views/components/button/Button.vue?2fad","webpack:///./src/views/components/button/Button.vue","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-header.js","webpack:///./src/views/components/table/TablePagination.vue?0506","webpack:///./src/views/components/pagination/Pagination.vue?4307","webpack:///src/views/components/pagination/Pagination.vue","webpack:///./src/views/components/pagination/Pagination.vue?4a4f","webpack:///./src/views/components/pagination/Pagination.vue","webpack:///src/views/components/table/TablePagination.vue","webpack:///./src/views/components/table/TablePagination.vue?75ec","webpack:///./src/views/components/table/TablePagination.vue","webpack:///./node_modules/core-js/internals/freezing.js","webpack:///./src/views/forms/SelectField.vue?e97f","webpack:///./src/views/pages/operations-management/AuditTrail.vue?96cf","webpack:///./src/views/components/table/TableEntries.vue?1fad","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-state.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/card.js","webpack:///./node_modules/core-js/internals/array-buffer-non-extensible.js","webpack:///./src/views/forms/SelectField.vue?1739","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-control.js","webpack:///./src/views/forms/SelectField.vue?806e","webpack:///src/views/forms/SelectField.vue","webpack:///./src/views/forms/SelectField.vue?5a8d","webpack:///./src/views/forms/SelectField.vue?09cc","webpack:///./node_modules/popper.js/dist/esm/popper.js","webpack:///./node_modules/core-js/internals/internal-metadata.js"],"names":["formSelectionMixin","extend","computed","selectionStart","cache","get","this","$refs","input","set","val","selectionEnd","selectionDirection","methods","select","_this$$refs$input","apply","arguments","setSelectionRange","_this$$refs$input2","setRangeText","_this$$refs$input3","tableMixins","data","isBusy","showSpinner","sortDesc","searchQuery","statusFilter","perPage","pageSize","currentPage","perPageOptions","totalCount","statusOptions","approvalTotalCount","approvalPerPage","approvalPageSize","approvalCurrentPage","totalEntries","numberOfPages","Math","floor","from","to","min","approvalTotalEntries","approvalNumberOfPages","approvalFom","approvalTo","variantColor","status","getOverallIndex","index","render","_vm","_h","$createElement","_c","_self","_v","staticClass","attrs","$store","state","appConfig","isRTL","options","value","model","callback","$$v","expression","staticRenderFns","name","components","vSelect","props","type","Array","required","Object","String","Number","Boolean","default","hasValue","watch","$emit","created","component","heightFade","inserted","el","binding","height","offsetHeight","modifiers","appear","style","overflow","maxHeight","opacity","setTimeout","unbind","undefined","formValidityMixin","validity","validationMessage","willValidate","setCustomValidity","checkValidity","reportValidity","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","target","i","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","configurable","writable","bind","footer","footerClass","footerHtml","BCardFooter","functional","h","_ref","_ref2","children","footerBgVariant","footerBorderVariant","footerTextVariant","footerTag","class","concat","domProps","html","bottom","end","start","top","BCardImg","src","alt","width","baseClass","right","left","cardImgProps","imgSrc","card","align","noBody","BCard","_class","slots","scopedSlots","imgLeft","imgRight","imgStart","imgEnd","imgBottom","header","headerHtml","textVariant","bgVariant","borderVariant","$scopedSlots","$slots","slotScope","$imgFirst","$imgLast","$img","$header","hasHeaderSlot","$content","overlay","$footer","hasFooterSlot","tag","id","_s","label","errorName","rules","vid","_u","fn","ref","errors","placeholder","readonly","step","onpaste","formatter","disableCopyPaste","on","onChange","onInput","onBlur","nativeOn","$event","handleKeyPress","innerValue","text","_e","directives","rawName","icon","iconSize","onClick","BFormInput","BFormGroup","ValidationProvider","mixins","sweetAlert","Function","validator","showIcon","isAllowSpecialCharacters","isAllowOnlySpecialCharacters","isAllowCopyAndPaste","isAllowNegativeNumbers","maxLength","validateInputLength","event","preventDefault","alertInfo","_watch","_makeModelMixin","defaultValue","warn","modelMixin","mixin","modelProps","MODEL_PROP_NAME","prop","MODEL_EVENT_NAME","ELLIPSIS_THRESHOLD","DEFAULT_LIMIT","startNumber","_","number","classes","limit","page","keyCode","immediatePropagation","currentTarget","click","ariaLabel","disabled","ellipsisClass","ellipsisText","firstClass","firstNumber","firstText","hideEllipsis","hideGotoEndButtons","labelFirstPage","labelLastPage","labelNextPage","labelPage","labelPrevPage","lastClass","lastNumber","lastText","nextClass","nextText","pageClass","pills","prevClass","prevText","size","paginationMixin","localNumberOfPages","localLimit","btnSize","alignment","styleClass","computedCurrentPage","paginationParams","showFirstDots","showLastDots","numberOfLinks","math","lastPageNumber","pageList","_this$paginationParam","pages","idx","_i","_i2","_i3","newValue","oldValue","_this","$nextTick","handleKeyNav","shiftKey","isNav","propagation","focusFirst","focusPrev","focusLast","focusNext","getButtons","$el","btn","focusCurrent","_this2","find","_this3","_this4","reverse","_this5","buttons","indexOf","_this6","_this7","pageNumbers","map","p","_this$paginationParam2","fill","$buttons","isActivePage","pageNumber","noCurrentPage","makeEndBtn","linkTo","btnSlot","btnText","btnClass","pageTest","isDisabled","scope","$btnContent","normalizeSlot","$inner","linkProps","role","tabindex","ariaControls","keydown","makeEllipsis","isLast","makePageButton","active","tabIndex","btnContent","makePage","content","$firstPageBtn","offset","$lastPageBtn","$pagination","DEFAULT_PER_PAGE","DEFAULT_TOTAL_ROWS","totalRows","BPagination","result","pageSizeNumberOfPages","clickEvt","cancelable","vueTarget","defaultPrevented","contains","pageNum","ariaLive","forceShow","tooltip","BFormInvalidFeedback","show","showModal","resetFilter","auditTrailList","tableHeaders","proxy","onSelectAuditTrailItem","item","modalHeader","dataOperationType","entity","subjectIdentifier","fullName","dateCreated","requestHostIPAddress","viewAuditTrailList","viewAuditTrailTableHeaders","sortBy","addSpaceToString","isArray","_l","entries","currentIndex","fetchAuditTrails","resetFilters","initiatorIDOptions","option","$set","operationTypeOptions","functionOptions","minFilterDate","maxFilterDate","CALENDAR_GREGORY","CALENDAR_LONG","CALENDAR_NARROW","CALENDAR_SHORT","DATE_FORMAT_2_DIGIT","DATE_FORMAT_NUMERIC","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","prototype","toString","call","slice","constructor","test","len","arr2","Symbol","iterator","_arr","_n","_d","next","done","err","_construct","Parent","args","Class","_isNativeReflectConstruct","Reflect","construct","a","Constructor","instance","_setPrototypeOf","sham","Proxy","Date","e","setPrototypeOf","__proto__","createDate","_len","_key","date","trim","_date$split$map","split","v","_date$split$map2","year","month","day","getFullYear","getMonth","getDate","formatYMD","locales","calendar","identity","fmt","Intl","DateTimeFormat","resolvedOptions","locale","createDateFormatter","dtf","format","datesEqual","date1","date2","firstDateOfMonth","setDate","lastDateOfMonth","setMonth","addYears","numberOfYears","setFullYear","oneMonthAgo","oneMonthAhead","oneYearAgo","oneYearAhead","oneDecadeAgo","oneDecadeAhead","max","block","dateDisabledFn","dateFormatOptions","weekday","dateInfoFn","direction","hidden","hideHeader","initialDate","labelCalendar","labelCurrentMonth","labelHelp","labelNav","labelNextDecade","labelNextMonth","labelNextYear","labelNoDateSelected","labelPrevDecade","labelPrevMonth","labelPrevYear","labelSelected","labelToday","navButtonVariant","noHighlightToday","noKeyNav","roleDescription","selectedVariant","showDecadeNav","startWeekday","todayVariant","valueAsDate","weekdayHeaderFormat","array","BCalendar","selected","selectedYMD","activeYMD","getToday","gridHasFocus","isLive","valueId","safeId","widgetId","navId","gridId","gridCaptionId","gridHelpId","activeId","selectedDate","activeDate","computedMin","computedMax","computedWeekStarts","computedLocale","computedDateDisabledFn","computedDateInfoFn","calendarLocale","replace","calendarYear","calendarMonth","calendarFirstDay","calendarDaysInMonth","computedVariant","computedTodayVariant","computedNavButtonVariant","dir","toLowerCase","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","weekOffset","currentDay","week","j","dayYMD","dayDisabled","dateInfo","isThisMonth","info","calendarHeadings","d","old","newYMD","oldYMD","constrainDate","setLive","mounted","activated","deactivated","beforeDestroy","focus","grid","blur","emitSelected","setGridFocusFlag","onKeydownWrapper","altKey","ctrlKey","checkDate","constrainedToday","onKeydownGrid","onClickDay","clickedDate","gotoPrevDecade","gotoPrevYear","gotoPrevMonth","gotoCurrentMonth","gotoNextMonth","gotoNextYear","gotoNextDecade","onHeaderClick","hideDecadeNav","todayYMD","highlightToday","for","title","labelSelectedDate","navScope","navProps","shiftV","navPrevProps","flipH","navNextProps","$prevDecadeIcon","$prevYearIcon","$prevMonthIcon","$thisMonthIcon","$nextMonthIcon","$nextYearIcon","$nextDecadeIcon","makeNavBtn","handler","btnDisabled","shortcut","$nav","$gridCaption","$gridWeekDays","$gridBody","$cells","dIndex","isSelected","isActive","isToday","idCell","$btn","join","pointerEvents","$gridHelp","$grid","$slot","$widget","lang","bvAttrs","PROP","MOUSEENTER","MOUSELEAVE","createListener","listener","_ref$value","hasListener","handlerChanged","VBHover","componentUpdated","dropdown","buttonOnly","buttonVariant","formattedValue","menuClass","BVFormBtnLabelControl","isHovered","hasFocus","idButton","idLabel","idMenu","idWrapper","computedDir","toggle","setFocus","handleHover","hovered","visible","invalid","btnScope","opened","$button","mousedown","onMousedown","hasNormalizedSlot","scale","$hidden","form","$menu","onKeydown","$label","stateClass","sizeFormClass","directionClass","boundaryClass","calendarProps","formBtnLabelControlProps","calendarWidth","closeButton","closeButtonVariant","dark","labelCloseButton","labelResetButton","labelTodayButton","noCloseOnSelect","resetButton","resetButtonVariant","resetValue","todayButton","todayButtonVariant","BFormDatepicker","localYMD","isVisible","localLocale","calendarYM","computedLang","computedResetValue","control","updatePopper","_unused","setAndClose","hide","onSelected","onContext","ctx","onTodayButton","onResetButton","onCloseButton","onShow","onShown","onHidden","defaultButtonFn","$props","variant","_label","_label2","$calendar","shown","BRow","BCol","TableEntries","Button","BTable","TablePagination","BModal","BSpinner","InputField","SelectField","Ripple","minDate","maxDate","isReadonly","isFullName","showFormErrorAlert","modalTitle","buttonLabel","accountOfficerFormData","lastName","otherNames","staffID","phoneNumber","accessLevel","gender","address","branchCode","username","action","oldData","newData","items","DateCreated","formatDateTime","DateLastModified","reduce","currentValue","$root","ariaInvalid","autocomplete","debounce","lazy","lazyFormatter","plaintext","formTextMixin","localValue","vModelValue","modifyValue","computedClass","isRange","isColor","computedDebounce","hasFormatter","stringifyValue","modifiedValue","clearDebounce","$_inputDebounceTimer","$on","clearTimeout","formatValue","force","updateValue","doUpdate","$input","composing","TYPES","list","noWheel","localType","computedAttrs","computedAriaInvalid","computedListeners","bvListeners","change","setWheelStopper","onWheelFocus","onWheelBlur","document","stopWheel","removeSpecialChar","regex","removeNegativeNumber","removeCharAndSpace","persistPhoneNumber","persistAccountNumber","titleTag","BCardTitle","fails","isObject","classof","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","isExtensible","FAILS_ON_PRIMITIVES","module","exports","it","collection","collectionStrong","init","subTitle","subTitleTag","subTitleTextVariant","BCardSubTitle","bodyClass","BCardBody","bodyBgVariant","bodyBorderVariant","bodyTextVariant","$title","$subTitle","bodyTag","f","create","redefineAll","anInstance","iterate","defineIterator","setSpecies","DESCRIPTORS","fastKey","InternalStateModule","setInternalState","internalStateGetterFor","getterFor","getConstructor","wrapper","CONSTRUCTOR_NAME","IS_MAP","ADDER","that","iterable","Prototype","first","last","AS_ENTRIES","getInternalState","define","previous","entry","getEntry","removed","clear","prev","callbackfn","boundFunction","has","add","setStrong","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","iterated","kind","$","global","uncurryThis","isForced","redefine","InternalMetadataModule","isCallable","checkCorrectnessOfIteration","setToStringTag","inheritIfRequired","common","IS_WEAK","NativeConstructor","NativePrototype","exported","fixMethod","KEY","uncurriedNativeMethod","REPLACE","enable","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","dummy","forced","kebabName","iconName","iconNameClass","iconTitle","svgContent","stacked","BIconBlank","BIconCalendar","BIconCalendarFill","BIconChevronBarLeft","BIconChevronDoubleLeft","BIconChevronDown","BIconChevronLeft","BIconCircleFill","BIconDash","BIconPersonFill","BIconPlus","escapeChar","firstCharCode","charCodeAt","char","charCode","BFormRow","BFormValidFeedback","INPUTS","INPUT_SELECTOR","LEGEND_INTERACTIVE_ELEMENTS","breakpoint","description","feedbackAriaLive","invalidFeedback","labelClass","labelFor","labelSize","labelSrOnly","validFeedback","validated","ariaDescribedby","contentColProps","getColProps","labelAlignClasses","getAlignClasses","labelColProps","isHorizontal","updateAriaDescribedby","prefix","propValue","attr","newIds","oldIds","ids","onLegendClick","tagName","inputs","computedState","isFieldset","labelContent","labelId","labelTag","$invalidFeedback","invalidFeedbackContent","invalidFeedbackId","$validFeedback","validFeedbackContent","validFeedbackId","$description","descriptionContent","descriptionId","capitalizeFirstLetter","charAt","toUpperCase","RTL_LANGS","isLocaleRTL","parts","locale1","locale2","inline","BFormText","PLACEMENT_TOP_START","PLACEMENT_TOP_END","PLACEMENT_BOTTOM_START","PLACEMENT_BOTTOM_END","PLACEMENT_RIGHT_START","PLACEMENT_LEFT_START","clickOutMixin","listenForClickOut","clickOutElement","clickOutEventName","_clickOutHandler","beforeCreate","isClickOut","clickOutHandler","focusInMixin","listenForFocusIn","focusInElement","_focusInHandler","focusInHandler","ROOT_EVENT_NAME_SHOWN","ROOT_EVENT_NAME_HIDDEN","SELECTOR_FORM_CHILD","SELECTOR_ITEM","selector","els","boundary","dropleft","dropright","dropup","noFlip","popperOpts","dropdownMixin","provide","bvDropdown","inject","bvNavbar","visibleChangePrevented","inNavbar","toggler","eventName","bvEvent","menu","relatedTarget","componentId","emitEvent","$off","focusToggler","showMenu","hideMenu","$_popper","$_hideTimeout","whileOpenListen","destroyPopper","clearHideTimeout","emitOnRoot","createPopper","focusMenu","element","getPopperConfig","destroy","scheduleUpdate","placement","popperConfig","flip","enabled","boundariesElement","preventOverflow","isOpen","method","rootCloseListener","vm","refocus","$once","_event","onEsc","onSplitClick","hideHandler","up","getItems","focusItem","baseAttrs","viewBox","focusable","stackedAttrs","animation","flipV","fontScale","rotate","shiftH","BVIconBase","hasScale","hasTransforms","hasShift","hasContent","transforms","transform","innerHTML","fontSize","xmlns","formSizeMixin","BButton","className","loading","headerClass","BCardHeader","headerBgVariant","headerBorderVariant","headerTextVariant","headerTag","$t","Pagination","preventExtensions","formStateMixin","ArrayBuffer","buffer","SELECTOR","autofocus","formControlMixin","handleAutofocus","clearable","multiple","setSelected","isBrowser","window","navigator","timeoutDuration","longerTimeoutBrowsers","userAgent","microtaskDebounce","called","Promise","resolve","then","taskDebounce","scheduled","supportsMicroTasks","isFunction","functionToCheck","getType","getStyleComputedProperty","property","nodeType","ownerDocument","defaultView","css","getComputedStyle","getParentNode","nodeName","parentNode","host","getScrollParent","body","_getStyleComputedProp","overflowX","overflowY","getReferenceNode","reference","referenceNode","isIE11","MSInputMethodContext","documentMode","isIE10","isIE","version","getOffsetParent","documentElement","noOffsetParent","offsetParent","nextElementSibling","isOffsetContainer","firstElementChild","getRoot","node","findCommonOffsetParent","element1","element2","order","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","range","createRange","setStart","setEnd","commonAncestorContainer","element1root","getScroll","side","upperSide","scrollingElement","includeScroll","rect","subtract","scrollTop","scrollLeft","modifier","getBordersSize","styles","axis","sideA","sideB","parseFloat","getSize","computedStyle","parseInt","getWindowSizes","classCallCheck","createClass","descriptor","protoProps","staticProps","_extends","assign","hasOwnProperty","getClientRect","offsets","getBoundingClientRect","sizes","clientWidth","clientHeight","horizScrollbar","offsetWidth","vertScrollbar","getOffsetRectRelativeToArbitraryNode","parent","fixedPosition","isHTML","childrenRect","parentRect","scrollParent","borderTopWidth","borderLeftWidth","marginTop","marginLeft","getViewportOffsetRectRelativeToArtbitraryNode","excludeScroll","relativeOffset","innerWidth","innerHeight","isFixed","getFixedPositionOffsetParent","parentElement","getBoundaries","popper","padding","boundaries","boundariesNode","_getWindowSizes","isPaddingNumber","getArea","computeAutoPlacement","refRect","rects","sortedAreas","area","sort","b","filteredAreas","computedPlacement","variation","getReferenceOffsets","commonOffsetParent","getOuterSizes","x","marginBottom","y","marginRight","getOppositePlacement","hash","matched","getPopperOffsets","referenceOffsets","popperRect","popperOffsets","isHoriz","mainSide","secondarySide","measurement","secondaryMeasurement","check","findIndex","cur","match","runModifiers","ends","modifiersToRun","console","update","isDestroyed","arrowStyles","attributes","flipped","positionFixed","originalPlacement","position","isCreated","onUpdate","onCreate","isModifierEnabled","modifierName","some","getSupportedPropertyName","prefixes","upperProp","toCheck","removeAttribute","willChange","disableEventListeners","removeOnDestroy","removeChild","getWindow","attachToScrollParents","scrollParents","isBody","addEventListener","passive","setupEventListeners","updateBound","scrollElement","eventsEnabled","enableEventListeners","removeEventListeners","removeEventListener","cancelAnimationFrame","isNumeric","isNaN","isFinite","setStyles","unit","setAttributes","setAttribute","applyStyle","arrowElement","applyStyleOnLoad","modifierOptions","getRoundedOffsets","shouldRound","_data$offsets","round","noRound","referenceWidth","popperWidth","isVertical","isVariation","sameWidthParity","bothOddWidth","horizontalToInteger","verticalToInteger","isFirefox","computeStyle","legacyGpuAccelerationOption","gpuAcceleration","offsetParentRect","devicePixelRatio","prefixedProperty","invertTop","invertLeft","arrow","isModifierRequired","requestingName","requestedName","requesting","isRequired","_requesting","requested","_data$offsets$arrow","querySelector","sideCapitalized","altSide","opSide","arrowElementSize","center","popperMarginSide","popperBorderSide","sideValue","getOppositeVariation","placements","validPlacements","clockwise","counter","BEHAVIORS","FLIP","CLOCKWISE","COUNTERCLOCKWISE","placementOpposite","flipOrder","behavior","refOffsets","overlapsRef","overflowsLeft","overflowsRight","overflowsTop","overflowsBottom","overflowsBoundaries","flippedVariationByRef","flipVariations","flippedVariationByContent","flipVariationsByContent","flippedVariation","keepTogether","toValue","str","parseOffset","basePlacement","useHeight","fragments","frag","divider","search","splitRegex","ops","op","mergeWithPrevious","index2","transformProp","popperStyles","priority","primary","escapeWithReference","secondary","shift","shiftvariation","shiftOffsets","bound","inner","subtractLength","onLoad","Defaults","Popper","requestAnimationFrame","jquery","Utils","PopperUtils","hiddenKeys","hasOwn","getOwnPropertyNamesModule","getOwnPropertyNamesExternalModule","uid","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","getWeakData","onFreeze","meta","getOwnPropertyNames","splice","stat"],"mappings":"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","file":"js/chunk-60382d1a.247d1380.js","sourcesContent":["import { Vue } from '../vue'; // @vue/component\n\nexport var formSelectionMixin = Vue.extend({\n computed: {\n selectionStart: {\n // Expose selectionStart for formatters, etc\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.selectionStart;\n },\n\n /* istanbul ignore next */\n set: function set(val) {\n this.$refs.input.selectionStart = val;\n }\n },\n selectionEnd: {\n // Expose selectionEnd for formatters, etc\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.selectionEnd;\n },\n\n /* istanbul ignore next */\n set: function set(val) {\n this.$refs.input.selectionEnd = val;\n }\n },\n selectionDirection: {\n // Expose selectionDirection for formatters, etc\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.selectionDirection;\n },\n\n /* istanbul ignore next */\n set: function set(val) {\n this.$refs.input.selectionDirection = val;\n }\n }\n },\n methods: {\n /* istanbul ignore next */\n select: function select() {\n var _this$$refs$input;\n\n // For external handler that may want a select() method\n (_this$$refs$input = this.$refs.input).select.apply(_this$$refs$input, arguments);\n },\n\n /* istanbul ignore next */\n setSelectionRange: function setSelectionRange() {\n var _this$$refs$input2;\n\n // For external handler that may want a setSelectionRange(a,b,c) method\n (_this$$refs$input2 = this.$refs.input).setSelectionRange.apply(_this$$refs$input2, arguments);\n },\n\n /* istanbul ignore next */\n setRangeText: function setRangeText() {\n var _this$$refs$input3;\n\n // For external handler that may want a setRangeText(a,b,c) method\n (_this$$refs$input3 = this.$refs.input).setRangeText.apply(_this$$refs$input3, arguments);\n }\n }\n});","export const tableMixins = {\n data() {\n return {\n isBusy: false,\n showSpinner: false,\n sortDesc: false,\n searchQuery: '',\n statusFilter: '',\n perPage: 10,\n pageSize: 0,\n currentPage: 1,\n perPageOptions: [10, 25, 50, 100],\n totalCount: 0,\n statusOptions: [\n 'Active',\n 'Inactive',\n ],\n approvalTotalCount: 0,\n approvalPerPage: 10,\n approvalPageSize: 0,\n approvalCurrentPage: 1,\n }\n },\n computed: {\n totalEntries() {\n return this.totalCount\n },\n numberOfPages() {\n return Math.floor((this.totalEntries + this.perPage - 1) / this.perPage)\n },\n from() {\n if (this.totalCount === 0) {\n return 0\n }\n return (this.currentPage * this.perPage) - (this.perPage - 1)\n },\n to() {\n return Math.min(this.from + this.perPage - 1, this.totalEntries)\n },\n approvalTotalEntries() {\n return this.approvalTotalCount\n },\n approvalNumberOfPages() {\n return Math.floor((this.approvalTotalCount + this.approvalPerPage - 1) / this.approvalPerPage)\n },\n approvalFom() {\n if (this.approvalTotalCount === 0) {\n return 0\n }\n return (this.approvalCurrentPage * this.approvalPerPage) - (this.approvalPerPage - 1)\n },\n approvalTo() {\n return Math.min(this.approvalFom + this.approvalPerPage - 1, this.approvalTotalCount)\n },\n },\n methods: {\n variantColor(status) {\n return status === 'Active' ? 'light-success' : 'light-secondary'\n },\n getOverallIndex(index) {\n return (this.currentPage * this.perPage) - this.perPage + index + 1\n },\n },\n}\n\nexport const _ = null\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('label',[_vm._v(\"Show\")]),_c('v-select',{staticClass:\"per-page-selector d-inline-block ml-50 mr-1\",attrs:{\"dir\":_vm.$store.state.appConfig.isRTL ? 'rtl' : 'ltr',\"options\":_vm.options,\"value\":_vm.value,\"clearable\":false},model:{value:(_vm.perPage),callback:function ($$v) {_vm.perPage=$$v},expression:\"perPage\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n Show\n \n \n\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableEntries.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableEntries.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TableEntries.vue?vue&type=template&id=bcfccc92&scoped=true&\"\nimport script from \"./TableEntries.vue?vue&type=script&lang=js&\"\nexport * from \"./TableEntries.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TableEntries.vue?vue&type=style&index=0&lang=scss&\"\nimport style1 from \"./TableEntries.vue?vue&type=style&index=1&id=bcfccc92&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"bcfccc92\",\n null\n \n)\n\nexport default component.exports","export const heightFade = {\n /* eslint-disable no-param-reassign */\n inserted(el, binding) {\n const height = `${el.offsetHeight}px`\n\n if (binding.modifiers.appear) {\n el.style.overflow = 'hidden'\n el.style.maxHeight = '0px'\n el.style.opacity = 0\n\n // Focus the element\n setTimeout(() => {\n el.style.maxHeight = height\n el.style.opacity = 1\n setTimeout(() => {\n el.style.overflow = 'unset'\n }, 300)\n }, 100)\n } else {\n el.style.maxHeight = height\n }\n },\n unbind(el) {\n if (el.style === undefined) return\n el.style.overflow = 'hidden'\n el.style.maxHeight = '0px'\n el.style.opacity = 0\n },\n /* eslint-enable no-param-reassign */\n}\n\nexport const temp = 2\n","import { Vue } from '../vue'; // @vue/component\n\nexport var formValidityMixin = Vue.extend({\n computed: {\n validity: {\n // Expose validity property\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.validity;\n }\n },\n validationMessage: {\n // Expose validationMessage property\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.validationMessage;\n }\n },\n willValidate: {\n // Expose willValidate property\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.willValidate;\n }\n }\n },\n methods: {\n /* istanbul ignore next */\n setCustomValidity: function setCustomValidity() {\n var _this$$refs$input;\n\n // For external handler that may want a setCustomValidity(...) method\n return (_this$$refs$input = this.$refs.input).setCustomValidity.apply(_this$$refs$input, arguments);\n },\n\n /* istanbul ignore next */\n checkValidity: function checkValidity() {\n var _this$$refs$input2;\n\n // For external handler that may want a checkValidity(...) method\n return (_this$$refs$input2 = this.$refs.input).checkValidity.apply(_this$$refs$input2, arguments);\n },\n\n /* istanbul ignore next */\n reportValidity: function reportValidity() {\n var _this$$refs$input3;\n\n // For external handler that may want a reportValidity(...) method\n return (_this$$refs$input3 = this.$refs.input).reportValidity.apply(_this$$refs$input3, arguments);\n }\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { 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'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, 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})), NAME_CARD_FOOTER); // --- Main component ---\n// @vue/component\n\nexport var BCardFooter = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_FOOTER,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _ref2;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var footerBgVariant = props.footerBgVariant,\n footerBorderVariant = props.footerBorderVariant,\n footerTextVariant = props.footerTextVariant;\n return h(props.footerTag, mergeData(data, {\n staticClass: 'card-footer',\n class: [props.footerClass, (_ref2 = {}, _defineProperty(_ref2, \"bg-\".concat(footerBgVariant), footerBgVariant), _defineProperty(_ref2, \"border-\".concat(footerBorderVariant), footerBorderVariant), _defineProperty(_ref2, \"text-\".concat(footerTextVariant), footerTextVariant), _ref2)],\n domProps: children ? {} : htmlOrText(props.footerHtml, props.footer)\n }), children);\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { 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'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, 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})), NAME_CARD_IMG); // --- Main component ---\n// @vue/component\n\nexport var BCardImg = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_IMG,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data;\n var src = props.src,\n alt = props.alt,\n width = props.width,\n height = props.height;\n var baseClass = 'card-img';\n\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('img', mergeData(data, {\n class: baseClass,\n attrs: {\n src: src,\n alt: alt,\n width: width,\n height: height\n }\n }));\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { 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 { copyProps, makeProp, makePropsConfigurable, pluckProps, prefixPropName, unprefixPropName } 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'; // --- Props ---\n\nvar cardImgProps = copyProps(BCardImgProps, prefixPropName.bind(null, 'img'));\ncardImgProps.imgSrc.required = false;\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, BCardBodyProps), BCardHeaderProps), BCardFooterProps), cardImgProps), cardProps), {}, {\n align: makeProp(PROP_TYPE_STRING),\n noBody: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_CARD); // --- Main component ---\n// @vue/component\n\nexport var BCard = /*#__PURE__*/Vue.extend({\n name: NAME_CARD,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _class;\n\n var props = _ref.props,\n data = _ref.data,\n slots = _ref.slots,\n scopedSlots = _ref.scopedSlots;\n var imgSrc = props.imgSrc,\n imgLeft = props.imgLeft,\n imgRight = props.imgRight,\n imgStart = props.imgStart,\n imgEnd = props.imgEnd,\n imgBottom = props.imgBottom,\n header = props.header,\n headerHtml = props.headerHtml,\n footer = props.footer,\n footerHtml = props.footerHtml,\n align = props.align,\n textVariant = props.textVariant,\n bgVariant = props.bgVariant,\n borderVariant = props.borderVariant;\n var $scopedSlots = scopedSlots || {};\n var $slots = slots();\n var slotScope = {};\n var $imgFirst = h();\n var $imgLast = h();\n\n if (imgSrc) {\n var $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 var $header = h();\n var hasHeaderSlot = hasNormalizedSlot(SLOT_NAME_HEADER, $scopedSlots, $slots);\n\n if (hasHeaderSlot || header || headerHtml) {\n $header = h(BCardHeader, {\n props: pluckProps(BCardHeaderProps, props),\n domProps: hasHeaderSlot ? {} : htmlOrText(headerHtml, header)\n }, normalizeSlot(SLOT_NAME_HEADER, slotScope, $scopedSlots, $slots));\n }\n\n var $content = normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots); // Wrap content in `` when `noBody` prop set\n\n if (!props.noBody) {\n $content = h(BCardBody, {\n props: pluckProps(BCardBodyProps, props)\n }, $content); // When the `overlap` prop is set we need to wrap the `` and ``\n // into a relative positioned wrapper to don't distract a potential header or footer\n\n if (props.overlay && imgSrc) {\n $content = h('div', {\n staticClass: 'position-relative'\n }, [$imgFirst, $content, $imgLast]); // Reset image variables since they are already in the wrapper\n\n $imgFirst = h();\n $imgLast = h();\n }\n }\n\n var $footer = h();\n var hasFooterSlot = hasNormalizedSlot(SLOT_NAME_FOOTER, $scopedSlots, $slots);\n\n if (hasFooterSlot || footer || footerHtml) {\n $footer = h(BCardFooter, {\n props: pluckProps(BCardFooterProps, props),\n domProps: hasHeaderSlot ? {} : htmlOrText(footerHtml, footer)\n }, normalizeSlot(SLOT_NAME_FOOTER, slotScope, $scopedSlots, $slots));\n }\n\n return h(props.tag, mergeData(data, {\n staticClass: 'card',\n class: (_class = {\n 'flex-row': imgLeft || imgStart,\n 'flex-row-reverse': (imgRight || imgEnd) && !(imgLeft || imgStart)\n }, _defineProperty(_class, \"text-\".concat(align), align), _defineProperty(_class, \"bg-\".concat(bgVariant), bgVariant), _defineProperty(_class, \"border-\".concat(borderVariant), borderVariant), _defineProperty(_class, \"text-\".concat(textVariant), textVariant), _class)\n }), [$imgFirst, $header, $content, $footer, $imgLast]);\n }\n});","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-form-group',[_c('label',{attrs:{\"for\":_vm.id}},[_vm._v(_vm._s(_vm.label)+\" \")]),_c('validation-provider',{attrs:{\"name\":_vm.errorName,\"rules\":_vm.rules,\"vid\":_vm.vid},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('div',{staticClass:\"d-flex align-items-center\"},[_c('b-form-input',{attrs:{\"id\":_vm.id,\"for\":_vm.id,\"type\":_vm.type,\"placeholder\":_vm.placeholder,\"readonly\":_vm.readonly,\"value\":_vm.value,\"state\":errors.length > 0 ? false : null,\"step\":_vm.step,\"onpaste\":_vm.onpaste,\"formatter\":_vm.formatter,\"autocomplete\":\"off\",\"on-mousedown\":_vm.disableCopyPaste},on:{\"change\":_vm.onChange,\"input\":_vm.onInput,\"blur\":_vm.onBlur},nativeOn:{\"keypress\":function($event){return _vm.handleKeyPress.apply(null, arguments)},\"keydown\":function($event){return _vm.disableCopyPaste.apply(null, arguments)}},model:{value:(_vm.innerValue),callback:function ($$v) {_vm.innerValue=$$v},expression:\"innerValue\"}}),(_vm.text)?_c('p',{staticClass:\"ml-1\"},[_vm._v(\"\\n \"+_vm._s(_vm.text)+\"\\n \")]):_vm._e(),_c('feather-icon',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showIcon),expression:\"showIcon\"}],staticClass:\"cursor-pointer ml-1\",attrs:{\"icon\":_vm.icon,\"size\":_vm.iconSize},on:{\"click\":_vm.onClick}})],1),_c('small',{staticClass:\"text-danger error-text\"},[_vm._v(_vm._s(errors[0]))])]}}])})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n {{ label }} \n \n \n 0 ? false : null\"\n :step=\"step\"\n :onpaste=\"onpaste\"\n :formatter=\"formatter\"\n autocomplete=\"off\"\n :on-mousedown=\"disableCopyPaste\"\n @change=\"onChange\"\n @input=\"onInput\"\n @blur=\"onBlur\"\n @keypress.native=\"handleKeyPress\"\n @keydown.native=\"disableCopyPaste\"\n />\n \n {{ text }}\n \n \n \n\n {{ errors[0] }}\n \n \n \n\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputField.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputField.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputField.vue?vue&type=template&id=c26398c2&scoped=true&\"\nimport script from \"./InputField.vue?vue&type=script&lang=js&\"\nexport * from \"./InputField.vue?vue&type=script&lang=js&\"\nimport style0 from \"./InputField.vue?vue&type=style&index=0&id=c26398c2&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"c26398c2\",\n null\n \n)\n\nexport default component.exports","var _watch;\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { 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 { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_NUMBER_STRING, PROP_TYPE_FUNCTION_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../constants/props';\nimport { SLOT_NAME_ELLIPSIS_TEXT, SLOT_NAME_FIRST_TEXT, SLOT_NAME_LAST_TEXT, SLOT_NAME_NEXT_TEXT, SLOT_NAME_PAGE, SLOT_NAME_PREV_TEXT } from '../constants/slots';\nimport { createArray } from '../utils/array';\nimport { attemptFocus, getActiveElement, getAttr, isDisabled, isVisible, selectAll } 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'; // Common props, computed, data, render function, and methods\n// for `` and ``\n// --- Constants ---\n\nvar _makeModelMixin = makeModelMixin('value', {\n type: PROP_TYPE_BOOLEAN_NUMBER_STRING,\n defaultValue: null,\n\n /* istanbul ignore next */\n validator: function 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\n return true;\n }\n}),\n modelMixin = _makeModelMixin.mixin,\n modelProps = _makeModelMixin.props,\n MODEL_PROP_NAME = _makeModelMixin.prop,\n MODEL_EVENT_NAME = _makeModelMixin.event;\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }; // Threshold of limit size when we start/stop showing ellipsis\n\nvar ELLIPSIS_THRESHOLD = 3; // Default # of buttons limit\n\nvar DEFAULT_LIMIT = 5; // --- Helper methods ---\n// Make an array of N to N+X\n\nvar makePageArray = function makePageArray(startNumber, numberOfPages) {\n return createArray(numberOfPages, function (_, i) {\n return {\n number: startNumber + i,\n classes: null\n };\n });\n}; // Sanitize the provided limit value (converting to a number)\n\n\nvar sanitizeLimit = function sanitizeLimit(value) {\n var limit = toInteger(value) || 1;\n return limit < 1 ? DEFAULT_LIMIT : limit;\n}; // Sanitize the provided current page number (converting to a number)\n\n\nvar sanitizeCurrentPage = function sanitizeCurrentPage(val, numberOfPages) {\n var page = toInteger(val) || 1;\n return page > numberOfPages ? numberOfPages : page < 1 ? 1 : page;\n}; // Links don't normally respond to SPACE, so we add that\n// functionality via this handler\n\n\nvar onSpaceKey = function onSpaceKey(event) {\n if (event.keyCode === CODE_SPACE) {\n // Stop page from scrolling\n stopEvent(event, {\n immediatePropagation: true\n }); // Trigger the click event on the link\n\n event.currentTarget.click();\n return false;\n }\n}; // --- Props ---\n\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, 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 // '…'\n firstClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n firstNumber: makeProp(PROP_TYPE_BOOLEAN, false),\n firstText: makeProp(PROP_TYPE_STRING, \"\\xAB\"),\n // '«'\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, \"\\xBB\"),\n // '»'\n limit: makeProp(PROP_TYPE_NUMBER_STRING, DEFAULT_LIMIT,\n /* istanbul ignore next */\n function (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\n return true;\n }),\n nextClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n nextText: makeProp(PROP_TYPE_STRING, \"\\u203A\"),\n // '›'\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 // '‹'\n size: makeProp(PROP_TYPE_STRING)\n})), 'pagination'); // --- Mixin ---\n// @vue/component\n\nexport var paginationMixin = Vue.extend({\n mixins: [modelMixin, normalizeSlotMixin],\n props: props,\n data: function data() {\n // `-1` signifies no page initially selected\n var currentPage = toInteger(this[MODEL_PROP_NAME], 0);\n currentPage = currentPage > 0 ? currentPage : -1;\n return {\n currentPage: currentPage,\n localNumberOfPages: 1,\n localLimit: DEFAULT_LIMIT\n };\n },\n computed: {\n btnSize: function btnSize() {\n var size = this.size;\n return size ? \"pagination-\".concat(size) : '';\n },\n alignment: function alignment() {\n var align = this.align;\n\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\n return '';\n },\n styleClass: function styleClass() {\n return this.pills ? 'b-pagination-pills' : '';\n },\n computedCurrentPage: function computedCurrentPage() {\n return sanitizeCurrentPage(this.currentPage, this.localNumberOfPages);\n },\n paginationParams: function paginationParams() {\n // Determine if we should show the the ellipsis\n var limit = this.localLimit,\n numberOfPages = this.localNumberOfPages,\n currentPage = this.computedCurrentPage,\n hideEllipsis = this.hideEllipsis,\n firstNumber = this.firstNumber,\n lastNumber = this.lastNumber;\n var showFirstDots = false;\n var showLastDots = false;\n var numberOfLinks = limit;\n var 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\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\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\n startNumber = currentPage - mathFloor(numberOfLinks / 2);\n } // Sanity checks\n\n /* istanbul ignore if */\n\n\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\n if (showFirstDots && firstNumber && startNumber < 4) {\n numberOfLinks = numberOfLinks + 2;\n startNumber = 1;\n showFirstDots = false;\n }\n\n var lastPageNumber = startNumber + numberOfLinks - 1;\n\n if (showLastDots && lastNumber && lastPageNumber > numberOfPages - 3) {\n numberOfLinks = numberOfLinks + (lastPageNumber === numberOfPages - 2 ? 2 : 3);\n showLastDots = false;\n } // Special handling for lower limits (where ellipsis are never shown)\n\n\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\n numberOfLinks = mathMin(numberOfLinks, numberOfPages - startNumber + 1);\n return {\n showFirstDots: showFirstDots,\n showLastDots: showLastDots,\n numberOfLinks: numberOfLinks,\n startNumber: startNumber\n };\n },\n pageList: function pageList() {\n // Generates the pageList array\n var _this$paginationParam = this.paginationParams,\n numberOfLinks = _this$paginationParam.numberOfLinks,\n startNumber = _this$paginationParam.startNumber;\n var currentPage = this.computedCurrentPage; // Generate list of page numbers\n\n var pages = makePageArray(startNumber, numberOfLinks); // 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\n if (pages.length > 3) {\n var idx = currentPage - startNumber; // THe following is a bootstrap-vue custom utility class\n\n var classes = 'bv-d-xs-down-none';\n\n if (idx === 0) {\n // Keep leftmost 3 buttons visible when current page is first page\n for (var 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 (var _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 (var _i2 = 0; _i2 < idx - 1; _i2++) {\n // hide some left button(s)\n pages[_i2].classes = classes;\n }\n\n for (var _i3 = pages.length - 1; _i3 > idx + 1; _i3--) {\n // hide some right button(s)\n pages[_i3].classes = classes;\n }\n }\n }\n\n return pages;\n }\n },\n watch: (_watch = {}, _defineProperty(_watch, MODEL_PROP_NAME, function (newValue, oldValue) {\n if (newValue !== oldValue) {\n this.currentPage = sanitizeCurrentPage(newValue, this.localNumberOfPages);\n }\n }), _defineProperty(_watch, \"currentPage\", function 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 }), _defineProperty(_watch, \"limit\", function limit(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.localLimit = sanitizeLimit(newValue);\n }\n }), _watch),\n created: function created() {\n var _this = this;\n\n // Set our default values in data\n this.localLimit = sanitizeLimit(this.limit);\n this.$nextTick(function () {\n // Sanity check\n _this.currentPage = _this.currentPage > _this.localNumberOfPages ? _this.localNumberOfPages : _this.currentPage;\n });\n },\n methods: {\n handleKeyNav: function handleKeyNav(event) {\n var keyCode = event.keyCode,\n shiftKey = event.shiftKey;\n /* istanbul ignore if */\n\n if (this.isNav) {\n // We disable left/right keyboard navigation in ``\n return;\n }\n\n if (keyCode === CODE_LEFT || keyCode === CODE_UP) {\n stopEvent(event, {\n propagation: false\n });\n shiftKey ? this.focusFirst() : this.focusPrev();\n } else if (keyCode === CODE_RIGHT || keyCode === CODE_DOWN) {\n stopEvent(event, {\n propagation: false\n });\n shiftKey ? this.focusLast() : this.focusNext();\n }\n },\n getButtons: function getButtons() {\n // Return only buttons that are visible\n return selectAll('button.page-link, a.page-link', this.$el).filter(function (btn) {\n return isVisible(btn);\n });\n },\n focusCurrent: function focusCurrent() {\n var _this2 = this;\n\n // We do this in `$nextTick()` to ensure buttons have finished rendering\n this.$nextTick(function () {\n var btn = _this2.getButtons().find(function (el) {\n return toInteger(getAttr(el, 'aria-posinset'), 0) === _this2.computedCurrentPage;\n });\n\n if (!attemptFocus(btn)) {\n // Fallback if current page is not in button list\n _this2.focusFirst();\n }\n });\n },\n focusFirst: function focusFirst() {\n var _this3 = this;\n\n // We do this in `$nextTick()` to ensure buttons have finished rendering\n this.$nextTick(function () {\n var btn = _this3.getButtons().find(function (el) {\n return !isDisabled(el);\n });\n\n attemptFocus(btn);\n });\n },\n focusLast: function focusLast() {\n var _this4 = this;\n\n // We do this in `$nextTick()` to ensure buttons have finished rendering\n this.$nextTick(function () {\n var btn = _this4.getButtons().reverse().find(function (el) {\n return !isDisabled(el);\n });\n\n attemptFocus(btn);\n });\n },\n focusPrev: function focusPrev() {\n var _this5 = this;\n\n // We do this in `$nextTick()` to ensure buttons have finished rendering\n this.$nextTick(function () {\n var buttons = _this5.getButtons();\n\n var index = buttons.indexOf(getActiveElement());\n\n if (index > 0 && !isDisabled(buttons[index - 1])) {\n attemptFocus(buttons[index - 1]);\n }\n });\n },\n focusNext: function focusNext() {\n var _this6 = this;\n\n // We do this in `$nextTick()` to ensure buttons have finished rendering\n this.$nextTick(function () {\n var buttons = _this6.getButtons();\n\n var index = buttons.indexOf(getActiveElement());\n\n if (index < buttons.length - 1 && !isDisabled(buttons[index + 1])) {\n attemptFocus(buttons[index + 1]);\n }\n });\n }\n },\n render: function render(h) {\n var _this7 = this;\n\n var disabled = this.disabled,\n labelPage = this.labelPage,\n ariaLabel = this.ariaLabel,\n isNav = this.isNav,\n numberOfPages = this.localNumberOfPages,\n currentPage = this.computedCurrentPage;\n var pageNumbers = this.pageList.map(function (p) {\n return p.number;\n });\n var _this$paginationParam2 = this.paginationParams,\n showFirstDots = _this$paginationParam2.showFirstDots,\n showLastDots = _this$paginationParam2.showLastDots;\n var fill = this.align === 'fill';\n var $buttons = []; // Helper function and flag\n\n var isActivePage = function isActivePage(pageNumber) {\n return pageNumber === currentPage;\n };\n\n var noCurrentPage = this.currentPage < 1; // Factory function for prev/next/first/last buttons\n\n var makeEndBtn = function makeEndBtn(linkTo, ariaLabel, btnSlot, btnText, btnClass, pageTest, key) {\n var isDisabled = disabled || isActivePage(pageTest) || noCurrentPage || linkTo < 1 || linkTo > numberOfPages;\n var pageNumber = linkTo < 1 ? 1 : linkTo > numberOfPages ? numberOfPages : linkTo;\n var scope = {\n disabled: isDisabled,\n page: pageNumber,\n index: pageNumber - 1\n };\n var $btnContent = _this7.normalizeSlot(btnSlot, scope) || toString(btnText) || h();\n var $inner = h(isDisabled ? 'span' : isNav ? BLink : 'button', {\n staticClass: 'page-link',\n class: {\n 'flex-grow-1': !isNav && !isDisabled && fill\n },\n props: isDisabled || !isNav ? {} : _this7.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': _this7.ariaControls || null,\n 'aria-disabled': isDisabled ? 'true' : null\n },\n on: isDisabled ? {} : {\n '!click': function click(event) {\n _this7.onClick(event, linkTo);\n },\n keydown: onSpaceKey\n }\n }, [$btnContent]);\n return h('li', {\n key: key,\n staticClass: 'page-item',\n class: [{\n disabled: isDisabled,\n 'flex-fill': fill,\n 'd-flex': fill && !isNav && !isDisabled\n }, btnClass],\n attrs: {\n role: isNav ? null : 'presentation',\n 'aria-hidden': isDisabled ? 'true' : null\n }\n }, [$inner]);\n }; // Ellipsis factory\n\n\n var makeEllipsis = function makeEllipsis(isLast) {\n return h('li', {\n staticClass: 'page-item',\n class: ['disabled', 'bv-d-xs-down-none', fill ? 'flex-fill' : '', _this7.ellipsisClass],\n attrs: {\n role: 'separator'\n },\n key: \"ellipsis-\".concat(isLast ? 'last' : 'first')\n }, [h('span', {\n staticClass: 'page-link'\n }, [_this7.normalizeSlot(SLOT_NAME_ELLIPSIS_TEXT) || toString(_this7.ellipsisText) || h()])]);\n }; // Page button factory\n\n\n var makePageButton = function makePageButton(page, idx) {\n var pageNumber = page.number;\n var active = isActivePage(pageNumber) && !noCurrentPage; // Active page will have tabindex of 0, or if no current page and first page button\n\n var tabIndex = disabled ? null : active || noCurrentPage && idx === 0 ? '0' : '-1';\n var attrs = {\n role: isNav ? null : 'menuitemradio',\n type: isNav || disabled ? null : 'button',\n 'aria-disabled': disabled ? 'true' : null,\n 'aria-controls': _this7.ariaControls || null,\n 'aria-label': hasPropFunction(labelPage) ?\n /* istanbul ignore next */\n labelPage(pageNumber) : \"\".concat(isFunction(labelPage) ? labelPage() : labelPage, \" \").concat(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 var btnContent = toString(_this7.makePage(pageNumber));\n var scope = {\n page: pageNumber,\n index: pageNumber - 1,\n content: btnContent,\n active: active,\n disabled: disabled\n };\n var $inner = h(disabled ? 'span' : isNav ? BLink : 'button', {\n props: disabled || !isNav ? {} : _this7.linkProps(pageNumber),\n staticClass: 'page-link',\n class: {\n 'flex-grow-1': !isNav && !disabled && fill\n },\n attrs: attrs,\n on: disabled ? {} : {\n '!click': function click(event) {\n _this7.onClick(event, pageNumber);\n },\n keydown: onSpaceKey\n }\n }, [_this7.normalizeSlot(SLOT_NAME_PAGE, scope) || btnContent]);\n return h('li', {\n staticClass: 'page-item',\n class: [{\n disabled: disabled,\n active: active,\n 'flex-fill': fill,\n 'd-flex': fill && !isNav && !disabled\n }, page.classes, _this7.pageClass],\n attrs: {\n role: isNav ? null : 'presentation'\n },\n key: \"page-\".concat(pageNumber)\n }, [$inner]);\n }; // Goto first page button\n // Don't render button when `hideGotoEndButtons` or `firstNumber` is set\n\n\n var $firstPageBtn = h();\n\n if (!this.firstNumber && !this.hideGotoEndButtons) {\n $firstPageBtn = makeEndBtn(1, this.labelFirstPage, SLOT_NAME_FIRST_TEXT, this.firstText, this.firstClass, 1, 'pagination-goto-first');\n }\n\n $buttons.push($firstPageBtn); // Goto previous page button\n\n $buttons.push(makeEndBtn(currentPage - 1, this.labelPrevPage, SLOT_NAME_PREV_TEXT, this.prevText, this.prevClass, 1, 'pagination-goto-prev')); // Show first (1) button?\n\n $buttons.push(this.firstNumber && pageNumbers[0] !== 1 ? makePageButton({\n number: 1\n }, 0) : h()); // First ellipsis\n\n $buttons.push(showFirstDots ? makeEllipsis(false) : h()); // Individual page links\n\n this.pageList.forEach(function (page, idx) {\n var offset = showFirstDots && _this7.firstNumber && pageNumbers[0] !== 1 ? 1 : 0;\n $buttons.push(makePageButton(page, idx + offset));\n }); // Last ellipsis\n\n $buttons.push(showLastDots ? makeEllipsis(true) : h()); // Show last page button?\n\n $buttons.push(this.lastNumber && pageNumbers[pageNumbers.length - 1] !== numberOfPages ? makePageButton({\n number: numberOfPages\n }, -1) : h()); // Goto next page button\n\n $buttons.push(makeEndBtn(currentPage + 1, this.labelNextPage, SLOT_NAME_NEXT_TEXT, this.nextText, this.nextClass, numberOfPages, 'pagination-goto-next')); // Goto last page button\n // Don't render button when `hideGotoEndButtons` or `lastNumber` is set\n\n var $lastPageBtn = h();\n\n if (!this.lastNumber && !this.hideGotoEndButtons) {\n $lastPageBtn = makeEndBtn(numberOfPages, this.labelLastPage, SLOT_NAME_LAST_TEXT, this.lastText, this.lastClass, numberOfPages, 'pagination-goto-last');\n }\n\n $buttons.push($lastPageBtn); // Assemble the pagination buttons\n\n var $pagination = h('ul', {\n staticClass: 'pagination',\n class: ['b-pagination', this.btnSize, this.alignment, this.styleClass],\n attrs: {\n role: isNav ? null : 'menubar',\n 'aria-disabled': disabled ? 'true' : 'false',\n 'aria-label': isNav ? null : ariaLabel || null\n },\n // We disable keyboard left/right nav when ``\n on: isNav ? {} : {\n keydown: this.handleKeyNav\n },\n ref: 'ul'\n }, $buttons); // If we are ``, wrap in `` wrapper\n\n if (isNav) {\n return h('nav', {\n attrs: {\n 'aria-disabled': disabled ? 'true' : null,\n 'aria-hidden': disabled ? 'true' : 'false',\n 'aria-label': isNav ? ariaLabel || null : null\n }\n }, [$pagination]);\n }\n\n return $pagination;\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { 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'; // --- Constants ---\n\nvar DEFAULT_PER_PAGE = 20;\nvar DEFAULT_TOTAL_ROWS = 0; // --- Helper methods ---\n// Sanitize the provided per page number (converting to a number)\n\nvar sanitizePerPage = function sanitizePerPage(value) {\n return mathMax(toInteger(value) || DEFAULT_PER_PAGE, 1);\n}; // Sanitize the provided total rows number (converting to a number)\n\n\nvar sanitizeTotalRows = function sanitizeTotalRows(value) {\n return mathMax(toInteger(value) || DEFAULT_TOTAL_ROWS, 0);\n}; // --- Props ---\n\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, 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})), NAME_PAGINATION); // --- Main component ---\n// @vue/component\n\nexport var BPagination = /*#__PURE__*/Vue.extend({\n name: NAME_PAGINATION,\n // The render function is brought in via the `paginationMixin`\n mixins: [paginationMixin],\n props: props,\n computed: {\n numberOfPages: function numberOfPages() {\n var 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: function pageSizeNumberOfPages() {\n return {\n perPage: sanitizePerPage(this.perPage),\n totalRows: sanitizeTotalRows(this.totalRows),\n numberOfPages: this.numberOfPages\n };\n }\n },\n watch: {\n pageSizeNumberOfPages: function 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 (newValue.numberOfPages !== oldValue.numberOfPages && this.currentPage > newValue.numberOfPages) {\n // If `numberOfPages` changes and is less than\n // the `currentPage` number, reset to page 1\n this.currentPage = 1;\n }\n }\n\n this.localNumberOfPages = newValue.numberOfPages;\n }\n },\n created: function created() {\n var _this = this;\n\n // Set the initial page count\n this.localNumberOfPages = this.numberOfPages; // Set the initial page value\n\n var currentPage = toInteger(this[MODEL_PROP_NAME], 0);\n\n if (currentPage > 0) {\n this.currentPage = currentPage;\n } else {\n this.$nextTick(function () {\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: function onClick(event, pageNumber) {\n var _this2 = this;\n\n // Dont do anything if clicking the current active page\n if (pageNumber === this.currentPage) {\n return;\n }\n\n var target = event.target; // Emit a user-cancelable `page-click` event\n\n var clickEvt = new BvEvent(EVENT_NAME_PAGE_CLICK, {\n cancelable: true,\n vueTarget: this,\n target: target\n });\n this.$emit(clickEvt.type, clickEvt, pageNumber);\n\n if (clickEvt.defaultPrevented) {\n return;\n } // Update the `v-model`\n\n\n this.currentPage = pageNumber; // Emit event triggered by user interaction\n\n this.$emit(EVENT_NAME_CHANGE, this.currentPage); // Keep the current button focused if possible\n\n this.$nextTick(function () {\n if (isVisible(target) && _this2.$el.contains(target)) {\n attemptFocus(target);\n } else {\n _this2.focusCurrent();\n }\n });\n },\n makePage: function makePage(pageNum) {\n return pageNum;\n },\n\n /* istanbul ignore next */\n linkProps: function linkProps() {\n // No props, since we render a plain button\n return {};\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'; // --- Props ---\n\nexport var props = makePropsConfigurable({\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}, NAME_FORM_INVALID_FEEDBACK); // --- Main component ---\n// @vue/component\n\nexport var BFormInvalidFeedback = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_INVALID_FEEDBACK,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var tooltip = props.tooltip,\n ariaLive = props.ariaLive;\n var show = props.forceShow === true || props.state === false;\n return h(props.tag, 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 }), children);\n }\n});","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card',[_c('div',{staticClass:\"m-2\"},[_c('b-row',[_c('b-col',{staticClass:\"d-flex align-items-center justify-content-start mb-1 mb-md-0\",attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('TableEntries',{attrs:{\"options\":_vm.perPageOptions},model:{value:(_vm.perPage),callback:function ($$v) {_vm.perPage=$$v},expression:\"perPage\"}})],1),_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('div',{staticClass:\"d-flex align-items-center justify-content-lg-end\"},[_c('Button',{staticClass:\"mr-1\",attrs:{\"label\":\"Filter\",\"size\":\"md\",\"icon\":\"FilterIcon\",\"show-icon\":\"\"},on:{\"click\":function($event){return _vm.showModal('modal-filter')}}}),_c('Button',{attrs:{\"label\":\"Reset Filter\",\"size\":\"md\",\"icon\":\"RotateCwIcon\",\"show-icon\":\"\"},on:{\"click\":_vm.resetFilter}})],1)])],1)],1),_c('b-table',{ref:\"auditTrailRef\",staticClass:\"position-relative\",attrs:{\"busy\":_vm.isBusy,\"per-page\":_vm.pageSize,\"current-page\":_vm.currentPage,\"items\":_vm.auditTrailList,\"responsive\":\"\",\"fields\":_vm.tableHeaders,\"primary-key\":\"id\",\"show-empty\":\"\",\"empty-text\":\"No records available\"},scopedSlots:_vm._u([{key:\"table-busy\",fn:function(){return [_c('div',{staticClass:\"text-center text-danger my-2\"},[_c('b-spinner',{staticClass:\"align-middle\",attrs:{\"variant\":\"primary\"}})],1)]},proxy:true},{key:\"cell(SN)\",fn:function(data){return [_vm._v(\"\\n \"+_vm._s(_vm.getOverallIndex(data.index))+\"\\n \")]}},{key:\"cell(actions)\",fn:function(data){return [_c('div',{staticClass:\"d-flex justify-content-center\"},[_c('feather-icon',{staticClass:\"cursor-pointer\",attrs:{\"icon\":\"EyeIcon\"},on:{\"click\":function($event){return _vm.onSelectAuditTrailItem(data.item)}}})],1)]}}])}),_c('TablePagination',{attrs:{\"from\":_vm.from,\"to\":_vm.to,\"total-rows\":_vm.totalEntries,\"per-page\":_vm.perPage},model:{value:(_vm.currentPage),callback:function ($$v) {_vm.currentPage=$$v},expression:\"currentPage\"}}),_c('b-modal',{ref:\"my-modal\",attrs:{\"id\":\"modal-lg\",\"ok-title\":\"Cancel\",\"ok-only\":\"\",\"ok-variant\":\"outline-secondary\",\"centered\":\"\",\"size\":\"lg\"}},[_c('div',{staticClass:\"text-center\"},[_c('h3',[_vm._v(_vm._s(_vm.modalHeader.dataOperationType)+\" - \"+_vm._s(_vm.modalHeader.entity)+\" - \"+_vm._s(_vm.modalHeader.subjectIdentifier))]),_c('p',[_vm._v(_vm._s(_vm.modalHeader.fullName))]),_c('p',[_vm._v(_vm._s(_vm.modalHeader.dateCreated))]),_c('p',[_vm._v(_vm._s(_vm.modalHeader.requestHostIPAddress))])]),_c('b-table',{ref:\"viewAuditTrailTable\",staticClass:\"position-relative\",attrs:{\"items\":_vm.viewAuditTrailList,\"per-page\":_vm.pageSize,\"current-page\":_vm.currentPage,\"fixed\":\"\",\"fields\":_vm.viewAuditTrailTableHeaders,\"primary-key\":\"id\",\"show-empty\":\"\",\"empty-text\":\"No result found\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc},on:{\"update:sortBy\":function($event){_vm.sortBy=$event},\"update:sort-by\":function($event){_vm.sortBy=$event},\"update:sortDesc\":function($event){_vm.sortDesc=$event},\"update:sort-desc\":function($event){_vm.sortDesc=$event}},scopedSlots:_vm._u([{key:\"cell(description)\",fn:function(data){return [_vm._v(\"\\n \"+_vm._s(_vm.addSpaceToString(data.value))+\"\\n \")]}},{key:\"cell(oldValue)\",fn:function(data){return [(Array.isArray(data.value))?_c('div',_vm._l((data.value),function(item,index){return _c('div',{key:index},_vm._l((Object.entries(item)),function(ref,currentIndex){\nvar text = ref[0];\nvar value = ref[1];\nreturn _c('p',{key:currentIndex,staticClass:\"text-danger\"},[_c('span',[_vm._v(_vm._s(text)+\": \"+_vm._s(value))])])}),0)}),0):_c('b',{class:data.item.oldValue !== data.item.newValue ? 'text-danger break' : 'break'},[_vm._v(_vm._s(data.value))])]}},{key:\"cell(newValue)\",fn:function(data){return [(Array.isArray(data.value))?_c('div',_vm._l((data.value),function(item,index){return _c('div',{key:index},_vm._l((Object.entries(item)),function(ref,currentIndex){\nvar text = ref[0];\nvar value = ref[1];\nreturn _c('p',{key:currentIndex,staticClass:\"text-success\"},[_c('span',[_vm._v(_vm._s(text)+\": \"+_vm._s(value))])])}),0)}),0):_c('b',{class:data.item.oldValue !== data.item.newValue ? 'text-success break' : 'break'},[_vm._v(_vm._s(data.value))])]}}])})],1),_c('b-modal',{ref:\"my-modal\",attrs:{\"id\":\"modal-filter\",\"ok-title\":\"Apply\",\"no-close-on-backdrop\":\"\",\"cancel-title\":\"Cancel\",\"cancel-variant\":\"outline-secondary\",\"centered\":\"\",\"size\":\"lg\",\"title\":\"Filters\",\"modal-footer\":\"\"},on:{\"ok\":_vm.fetchAuditTrails,\"cancel\":_vm.resetFilters}},[_c('b-row',{staticClass:\"match-height\"},[_c('b-col',{attrs:{\"md\":\"6\"}},[_c('SelectField',{attrs:{\"id\":\"username\",\"label\":\"Initiator ID\",\"placeholder\":\"Select\",\"options\":_vm.initiatorIDOptions,\"reduce\":function (option) { return option.value; },\"item\":\"label\"},model:{value:(_vm.filter.username),callback:function ($$v) {_vm.$set(_vm.filter, \"username\", $$v)},expression:\"filter.username\"}})],1),_c('b-col',{attrs:{\"md\":\"6\"}},[_c('InputField',{attrs:{\"id\":\"fullName\",\"label\":\"Full Name\",\"placeholder\":\"Enter Full Name\",\"type\":\"text\"},model:{value:(_vm.filter.fullName),callback:function ($$v) {_vm.$set(_vm.filter, \"fullName\", $$v)},expression:\"filter.fullName\"}})],1),_c('b-col',{attrs:{\"md\":\"6\"}},[_c('SelectField',{attrs:{\"id\":\"data-operation-type\",\"label\":\"Data Operation Type\",\"placeholder\":\"Select\",\"options\":_vm.operationTypeOptions,\"reduce\":function (option) { return option; },\"item\":\"label\"},model:{value:(_vm.filter.dataOperationType),callback:function ($$v) {_vm.$set(_vm.filter, \"dataOperationType\", $$v)},expression:\"filter.dataOperationType\"}})],1),_c('b-col',{attrs:{\"md\":\"6\"}},[_c('InputField',{attrs:{\"id\":\"subject-identifier\",\"label\":\"Subject Identifier\",\"placeholder\":\"Enter subject identifier\",\"type\":\"text\",\"for\":\"subject-identifier\"},model:{value:(_vm.filter.subjectIdentifier),callback:function ($$v) {_vm.$set(_vm.filter, \"subjectIdentifier\", $$v)},expression:\"filter.subjectIdentifier\"}})],1),_c('b-col',{attrs:{\"md\":\"6\"}},[_c('InputField',{attrs:{\"id\":\"entity\",\"label\":\"Subject Name\",\"placeholder\":\"Enter Subject Name\",\"type\":\"text\",\"for\":\"entity\"},model:{value:(_vm.filter.entity),callback:function ($$v) {_vm.$set(_vm.filter, \"entity\", $$v)},expression:\"filter.entity\"}})],1),_c('b-col',{attrs:{\"md\":\"6\"}},[_c('SelectField',{attrs:{\"id\":\"action\",\"label\":\"Function\",\"placeholder\":\"Select\",\"options\":_vm.functionOptions,\"reduce\":function (option) { return option.value; },\"item\":\"label\"},model:{value:(_vm.filter.action),callback:function ($$v) {_vm.$set(_vm.filter, \"action\", $$v)},expression:\"filter.action\"}})],1),_c('b-col',{attrs:{\"md\":\"6\"}},[_c('label',{attrs:{\"for\":\"creation-date\"}},[_vm._v(\"Creation Date\")]),_c('b-form-datepicker',{attrs:{\"id\":\"creation-date\",\"placeholder\":\"Enter Creation Date\",\"local\":\"en\",\"min\":_vm.minFilterDate,\"max\":_vm.maxFilterDate},model:{value:(_vm.filter.dateCreated),callback:function ($$v) {_vm.$set(_vm.filter, \"dateCreated\", $$v)},expression:\"filter.dateCreated\"}})],1),_c('b-col',{attrs:{\"md\":\"6\"}},[_c('InputField',{attrs:{\"id\":\"initiatorIP\",\"label\":\"Initiator IP\",\"placeholder\":\"Enter Initiator IP\",\"type\":\"text\",\"for\":\"initiatorIP\"},model:{value:(_vm.filter.requestHostIPAddress),callback:function ($$v) {_vm.$set(_vm.filter, \"requestHostIPAddress\", $$v)},expression:\"filter.requestHostIPAddress\"}})],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export var CALENDAR_GREGORY = 'gregory';\nexport var CALENDAR_LONG = 'long';\nexport var CALENDAR_NARROW = 'narrow';\nexport var CALENDAR_SHORT = 'short';\nexport var DATE_FORMAT_2_DIGIT = '2-digit';\nexport var DATE_FORMAT_NUMERIC = 'numeric';","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\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'; // --- Date utility methods ---\n// Create or clone a date (`new Date(...)` shortcut)\n\nexport var createDate = function createDate() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _construct(Date, args);\n}; // Parse a date sting, or Date object, into a Date object (with no time information)\n\nexport var parseYMD = function parseYMD(date) {\n if (isString(date) && RX_DATE.test(date.trim())) {\n var _date$split$map = date.split(RX_DATE_SPLIT).map(function (v) {\n return toInteger(v, 1);\n }),\n _date$split$map2 = _slicedToArray(_date$split$map, 3),\n year = _date$split$map2[0],\n month = _date$split$map2[1],\n day = _date$split$map2[2];\n\n return createDate(year, month - 1, day);\n } else if (isDate(date)) {\n return createDate(date.getFullYear(), date.getMonth(), date.getDate());\n }\n\n return null;\n}; // Format a date object as `YYYY-MM-DD` format\n\nexport var formatYMD = function formatYMD(date) {\n date = parseYMD(date);\n\n if (!date) {\n return null;\n }\n\n var year = date.getFullYear();\n var month = \"0\".concat(date.getMonth() + 1).slice(-2);\n var day = \"0\".concat(date.getDate()).slice(-2);\n return \"\".concat(year, \"-\").concat(month, \"-\").concat(day);\n}; // Given a locale (or locales), resolve the browser available locale\n\nexport var resolveLocale = function resolveLocale(locales)\n/* istanbul ignore next */\n{\n var calendar = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : CALENDAR_GREGORY;\n locales = concat(locales).filter(identity);\n var fmt = new Intl.DateTimeFormat(locales, {\n calendar: calendar\n });\n return fmt.resolvedOptions().locale;\n}; // Create a `Intl.DateTimeFormat` formatter function\n\nexport var createDateFormatter = function createDateFormatter(locale, options)\n/* istanbul ignore next */\n{\n var dtf = new Intl.DateTimeFormat(locale, options);\n return dtf.format;\n}; // Determine if two dates are the same date (ignoring time portion)\n\nexport var datesEqual = function 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}; // --- Date \"math\" utility methods (for BCalendar component mainly) ---\n\nexport var firstDateOfMonth = function firstDateOfMonth(date) {\n date = createDate(date);\n date.setDate(1);\n return date;\n};\nexport var lastDateOfMonth = function lastDateOfMonth(date) {\n date = createDate(date);\n date.setMonth(date.getMonth() + 1);\n date.setDate(0);\n return date;\n};\nexport var addYears = function addYears(date, numberOfYears) {\n date = createDate(date);\n var month = date.getMonth();\n date.setFullYear(date.getFullYear() + numberOfYears); // Handle Feb 29th for leap years\n\n if (date.getMonth() !== month) {\n date.setDate(0);\n }\n\n return date;\n};\nexport var oneMonthAgo = function oneMonthAgo(date) {\n date = createDate(date);\n var month = date.getMonth();\n date.setMonth(month - 1); // Handle when days in month are different\n\n if (date.getMonth() === month) {\n date.setDate(0);\n }\n\n return date;\n};\nexport var oneMonthAhead = function oneMonthAhead(date) {\n date = createDate(date);\n var month = date.getMonth();\n date.setMonth(month + 1); // Handle when days in month are different\n\n if (date.getMonth() === (month + 2) % 12) {\n date.setDate(0);\n }\n\n return date;\n};\nexport var oneYearAgo = function oneYearAgo(date) {\n return addYears(date, -1);\n};\nexport var oneYearAhead = function oneYearAhead(date) {\n return addYears(date, 1);\n};\nexport var oneDecadeAgo = function oneDecadeAgo(date) {\n return addYears(date, -10);\n};\nexport var oneDecadeAhead = function oneDecadeAhead(date) {\n return addYears(date, 10);\n}; // Helper function to constrain a date between two values\n// Always returns a `Date` object or `null` if no date passed\n\nexport var constrainDate = function constrainDate(date) {\n var min = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n var max = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n // Ensure values are `Date` objects (or `null`)\n date = parseYMD(date);\n min = parseYMD(min) || date;\n max = parseYMD(max) || date; // Return a new `Date` object (or `null`)\n\n return date ? date < min ? min : date > max ? max : date : null;\n};","var _watch;\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue } from '../../vue';\nimport { NAME_CALENDAR } from '../../constants/components';\nimport { CALENDAR_GREGORY, CALENDAR_LONG, CALENDAR_NARROW, CALENDAR_SHORT, DATE_FORMAT_2_DIGIT, DATE_FORMAT_NUMERIC } from '../../constants/date';\nimport { EVENT_NAME_CONTEXT, EVENT_NAME_SELECTED } from '../../constants/events';\nimport { CODE_DOWN, CODE_END, CODE_ENTER, CODE_HOME, CODE_LEFT, CODE_PAGEDOWN, CODE_PAGEUP, CODE_RIGHT, CODE_SPACE, CODE_UP } from '../../constants/key-codes';\nimport { PROP_TYPE_ARRAY_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_DATE_STRING, PROP_TYPE_FUNCTION, PROP_TYPE_NUMBER_STRING, PROP_TYPE_OBJECT, PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_NAV_NEXT_DECADE, SLOT_NAME_NAV_NEXT_MONTH, SLOT_NAME_NAV_NEXT_YEAR, SLOT_NAME_NAV_PEV_DECADE, SLOT_NAME_NAV_PEV_MONTH, SLOT_NAME_NAV_PEV_YEAR, SLOT_NAME_NAV_THIS_MONTH } from '../../constants/slots';\nimport { arrayIncludes, concat } from '../../utils/array';\nimport { createDate, createDateFormatter, constrainDate as _constrainDate, datesEqual, firstDateOfMonth, formatYMD, lastDateOfMonth, oneMonthAgo, oneMonthAhead, oneYearAgo, oneYearAhead, oneDecadeAgo, oneDecadeAhead, parseYMD, resolveLocale } 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 { BIconChevronLeft, BIconChevronDoubleLeft, BIconChevronBarLeft, BIconCircleFill } from '../../icons/icons'; // --- Constants ---\n\nvar _makeModelMixin = makeModelMixin('value', {\n type: PROP_TYPE_DATE_STRING\n}),\n modelMixin = _makeModelMixin.mixin,\n modelProps = _makeModelMixin.props,\n MODEL_PROP_NAME = _makeModelMixin.prop,\n MODEL_EVENT_NAME = _makeModelMixin.event; // --- Props ---\n\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread({}, idProps), modelProps), {}, {\n ariaControls: makeProp(PROP_TYPE_STRING),\n // Makes calendar the full width of its parent container\n block: makeProp(PROP_TYPE_BOOLEAN, false),\n dateDisabledFn: makeProp(PROP_TYPE_FUNCTION),\n // `Intl.DateTimeFormat` object\n dateFormatOptions: makeProp(PROP_TYPE_OBJECT, {\n year: DATE_FORMAT_NUMERIC,\n month: CALENDAR_LONG,\n day: DATE_FORMAT_NUMERIC,\n weekday: CALENDAR_LONG\n }),\n // Function to set a class of (classes) on the date cell\n // if passed a string or an array\n // TODO:\n // If the function returns an object, look for class prop for classes,\n // and other props for handling events/details/descriptions\n dateInfoFn: makeProp(PROP_TYPE_FUNCTION),\n // 'ltr', 'rtl', or `null` (for auto detect)\n direction: makeProp(PROP_TYPE_STRING),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n // When `true`, renders a comment node, but keeps the component instance active\n // Mainly for , so that we can get the component's value and locale\n // But we might just use separate date formatters, using the resolved locale\n // (adjusted for the gregorian calendar)\n hidden: makeProp(PROP_TYPE_BOOLEAN, false),\n // When `true` makes the selected date header `sr-only`\n hideHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n // This specifies the calendar year/month/day that will be shown when\n // first opening the datepicker if no v-model value is provided\n // Default is the current date (or `min`/`max`)\n initialDate: makeProp(PROP_TYPE_DATE_STRING),\n // Labels for buttons and keyboard shortcuts\n labelCalendar: makeProp(PROP_TYPE_STRING, 'Calendar'),\n labelCurrentMonth: makeProp(PROP_TYPE_STRING, 'Current month'),\n labelHelp: makeProp(PROP_TYPE_STRING, 'Use cursor keys to navigate calendar dates'),\n labelNav: makeProp(PROP_TYPE_STRING, 'Calendar navigation'),\n labelNextDecade: makeProp(PROP_TYPE_STRING, 'Next decade'),\n labelNextMonth: makeProp(PROP_TYPE_STRING, 'Next month'),\n labelNextYear: makeProp(PROP_TYPE_STRING, 'Next year'),\n labelNoDateSelected: makeProp(PROP_TYPE_STRING, 'No date selected'),\n labelPrevDecade: makeProp(PROP_TYPE_STRING, 'Previous decade'),\n labelPrevMonth: makeProp(PROP_TYPE_STRING, 'Previous month'),\n labelPrevYear: makeProp(PROP_TYPE_STRING, 'Previous year'),\n labelSelected: makeProp(PROP_TYPE_STRING, 'Selected date'),\n labelToday: makeProp(PROP_TYPE_STRING, 'Today'),\n // Locale(s) to use\n // Default is to use page/browser default setting\n locale: makeProp(PROP_TYPE_ARRAY_STRING),\n max: makeProp(PROP_TYPE_DATE_STRING),\n min: makeProp(PROP_TYPE_DATE_STRING),\n // Variant color to use for the navigation buttons\n navButtonVariant: makeProp(PROP_TYPE_STRING, 'secondary'),\n // Disable highlighting today's date\n noHighlightToday: makeProp(PROP_TYPE_BOOLEAN, false),\n noKeyNav: makeProp(PROP_TYPE_BOOLEAN, false),\n readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n roleDescription: makeProp(PROP_TYPE_STRING),\n // Variant color to use for the selected date\n selectedVariant: makeProp(PROP_TYPE_STRING, 'primary'),\n // When `true` enables the decade navigation buttons\n showDecadeNav: makeProp(PROP_TYPE_BOOLEAN, false),\n // Day of week to start calendar on\n // `0` (Sunday), `1` (Monday), ... `6` (Saturday)\n startWeekday: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n // Variant color to use for today's date (defaults to `selectedVariant`)\n todayVariant: makeProp(PROP_TYPE_STRING),\n // Always return the `v-model` value as a date object\n valueAsDate: makeProp(PROP_TYPE_BOOLEAN, false),\n // Format of the weekday names at the top of the calendar\n // `short` is typically a 3 letter abbreviation,\n // `narrow` is typically a single letter\n // `long` is the full week day name\n // Although some locales may override this (i.e `ar`, etc.)\n weekdayHeaderFormat: makeProp(PROP_TYPE_STRING, CALENDAR_SHORT, function (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})), NAME_CALENDAR); // --- Main component ---\n// @vue/component\n\nexport var BCalendar = Vue.extend({\n name: NAME_CALENDAR,\n // Mixin order is important!\n mixins: [attrsMixin, idMixin, modelMixin, normalizeSlotMixin],\n props: props,\n data: function data() {\n var 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: selected || 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: function valueId() {\n return this.safeId();\n },\n widgetId: function widgetId() {\n return this.safeId('_calendar-wrapper_');\n },\n navId: function navId() {\n return this.safeId('_calendar-nav_');\n },\n gridId: function gridId() {\n return this.safeId('_calendar-grid_');\n },\n gridCaptionId: function gridCaptionId() {\n return this.safeId('_calendar-grid-caption_');\n },\n gridHelpId: function gridHelpId() {\n return this.safeId('_calendar-grid-help_');\n },\n activeId: function activeId() {\n return this.activeYMD ? this.safeId(\"_cell-\".concat(this.activeYMD, \"_\")) : null;\n },\n // TODO: Use computed props to convert `YYYY-MM-DD` to `Date` object\n selectedDate: function selectedDate() {\n // Selected as a `Date` object\n return parseYMD(this.selectedYMD);\n },\n activeDate: function activeDate() {\n // Active as a `Date` object\n return parseYMD(this.activeYMD);\n },\n computedMin: function computedMin() {\n return parseYMD(this.min);\n },\n computedMax: function computedMax() {\n return parseYMD(this.max);\n },\n computedWeekStarts: function computedWeekStarts() {\n // `startWeekday` is a prop (constrained to `0` through `6`)\n return mathMax(toInteger(this.startWeekday, 0), 0) % 7;\n },\n computedLocale: function computedLocale() {\n // Returns the resolved locale used by the calendar\n return resolveLocale(concat(this.locale).filter(identity), CALENDAR_GREGORY);\n },\n computedDateDisabledFn: function computedDateDisabledFn() {\n var dateDisabledFn = this.dateDisabledFn;\n return hasPropFunction(dateDisabledFn) ? dateDisabledFn : function () {\n return false;\n };\n },\n // TODO: Change `dateInfoFn` to handle events and notes as well as classes\n computedDateInfoFn: function computedDateInfoFn() {\n var dateInfoFn = this.dateInfoFn;\n return hasPropFunction(dateInfoFn) ? dateInfoFn : function () {\n return {};\n };\n },\n calendarLocale: function 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 var fmt = new Intl.DateTimeFormat(this.computedLocale, {\n calendar: CALENDAR_GREGORY\n });\n var calendar = fmt.resolvedOptions().calendar;\n var locale = fmt.resolvedOptions().locale;\n /* istanbul ignore if: mainly for IE 11 and a few other browsers, hard to test in JSDOM */\n\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\n return locale;\n },\n calendarYear: function calendarYear() {\n return this.activeDate.getFullYear();\n },\n calendarMonth: function calendarMonth() {\n return this.activeDate.getMonth();\n },\n calendarFirstDay: function 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: function calendarDaysInMonth() {\n // We create a new date as to not mutate the original\n var date = createDate(this.calendarFirstDay);\n date.setMonth(date.getMonth() + 1, 0);\n return date.getDate();\n },\n computedVariant: function computedVariant() {\n return \"btn-\".concat(this.selectedVariant || 'primary');\n },\n computedTodayVariant: function computedTodayVariant() {\n return \"btn-outline-\".concat(this.todayVariant || this.selectedVariant || 'primary');\n },\n computedNavButtonVariant: function computedNavButtonVariant() {\n return \"btn-outline-\".concat(this.navButtonVariant || 'primary');\n },\n isRTL: function isRTL() {\n // `true` if the language requested is RTL\n var dir = toString(this.direction).toLowerCase();\n\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\n return isLocaleRTL(this.computedLocale);\n },\n context: function context() {\n var selectedYMD = this.selectedYMD,\n activeYMD = this.activeYMD;\n var selectedDate = parseYMD(selectedYMD);\n var activeDate = parseYMD(activeYMD);\n return {\n // The current value of the `v-model`\n selectedYMD: selectedYMD,\n selectedDate: selectedDate,\n selectedFormatted: selectedDate ? this.formatDateString(selectedDate) : this.labelNoDateSelected,\n // Which date cell is considered active due to navigation\n activeYMD: activeYMD,\n activeDate: activeDate,\n activeFormatted: activeDate ? this.formatDateString(activeDate) : '',\n // `true` if the date is disabled (when using keyboard navigation)\n disabled: this.dateDisabled(activeDate),\n // Locales used in formatting dates\n locale: this.computedLocale,\n calendarLocale: this.calendarLocale,\n rtl: this.isRTL\n };\n },\n // Computed props that return a function reference\n dateOutOfRange: function 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 var min = this.computedMin,\n max = this.computedMax;\n return function (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: function dateDisabled() {\n var _this = this;\n\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 var rangeFn = this.dateOutOfRange; // Return the function ref\n\n return function (date) {\n // Handle both `YYYY-MM-DD` and `Date` objects\n date = parseYMD(date);\n var ymd = formatYMD(date);\n return !!(rangeFn(date) || _this.computedDateDisabledFn(ymd, date));\n };\n },\n // Computed props that return date formatter functions\n formatDateString: function formatDateString() {\n // Returns a date formatter function\n return createDateFormatter(this.calendarLocale, _objectSpread(_objectSpread({\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 }, 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: function 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: function 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: function 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: function 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 var nf = new Intl.NumberFormat([this.computedLocale], {\n style: 'decimal',\n minimumIntegerDigits: 1,\n minimumFractionDigits: 0,\n maximumFractionDigits: 0,\n notation: 'standard'\n }); // Return a formatter function instance\n\n return function (date) {\n return nf.format(date.getDate());\n };\n },\n // Disabled states for the nav buttons\n prevDecadeDisabled: function prevDecadeDisabled() {\n var min = this.computedMin;\n return this.disabled || min && lastDateOfMonth(oneDecadeAgo(this.activeDate)) < min;\n },\n prevYearDisabled: function prevYearDisabled() {\n var min = this.computedMin;\n return this.disabled || min && lastDateOfMonth(oneYearAgo(this.activeDate)) < min;\n },\n prevMonthDisabled: function prevMonthDisabled() {\n var min = this.computedMin;\n return this.disabled || min && lastDateOfMonth(oneMonthAgo(this.activeDate)) < min;\n },\n thisMonthDisabled: function thisMonthDisabled() {\n // TODO: We could/should check if today is out of range\n return this.disabled;\n },\n nextMonthDisabled: function nextMonthDisabled() {\n var max = this.computedMax;\n return this.disabled || max && firstDateOfMonth(oneMonthAhead(this.activeDate)) > max;\n },\n nextYearDisabled: function nextYearDisabled() {\n var max = this.computedMax;\n return this.disabled || max && firstDateOfMonth(oneYearAhead(this.activeDate)) > max;\n },\n nextDecadeDisabled: function nextDecadeDisabled() {\n var max = this.computedMax;\n return this.disabled || max && firstDateOfMonth(oneDecadeAhead(this.activeDate)) > max;\n },\n // Calendar dates generation\n calendar: function calendar() {\n var matrix = [];\n var firstDay = this.calendarFirstDay;\n var calendarYear = firstDay.getFullYear();\n var calendarMonth = firstDay.getMonth();\n var daysInMonth = this.calendarDaysInMonth;\n var startIndex = firstDay.getDay(); // `0`..`6`\n\n var weekOffset = (this.computedWeekStarts > startIndex ? 7 : 0) - this.computedWeekStarts; // Build the calendar matrix\n\n var currentDay = 0 - weekOffset - startIndex;\n\n for (var week = 0; week < 6 && currentDay < daysInMonth; week++) {\n // For each week\n matrix[week] = []; // The following could be a map function\n\n for (var j = 0; j < 7; j++) {\n // For each day in week\n currentDay++;\n var date = createDate(calendarYear, calendarMonth, currentDay);\n var month = date.getMonth();\n var dayYMD = formatYMD(date);\n var dayDisabled = this.dateDisabled(date); // TODO: This could be a normalizer method\n\n var dateInfo = this.computedDateInfoFn(dayYMD, parseYMD(dayYMD));\n dateInfo = isString(dateInfo) || isArray(dateInfo) ?\n /* istanbul ignore next */\n {\n class: dateInfo\n } : isPlainObject(dateInfo) ? _objectSpread({\n class: ''\n }, dateInfo) :\n /* istanbul ignore next */\n {\n class: ''\n };\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\n return matrix;\n },\n calendarHeadings: function calendarHeadings() {\n var _this2 = this;\n\n return this.calendar[0].map(function (d) {\n return {\n text: _this2.formatWeekdayNameShort(parseYMD(d.ymd)),\n label: _this2.formatWeekdayName(parseYMD(d.ymd))\n };\n });\n }\n },\n watch: (_watch = {}, _defineProperty(_watch, MODEL_PROP_NAME, function (newValue, oldValue) {\n var selected = formatYMD(newValue) || '';\n var old = formatYMD(oldValue) || '';\n\n if (!datesEqual(selected, old)) {\n this.activeYMD = selected || this.activeYMD;\n this.selectedYMD = selected;\n }\n }), _defineProperty(_watch, \"selectedYMD\", function 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 }), _defineProperty(_watch, \"context\", function context(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(EVENT_NAME_CONTEXT, newValue);\n }\n }), _defineProperty(_watch, \"hidden\", function hidden(newValue) {\n // Reset the active focused day when hidden\n this.activeYMD = this.selectedYMD || formatYMD(this[MODEL_PROP_NAME] || this.constrainDate(this.initialDate || this.getToday())); // Enable/disable the live regions\n\n this.setLive(!newValue);\n }), _watch),\n created: function created() {\n var _this3 = this;\n\n this.$nextTick(function () {\n _this3.$emit(EVENT_NAME_CONTEXT, _this3.context);\n });\n },\n mounted: function mounted() {\n this.setLive(true);\n },\n\n /* istanbul ignore next */\n activated: function activated() {\n this.setLive(true);\n },\n\n /* istanbul ignore next */\n deactivated: function deactivated() {\n this.setLive(false);\n },\n beforeDestroy: function beforeDestroy() {\n this.setLive(false);\n },\n methods: {\n // Public method(s)\n focus: function focus() {\n if (!this.disabled) {\n attemptFocus(this.$refs.grid);\n }\n },\n blur: function blur() {\n if (!this.disabled) {\n attemptBlur(this.$refs.grid);\n }\n },\n // Private methods\n setLive: function setLive(on) {\n var _this4 = this;\n\n if (on) {\n this.$nextTick(function () {\n requestAF(function () {\n _this4.isLive = true;\n });\n });\n } else {\n this.isLive = false;\n }\n },\n getToday: function getToday() {\n return parseYMD(createDate());\n },\n constrainDate: function 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: function emitSelected(date) {\n var _this5 = this;\n\n // Performed in a `$nextTick()` to (probably) ensure\n // the input event has emitted first\n this.$nextTick(function () {\n _this5.$emit(EVENT_NAME_SELECTED, formatYMD(date) || '', parseYMD(date) || null);\n });\n },\n // Event handlers\n setGridFocusFlag: function setGridFocusFlag(event) {\n // Sets the gridHasFocus flag to make date \"button\" look focused\n this.gridHasFocus = !this.disabled && event.type === 'focus';\n },\n onKeydownWrapper: function 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\n var altKey = event.altKey,\n ctrlKey = event.ctrlKey,\n keyCode = event.keyCode;\n\n if (!arrayIncludes([CODE_PAGEUP, CODE_PAGEDOWN, CODE_END, CODE_HOME, CODE_LEFT, CODE_UP, CODE_RIGHT, CODE_DOWN], keyCode)) {\n /* istanbul ignore next */\n return;\n }\n\n stopEvent(event);\n var activeDate = createDate(this.activeDate);\n var checkDate = createDate(this.activeDate);\n var day = activeDate.getDate();\n var constrainedToday = this.constrainDate(this.getToday());\n var isRTL = this.isRTL;\n\n if (keyCode === CODE_PAGEUP) {\n // PAGEUP - Previous month/year\n activeDate = (altKey ? ctrlKey ? oneDecadeAgo : oneYearAgo : oneMonthAgo)(activeDate); // We check the first day of month to be in rage\n\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)(activeDate); // We check the last day of month to be in rage\n\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\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 } // Ensure grid is focused\n\n\n this.focus();\n },\n onKeydownGrid: function onKeydownGrid(event) {\n // Pressing enter/space on grid to select active date\n var keyCode = event.keyCode;\n var activeDate = this.activeDate;\n\n if (keyCode === CODE_ENTER || keyCode === CODE_SPACE) {\n stopEvent(event);\n\n if (!this.disabled && !this.readonly && !this.dateDisabled(activeDate)) {\n this.selectedYMD = formatYMD(activeDate);\n this.emitSelected(activeDate);\n } // Ensure grid is focused\n\n\n this.focus();\n }\n },\n onClickDay: function onClickDay(day) {\n // Clicking on a date \"button\" to select it\n var selectedDate = this.selectedDate,\n activeDate = this.activeDate;\n var clickedDate = parseYMD(day.ymd);\n\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(datesEqual(clickedDate, selectedDate) ? selectedDate : clickedDate);\n this.emitSelected(clickedDate);\n }\n\n this.activeYMD = formatYMD(datesEqual(clickedDate, activeDate) ? activeDate : createDate(clickedDate)); // Ensure grid is focused\n\n this.focus();\n }\n },\n gotoPrevDecade: function gotoPrevDecade() {\n this.activeYMD = formatYMD(this.constrainDate(oneDecadeAgo(this.activeDate)));\n },\n gotoPrevYear: function gotoPrevYear() {\n this.activeYMD = formatYMD(this.constrainDate(oneYearAgo(this.activeDate)));\n },\n gotoPrevMonth: function gotoPrevMonth() {\n this.activeYMD = formatYMD(this.constrainDate(oneMonthAgo(this.activeDate)));\n },\n gotoCurrentMonth: function gotoCurrentMonth() {\n // TODO: Maybe this goto date should be configurable?\n this.activeYMD = formatYMD(this.constrainDate(this.getToday()));\n },\n gotoNextMonth: function gotoNextMonth() {\n this.activeYMD = formatYMD(this.constrainDate(oneMonthAhead(this.activeDate)));\n },\n gotoNextYear: function gotoNextYear() {\n this.activeYMD = formatYMD(this.constrainDate(oneYearAhead(this.activeDate)));\n },\n gotoNextDecade: function gotoNextDecade() {\n this.activeYMD = formatYMD(this.constrainDate(oneDecadeAhead(this.activeDate)));\n },\n onHeaderClick: function onHeaderClick() {\n if (!this.disabled) {\n this.activeYMD = this.selectedYMD || formatYMD(this.getToday());\n this.focus();\n }\n }\n },\n render: function render(h) {\n var _this6 = this;\n\n // If `hidden` prop is set, render just a placeholder node\n if (this.hidden) {\n return h();\n }\n\n var valueId = this.valueId,\n widgetId = this.widgetId,\n navId = this.navId,\n gridId = this.gridId,\n gridCaptionId = this.gridCaptionId,\n gridHelpId = this.gridHelpId,\n activeId = this.activeId,\n disabled = this.disabled,\n noKeyNav = this.noKeyNav,\n isLive = this.isLive,\n isRTL = this.isRTL,\n activeYMD = this.activeYMD,\n selectedYMD = this.selectedYMD,\n safeId = this.safeId;\n var hideDecadeNav = !this.showDecadeNav;\n var todayYMD = formatYMD(this.getToday());\n var highlightToday = !this.noHighlightToday; // Header showing current selected date\n\n var $header = h('output', {\n staticClass: 'form-control form-control-sm text-center',\n class: {\n 'text-muted': disabled,\n readonly: this.readonly || disabled\n },\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 }, this.selectedDate ? [// We use `bdi` elements here in case the label doesn't match the locale\n // Although IE 11 does not deal with at all (equivalent to a span)\n h('bdi', {\n staticClass: 'sr-only'\n }, \" (\".concat(toString(this.labelSelected), \") \")), h('bdi', this.formatDateString(this.selectedDate))] : this.labelNoDateSelected || \"\\xA0\" // ' '\n );\n $header = h('header', {\n staticClass: 'b-calendar-header',\n class: {\n 'sr-only': this.hideHeader\n },\n attrs: {\n title: this.selectedDate ? this.labelSelectedDate || null : null\n }\n }, [$header]); // Content for the date navigation buttons\n\n var navScope = {\n isRTL: isRTL\n };\n var navProps = {\n shiftV: 0.5\n };\n\n var navPrevProps = _objectSpread(_objectSpread({}, navProps), {}, {\n flipH: isRTL\n });\n\n var navNextProps = _objectSpread(_objectSpread({}, navProps), {}, {\n flipH: !isRTL\n });\n\n var $prevDecadeIcon = this.normalizeSlot(SLOT_NAME_NAV_PEV_DECADE, navScope) || h(BIconChevronBarLeft, {\n props: navPrevProps\n });\n var $prevYearIcon = this.normalizeSlot(SLOT_NAME_NAV_PEV_YEAR, navScope) || h(BIconChevronDoubleLeft, {\n props: navPrevProps\n });\n var $prevMonthIcon = this.normalizeSlot(SLOT_NAME_NAV_PEV_MONTH, navScope) || h(BIconChevronLeft, {\n props: navPrevProps\n });\n var $thisMonthIcon = this.normalizeSlot(SLOT_NAME_NAV_THIS_MONTH, navScope) || h(BIconCircleFill, {\n props: navProps\n });\n var $nextMonthIcon = this.normalizeSlot(SLOT_NAME_NAV_NEXT_MONTH, navScope) || h(BIconChevronLeft, {\n props: navNextProps\n });\n var $nextYearIcon = this.normalizeSlot(SLOT_NAME_NAV_NEXT_YEAR, navScope) || h(BIconChevronDoubleLeft, {\n props: navNextProps\n });\n var $nextDecadeIcon = this.normalizeSlot(SLOT_NAME_NAV_NEXT_DECADE, navScope) || h(BIconChevronBarLeft, {\n props: navNextProps\n }); // Utility to create the date navigation buttons\n\n var makeNavBtn = function makeNavBtn(content, label, handler, btnDisabled, shortcut) {\n return h('button', {\n staticClass: 'btn btn-sm border-0 flex-fill',\n class: [_this6.computedNavButtonVariant, {\n disabled: btnDisabled\n }],\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 ? {} : {\n click: handler\n }\n }, [h('div', {\n attrs: {\n 'aria-hidden': 'true'\n }\n }, [content])]);\n }; // Generate the date navigation buttons\n\n\n var $nav = h('div', {\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 }, [hideDecadeNav ? h() : makeNavBtn($prevDecadeIcon, this.labelPrevDecade, this.gotoPrevDecade, this.prevDecadeDisabled, 'Ctrl+Alt+PageDown'), makeNavBtn($prevYearIcon, this.labelPrevYear, this.gotoPrevYear, this.prevYearDisabled, 'Alt+PageDown'), makeNavBtn($prevMonthIcon, this.labelPrevMonth, this.gotoPrevMonth, this.prevMonthDisabled, 'PageDown'), makeNavBtn($thisMonthIcon, this.labelCurrentMonth, this.gotoCurrentMonth, this.thisMonthDisabled, 'Home'), makeNavBtn($nextMonthIcon, this.labelNextMonth, this.gotoNextMonth, this.nextMonthDisabled, 'PageUp'), makeNavBtn($nextYearIcon, this.labelNextYear, this.gotoNextYear, this.nextYearDisabled, 'Alt+PageUp'), hideDecadeNav ? h() : makeNavBtn($nextDecadeIcon, this.labelNextDecade, this.gotoNextDecade, this.nextDecadeDisabled, 'Ctrl+Alt+PageUp')]); // Caption for calendar grid\n\n var $gridCaption = h('header', {\n staticClass: 'b-calendar-grid-caption text-center font-weight-bold',\n class: {\n 'text-muted': disabled\n },\n attrs: {\n id: gridCaptionId,\n 'aria-live': isLive ? 'polite' : null,\n 'aria-atomic': isLive ? 'true' : null\n },\n key: 'grid-caption'\n }, this.formatYearMonth(this.calendarFirstDay)); // Calendar weekday headings\n\n var $gridWeekDays = h('div', {\n staticClass: 'b-calendar-grid-weekdays row no-gutters border-bottom',\n attrs: {\n 'aria-hidden': 'true'\n }\n }, this.calendarHeadings.map(function (d, idx) {\n return h('small', {\n staticClass: 'col text-truncate',\n class: {\n 'text-muted': disabled\n },\n attrs: {\n title: d.label === d.text ? null : d.label,\n 'aria-label': d.label\n },\n key: idx\n }, d.text);\n })); // Calendar day grid\n\n var $gridBody = this.calendar.map(function (week) {\n var $cells = week.map(function (day, dIndex) {\n var _class;\n\n var isSelected = day.ymd === selectedYMD;\n var isActive = day.ymd === activeYMD;\n var isToday = day.ymd === todayYMD;\n var idCell = safeId(\"_cell-\".concat(day.ymd, \"_\")); // \"fake\" button\n\n var $btn = h('span', {\n staticClass: 'btn border-0 rounded-circle text-nowrap',\n // Should we add some classes to signify if today/selected/etc?\n class: (_class = {\n // Give the fake button a focus ring\n focus: isActive && _this6.gridHasFocus,\n // Styling\n disabled: day.isDisabled || disabled,\n active: isSelected\n }, _defineProperty(_class, _this6.computedVariant, isSelected), _defineProperty(_class, _this6.computedTodayVariant, isToday && highlightToday && !isSelected && day.isThisMonth), _defineProperty(_class, 'btn-outline-light', !(isToday && highlightToday) && !isSelected && !isActive), _defineProperty(_class, 'btn-light', !(isToday && highlightToday) && !isSelected && isActive), _defineProperty(_class, 'text-muted', !day.isThisMonth && !isSelected), _defineProperty(_class, 'text-dark', !(isToday && highlightToday) && !isSelected && !isActive && day.isThisMonth), _defineProperty(_class, 'font-weight-bold', (isSelected || day.isThisMonth) && !day.isDisabled), _class),\n on: {\n click: function click() {\n return _this6.onClickDay(day);\n }\n }\n }, day.day);\n return h('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,\n // 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': [day.label, isSelected ? \"(\".concat(_this6.labelSelected, \")\") : null, isToday ? \"(\".concat(_this6.labelToday, \")\") : null].filter(identity).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 }, [$btn]);\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\n return h('div', {\n staticClass: 'row no-gutters',\n key: week[0].ymd\n }, $cells);\n });\n $gridBody = h('div', {\n // A key is only required on the body if we add in transition support\n staticClass: 'b-calendar-grid-body',\n style: disabled ? {\n pointerEvents: 'none'\n } : {} // key: this.activeYMD.slice(0, -3)\n\n }, $gridBody);\n var $gridHelp = h('footer', {\n staticClass: 'b-calendar-grid-help border-top small text-muted text-center bg-light',\n attrs: {\n id: gridHelpId\n }\n }, [h('div', {\n staticClass: 'small'\n }, this.labelHelp)]);\n var $grid = h('div', {\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),\n // `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 }, [$gridCaption, $gridWeekDays, $gridBody, $gridHelp]); // Optional bottom slot\n\n var $slot = this.normalizeSlot();\n $slot = $slot ? h('footer', {\n staticClass: 'b-calendar-footer'\n }, $slot) : h();\n var $widget = h('div', {\n staticClass: 'b-calendar-inner',\n style: this.block ? {} : {\n width: this.width\n },\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': [// Should the attr (if present) go last?\n // Or should this attr be a prop?\n this.bvAttrs['aria-describedby'], valueId, gridHelpId].filter(identity).join(' ')\n },\n on: {\n keydown: this.onKeydownWrapper\n }\n }, [$header, $nav, $grid, $slot]); // Wrap in an outer div that can be styled\n\n return h('div', {\n staticClass: 'b-calendar',\n class: {\n 'd-block': this.block\n }\n }, [$widget]);\n }\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'; // --- Constants ---\n\nvar PROP = '__BV_hover_handler__';\nvar MOUSEENTER = 'mouseenter';\nvar MOUSELEAVE = 'mouseleave'; // --- Helper methods ---\n\nvar createListener = function createListener(handler) {\n var listener = function listener(event) {\n handler(event.type === MOUSEENTER, event);\n };\n\n listener.fn = handler;\n return listener;\n};\n\nvar updateListeners = function 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}; // --- Directive bind/unbind/update handler ---\n\n\nvar directive = function directive(el, _ref) {\n var _ref$value = _ref.value,\n handler = _ref$value === void 0 ? null : _ref$value;\n\n if (IS_BROWSER) {\n var listener = el[PROP];\n var hasListener = isFunction(listener);\n var handlerChanged = !(hasListener && listener.fn === handler);\n\n if (hasListener && handlerChanged) {\n updateListeners(false, el, listener);\n delete el[PROP];\n }\n\n if (isFunction(handler) && handlerChanged) {\n el[PROP] = createListener(handler);\n updateListeners(true, el, el[PROP]);\n }\n }\n}; // VBHover directive\n\n\nexport var VBHover = {\n bind: directive,\n componentUpdated: directive,\n unbind: function unbind(el) {\n directive(el, {\n value: null\n });\n }\n};","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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 { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } 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'; // --- Props ---\n\nexport var props = sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), formSizeProps), formStateProps), omit(dropdownProps, ['disabled'])), 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})); // --- Main component ---\n// @vue/component\n\nexport var 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: props,\n data: function data() {\n return {\n isHovered: false,\n hasFocus: false\n };\n },\n computed: {\n idButton: function idButton() {\n return this.safeId();\n },\n idLabel: function idLabel() {\n return this.safeId('_value_');\n },\n idMenu: function idMenu() {\n return this.safeId('_dialog_');\n },\n idWrapper: function idWrapper() {\n return this.safeId('_outer_');\n },\n computedDir: function computedDir() {\n return this.rtl === true ? 'rtl' : this.rtl === false ? 'ltr' : null;\n }\n },\n methods: {\n focus: function focus() {\n if (!this.disabled) {\n attemptFocus(this.$refs.toggle);\n }\n },\n blur: function blur() {\n if (!this.disabled) {\n attemptBlur(this.$refs.toggle);\n }\n },\n setFocus: function setFocus(event) {\n this.hasFocus = event.type === 'focus';\n },\n handleHover: function handleHover(hovered) {\n this.isHovered = hovered;\n }\n },\n render: function render(h) {\n var _class;\n\n var idButton = this.idButton,\n idLabel = this.idLabel,\n idMenu = this.idMenu,\n idWrapper = this.idWrapper,\n disabled = this.disabled,\n readonly = this.readonly,\n required = this.required,\n name = this.name,\n state = this.state,\n visible = this.visible,\n size = this.size,\n isHovered = this.isHovered,\n hasFocus = this.hasFocus,\n labelSelected = this.labelSelected,\n buttonVariant = this.buttonVariant,\n buttonOnly = this.buttonOnly;\n var value = toString(this.value) || '';\n var invalid = state === false || required && !value;\n var btnScope = {\n isHovered: isHovered,\n hasFocus: hasFocus,\n state: state,\n opened: visible\n };\n var $button = h('button', {\n staticClass: 'btn',\n class: (_class = {}, _defineProperty(_class, \"btn-\".concat(buttonVariant), buttonOnly), _defineProperty(_class, \"btn-\".concat(size), size), _defineProperty(_class, 'h-auto', !buttonOnly), _defineProperty(_class, 'dropdown-toggle', buttonOnly), _defineProperty(_class, 'dropdown-toggle-no-caret', buttonOnly), _class),\n attrs: {\n id: idButton,\n type: 'button',\n disabled: 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: [{\n name: 'b-hover',\n value: this.handleHover\n }],\n on: {\n mousedown: this.onMousedown,\n click: this.toggle,\n keydown: this.toggle,\n // Handle ENTER, SPACE and DOWN\n '!focus': this.setFocus,\n '!blur': this.setFocus\n },\n ref: 'toggle'\n }, [this.hasNormalizedSlot(SLOT_NAME_BUTTON_CONTENT) ? this.normalizeSlot(SLOT_NAME_BUTTON_CONTENT, btnScope) :\n /* istanbul ignore next */\n h(BIconChevronDown, {\n props: {\n scale: 1.25\n }\n })]); // Hidden input\n\n var $hidden = h();\n\n if (name && !disabled) {\n $hidden = h('input', {\n attrs: {\n type: 'hidden',\n name: name || null,\n form: this.form || null,\n value: value\n }\n });\n } // Dropdown content\n\n\n var $menu = h('div', {\n staticClass: 'dropdown-menu',\n class: [this.menuClass, {\n show: visible,\n 'dropdown-menu-right': this.right\n }],\n attrs: {\n id: idMenu,\n role: 'dialog',\n tabindex: '-1',\n 'aria-modal': 'false',\n 'aria-labelledby': idLabel\n },\n on: {\n keydown: this.onKeydown // Handle ESC\n\n },\n ref: 'menu'\n }, [this.normalizeSlot(SLOT_NAME_DEFAULT, {\n opened: visible\n })]); // Value label\n\n var $label = h('label', {\n class: buttonOnly ? 'sr-only' // Hidden in button only mode\n : ['form-control', 'text-break', 'text-wrap', 'bg-transparent', // Mute the text if showing the placeholder\n {\n 'text-muted': !value\n }, this.stateClass, this.sizeFormClass],\n attrs: {\n id: idLabel,\n for: idButton,\n 'aria-invalid': invalid ? 'true' : null,\n 'aria-required': required ? 'true' : null\n },\n directives: [{\n name: 'b-hover',\n value: this.handleHover\n }],\n on: {\n // Disable bubbling of the click event to\n // prevent menu from closing and re-opening\n '!click':\n /* istanbul ignore next */\n function click(event) {\n stopEvent(event, {\n preventDefault: false\n });\n }\n }\n }, [value ? this.formattedValue || value : this.placeholder || '', // Add the selected label for screen readers when a value is provided\n value && labelSelected ? h('bdi', {\n staticClass: 'sr-only'\n }, labelSelected) : '']); // Return the custom form control wrapper\n\n return h('div', {\n staticClass: 'b-form-btn-label-control dropdown',\n class: [this.directionClass, this.boundaryClass, [{\n 'btn-group': buttonOnly,\n 'form-control': !buttonOnly,\n 'd-flex': !buttonOnly,\n 'h-auto': !buttonOnly,\n 'align-items-stretch': !buttonOnly,\n focus: hasFocus && !buttonOnly,\n show: visible,\n 'is-valid': state === true,\n 'is-invalid': state === false\n }, buttonOnly ? null : this.sizeFormClass]],\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 }, [$button, $hidden, $menu, $label]);\n }\n});","var _watch;\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { 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 { BVFormBtnLabelControl, props as BVFormBtnLabelControlProps } from '../form-btn-label-control/bv-form-btn-label-control'; // --- Constants ---\n\nvar _makeModelMixin = makeModelMixin('value', {\n type: PROP_TYPE_DATE_STRING\n}),\n modelMixin = _makeModelMixin.mixin,\n modelProps = _makeModelMixin.props,\n MODEL_PROP_NAME = _makeModelMixin.prop,\n MODEL_EVENT_NAME = _makeModelMixin.event; // --- Props ---\n\n\nvar calendarProps = omit(BCalendarProps, ['block', 'hidden', 'id', 'noKeyNav', 'roleDescription', 'value', 'width']);\nvar formBtnLabelControlProps = omit(BVFormBtnLabelControlProps, ['formattedValue', 'id', 'lang', 'rtl', 'value']);\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), modelProps), calendarProps), 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})), NAME_FORM_DATEPICKER); // --- Main component ---\n// @vue/component\n\nexport var BFormDatepicker = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_DATEPICKER,\n mixins: [idMixin, modelMixin],\n props: props,\n data: function 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: function 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: function computedLang() {\n return (this.localLocale || '').replace(/-u-.*$/i, '') || null;\n },\n computedResetValue: function computedResetValue() {\n return formatYMD(constrainDate(this.resetValue)) || '';\n }\n },\n watch: (_watch = {}, _defineProperty(_watch, MODEL_PROP_NAME, function (newValue) {\n this.localYMD = formatYMD(newValue) || '';\n }), _defineProperty(_watch, \"localYMD\", function 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 }), _defineProperty(_watch, \"calendarYM\", function 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 (_unused) {}\n }\n }), _watch),\n methods: {\n // Public methods\n focus: function focus() {\n if (!this.disabled) {\n attemptFocus(this.$refs.control);\n }\n },\n blur: function blur() {\n if (!this.disabled) {\n attemptBlur(this.$refs.control);\n }\n },\n // Private methods\n setAndClose: function setAndClose(ymd) {\n var _this = this;\n\n this.localYMD = ymd; // Close calendar popup, unless `noCloseOnSelect`\n\n if (!this.noCloseOnSelect) {\n this.$nextTick(function () {\n _this.$refs.control.hide(true);\n });\n }\n },\n onSelected: function onSelected(ymd) {\n var _this2 = this;\n\n this.$nextTick(function () {\n _this2.setAndClose(ymd);\n });\n },\n onInput: function onInput(ymd) {\n if (this.localYMD !== ymd) {\n this.localYMD = ymd;\n }\n },\n onContext: function onContext(ctx) {\n var activeYMD = ctx.activeYMD,\n isRTL = ctx.isRTL,\n locale = ctx.locale,\n selectedYMD = ctx.selectedYMD,\n selectedFormatted = ctx.selectedFormatted;\n this.isRTL = isRTL;\n this.localLocale = locale;\n this.formattedValue = selectedFormatted;\n this.localYMD = selectedYMD;\n this.activeYMD = activeYMD; // Re-emit the context event\n\n this.$emit(EVENT_NAME_CONTEXT, ctx);\n },\n onTodayButton: function 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: function onResetButton() {\n this.setAndClose(this.computedResetValue);\n },\n onCloseButton: function onCloseButton() {\n this.$refs.control.hide(true);\n },\n // Menu handlers\n onShow: function onShow() {\n this.isVisible = true;\n },\n onShown: function onShown() {\n var _this3 = this;\n\n this.$nextTick(function () {\n attemptFocus(_this3.$refs.calendar);\n\n _this3.$emit(EVENT_NAME_SHOWN);\n });\n },\n onHidden: function onHidden() {\n this.isVisible = false;\n this.$emit(EVENT_NAME_HIDDEN);\n },\n // Render helpers\n defaultButtonFn: function defaultButtonFn(_ref) {\n var isHovered = _ref.isHovered,\n hasFocus = _ref.hasFocus;\n return this.$createElement(isHovered || hasFocus ? BIconCalendarFill : BIconCalendar, {\n attrs: {\n 'aria-hidden': 'true'\n }\n });\n }\n },\n render: function render(h) {\n var localYMD = this.localYMD,\n disabled = this.disabled,\n readonly = this.readonly,\n dark = this.dark,\n $props = this.$props,\n $scopedSlots = this.$scopedSlots;\n var placeholder = isUndefinedOrNull(this.placeholder) ? this.labelNoDateSelected : this.placeholder; // Optional footer buttons\n\n var $footer = [];\n\n if (this.todayButton) {\n var label = this.labelTodayButton;\n $footer.push(h(BButton, {\n props: {\n disabled: disabled || readonly,\n size: 'sm',\n variant: this.todayButtonVariant\n },\n attrs: {\n 'aria-label': label || null\n },\n on: {\n click: this.onTodayButton\n }\n }, label));\n }\n\n if (this.resetButton) {\n var _label = this.labelResetButton;\n $footer.push(h(BButton, {\n props: {\n disabled: disabled || readonly,\n size: 'sm',\n variant: this.resetButtonVariant\n },\n attrs: {\n 'aria-label': _label || null\n },\n on: {\n click: this.onResetButton\n }\n }, _label));\n }\n\n if (this.closeButton) {\n var _label2 = this.labelCloseButton;\n $footer.push(h(BButton, {\n props: {\n disabled: disabled,\n size: 'sm',\n variant: this.closeButtonVariant\n },\n attrs: {\n 'aria-label': _label2 || null\n },\n on: {\n click: this.onCloseButton\n }\n }, _label2));\n }\n\n if ($footer.length > 0) {\n $footer = [h('div', {\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 }, $footer)];\n }\n\n var $calendar = h(BCalendar, {\n staticClass: 'b-form-date-calendar w-100',\n props: _objectSpread(_objectSpread({}, 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, ['nav-prev-decade', 'nav-prev-year', 'nav-prev-month', 'nav-this-month', 'nav-next-month', 'nav-next-year', 'nav-next-decade']),\n key: 'calendar',\n ref: 'calendar'\n }, $footer);\n return h(BVFormBtnLabelControl, {\n staticClass: 'b-form-datepicker',\n props: _objectSpread(_objectSpread({}, pluckProps(formBtnLabelControlProps, $props)), {}, {\n formattedValue: localYMD ? this.formattedValue : '',\n id: this.safeId(),\n lang: this.computedLang,\n menuClass: [{\n 'bg-dark': dark,\n 'text-light': dark\n }, this.menuClass],\n placeholder: 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: _defineProperty({}, SLOT_NAME_BUTTON_CONTENT, $scopedSlots[SLOT_NAME_BUTTON_CONTENT] || this.defaultButtonFn),\n ref: 'control'\n }, [$calendar]);\n }\n});","\n \n \n\n \n\n \n \n\n \n \n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n \n \n \n \n \n {{ getOverallIndex(data.index) }}\n \n\n \n \n \n \n \n \n \n\n \n\n \n \n \n {{ modalHeader.dataOperationType }} - {{ modalHeader.entity }} - {{ modalHeader.subjectIdentifier }}\n {{ modalHeader.fullName }}\n {{ modalHeader.dateCreated }}\n {{ modalHeader.requestHostIPAddress }}\n \n\n \n \n {{ addSpaceToString(data.value) }}\n \n\n \n \n \n \n {{ text }}: {{ value }}\n \n \n \n\n {{ data.value }}\n\n \n\n \n \n \n \n {{ text }}: {{ value }}\n \n \n \n {{ data.value }}\n \n \n \n\n \n\n \n \n \n \n \n option.value\"\n item=\"label\"\n />\n \n \n\n \n \n \n \n \n\n \n \n option\"\n item=\"label\"\n />\n \n \n\n \n \n \n \n \n\n \n \n \n \n \n\n \n \n option.value\"\n item=\"label\"\n />\n \n \n\n \n \n Creation Date\n \n \n \n\n \n \n \n \n \n\n \n \n \n \n\n\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AuditTrail.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AuditTrail.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AuditTrail.vue?vue&type=template&id=6d56ea70&scoped=true&\"\nimport script from \"./AuditTrail.vue?vue&type=script&lang=js&\"\nexport * from \"./AuditTrail.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AuditTrail.vue?vue&type=style&index=0&id=6d56ea70&lang=scss&scoped=true&\"\nimport style1 from \"./AuditTrail.vue?vue&type=style&index=1&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6d56ea70\",\n null\n \n)\n\nexport default component.exports","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue } from '../vue';\nimport { EVENT_NAME_BLUR, EVENT_NAME_CHANGE, EVENT_NAME_INPUT, EVENT_NAME_UPDATE, HOOK_EVENT_NAME_BEFORE_DESTROY } from '../constants/events';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_FUNCTION, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } 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'; // --- Constants ---\n\nvar _makeModelMixin = makeModelMixin('value', {\n type: PROP_TYPE_NUMBER_STRING,\n defaultValue: '',\n event: EVENT_NAME_UPDATE\n}),\n modelMixin = _makeModelMixin.mixin,\n modelProps = _makeModelMixin.props,\n MODEL_PROP_NAME = _makeModelMixin.prop,\n MODEL_EVENT_NAME = _makeModelMixin.event;\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, 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})), 'formTextControls'); // --- Mixin ---\n// @vue/component\n\nexport var formTextMixin = Vue.extend({\n mixins: [modelMixin],\n props: props,\n data: function data() {\n var value = this[MODEL_PROP_NAME];\n return {\n localValue: toString(value),\n vModelValue: this.modifyValue(value)\n };\n },\n computed: {\n computedClass: function computedClass() {\n var plaintext = this.plaintext,\n type = this.type;\n var isRange = type === 'range';\n var isColor = type === 'color';\n return [{\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 }, this.sizeFormClass, this.stateClass];\n },\n computedDebounce: function 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: function hasFormatter() {\n return hasPropFunction(this.formatter);\n }\n },\n watch: _defineProperty({}, MODEL_PROP_NAME, function (newValue) {\n var stringifyValue = toString(newValue);\n var modifiedValue = this.modifyValue(newValue);\n\n if (stringifyValue !== this.localValue || modifiedValue !== this.vModelValue) {\n // Clear any pending debounce timeout, as we are overwriting the user input\n this.clearDebounce(); // Update the local values\n\n this.localValue = stringifyValue;\n this.vModelValue = modifiedValue;\n }\n }),\n created: function created() {\n // Create private non-reactive props\n this.$_inputDebounceTimer = null;\n },\n mounted: function mounted() {\n // Set up destroy handler\n this.$on(HOOK_EVENT_NAME_BEFORE_DESTROY, this.clearDebounce);\n },\n beforeDestroy: function beforeDestroy() {\n this.clearDebounce();\n },\n methods: {\n clearDebounce: function clearDebounce() {\n clearTimeout(this.$_inputDebounceTimer);\n this.$_inputDebounceTimer = null;\n },\n formatValue: function formatValue(value, event) {\n var force = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n value = toString(value);\n\n if (this.hasFormatter && (!this.lazyFormatter || force)) {\n value = this.formatter(value, event);\n }\n\n return value;\n },\n modifyValue: function modifyValue(value) {\n value = toString(value); // Emulate `.trim` modifier behaviour\n\n if (this.trim) {\n value = value.trim();\n } // Emulate `.number` modifier behaviour\n\n\n if (this.number) {\n value = toFloat(value, value);\n }\n\n return value;\n },\n updateValue: function updateValue(value) {\n var _this = this;\n\n var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var lazy = this.lazy;\n\n if (lazy && !force) {\n return;\n } // Make sure to always clear the debounce when `updateValue()`\n // is called, even when the v-model hasn't changed\n\n\n this.clearDebounce(); // Define the shared update logic in a method to be able to use\n // it for immediate and debounced value changes\n\n var doUpdate = function doUpdate() {\n value = _this.modifyValue(value);\n\n if (value !== _this.vModelValue) {\n _this.vModelValue = value;\n\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\n /* istanbul ignore next: hard to test */\n var $input = _this.$refs.input;\n /* istanbul ignore if: hard to test out of sync value */\n\n if ($input && value !== $input.value) {\n $input.value = value;\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\n\n var debounce = this.computedDebounce;\n\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: function 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\n /* istanbul ignore if: hard to test composition events */\n if (event.target.composing) {\n return;\n }\n\n var value = event.target.value;\n var formattedValue = this.formatValue(value, event); // Exit when the `formatter` function strictly returned `false`\n // or prevented the input event\n\n /* istanbul ignore next */\n\n if (formattedValue === false || event.defaultPrevented) {\n stopEvent(event, {\n propagation: false\n });\n return;\n }\n\n this.localValue = formattedValue;\n this.updateValue(formattedValue);\n this.$emit(EVENT_NAME_INPUT, formattedValue);\n },\n onChange: function onChange(event) {\n var value = event.target.value;\n var formattedValue = this.formatValue(value, event); // Exit when the `formatter` function strictly returned `false`\n // or prevented the input event\n\n /* istanbul ignore next */\n\n if (formattedValue === false || event.defaultPrevented) {\n stopEvent(event, {\n propagation: false\n });\n return;\n }\n\n this.localValue = formattedValue;\n this.updateValue(formattedValue, true);\n this.$emit(EVENT_NAME_CHANGE, formattedValue);\n },\n onBlur: function onBlur(event) {\n // Apply the `localValue` on blur to prevent cursor jumps\n // on mobile browsers (e.g. caused by autocomplete)\n var value = event.target.value;\n var formattedValue = this.formatValue(value, event, true);\n\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)); // We pass the formatted value here since the `updateValue` method\n // handles the modifiers itself\n\n this.updateValue(formattedValue, true);\n } // Emit native blur event\n\n\n this.$emit(EVENT_NAME_BLUR, event);\n },\n focus: function focus() {\n // For external handler that may want a focus method\n if (!this.disabled) {\n attemptFocus(this.$el);\n }\n },\n blur: function blur() {\n // For external handler that may want a blur method\n if (!this.disabled) {\n attemptBlur(this.$el);\n }\n }\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { 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'; // --- Constants ---\n// Valid supported input types\n\nvar TYPES = ['text', 'password', 'email', 'number', 'url', 'tel', 'search', 'range', 'color', 'date', 'time', 'datetime', 'datetime-local', 'month', 'week']; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), formControlProps), formSizeProps), formStateProps), 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', function (type) {\n return arrayIncludes(TYPES, type);\n })\n})), NAME_FORM_INPUT); // --- Main component ---\n// @vue/component\n\nexport var BFormInput = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_INPUT,\n // Mixin order is important!\n mixins: [listenersMixin, idMixin, formControlMixin, formSizeMixin, formStateMixin, formTextMixin, formSelectionMixin, formValidityMixin],\n props: props,\n computed: {\n localType: function localType() {\n // We only allow certain types\n var type = this.type;\n return arrayIncludes(TYPES, type) ? type : 'text';\n },\n computedAttrs: function computedAttrs() {\n var type = this.localType,\n name = this.name,\n form = this.form,\n disabled = this.disabled,\n placeholder = this.placeholder,\n required = this.required,\n min = this.min,\n max = this.max,\n step = this.step;\n return {\n id: this.safeId(),\n name: name,\n form: form,\n type: type,\n disabled: disabled,\n placeholder: placeholder,\n required: required,\n autocomplete: this.autocomplete || null,\n readonly: this.readonly || this.plaintext,\n min: min,\n max: max,\n step: step,\n list: type !== 'password' ? this.list : null,\n 'aria-required': required ? 'true' : null,\n 'aria-invalid': this.computedAriaInvalid\n };\n },\n computedListeners: function computedListeners() {\n return _objectSpread(_objectSpread({}, this.bvListeners), {}, {\n input: this.onInput,\n change: this.onChange,\n blur: this.onBlur\n });\n }\n },\n watch: {\n noWheel: function noWheel(newValue) {\n this.setWheelStopper(newValue);\n }\n },\n mounted: function mounted() {\n this.setWheelStopper(this.noWheel);\n },\n\n /* istanbul ignore next */\n deactivated: function deactivated() {\n // Turn off listeners when keep-alive component deactivated\n\n /* istanbul ignore next */\n this.setWheelStopper(false);\n },\n\n /* istanbul ignore next */\n activated: function activated() {\n // Turn on listeners (if no-wheel) when keep-alive component activated\n\n /* istanbul ignore next */\n this.setWheelStopper(this.noWheel);\n },\n beforeDestroy: function beforeDestroy() {\n /* istanbul ignore next */\n this.setWheelStopper(false);\n },\n methods: {\n setWheelStopper: function setWheelStopper(on) {\n var input = this.$el; // We use native events, so that we don't interfere with propagation\n\n eventOnOff(on, input, 'focus', this.onWheelFocus);\n eventOnOff(on, input, 'blur', this.onWheelBlur);\n\n if (!on) {\n eventOff(document, 'wheel', this.stopWheel);\n }\n },\n onWheelFocus: function onWheelFocus() {\n eventOn(document, 'wheel', this.stopWheel);\n },\n onWheelBlur: function onWheelBlur() {\n eventOff(document, 'wheel', this.stopWheel);\n },\n stopWheel: function stopWheel(event) {\n stopEvent(event, {\n propagation: false\n });\n attemptBlur(this.$el);\n }\n },\n render: function render(h) {\n return h('input', {\n class: this.computedClass,\n attrs: this.computedAttrs,\n domProps: {\n value: this.localValue\n },\n on: this.computedListeners,\n ref: 'input'\n });\n }\n});","export const removeSpecialChar = event => {\n const regex = /^[A-Za-z0-9 %-]$/\n if (!regex.test(event.key)) {\n event.preventDefault()\n }\n}\nexport const removeNegativeNumber = event => {\n const regex = /^\\d*\\.?\\d*$/\n if (!regex.test(event.key)) {\n event.preventDefault()\n }\n}\nexport const removeCharAndSpace = event => {\n const regex = /^[A-Za-z0-9]$/\n if (!regex.test(event.key)) {\n event.preventDefault()\n }\n}\nexport const persistPhoneNumber = event => {\n const regex = /^[\\d,+]*$/\n if (!regex.test(event.key)) {\n event.preventDefault()\n }\n}\nexport const persistAccountNumber = event => {\n const regex = /^[\\d,]*$/\n if (!regex.test(event.key)) {\n event.preventDefault()\n }\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'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n title: makeProp(PROP_TYPE_STRING),\n titleTag: makeProp(PROP_TYPE_STRING, 'h4')\n}, NAME_CARD_TITLE); // --- Main component ---\n// @vue/component\n\nexport var BCardTitle = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_TITLE,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n return h(props.titleTag, mergeData(data, {\n staticClass: 'card-title'\n }), children || toString(props.title));\n }\n});","var fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) == 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Set` constructor\n// https://tc39.es/ecma262/#sec-set-objects\ncollection('Set', function (init) {\n return function Set() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\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'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n subTitle: makeProp(PROP_TYPE_STRING),\n subTitleTag: makeProp(PROP_TYPE_STRING, 'h6'),\n subTitleTextVariant: makeProp(PROP_TYPE_STRING, 'muted')\n}, NAME_CARD_SUB_TITLE); // --- Main component ---\n// @vue/component\n\nexport var BCardSubTitle = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_SUB_TITLE,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n return h(props.subTitleTag, mergeData(data, {\n staticClass: 'card-subtitle',\n class: [props.subTitleTextVariant ? \"text-\".concat(props.subTitleTextVariant) : null]\n }), children || toString(props.subTitle));\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { 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 { copyProps, makeProp, makePropsConfigurable, pluckProps, prefixPropName } from '../../utils/props';\nimport { props as cardProps } from '../../mixins/card';\nimport { BCardTitle, props as titleProps } from './card-title';\nimport { BCardSubTitle, props as subTitleProps } from './card-sub-title'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, titleProps), subTitleProps), copyProps(cardProps, prefixPropName.bind(null, 'body'))), {}, {\n bodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n overlay: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_CARD_BODY); // --- Main component ---\n// @vue/component\n\nexport var BCardBody = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_BODY,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _ref2;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var bodyBgVariant = props.bodyBgVariant,\n bodyBorderVariant = props.bodyBorderVariant,\n bodyTextVariant = props.bodyTextVariant;\n var $title = h();\n\n if (props.title) {\n $title = h(BCardTitle, {\n props: pluckProps(titleProps, props)\n });\n }\n\n var $subTitle = h();\n\n if (props.subTitle) {\n $subTitle = h(BCardSubTitle, {\n props: pluckProps(subTitleProps, props),\n class: ['mb-2']\n });\n }\n\n return h(props.bodyTag, mergeData(data, {\n staticClass: 'card-body',\n class: [(_ref2 = {\n 'card-img-overlay': props.overlay\n }, _defineProperty(_ref2, \"bg-\".concat(bodyBgVariant), bodyBgVariant), _defineProperty(_ref2, \"border-\".concat(bodyBorderVariant), bodyBorderVariant), _defineProperty(_ref2, \"text-\".concat(bodyTextVariant), bodyTextVariant), _ref2), props.bodyClass]\n }), [$title, $subTitle, children]);\n }\n});","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar create = require('../internals/object-create');\nvar redefineAll = require('../internals/redefine-all');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/define-iterator');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (iterable != undefined) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key == key) return entry;\n }\n };\n\n redefineAll(Prototype, {\n // `{ Map, Set }.prototype.clear()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.clear\n // https://tc39.es/ecma262/#sec-set.prototype.clear\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // `{ Map, Set }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.delete\n // https://tc39.es/ecma262/#sec-set.prototype.delete\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first == entry) state.first = next;\n if (state.last == entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // `{ Map, Set }.prototype.forEach(callbackfn, thisArg = undefined)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.foreach\n // https://tc39.es/ecma262/#sec-set.prototype.foreach\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // `{ Map, Set}.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.has\n // https://tc39.es/ecma262/#sec-set.prototype.has\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n redefineAll(Prototype, IS_MAP ? {\n // `Map.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-map.prototype.get\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // `Map.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-map.prototype.set\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // `Set.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-set.prototype.add\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineProperty(Prototype, 'size', {\n get: function () {\n return getInternalState(this).size;\n }\n });\n return Constructor;\n },\n setStrong: function (Constructor, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // `{ Map, Set }.prototype.{ keys, values, entries, @@iterator }()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.entries\n // https://tc39.es/ecma262/#sec-map.prototype.keys\n // https://tc39.es/ecma262/#sec-map.prototype.values\n // https://tc39.es/ecma262/#sec-map.prototype-@@iterator\n // https://tc39.es/ecma262/#sec-set.prototype.entries\n // https://tc39.es/ecma262/#sec-set.prototype.keys\n // https://tc39.es/ecma262/#sec-set.prototype.values\n // https://tc39.es/ecma262/#sec-set.prototype-@@iterator\n defineIterator(Constructor, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return { value: undefined, done: true };\n }\n // return step by kind\n if (kind == 'keys') return { value: entry.key, done: false };\n if (kind == 'values') return { value: entry.value, done: false };\n return { value: [entry.key, entry.value], done: false };\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // `{ Map, Set }.prototype[@@species]` accessors\n // https://tc39.es/ecma262/#sec-get-map-@@species\n // https://tc39.es/ecma262/#sec-get-set-@@species\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputField.vue?vue&type=style&index=0&id=c26398c2&scoped=true&lang=css&\"","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n redefine(NativePrototype, KEY,\n KEY == 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY == 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY == 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY == 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (iterable != undefined) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, forced: Constructor != NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableEntries.vue?vue&type=style&index=0&lang=scss&\"","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue, mergeData } from '../../vue';\nimport { PROP_TYPE_BOOLEAN } from '../../constants/props';\nimport { omit } from '../../utils/object';\nimport { makeProp } from '../../utils/props';\nimport { kebabCase, pascalCase, trim } from '../../utils/string';\nimport { BVIconBase, props as BVIconBaseProps } from './icon-base';\n/**\n * 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 */\n\nexport var makeIcon = function 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 var kebabName = kebabCase(name);\n var iconName = \"BIcon\".concat(pascalCase(name));\n var iconNameClass = \"bi-\".concat(kebabName);\n var iconTitle = kebabName.replace(/-/g, ' ');\n var svgContent = trim(content || '');\n return /*#__PURE__*/Vue.extend({\n name: iconName,\n functional: true,\n props: _objectSpread(_objectSpread({}, omit(BVIconBaseProps, ['content', 'stacked'])), {}, {\n stacked: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n render: function render(h, _ref) {\n var data = _ref.data,\n props = _ref.props;\n return h(BVIconBase, mergeData( // Defaults\n {\n props: {\n title: iconTitle\n },\n attrs: {\n 'aria-label': iconTitle\n }\n }, // User data\n data, // Required data\n {\n staticClass: iconNameClass,\n props: _objectSpread(_objectSpread({}, props), {}, {\n content: svgContent\n })\n }));\n }\n });\n};","// --- BEGIN AUTO-GENERATED FILE ---\n//\n// @IconsVersion: 1.2.1\n// @Generated: 2020-12-16T17:45:59.062Z\n//\n// This file is generated on each build. Do not edit this file!\n/*!\n * BootstrapVue Icons, generated from Bootstrap Icons 1.2.1\n *\n * @link https://icons.getbootstrap.com/\n * @license MIT\n * https://github.com/twbs/icons/blob/master/LICENSE.md\n */import{makeIcon}from'./helpers/make-icon';// --- BootstrapVue custom icons ---\nexport var BIconBlank=/*#__PURE__*/makeIcon('Blank','');// --- Bootstrap Icons ---\n// eslint-disable-next-line\nexport var BIconAlarm=/*#__PURE__*/makeIcon('Alarm','');// eslint-disable-next-line\nexport var BIconAlarmFill=/*#__PURE__*/makeIcon('AlarmFill','');// eslint-disable-next-line\nexport var BIconAlignBottom=/*#__PURE__*/makeIcon('AlignBottom','');// eslint-disable-next-line\nexport var BIconAlignCenter=/*#__PURE__*/makeIcon('AlignCenter','');// eslint-disable-next-line\nexport var BIconAlignEnd=/*#__PURE__*/makeIcon('AlignEnd','');// eslint-disable-next-line\nexport var BIconAlignMiddle=/*#__PURE__*/makeIcon('AlignMiddle','');// eslint-disable-next-line\nexport var BIconAlignStart=/*#__PURE__*/makeIcon('AlignStart','');// eslint-disable-next-line\nexport var BIconAlignTop=/*#__PURE__*/makeIcon('AlignTop','');// eslint-disable-next-line\nexport var BIconAlt=/*#__PURE__*/makeIcon('Alt','');// eslint-disable-next-line\nexport var BIconApp=/*#__PURE__*/makeIcon('App','');// eslint-disable-next-line\nexport var BIconAppIndicator=/*#__PURE__*/makeIcon('AppIndicator','');// eslint-disable-next-line\nexport var BIconArchive=/*#__PURE__*/makeIcon('Archive','');// eslint-disable-next-line\nexport var BIconArchiveFill=/*#__PURE__*/makeIcon('ArchiveFill','');// eslint-disable-next-line\nexport var BIconArrow90degDown=/*#__PURE__*/makeIcon('Arrow90degDown','');// eslint-disable-next-line\nexport var BIconArrow90degLeft=/*#__PURE__*/makeIcon('Arrow90degLeft','');// eslint-disable-next-line\nexport var BIconArrow90degRight=/*#__PURE__*/makeIcon('Arrow90degRight','');// eslint-disable-next-line\nexport var BIconArrow90degUp=/*#__PURE__*/makeIcon('Arrow90degUp','');// eslint-disable-next-line\nexport var BIconArrowBarDown=/*#__PURE__*/makeIcon('ArrowBarDown','');// eslint-disable-next-line\nexport var BIconArrowBarLeft=/*#__PURE__*/makeIcon('ArrowBarLeft','');// eslint-disable-next-line\nexport var BIconArrowBarRight=/*#__PURE__*/makeIcon('ArrowBarRight','');// eslint-disable-next-line\nexport var BIconArrowBarUp=/*#__PURE__*/makeIcon('ArrowBarUp','');// eslint-disable-next-line\nexport var BIconArrowClockwise=/*#__PURE__*/makeIcon('ArrowClockwise','');// eslint-disable-next-line\nexport var BIconArrowCounterclockwise=/*#__PURE__*/makeIcon('ArrowCounterclockwise','');// eslint-disable-next-line\nexport var BIconArrowDown=/*#__PURE__*/makeIcon('ArrowDown','');// eslint-disable-next-line\nexport var BIconArrowDownCircle=/*#__PURE__*/makeIcon('ArrowDownCircle','');// eslint-disable-next-line\nexport var BIconArrowDownCircleFill=/*#__PURE__*/makeIcon('ArrowDownCircleFill','');// eslint-disable-next-line\nexport var BIconArrowDownLeft=/*#__PURE__*/makeIcon('ArrowDownLeft','');// eslint-disable-next-line\nexport var BIconArrowDownLeftCircle=/*#__PURE__*/makeIcon('ArrowDownLeftCircle','');// eslint-disable-next-line\nexport var BIconArrowDownLeftCircleFill=/*#__PURE__*/makeIcon('ArrowDownLeftCircleFill','');// eslint-disable-next-line\nexport var BIconArrowDownLeftSquare=/*#__PURE__*/makeIcon('ArrowDownLeftSquare','');// eslint-disable-next-line\nexport var BIconArrowDownLeftSquareFill=/*#__PURE__*/makeIcon('ArrowDownLeftSquareFill','');// eslint-disable-next-line\nexport var BIconArrowDownRight=/*#__PURE__*/makeIcon('ArrowDownRight','');// eslint-disable-next-line\nexport var BIconArrowDownRightCircle=/*#__PURE__*/makeIcon('ArrowDownRightCircle','');// eslint-disable-next-line\nexport var BIconArrowDownRightCircleFill=/*#__PURE__*/makeIcon('ArrowDownRightCircleFill','');// eslint-disable-next-line\nexport var BIconArrowDownRightSquare=/*#__PURE__*/makeIcon('ArrowDownRightSquare','');// eslint-disable-next-line\nexport var BIconArrowDownRightSquareFill=/*#__PURE__*/makeIcon('ArrowDownRightSquareFill','');// eslint-disable-next-line\nexport var BIconArrowDownShort=/*#__PURE__*/makeIcon('ArrowDownShort','');// eslint-disable-next-line\nexport var BIconArrowDownSquare=/*#__PURE__*/makeIcon('ArrowDownSquare','');// eslint-disable-next-line\nexport var BIconArrowDownSquareFill=/*#__PURE__*/makeIcon('ArrowDownSquareFill','');// eslint-disable-next-line\nexport var BIconArrowDownUp=/*#__PURE__*/makeIcon('ArrowDownUp','');// eslint-disable-next-line\nexport var BIconArrowLeft=/*#__PURE__*/makeIcon('ArrowLeft','');// eslint-disable-next-line\nexport var BIconArrowLeftCircle=/*#__PURE__*/makeIcon('ArrowLeftCircle','');// eslint-disable-next-line\nexport var BIconArrowLeftCircleFill=/*#__PURE__*/makeIcon('ArrowLeftCircleFill','');// eslint-disable-next-line\nexport var BIconArrowLeftRight=/*#__PURE__*/makeIcon('ArrowLeftRight','');// eslint-disable-next-line\nexport var BIconArrowLeftShort=/*#__PURE__*/makeIcon('ArrowLeftShort','');// eslint-disable-next-line\nexport var BIconArrowLeftSquare=/*#__PURE__*/makeIcon('ArrowLeftSquare','');// eslint-disable-next-line\nexport var BIconArrowLeftSquareFill=/*#__PURE__*/makeIcon('ArrowLeftSquareFill','');// eslint-disable-next-line\nexport var BIconArrowRepeat=/*#__PURE__*/makeIcon('ArrowRepeat','');// eslint-disable-next-line\nexport var BIconArrowReturnLeft=/*#__PURE__*/makeIcon('ArrowReturnLeft','');// eslint-disable-next-line\nexport var BIconArrowReturnRight=/*#__PURE__*/makeIcon('ArrowReturnRight','');// eslint-disable-next-line\nexport var BIconArrowRight=/*#__PURE__*/makeIcon('ArrowRight','');// eslint-disable-next-line\nexport var BIconArrowRightCircle=/*#__PURE__*/makeIcon('ArrowRightCircle','');// eslint-disable-next-line\nexport var BIconArrowRightCircleFill=/*#__PURE__*/makeIcon('ArrowRightCircleFill','');// eslint-disable-next-line\nexport var BIconArrowRightShort=/*#__PURE__*/makeIcon('ArrowRightShort','');// eslint-disable-next-line\nexport var BIconArrowRightSquare=/*#__PURE__*/makeIcon('ArrowRightSquare','');// eslint-disable-next-line\nexport var BIconArrowRightSquareFill=/*#__PURE__*/makeIcon('ArrowRightSquareFill','');// eslint-disable-next-line\nexport var BIconArrowUp=/*#__PURE__*/makeIcon('ArrowUp','');// eslint-disable-next-line\nexport var BIconArrowUpCircle=/*#__PURE__*/makeIcon('ArrowUpCircle','');// eslint-disable-next-line\nexport var BIconArrowUpCircleFill=/*#__PURE__*/makeIcon('ArrowUpCircleFill','');// eslint-disable-next-line\nexport var BIconArrowUpLeft=/*#__PURE__*/makeIcon('ArrowUpLeft','');// eslint-disable-next-line\nexport var BIconArrowUpLeftCircle=/*#__PURE__*/makeIcon('ArrowUpLeftCircle','');// eslint-disable-next-line\nexport var BIconArrowUpLeftCircleFill=/*#__PURE__*/makeIcon('ArrowUpLeftCircleFill','');// eslint-disable-next-line\nexport var BIconArrowUpLeftSquare=/*#__PURE__*/makeIcon('ArrowUpLeftSquare','');// eslint-disable-next-line\nexport var BIconArrowUpLeftSquareFill=/*#__PURE__*/makeIcon('ArrowUpLeftSquareFill','');// eslint-disable-next-line\nexport var BIconArrowUpRight=/*#__PURE__*/makeIcon('ArrowUpRight','');// eslint-disable-next-line\nexport var BIconArrowUpRightCircle=/*#__PURE__*/makeIcon('ArrowUpRightCircle','');// eslint-disable-next-line\nexport var BIconArrowUpRightCircleFill=/*#__PURE__*/makeIcon('ArrowUpRightCircleFill','');// eslint-disable-next-line\nexport var BIconArrowUpRightSquare=/*#__PURE__*/makeIcon('ArrowUpRightSquare','');// eslint-disable-next-line\nexport var BIconArrowUpRightSquareFill=/*#__PURE__*/makeIcon('ArrowUpRightSquareFill','');// eslint-disable-next-line\nexport var BIconArrowUpShort=/*#__PURE__*/makeIcon('ArrowUpShort','');// eslint-disable-next-line\nexport var BIconArrowUpSquare=/*#__PURE__*/makeIcon('ArrowUpSquare','');// eslint-disable-next-line\nexport var BIconArrowUpSquareFill=/*#__PURE__*/makeIcon('ArrowUpSquareFill','');// eslint-disable-next-line\nexport var BIconArrowsAngleContract=/*#__PURE__*/makeIcon('ArrowsAngleContract','');// eslint-disable-next-line\nexport var BIconArrowsAngleExpand=/*#__PURE__*/makeIcon('ArrowsAngleExpand','');// eslint-disable-next-line\nexport var BIconArrowsCollapse=/*#__PURE__*/makeIcon('ArrowsCollapse','');// eslint-disable-next-line\nexport var BIconArrowsExpand=/*#__PURE__*/makeIcon('ArrowsExpand','');// eslint-disable-next-line\nexport var BIconArrowsFullscreen=/*#__PURE__*/makeIcon('ArrowsFullscreen','');// eslint-disable-next-line\nexport var BIconArrowsMove=/*#__PURE__*/makeIcon('ArrowsMove','');// eslint-disable-next-line\nexport var BIconAspectRatio=/*#__PURE__*/makeIcon('AspectRatio','');// eslint-disable-next-line\nexport var BIconAspectRatioFill=/*#__PURE__*/makeIcon('AspectRatioFill','');// eslint-disable-next-line\nexport var BIconAsterisk=/*#__PURE__*/makeIcon('Asterisk','');// eslint-disable-next-line\nexport var BIconAt=/*#__PURE__*/makeIcon('At','');// eslint-disable-next-line\nexport var BIconAward=/*#__PURE__*/makeIcon('Award','');// eslint-disable-next-line\nexport var BIconAwardFill=/*#__PURE__*/makeIcon('AwardFill','');// eslint-disable-next-line\nexport var BIconBack=/*#__PURE__*/makeIcon('Back','');// eslint-disable-next-line\nexport var BIconBackspace=/*#__PURE__*/makeIcon('Backspace','');// eslint-disable-next-line\nexport var BIconBackspaceFill=/*#__PURE__*/makeIcon('BackspaceFill','');// eslint-disable-next-line\nexport var BIconBackspaceReverse=/*#__PURE__*/makeIcon('BackspaceReverse','');// eslint-disable-next-line\nexport var BIconBackspaceReverseFill=/*#__PURE__*/makeIcon('BackspaceReverseFill','');// eslint-disable-next-line\nexport var BIconBadge4k=/*#__PURE__*/makeIcon('Badge4k','');// eslint-disable-next-line\nexport var BIconBadge4kFill=/*#__PURE__*/makeIcon('Badge4kFill','');// eslint-disable-next-line\nexport var BIconBadge8k=/*#__PURE__*/makeIcon('Badge8k','');// eslint-disable-next-line\nexport var BIconBadge8kFill=/*#__PURE__*/makeIcon('Badge8kFill','');// eslint-disable-next-line\nexport var BIconBadgeAd=/*#__PURE__*/makeIcon('BadgeAd','');// eslint-disable-next-line\nexport var BIconBadgeAdFill=/*#__PURE__*/makeIcon('BadgeAdFill','');// eslint-disable-next-line\nexport var BIconBadgeCc=/*#__PURE__*/makeIcon('BadgeCc','');// eslint-disable-next-line\nexport var BIconBadgeCcFill=/*#__PURE__*/makeIcon('BadgeCcFill','');// eslint-disable-next-line\nexport var BIconBadgeHd=/*#__PURE__*/makeIcon('BadgeHd','');// eslint-disable-next-line\nexport var BIconBadgeHdFill=/*#__PURE__*/makeIcon('BadgeHdFill','');// eslint-disable-next-line\nexport var BIconBadgeTm=/*#__PURE__*/makeIcon('BadgeTm','');// eslint-disable-next-line\nexport var BIconBadgeTmFill=/*#__PURE__*/makeIcon('BadgeTmFill','');// eslint-disable-next-line\nexport var BIconBadgeVo=/*#__PURE__*/makeIcon('BadgeVo','');// eslint-disable-next-line\nexport var BIconBadgeVoFill=/*#__PURE__*/makeIcon('BadgeVoFill','');// eslint-disable-next-line\nexport var BIconBag=/*#__PURE__*/makeIcon('Bag','');// eslint-disable-next-line\nexport var BIconBagCheck=/*#__PURE__*/makeIcon('BagCheck','');// eslint-disable-next-line\nexport var BIconBagCheckFill=/*#__PURE__*/makeIcon('BagCheckFill','');// eslint-disable-next-line\nexport var BIconBagDash=/*#__PURE__*/makeIcon('BagDash','');// eslint-disable-next-line\nexport var BIconBagDashFill=/*#__PURE__*/makeIcon('BagDashFill','');// eslint-disable-next-line\nexport var BIconBagFill=/*#__PURE__*/makeIcon('BagFill','');// eslint-disable-next-line\nexport var BIconBagPlus=/*#__PURE__*/makeIcon('BagPlus','');// eslint-disable-next-line\nexport var BIconBagPlusFill=/*#__PURE__*/makeIcon('BagPlusFill','');// eslint-disable-next-line\nexport var BIconBagX=/*#__PURE__*/makeIcon('BagX','');// eslint-disable-next-line\nexport var BIconBagXFill=/*#__PURE__*/makeIcon('BagXFill','');// eslint-disable-next-line\nexport var BIconBarChart=/*#__PURE__*/makeIcon('BarChart','');// eslint-disable-next-line\nexport var BIconBarChartFill=/*#__PURE__*/makeIcon('BarChartFill','');// eslint-disable-next-line\nexport var BIconBarChartLine=/*#__PURE__*/makeIcon('BarChartLine','');// eslint-disable-next-line\nexport var BIconBarChartLineFill=/*#__PURE__*/makeIcon('BarChartLineFill','');// eslint-disable-next-line\nexport var BIconBarChartSteps=/*#__PURE__*/makeIcon('BarChartSteps','');// eslint-disable-next-line\nexport var BIconBasket=/*#__PURE__*/makeIcon('Basket','');// eslint-disable-next-line\nexport var BIconBasket2=/*#__PURE__*/makeIcon('Basket2','');// eslint-disable-next-line\nexport var BIconBasket2Fill=/*#__PURE__*/makeIcon('Basket2Fill','');// eslint-disable-next-line\nexport var BIconBasket3=/*#__PURE__*/makeIcon('Basket3','');// eslint-disable-next-line\nexport var BIconBasket3Fill=/*#__PURE__*/makeIcon('Basket3Fill','');// eslint-disable-next-line\nexport var BIconBasketFill=/*#__PURE__*/makeIcon('BasketFill','');// eslint-disable-next-line\nexport var BIconBattery=/*#__PURE__*/makeIcon('Battery','');// eslint-disable-next-line\nexport var BIconBatteryCharging=/*#__PURE__*/makeIcon('BatteryCharging','');// eslint-disable-next-line\nexport var BIconBatteryFull=/*#__PURE__*/makeIcon('BatteryFull','');// eslint-disable-next-line\nexport var BIconBatteryHalf=/*#__PURE__*/makeIcon('BatteryHalf','');// eslint-disable-next-line\nexport var BIconBell=/*#__PURE__*/makeIcon('Bell','');// eslint-disable-next-line\nexport var BIconBellFill=/*#__PURE__*/makeIcon('BellFill','');// eslint-disable-next-line\nexport var BIconBezier=/*#__PURE__*/makeIcon('Bezier','');// eslint-disable-next-line\nexport var BIconBezier2=/*#__PURE__*/makeIcon('Bezier2','');// eslint-disable-next-line\nexport var BIconBicycle=/*#__PURE__*/makeIcon('Bicycle','');// eslint-disable-next-line\nexport var BIconBinoculars=/*#__PURE__*/makeIcon('Binoculars','');// eslint-disable-next-line\nexport var BIconBinocularsFill=/*#__PURE__*/makeIcon('BinocularsFill','');// eslint-disable-next-line\nexport var BIconBlockquoteLeft=/*#__PURE__*/makeIcon('BlockquoteLeft','');// eslint-disable-next-line\nexport var BIconBlockquoteRight=/*#__PURE__*/makeIcon('BlockquoteRight','');// eslint-disable-next-line\nexport var BIconBook=/*#__PURE__*/makeIcon('Book','');// eslint-disable-next-line\nexport var BIconBookFill=/*#__PURE__*/makeIcon('BookFill','');// eslint-disable-next-line\nexport var BIconBookHalf=/*#__PURE__*/makeIcon('BookHalf','');// eslint-disable-next-line\nexport var BIconBookmark=/*#__PURE__*/makeIcon('Bookmark','');// eslint-disable-next-line\nexport var BIconBookmarkCheck=/*#__PURE__*/makeIcon('BookmarkCheck','');// eslint-disable-next-line\nexport var BIconBookmarkCheckFill=/*#__PURE__*/makeIcon('BookmarkCheckFill','');// eslint-disable-next-line\nexport var BIconBookmarkDash=/*#__PURE__*/makeIcon('BookmarkDash','');// eslint-disable-next-line\nexport var BIconBookmarkDashFill=/*#__PURE__*/makeIcon('BookmarkDashFill','');// eslint-disable-next-line\nexport var BIconBookmarkFill=/*#__PURE__*/makeIcon('BookmarkFill','');// eslint-disable-next-line\nexport var BIconBookmarkHeart=/*#__PURE__*/makeIcon('BookmarkHeart','');// eslint-disable-next-line\nexport var BIconBookmarkHeartFill=/*#__PURE__*/makeIcon('BookmarkHeartFill','');// eslint-disable-next-line\nexport var BIconBookmarkPlus=/*#__PURE__*/makeIcon('BookmarkPlus','');// eslint-disable-next-line\nexport var BIconBookmarkPlusFill=/*#__PURE__*/makeIcon('BookmarkPlusFill','');// eslint-disable-next-line\nexport var BIconBookmarkStar=/*#__PURE__*/makeIcon('BookmarkStar','');// eslint-disable-next-line\nexport var BIconBookmarkStarFill=/*#__PURE__*/makeIcon('BookmarkStarFill','');// eslint-disable-next-line\nexport var BIconBookmarkX=/*#__PURE__*/makeIcon('BookmarkX','');// eslint-disable-next-line\nexport var BIconBookmarkXFill=/*#__PURE__*/makeIcon('BookmarkXFill','');// eslint-disable-next-line\nexport var BIconBookmarks=/*#__PURE__*/makeIcon('Bookmarks','');// eslint-disable-next-line\nexport var BIconBookmarksFill=/*#__PURE__*/makeIcon('BookmarksFill','');// eslint-disable-next-line\nexport var BIconBookshelf=/*#__PURE__*/makeIcon('Bookshelf','');// eslint-disable-next-line\nexport var BIconBootstrap=/*#__PURE__*/makeIcon('Bootstrap','');// eslint-disable-next-line\nexport var BIconBootstrapFill=/*#__PURE__*/makeIcon('BootstrapFill','');// eslint-disable-next-line\nexport var BIconBootstrapReboot=/*#__PURE__*/makeIcon('BootstrapReboot','');// eslint-disable-next-line\nexport var BIconBorderStyle=/*#__PURE__*/makeIcon('BorderStyle','');// eslint-disable-next-line\nexport var BIconBorderWidth=/*#__PURE__*/makeIcon('BorderWidth','');// eslint-disable-next-line\nexport var BIconBoundingBox=/*#__PURE__*/makeIcon('BoundingBox','');// eslint-disable-next-line\nexport var BIconBoundingBoxCircles=/*#__PURE__*/makeIcon('BoundingBoxCircles','');// eslint-disable-next-line\nexport var BIconBox=/*#__PURE__*/makeIcon('Box','');// eslint-disable-next-line\nexport var BIconBoxArrowDown=/*#__PURE__*/makeIcon('BoxArrowDown','');// eslint-disable-next-line\nexport var BIconBoxArrowDownLeft=/*#__PURE__*/makeIcon('BoxArrowDownLeft','');// eslint-disable-next-line\nexport var BIconBoxArrowDownRight=/*#__PURE__*/makeIcon('BoxArrowDownRight','');// eslint-disable-next-line\nexport var BIconBoxArrowInDown=/*#__PURE__*/makeIcon('BoxArrowInDown','');// eslint-disable-next-line\nexport var BIconBoxArrowInDownLeft=/*#__PURE__*/makeIcon('BoxArrowInDownLeft','');// eslint-disable-next-line\nexport var BIconBoxArrowInDownRight=/*#__PURE__*/makeIcon('BoxArrowInDownRight','');// eslint-disable-next-line\nexport var BIconBoxArrowInLeft=/*#__PURE__*/makeIcon('BoxArrowInLeft','');// eslint-disable-next-line\nexport var BIconBoxArrowInRight=/*#__PURE__*/makeIcon('BoxArrowInRight','');// eslint-disable-next-line\nexport var BIconBoxArrowInUp=/*#__PURE__*/makeIcon('BoxArrowInUp','');// eslint-disable-next-line\nexport var BIconBoxArrowInUpLeft=/*#__PURE__*/makeIcon('BoxArrowInUpLeft','');// eslint-disable-next-line\nexport var BIconBoxArrowInUpRight=/*#__PURE__*/makeIcon('BoxArrowInUpRight','');// eslint-disable-next-line\nexport var BIconBoxArrowLeft=/*#__PURE__*/makeIcon('BoxArrowLeft','');// eslint-disable-next-line\nexport var BIconBoxArrowRight=/*#__PURE__*/makeIcon('BoxArrowRight','');// eslint-disable-next-line\nexport var BIconBoxArrowUp=/*#__PURE__*/makeIcon('BoxArrowUp','');// eslint-disable-next-line\nexport var BIconBoxArrowUpLeft=/*#__PURE__*/makeIcon('BoxArrowUpLeft','');// eslint-disable-next-line\nexport var BIconBoxArrowUpRight=/*#__PURE__*/makeIcon('BoxArrowUpRight','');// eslint-disable-next-line\nexport var BIconBoxSeam=/*#__PURE__*/makeIcon('BoxSeam','');// eslint-disable-next-line\nexport var BIconBraces=/*#__PURE__*/makeIcon('Braces','');// eslint-disable-next-line\nexport var BIconBricks=/*#__PURE__*/makeIcon('Bricks','');// eslint-disable-next-line\nexport var BIconBriefcase=/*#__PURE__*/makeIcon('Briefcase','');// eslint-disable-next-line\nexport var BIconBriefcaseFill=/*#__PURE__*/makeIcon('BriefcaseFill','');// eslint-disable-next-line\nexport var BIconBrightnessAltHigh=/*#__PURE__*/makeIcon('BrightnessAltHigh','');// eslint-disable-next-line\nexport var BIconBrightnessAltHighFill=/*#__PURE__*/makeIcon('BrightnessAltHighFill','');// eslint-disable-next-line\nexport var BIconBrightnessAltLow=/*#__PURE__*/makeIcon('BrightnessAltLow','');// eslint-disable-next-line\nexport var BIconBrightnessAltLowFill=/*#__PURE__*/makeIcon('BrightnessAltLowFill','');// eslint-disable-next-line\nexport var BIconBrightnessHigh=/*#__PURE__*/makeIcon('BrightnessHigh','');// eslint-disable-next-line\nexport var BIconBrightnessHighFill=/*#__PURE__*/makeIcon('BrightnessHighFill','');// eslint-disable-next-line\nexport var BIconBrightnessLow=/*#__PURE__*/makeIcon('BrightnessLow','');// eslint-disable-next-line\nexport var BIconBrightnessLowFill=/*#__PURE__*/makeIcon('BrightnessLowFill','');// eslint-disable-next-line\nexport var BIconBroadcast=/*#__PURE__*/makeIcon('Broadcast','');// eslint-disable-next-line\nexport var BIconBroadcastPin=/*#__PURE__*/makeIcon('BroadcastPin','');// eslint-disable-next-line\nexport var BIconBrush=/*#__PURE__*/makeIcon('Brush','');// eslint-disable-next-line\nexport var BIconBrushFill=/*#__PURE__*/makeIcon('BrushFill','');// eslint-disable-next-line\nexport var BIconBucket=/*#__PURE__*/makeIcon('Bucket','');// eslint-disable-next-line\nexport var BIconBucketFill=/*#__PURE__*/makeIcon('BucketFill','');// eslint-disable-next-line\nexport var BIconBug=/*#__PURE__*/makeIcon('Bug','');// eslint-disable-next-line\nexport var BIconBugFill=/*#__PURE__*/makeIcon('BugFill','');// eslint-disable-next-line\nexport var BIconBuilding=/*#__PURE__*/makeIcon('Building','');// eslint-disable-next-line\nexport var BIconBullseye=/*#__PURE__*/makeIcon('Bullseye','');// eslint-disable-next-line\nexport var BIconCalculator=/*#__PURE__*/makeIcon('Calculator','');// eslint-disable-next-line\nexport var BIconCalculatorFill=/*#__PURE__*/makeIcon('CalculatorFill','');// eslint-disable-next-line\nexport var BIconCalendar=/*#__PURE__*/makeIcon('Calendar','');// eslint-disable-next-line\nexport var BIconCalendar2=/*#__PURE__*/makeIcon('Calendar2','');// eslint-disable-next-line\nexport var BIconCalendar2Check=/*#__PURE__*/makeIcon('Calendar2Check','');// eslint-disable-next-line\nexport var BIconCalendar2CheckFill=/*#__PURE__*/makeIcon('Calendar2CheckFill','');// eslint-disable-next-line\nexport var BIconCalendar2Date=/*#__PURE__*/makeIcon('Calendar2Date','');// eslint-disable-next-line\nexport var BIconCalendar2DateFill=/*#__PURE__*/makeIcon('Calendar2DateFill','');// eslint-disable-next-line\nexport var BIconCalendar2Day=/*#__PURE__*/makeIcon('Calendar2Day','');// eslint-disable-next-line\nexport var BIconCalendar2DayFill=/*#__PURE__*/makeIcon('Calendar2DayFill','');// eslint-disable-next-line\nexport var BIconCalendar2Event=/*#__PURE__*/makeIcon('Calendar2Event','');// eslint-disable-next-line\nexport var BIconCalendar2EventFill=/*#__PURE__*/makeIcon('Calendar2EventFill','');// eslint-disable-next-line\nexport var BIconCalendar2Fill=/*#__PURE__*/makeIcon('Calendar2Fill','');// eslint-disable-next-line\nexport var BIconCalendar2Minus=/*#__PURE__*/makeIcon('Calendar2Minus','');// eslint-disable-next-line\nexport var BIconCalendar2MinusFill=/*#__PURE__*/makeIcon('Calendar2MinusFill','');// eslint-disable-next-line\nexport var BIconCalendar2Month=/*#__PURE__*/makeIcon('Calendar2Month','');// eslint-disable-next-line\nexport var BIconCalendar2MonthFill=/*#__PURE__*/makeIcon('Calendar2MonthFill','');// eslint-disable-next-line\nexport var BIconCalendar2Plus=/*#__PURE__*/makeIcon('Calendar2Plus','');// eslint-disable-next-line\nexport var BIconCalendar2PlusFill=/*#__PURE__*/makeIcon('Calendar2PlusFill','');// eslint-disable-next-line\nexport var BIconCalendar2Range=/*#__PURE__*/makeIcon('Calendar2Range','');// eslint-disable-next-line\nexport var BIconCalendar2RangeFill=/*#__PURE__*/makeIcon('Calendar2RangeFill','');// eslint-disable-next-line\nexport var BIconCalendar2Week=/*#__PURE__*/makeIcon('Calendar2Week','');// eslint-disable-next-line\nexport var BIconCalendar2WeekFill=/*#__PURE__*/makeIcon('Calendar2WeekFill','');// eslint-disable-next-line\nexport var BIconCalendar2X=/*#__PURE__*/makeIcon('Calendar2X','');// eslint-disable-next-line\nexport var BIconCalendar2XFill=/*#__PURE__*/makeIcon('Calendar2XFill','');// eslint-disable-next-line\nexport var BIconCalendar3=/*#__PURE__*/makeIcon('Calendar3','');// eslint-disable-next-line\nexport var BIconCalendar3Event=/*#__PURE__*/makeIcon('Calendar3Event','');// eslint-disable-next-line\nexport var BIconCalendar3EventFill=/*#__PURE__*/makeIcon('Calendar3EventFill','');// eslint-disable-next-line\nexport var BIconCalendar3Fill=/*#__PURE__*/makeIcon('Calendar3Fill','');// eslint-disable-next-line\nexport var BIconCalendar3Range=/*#__PURE__*/makeIcon('Calendar3Range','');// eslint-disable-next-line\nexport var BIconCalendar3RangeFill=/*#__PURE__*/makeIcon('Calendar3RangeFill','');// eslint-disable-next-line\nexport var BIconCalendar3Week=/*#__PURE__*/makeIcon('Calendar3Week','');// eslint-disable-next-line\nexport var BIconCalendar3WeekFill=/*#__PURE__*/makeIcon('Calendar3WeekFill','');// eslint-disable-next-line\nexport var BIconCalendar4=/*#__PURE__*/makeIcon('Calendar4','');// eslint-disable-next-line\nexport var BIconCalendar4Event=/*#__PURE__*/makeIcon('Calendar4Event','');// eslint-disable-next-line\nexport var BIconCalendar4Range=/*#__PURE__*/makeIcon('Calendar4Range','');// eslint-disable-next-line\nexport var BIconCalendar4Week=/*#__PURE__*/makeIcon('Calendar4Week','');// eslint-disable-next-line\nexport var BIconCalendarCheck=/*#__PURE__*/makeIcon('CalendarCheck','');// eslint-disable-next-line\nexport var BIconCalendarCheckFill=/*#__PURE__*/makeIcon('CalendarCheckFill','');// eslint-disable-next-line\nexport var BIconCalendarDate=/*#__PURE__*/makeIcon('CalendarDate','');// eslint-disable-next-line\nexport var BIconCalendarDateFill=/*#__PURE__*/makeIcon('CalendarDateFill','');// eslint-disable-next-line\nexport var BIconCalendarDay=/*#__PURE__*/makeIcon('CalendarDay','');// eslint-disable-next-line\nexport var BIconCalendarDayFill=/*#__PURE__*/makeIcon('CalendarDayFill','');// eslint-disable-next-line\nexport var BIconCalendarEvent=/*#__PURE__*/makeIcon('CalendarEvent','');// eslint-disable-next-line\nexport var BIconCalendarEventFill=/*#__PURE__*/makeIcon('CalendarEventFill','');// eslint-disable-next-line\nexport var BIconCalendarFill=/*#__PURE__*/makeIcon('CalendarFill','');// eslint-disable-next-line\nexport var BIconCalendarMinus=/*#__PURE__*/makeIcon('CalendarMinus','');// eslint-disable-next-line\nexport var BIconCalendarMinusFill=/*#__PURE__*/makeIcon('CalendarMinusFill','');// eslint-disable-next-line\nexport var BIconCalendarMonth=/*#__PURE__*/makeIcon('CalendarMonth','');// eslint-disable-next-line\nexport var BIconCalendarMonthFill=/*#__PURE__*/makeIcon('CalendarMonthFill','');// eslint-disable-next-line\nexport var BIconCalendarPlus=/*#__PURE__*/makeIcon('CalendarPlus','');// eslint-disable-next-line\nexport var BIconCalendarPlusFill=/*#__PURE__*/makeIcon('CalendarPlusFill','');// eslint-disable-next-line\nexport var BIconCalendarRange=/*#__PURE__*/makeIcon('CalendarRange','');// eslint-disable-next-line\nexport var BIconCalendarRangeFill=/*#__PURE__*/makeIcon('CalendarRangeFill','');// eslint-disable-next-line\nexport var BIconCalendarWeek=/*#__PURE__*/makeIcon('CalendarWeek','');// eslint-disable-next-line\nexport var BIconCalendarWeekFill=/*#__PURE__*/makeIcon('CalendarWeekFill','');// eslint-disable-next-line\nexport var BIconCalendarX=/*#__PURE__*/makeIcon('CalendarX','');// eslint-disable-next-line\nexport var BIconCalendarXFill=/*#__PURE__*/makeIcon('CalendarXFill','');// eslint-disable-next-line\nexport var BIconCamera=/*#__PURE__*/makeIcon('Camera','');// eslint-disable-next-line\nexport var BIconCamera2=/*#__PURE__*/makeIcon('Camera2','');// eslint-disable-next-line\nexport var BIconCameraFill=/*#__PURE__*/makeIcon('CameraFill','');// eslint-disable-next-line\nexport var BIconCameraReels=/*#__PURE__*/makeIcon('CameraReels','');// eslint-disable-next-line\nexport var BIconCameraReelsFill=/*#__PURE__*/makeIcon('CameraReelsFill','');// eslint-disable-next-line\nexport var BIconCameraVideo=/*#__PURE__*/makeIcon('CameraVideo','');// eslint-disable-next-line\nexport var BIconCameraVideoFill=/*#__PURE__*/makeIcon('CameraVideoFill','');// eslint-disable-next-line\nexport var BIconCameraVideoOff=/*#__PURE__*/makeIcon('CameraVideoOff','');// eslint-disable-next-line\nexport var BIconCameraVideoOffFill=/*#__PURE__*/makeIcon('CameraVideoOffFill','');// eslint-disable-next-line\nexport var BIconCapslock=/*#__PURE__*/makeIcon('Capslock','');// eslint-disable-next-line\nexport var BIconCapslockFill=/*#__PURE__*/makeIcon('CapslockFill','');// eslint-disable-next-line\nexport var BIconCardChecklist=/*#__PURE__*/makeIcon('CardChecklist','');// eslint-disable-next-line\nexport var BIconCardHeading=/*#__PURE__*/makeIcon('CardHeading','');// eslint-disable-next-line\nexport var BIconCardImage=/*#__PURE__*/makeIcon('CardImage','');// eslint-disable-next-line\nexport var BIconCardList=/*#__PURE__*/makeIcon('CardList','');// eslint-disable-next-line\nexport var BIconCardText=/*#__PURE__*/makeIcon('CardText','');// eslint-disable-next-line\nexport var BIconCaretDown=/*#__PURE__*/makeIcon('CaretDown','');// eslint-disable-next-line\nexport var BIconCaretDownFill=/*#__PURE__*/makeIcon('CaretDownFill','');// eslint-disable-next-line\nexport var BIconCaretDownSquare=/*#__PURE__*/makeIcon('CaretDownSquare','');// eslint-disable-next-line\nexport var BIconCaretDownSquareFill=/*#__PURE__*/makeIcon('CaretDownSquareFill','');// eslint-disable-next-line\nexport var BIconCaretLeft=/*#__PURE__*/makeIcon('CaretLeft','');// eslint-disable-next-line\nexport var BIconCaretLeftFill=/*#__PURE__*/makeIcon('CaretLeftFill','');// eslint-disable-next-line\nexport var BIconCaretLeftSquare=/*#__PURE__*/makeIcon('CaretLeftSquare','');// eslint-disable-next-line\nexport var BIconCaretLeftSquareFill=/*#__PURE__*/makeIcon('CaretLeftSquareFill','');// eslint-disable-next-line\nexport var BIconCaretRight=/*#__PURE__*/makeIcon('CaretRight','');// eslint-disable-next-line\nexport var BIconCaretRightFill=/*#__PURE__*/makeIcon('CaretRightFill','');// eslint-disable-next-line\nexport var BIconCaretRightSquare=/*#__PURE__*/makeIcon('CaretRightSquare','');// eslint-disable-next-line\nexport var BIconCaretRightSquareFill=/*#__PURE__*/makeIcon('CaretRightSquareFill','');// eslint-disable-next-line\nexport var BIconCaretUp=/*#__PURE__*/makeIcon('CaretUp','');// eslint-disable-next-line\nexport var BIconCaretUpFill=/*#__PURE__*/makeIcon('CaretUpFill','');// eslint-disable-next-line\nexport var BIconCaretUpSquare=/*#__PURE__*/makeIcon('CaretUpSquare','');// eslint-disable-next-line\nexport var BIconCaretUpSquareFill=/*#__PURE__*/makeIcon('CaretUpSquareFill','');// eslint-disable-next-line\nexport var BIconCart=/*#__PURE__*/makeIcon('Cart','');// eslint-disable-next-line\nexport var BIconCart2=/*#__PURE__*/makeIcon('Cart2','');// eslint-disable-next-line\nexport var BIconCart3=/*#__PURE__*/makeIcon('Cart3','');// eslint-disable-next-line\nexport var BIconCart4=/*#__PURE__*/makeIcon('Cart4','');// eslint-disable-next-line\nexport var BIconCartCheck=/*#__PURE__*/makeIcon('CartCheck','');// eslint-disable-next-line\nexport var BIconCartCheckFill=/*#__PURE__*/makeIcon('CartCheckFill','');// eslint-disable-next-line\nexport var BIconCartDash=/*#__PURE__*/makeIcon('CartDash','');// eslint-disable-next-line\nexport var BIconCartDashFill=/*#__PURE__*/makeIcon('CartDashFill','');// eslint-disable-next-line\nexport var BIconCartFill=/*#__PURE__*/makeIcon('CartFill','');// eslint-disable-next-line\nexport var BIconCartPlus=/*#__PURE__*/makeIcon('CartPlus','');// eslint-disable-next-line\nexport var BIconCartPlusFill=/*#__PURE__*/makeIcon('CartPlusFill','');// eslint-disable-next-line\nexport var BIconCartX=/*#__PURE__*/makeIcon('CartX','');// eslint-disable-next-line\nexport var BIconCartXFill=/*#__PURE__*/makeIcon('CartXFill','');// eslint-disable-next-line\nexport var BIconCash=/*#__PURE__*/makeIcon('Cash','');// eslint-disable-next-line\nexport var BIconCashStack=/*#__PURE__*/makeIcon('CashStack','');// eslint-disable-next-line\nexport var BIconCast=/*#__PURE__*/makeIcon('Cast','');// eslint-disable-next-line\nexport var BIconChat=/*#__PURE__*/makeIcon('Chat','');// eslint-disable-next-line\nexport var BIconChatDots=/*#__PURE__*/makeIcon('ChatDots','');// eslint-disable-next-line\nexport var BIconChatDotsFill=/*#__PURE__*/makeIcon('ChatDotsFill','');// eslint-disable-next-line\nexport var BIconChatFill=/*#__PURE__*/makeIcon('ChatFill','');// eslint-disable-next-line\nexport var BIconChatLeft=/*#__PURE__*/makeIcon('ChatLeft','');// eslint-disable-next-line\nexport var BIconChatLeftDots=/*#__PURE__*/makeIcon('ChatLeftDots','');// eslint-disable-next-line\nexport var BIconChatLeftDotsFill=/*#__PURE__*/makeIcon('ChatLeftDotsFill','');// eslint-disable-next-line\nexport var BIconChatLeftFill=/*#__PURE__*/makeIcon('ChatLeftFill','');// eslint-disable-next-line\nexport var BIconChatLeftQuote=/*#__PURE__*/makeIcon('ChatLeftQuote','');// eslint-disable-next-line\nexport var BIconChatLeftQuoteFill=/*#__PURE__*/makeIcon('ChatLeftQuoteFill','');// eslint-disable-next-line\nexport var BIconChatLeftText=/*#__PURE__*/makeIcon('ChatLeftText','');// eslint-disable-next-line\nexport var BIconChatLeftTextFill=/*#__PURE__*/makeIcon('ChatLeftTextFill','');// eslint-disable-next-line\nexport var BIconChatQuote=/*#__PURE__*/makeIcon('ChatQuote','');// eslint-disable-next-line\nexport var BIconChatQuoteFill=/*#__PURE__*/makeIcon('ChatQuoteFill','');// eslint-disable-next-line\nexport var BIconChatRight=/*#__PURE__*/makeIcon('ChatRight','');// eslint-disable-next-line\nexport var BIconChatRightDots=/*#__PURE__*/makeIcon('ChatRightDots','');// eslint-disable-next-line\nexport var BIconChatRightDotsFill=/*#__PURE__*/makeIcon('ChatRightDotsFill','');// eslint-disable-next-line\nexport var BIconChatRightFill=/*#__PURE__*/makeIcon('ChatRightFill','');// eslint-disable-next-line\nexport var BIconChatRightQuote=/*#__PURE__*/makeIcon('ChatRightQuote','');// eslint-disable-next-line\nexport var BIconChatRightQuoteFill=/*#__PURE__*/makeIcon('ChatRightQuoteFill','');// eslint-disable-next-line\nexport var BIconChatRightText=/*#__PURE__*/makeIcon('ChatRightText','');// eslint-disable-next-line\nexport var BIconChatRightTextFill=/*#__PURE__*/makeIcon('ChatRightTextFill','');// eslint-disable-next-line\nexport var BIconChatSquare=/*#__PURE__*/makeIcon('ChatSquare','');// eslint-disable-next-line\nexport var BIconChatSquareDots=/*#__PURE__*/makeIcon('ChatSquareDots','');// eslint-disable-next-line\nexport var BIconChatSquareDotsFill=/*#__PURE__*/makeIcon('ChatSquareDotsFill','');// eslint-disable-next-line\nexport var BIconChatSquareFill=/*#__PURE__*/makeIcon('ChatSquareFill','');// eslint-disable-next-line\nexport var BIconChatSquareQuote=/*#__PURE__*/makeIcon('ChatSquareQuote','');// eslint-disable-next-line\nexport var BIconChatSquareQuoteFill=/*#__PURE__*/makeIcon('ChatSquareQuoteFill','');// eslint-disable-next-line\nexport var BIconChatSquareText=/*#__PURE__*/makeIcon('ChatSquareText','');// eslint-disable-next-line\nexport var BIconChatSquareTextFill=/*#__PURE__*/makeIcon('ChatSquareTextFill','');// eslint-disable-next-line\nexport var BIconChatText=/*#__PURE__*/makeIcon('ChatText','');// eslint-disable-next-line\nexport var BIconChatTextFill=/*#__PURE__*/makeIcon('ChatTextFill','');// eslint-disable-next-line\nexport var BIconCheck=/*#__PURE__*/makeIcon('Check','');// eslint-disable-next-line\nexport var BIconCheck2=/*#__PURE__*/makeIcon('Check2','');// eslint-disable-next-line\nexport var BIconCheck2All=/*#__PURE__*/makeIcon('Check2All','');// eslint-disable-next-line\nexport var BIconCheck2Circle=/*#__PURE__*/makeIcon('Check2Circle','');// eslint-disable-next-line\nexport var BIconCheck2Square=/*#__PURE__*/makeIcon('Check2Square','');// eslint-disable-next-line\nexport var BIconCheckAll=/*#__PURE__*/makeIcon('CheckAll','');// eslint-disable-next-line\nexport var BIconCheckCircle=/*#__PURE__*/makeIcon('CheckCircle','');// eslint-disable-next-line\nexport var BIconCheckCircleFill=/*#__PURE__*/makeIcon('CheckCircleFill','');// eslint-disable-next-line\nexport var BIconCheckSquare=/*#__PURE__*/makeIcon('CheckSquare','');// eslint-disable-next-line\nexport var BIconCheckSquareFill=/*#__PURE__*/makeIcon('CheckSquareFill','');// eslint-disable-next-line\nexport var BIconChevronBarContract=/*#__PURE__*/makeIcon('ChevronBarContract','');// eslint-disable-next-line\nexport var BIconChevronBarDown=/*#__PURE__*/makeIcon('ChevronBarDown','');// eslint-disable-next-line\nexport var BIconChevronBarExpand=/*#__PURE__*/makeIcon('ChevronBarExpand','');// eslint-disable-next-line\nexport var BIconChevronBarLeft=/*#__PURE__*/makeIcon('ChevronBarLeft','');// eslint-disable-next-line\nexport var BIconChevronBarRight=/*#__PURE__*/makeIcon('ChevronBarRight','');// eslint-disable-next-line\nexport var BIconChevronBarUp=/*#__PURE__*/makeIcon('ChevronBarUp','');// eslint-disable-next-line\nexport var BIconChevronCompactDown=/*#__PURE__*/makeIcon('ChevronCompactDown','');// eslint-disable-next-line\nexport var BIconChevronCompactLeft=/*#__PURE__*/makeIcon('ChevronCompactLeft','');// eslint-disable-next-line\nexport var BIconChevronCompactRight=/*#__PURE__*/makeIcon('ChevronCompactRight','');// eslint-disable-next-line\nexport var BIconChevronCompactUp=/*#__PURE__*/makeIcon('ChevronCompactUp','');// eslint-disable-next-line\nexport var BIconChevronContract=/*#__PURE__*/makeIcon('ChevronContract','');// eslint-disable-next-line\nexport var BIconChevronDoubleDown=/*#__PURE__*/makeIcon('ChevronDoubleDown','');// eslint-disable-next-line\nexport var BIconChevronDoubleLeft=/*#__PURE__*/makeIcon('ChevronDoubleLeft','');// eslint-disable-next-line\nexport var BIconChevronDoubleRight=/*#__PURE__*/makeIcon('ChevronDoubleRight','');// eslint-disable-next-line\nexport var BIconChevronDoubleUp=/*#__PURE__*/makeIcon('ChevronDoubleUp','');// eslint-disable-next-line\nexport var BIconChevronDown=/*#__PURE__*/makeIcon('ChevronDown','');// eslint-disable-next-line\nexport var BIconChevronExpand=/*#__PURE__*/makeIcon('ChevronExpand','');// eslint-disable-next-line\nexport var BIconChevronLeft=/*#__PURE__*/makeIcon('ChevronLeft','');// eslint-disable-next-line\nexport var BIconChevronRight=/*#__PURE__*/makeIcon('ChevronRight','');// eslint-disable-next-line\nexport var BIconChevronUp=/*#__PURE__*/makeIcon('ChevronUp','');// eslint-disable-next-line\nexport var BIconCircle=/*#__PURE__*/makeIcon('Circle','');// eslint-disable-next-line\nexport var BIconCircleFill=/*#__PURE__*/makeIcon('CircleFill','');// eslint-disable-next-line\nexport var BIconCircleHalf=/*#__PURE__*/makeIcon('CircleHalf','');// eslint-disable-next-line\nexport var BIconCircleSquare=/*#__PURE__*/makeIcon('CircleSquare','');// eslint-disable-next-line\nexport var BIconClipboard=/*#__PURE__*/makeIcon('Clipboard','');// eslint-disable-next-line\nexport var BIconClipboardCheck=/*#__PURE__*/makeIcon('ClipboardCheck','');// eslint-disable-next-line\nexport var BIconClipboardData=/*#__PURE__*/makeIcon('ClipboardData','');// eslint-disable-next-line\nexport var BIconClipboardMinus=/*#__PURE__*/makeIcon('ClipboardMinus','');// eslint-disable-next-line\nexport var BIconClipboardPlus=/*#__PURE__*/makeIcon('ClipboardPlus','');// eslint-disable-next-line\nexport var BIconClipboardX=/*#__PURE__*/makeIcon('ClipboardX','');// eslint-disable-next-line\nexport var BIconClock=/*#__PURE__*/makeIcon('Clock','');// eslint-disable-next-line\nexport var BIconClockFill=/*#__PURE__*/makeIcon('ClockFill','');// eslint-disable-next-line\nexport var BIconClockHistory=/*#__PURE__*/makeIcon('ClockHistory','');// eslint-disable-next-line\nexport var BIconCloud=/*#__PURE__*/makeIcon('Cloud','');// eslint-disable-next-line\nexport var BIconCloudArrowDown=/*#__PURE__*/makeIcon('CloudArrowDown','');// eslint-disable-next-line\nexport var BIconCloudArrowDownFill=/*#__PURE__*/makeIcon('CloudArrowDownFill','');// eslint-disable-next-line\nexport var BIconCloudArrowUp=/*#__PURE__*/makeIcon('CloudArrowUp','');// eslint-disable-next-line\nexport var BIconCloudArrowUpFill=/*#__PURE__*/makeIcon('CloudArrowUpFill','');// eslint-disable-next-line\nexport var BIconCloudCheck=/*#__PURE__*/makeIcon('CloudCheck','');// eslint-disable-next-line\nexport var BIconCloudCheckFill=/*#__PURE__*/makeIcon('CloudCheckFill','');// eslint-disable-next-line\nexport var BIconCloudDownload=/*#__PURE__*/makeIcon('CloudDownload','');// eslint-disable-next-line\nexport var BIconCloudDownloadFill=/*#__PURE__*/makeIcon('CloudDownloadFill','');// eslint-disable-next-line\nexport var BIconCloudFill=/*#__PURE__*/makeIcon('CloudFill','');// eslint-disable-next-line\nexport var BIconCloudMinus=/*#__PURE__*/makeIcon('CloudMinus','');// eslint-disable-next-line\nexport var BIconCloudMinusFill=/*#__PURE__*/makeIcon('CloudMinusFill','');// eslint-disable-next-line\nexport var BIconCloudPlus=/*#__PURE__*/makeIcon('CloudPlus','');// eslint-disable-next-line\nexport var BIconCloudPlusFill=/*#__PURE__*/makeIcon('CloudPlusFill','');// eslint-disable-next-line\nexport var BIconCloudSlash=/*#__PURE__*/makeIcon('CloudSlash','');// eslint-disable-next-line\nexport var BIconCloudSlashFill=/*#__PURE__*/makeIcon('CloudSlashFill','');// eslint-disable-next-line\nexport var BIconCloudUpload=/*#__PURE__*/makeIcon('CloudUpload','');// eslint-disable-next-line\nexport var BIconCloudUploadFill=/*#__PURE__*/makeIcon('CloudUploadFill','');// eslint-disable-next-line\nexport var BIconCode=/*#__PURE__*/makeIcon('Code','');// eslint-disable-next-line\nexport var BIconCodeSlash=/*#__PURE__*/makeIcon('CodeSlash','');// eslint-disable-next-line\nexport var BIconCodeSquare=/*#__PURE__*/makeIcon('CodeSquare','');// eslint-disable-next-line\nexport var BIconCollection=/*#__PURE__*/makeIcon('Collection','');// eslint-disable-next-line\nexport var BIconCollectionFill=/*#__PURE__*/makeIcon('CollectionFill','');// eslint-disable-next-line\nexport var BIconCollectionPlay=/*#__PURE__*/makeIcon('CollectionPlay','');// eslint-disable-next-line\nexport var BIconCollectionPlayFill=/*#__PURE__*/makeIcon('CollectionPlayFill','');// eslint-disable-next-line\nexport var BIconColumns=/*#__PURE__*/makeIcon('Columns','');// eslint-disable-next-line\nexport var BIconColumnsGap=/*#__PURE__*/makeIcon('ColumnsGap','');// eslint-disable-next-line\nexport var BIconCommand=/*#__PURE__*/makeIcon('Command','');// eslint-disable-next-line\nexport var BIconCompass=/*#__PURE__*/makeIcon('Compass','');// eslint-disable-next-line\nexport var BIconCompassFill=/*#__PURE__*/makeIcon('CompassFill','');// eslint-disable-next-line\nexport var BIconCone=/*#__PURE__*/makeIcon('Cone','');// eslint-disable-next-line\nexport var BIconConeStriped=/*#__PURE__*/makeIcon('ConeStriped','');// eslint-disable-next-line\nexport var BIconController=/*#__PURE__*/makeIcon('Controller','');// eslint-disable-next-line\nexport var BIconCpu=/*#__PURE__*/makeIcon('Cpu','');// eslint-disable-next-line\nexport var BIconCpuFill=/*#__PURE__*/makeIcon('CpuFill','');// eslint-disable-next-line\nexport var BIconCreditCard=/*#__PURE__*/makeIcon('CreditCard','');// eslint-disable-next-line\nexport var BIconCreditCard2Back=/*#__PURE__*/makeIcon('CreditCard2Back','');// eslint-disable-next-line\nexport var BIconCreditCard2BackFill=/*#__PURE__*/makeIcon('CreditCard2BackFill','');// eslint-disable-next-line\nexport var BIconCreditCard2Front=/*#__PURE__*/makeIcon('CreditCard2Front','');// eslint-disable-next-line\nexport var BIconCreditCard2FrontFill=/*#__PURE__*/makeIcon('CreditCard2FrontFill','');// eslint-disable-next-line\nexport var BIconCreditCardFill=/*#__PURE__*/makeIcon('CreditCardFill','');// eslint-disable-next-line\nexport var BIconCrop=/*#__PURE__*/makeIcon('Crop','');// eslint-disable-next-line\nexport var BIconCup=/*#__PURE__*/makeIcon('Cup','');// eslint-disable-next-line\nexport var BIconCupFill=/*#__PURE__*/makeIcon('CupFill','');// eslint-disable-next-line\nexport var BIconCupStraw=/*#__PURE__*/makeIcon('CupStraw','');// eslint-disable-next-line\nexport var BIconCursor=/*#__PURE__*/makeIcon('Cursor','');// eslint-disable-next-line\nexport var BIconCursorFill=/*#__PURE__*/makeIcon('CursorFill','');// eslint-disable-next-line\nexport var BIconCursorText=/*#__PURE__*/makeIcon('CursorText','');// eslint-disable-next-line\nexport var BIconDash=/*#__PURE__*/makeIcon('Dash','');// eslint-disable-next-line\nexport var BIconDashCircle=/*#__PURE__*/makeIcon('DashCircle','');// eslint-disable-next-line\nexport var BIconDashCircleFill=/*#__PURE__*/makeIcon('DashCircleFill','');// eslint-disable-next-line\nexport var BIconDashSquare=/*#__PURE__*/makeIcon('DashSquare','');// eslint-disable-next-line\nexport var BIconDashSquareFill=/*#__PURE__*/makeIcon('DashSquareFill','');// eslint-disable-next-line\nexport var BIconDiagram2=/*#__PURE__*/makeIcon('Diagram2','');// eslint-disable-next-line\nexport var BIconDiagram2Fill=/*#__PURE__*/makeIcon('Diagram2Fill','');// eslint-disable-next-line\nexport var BIconDiagram3=/*#__PURE__*/makeIcon('Diagram3','');// eslint-disable-next-line\nexport var BIconDiagram3Fill=/*#__PURE__*/makeIcon('Diagram3Fill','');// eslint-disable-next-line\nexport var BIconDiamond=/*#__PURE__*/makeIcon('Diamond','');// eslint-disable-next-line\nexport var BIconDiamondFill=/*#__PURE__*/makeIcon('DiamondFill','');// eslint-disable-next-line\nexport var BIconDiamondHalf=/*#__PURE__*/makeIcon('DiamondHalf','');// eslint-disable-next-line\nexport var BIconDice1=/*#__PURE__*/makeIcon('Dice1','');// eslint-disable-next-line\nexport var BIconDice1Fill=/*#__PURE__*/makeIcon('Dice1Fill','');// eslint-disable-next-line\nexport var BIconDice2=/*#__PURE__*/makeIcon('Dice2','');// eslint-disable-next-line\nexport var BIconDice2Fill=/*#__PURE__*/makeIcon('Dice2Fill','');// eslint-disable-next-line\nexport var BIconDice3=/*#__PURE__*/makeIcon('Dice3','');// eslint-disable-next-line\nexport var BIconDice3Fill=/*#__PURE__*/makeIcon('Dice3Fill','');// eslint-disable-next-line\nexport var BIconDice4=/*#__PURE__*/makeIcon('Dice4','');// eslint-disable-next-line\nexport var BIconDice4Fill=/*#__PURE__*/makeIcon('Dice4Fill','');// eslint-disable-next-line\nexport var BIconDice5=/*#__PURE__*/makeIcon('Dice5','');// eslint-disable-next-line\nexport var BIconDice5Fill=/*#__PURE__*/makeIcon('Dice5Fill','');// eslint-disable-next-line\nexport var BIconDice6=/*#__PURE__*/makeIcon('Dice6','');// eslint-disable-next-line\nexport var BIconDice6Fill=/*#__PURE__*/makeIcon('Dice6Fill','');// eslint-disable-next-line\nexport var BIconDisc=/*#__PURE__*/makeIcon('Disc','');// eslint-disable-next-line\nexport var BIconDiscFill=/*#__PURE__*/makeIcon('DiscFill','');// eslint-disable-next-line\nexport var BIconDiscord=/*#__PURE__*/makeIcon('Discord','');// eslint-disable-next-line\nexport var BIconDisplay=/*#__PURE__*/makeIcon('Display','');// eslint-disable-next-line\nexport var BIconDisplayFill=/*#__PURE__*/makeIcon('DisplayFill','');// eslint-disable-next-line\nexport var BIconDistributeHorizontal=/*#__PURE__*/makeIcon('DistributeHorizontal','');// eslint-disable-next-line\nexport var BIconDistributeVertical=/*#__PURE__*/makeIcon('DistributeVertical','');// eslint-disable-next-line\nexport var BIconDoorClosed=/*#__PURE__*/makeIcon('DoorClosed','');// eslint-disable-next-line\nexport var BIconDoorClosedFill=/*#__PURE__*/makeIcon('DoorClosedFill','');// eslint-disable-next-line\nexport var BIconDoorOpen=/*#__PURE__*/makeIcon('DoorOpen','');// eslint-disable-next-line\nexport var BIconDoorOpenFill=/*#__PURE__*/makeIcon('DoorOpenFill','');// eslint-disable-next-line\nexport var BIconDot=/*#__PURE__*/makeIcon('Dot','');// eslint-disable-next-line\nexport var BIconDownload=/*#__PURE__*/makeIcon('Download','');// eslint-disable-next-line\nexport var BIconDroplet=/*#__PURE__*/makeIcon('Droplet','');// eslint-disable-next-line\nexport var BIconDropletFill=/*#__PURE__*/makeIcon('DropletFill','');// eslint-disable-next-line\nexport var BIconDropletHalf=/*#__PURE__*/makeIcon('DropletHalf','');// eslint-disable-next-line\nexport var BIconEarbuds=/*#__PURE__*/makeIcon('Earbuds','');// eslint-disable-next-line\nexport var BIconEasel=/*#__PURE__*/makeIcon('Easel','');// eslint-disable-next-line\nexport var BIconEaselFill=/*#__PURE__*/makeIcon('EaselFill','');// eslint-disable-next-line\nexport var BIconEgg=/*#__PURE__*/makeIcon('Egg','');// eslint-disable-next-line\nexport var BIconEggFill=/*#__PURE__*/makeIcon('EggFill','');// eslint-disable-next-line\nexport var BIconEggFried=/*#__PURE__*/makeIcon('EggFried','');// eslint-disable-next-line\nexport var BIconEject=/*#__PURE__*/makeIcon('Eject','');// eslint-disable-next-line\nexport var BIconEjectFill=/*#__PURE__*/makeIcon('EjectFill','');// eslint-disable-next-line\nexport var BIconEmojiAngry=/*#__PURE__*/makeIcon('EmojiAngry','');// eslint-disable-next-line\nexport var BIconEmojiAngryFill=/*#__PURE__*/makeIcon('EmojiAngryFill','');// eslint-disable-next-line\nexport var BIconEmojiDizzy=/*#__PURE__*/makeIcon('EmojiDizzy','');// eslint-disable-next-line\nexport var BIconEmojiDizzyFill=/*#__PURE__*/makeIcon('EmojiDizzyFill','');// eslint-disable-next-line\nexport var BIconEmojiExpressionless=/*#__PURE__*/makeIcon('EmojiExpressionless','');// eslint-disable-next-line\nexport var BIconEmojiExpressionlessFill=/*#__PURE__*/makeIcon('EmojiExpressionlessFill','');// eslint-disable-next-line\nexport var BIconEmojiFrown=/*#__PURE__*/makeIcon('EmojiFrown','');// eslint-disable-next-line\nexport var BIconEmojiFrownFill=/*#__PURE__*/makeIcon('EmojiFrownFill','');// eslint-disable-next-line\nexport var BIconEmojiHeartEyes=/*#__PURE__*/makeIcon('EmojiHeartEyes','');// eslint-disable-next-line\nexport var BIconEmojiHeartEyesFill=/*#__PURE__*/makeIcon('EmojiHeartEyesFill','');// eslint-disable-next-line\nexport var BIconEmojiLaughing=/*#__PURE__*/makeIcon('EmojiLaughing','');// eslint-disable-next-line\nexport var BIconEmojiLaughingFill=/*#__PURE__*/makeIcon('EmojiLaughingFill','');// eslint-disable-next-line\nexport var BIconEmojiNeutral=/*#__PURE__*/makeIcon('EmojiNeutral','');// eslint-disable-next-line\nexport var BIconEmojiNeutralFill=/*#__PURE__*/makeIcon('EmojiNeutralFill','');// eslint-disable-next-line\nexport var BIconEmojiSmile=/*#__PURE__*/makeIcon('EmojiSmile','');// eslint-disable-next-line\nexport var BIconEmojiSmileFill=/*#__PURE__*/makeIcon('EmojiSmileFill','');// eslint-disable-next-line\nexport var BIconEmojiSmileUpsideDown=/*#__PURE__*/makeIcon('EmojiSmileUpsideDown','');// eslint-disable-next-line\nexport var BIconEmojiSmileUpsideDownFill=/*#__PURE__*/makeIcon('EmojiSmileUpsideDownFill','');// eslint-disable-next-line\nexport var BIconEmojiSunglasses=/*#__PURE__*/makeIcon('EmojiSunglasses','');// eslint-disable-next-line\nexport var BIconEmojiSunglassesFill=/*#__PURE__*/makeIcon('EmojiSunglassesFill','');// eslint-disable-next-line\nexport var BIconEmojiWink=/*#__PURE__*/makeIcon('EmojiWink','');// eslint-disable-next-line\nexport var BIconEmojiWinkFill=/*#__PURE__*/makeIcon('EmojiWinkFill','');// eslint-disable-next-line\nexport var BIconEnvelope=/*#__PURE__*/makeIcon('Envelope','');// eslint-disable-next-line\nexport var BIconEnvelopeFill=/*#__PURE__*/makeIcon('EnvelopeFill','');// eslint-disable-next-line\nexport var BIconEnvelopeOpen=/*#__PURE__*/makeIcon('EnvelopeOpen','');// eslint-disable-next-line\nexport var BIconEnvelopeOpenFill=/*#__PURE__*/makeIcon('EnvelopeOpenFill','');// eslint-disable-next-line\nexport var BIconExclamation=/*#__PURE__*/makeIcon('Exclamation','');// eslint-disable-next-line\nexport var BIconExclamationCircle=/*#__PURE__*/makeIcon('ExclamationCircle','');// eslint-disable-next-line\nexport var BIconExclamationCircleFill=/*#__PURE__*/makeIcon('ExclamationCircleFill','');// eslint-disable-next-line\nexport var BIconExclamationDiamond=/*#__PURE__*/makeIcon('ExclamationDiamond','');// eslint-disable-next-line\nexport var BIconExclamationDiamondFill=/*#__PURE__*/makeIcon('ExclamationDiamondFill','');// eslint-disable-next-line\nexport var BIconExclamationOctagon=/*#__PURE__*/makeIcon('ExclamationOctagon','');// eslint-disable-next-line\nexport var BIconExclamationOctagonFill=/*#__PURE__*/makeIcon('ExclamationOctagonFill','');// eslint-disable-next-line\nexport var BIconExclamationSquare=/*#__PURE__*/makeIcon('ExclamationSquare','');// eslint-disable-next-line\nexport var BIconExclamationSquareFill=/*#__PURE__*/makeIcon('ExclamationSquareFill','');// eslint-disable-next-line\nexport var BIconExclamationTriangle=/*#__PURE__*/makeIcon('ExclamationTriangle','');// eslint-disable-next-line\nexport var BIconExclamationTriangleFill=/*#__PURE__*/makeIcon('ExclamationTriangleFill','');// eslint-disable-next-line\nexport var BIconExclude=/*#__PURE__*/makeIcon('Exclude','');// eslint-disable-next-line\nexport var BIconEye=/*#__PURE__*/makeIcon('Eye','');// eslint-disable-next-line\nexport var BIconEyeFill=/*#__PURE__*/makeIcon('EyeFill','');// eslint-disable-next-line\nexport var BIconEyeSlash=/*#__PURE__*/makeIcon('EyeSlash','');// eslint-disable-next-line\nexport var BIconEyeSlashFill=/*#__PURE__*/makeIcon('EyeSlashFill','');// eslint-disable-next-line\nexport var BIconEyeglasses=/*#__PURE__*/makeIcon('Eyeglasses','');// eslint-disable-next-line\nexport var BIconFacebook=/*#__PURE__*/makeIcon('Facebook','');// eslint-disable-next-line\nexport var BIconFile=/*#__PURE__*/makeIcon('File','');// eslint-disable-next-line\nexport var BIconFileArrowDown=/*#__PURE__*/makeIcon('FileArrowDown','');// eslint-disable-next-line\nexport var BIconFileArrowDownFill=/*#__PURE__*/makeIcon('FileArrowDownFill','');// eslint-disable-next-line\nexport var BIconFileArrowUp=/*#__PURE__*/makeIcon('FileArrowUp','');// eslint-disable-next-line\nexport var BIconFileArrowUpFill=/*#__PURE__*/makeIcon('FileArrowUpFill','');// eslint-disable-next-line\nexport var BIconFileBarGraph=/*#__PURE__*/makeIcon('FileBarGraph','');// eslint-disable-next-line\nexport var BIconFileBarGraphFill=/*#__PURE__*/makeIcon('FileBarGraphFill','');// eslint-disable-next-line\nexport var BIconFileBinary=/*#__PURE__*/makeIcon('FileBinary','');// eslint-disable-next-line\nexport var BIconFileBinaryFill=/*#__PURE__*/makeIcon('FileBinaryFill','');// eslint-disable-next-line\nexport var BIconFileBreak=/*#__PURE__*/makeIcon('FileBreak','');// eslint-disable-next-line\nexport var BIconFileBreakFill=/*#__PURE__*/makeIcon('FileBreakFill','');// eslint-disable-next-line\nexport var BIconFileCheck=/*#__PURE__*/makeIcon('FileCheck','');// eslint-disable-next-line\nexport var BIconFileCheckFill=/*#__PURE__*/makeIcon('FileCheckFill','');// eslint-disable-next-line\nexport var BIconFileCode=/*#__PURE__*/makeIcon('FileCode','');// eslint-disable-next-line\nexport var BIconFileCodeFill=/*#__PURE__*/makeIcon('FileCodeFill','');// eslint-disable-next-line\nexport var BIconFileDiff=/*#__PURE__*/makeIcon('FileDiff','');// eslint-disable-next-line\nexport var BIconFileDiffFill=/*#__PURE__*/makeIcon('FileDiffFill','');// eslint-disable-next-line\nexport var BIconFileEarmark=/*#__PURE__*/makeIcon('FileEarmark','');// eslint-disable-next-line\nexport var BIconFileEarmarkArrowDown=/*#__PURE__*/makeIcon('FileEarmarkArrowDown','');// eslint-disable-next-line\nexport var BIconFileEarmarkArrowDownFill=/*#__PURE__*/makeIcon('FileEarmarkArrowDownFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkArrowUp=/*#__PURE__*/makeIcon('FileEarmarkArrowUp','');// eslint-disable-next-line\nexport var BIconFileEarmarkArrowUpFill=/*#__PURE__*/makeIcon('FileEarmarkArrowUpFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkBarGraph=/*#__PURE__*/makeIcon('FileEarmarkBarGraph','');// eslint-disable-next-line\nexport var BIconFileEarmarkBarGraphFill=/*#__PURE__*/makeIcon('FileEarmarkBarGraphFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkBinary=/*#__PURE__*/makeIcon('FileEarmarkBinary','');// eslint-disable-next-line\nexport var BIconFileEarmarkBinaryFill=/*#__PURE__*/makeIcon('FileEarmarkBinaryFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkBreak=/*#__PURE__*/makeIcon('FileEarmarkBreak','');// eslint-disable-next-line\nexport var BIconFileEarmarkBreakFill=/*#__PURE__*/makeIcon('FileEarmarkBreakFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkCheck=/*#__PURE__*/makeIcon('FileEarmarkCheck','');// eslint-disable-next-line\nexport var BIconFileEarmarkCheckFill=/*#__PURE__*/makeIcon('FileEarmarkCheckFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkCode=/*#__PURE__*/makeIcon('FileEarmarkCode','');// eslint-disable-next-line\nexport var BIconFileEarmarkCodeFill=/*#__PURE__*/makeIcon('FileEarmarkCodeFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkDiff=/*#__PURE__*/makeIcon('FileEarmarkDiff','');// eslint-disable-next-line\nexport var BIconFileEarmarkDiffFill=/*#__PURE__*/makeIcon('FileEarmarkDiffFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkEasel=/*#__PURE__*/makeIcon('FileEarmarkEasel','');// eslint-disable-next-line\nexport var BIconFileEarmarkEaselFill=/*#__PURE__*/makeIcon('FileEarmarkEaselFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkExcel=/*#__PURE__*/makeIcon('FileEarmarkExcel','');// eslint-disable-next-line\nexport var BIconFileEarmarkExcelFill=/*#__PURE__*/makeIcon('FileEarmarkExcelFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkFill=/*#__PURE__*/makeIcon('FileEarmarkFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkFont=/*#__PURE__*/makeIcon('FileEarmarkFont','');// eslint-disable-next-line\nexport var BIconFileEarmarkFontFill=/*#__PURE__*/makeIcon('FileEarmarkFontFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkImage=/*#__PURE__*/makeIcon('FileEarmarkImage','');// eslint-disable-next-line\nexport var BIconFileEarmarkImageFill=/*#__PURE__*/makeIcon('FileEarmarkImageFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkLock=/*#__PURE__*/makeIcon('FileEarmarkLock','');// eslint-disable-next-line\nexport var BIconFileEarmarkLock2=/*#__PURE__*/makeIcon('FileEarmarkLock2','');// eslint-disable-next-line\nexport var BIconFileEarmarkLock2Fill=/*#__PURE__*/makeIcon('FileEarmarkLock2Fill','');// eslint-disable-next-line\nexport var BIconFileEarmarkLockFill=/*#__PURE__*/makeIcon('FileEarmarkLockFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkMedical=/*#__PURE__*/makeIcon('FileEarmarkMedical','');// eslint-disable-next-line\nexport var BIconFileEarmarkMedicalFill=/*#__PURE__*/makeIcon('FileEarmarkMedicalFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkMinus=/*#__PURE__*/makeIcon('FileEarmarkMinus','');// eslint-disable-next-line\nexport var BIconFileEarmarkMinusFill=/*#__PURE__*/makeIcon('FileEarmarkMinusFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkMusic=/*#__PURE__*/makeIcon('FileEarmarkMusic','');// eslint-disable-next-line\nexport var BIconFileEarmarkMusicFill=/*#__PURE__*/makeIcon('FileEarmarkMusicFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkPerson=/*#__PURE__*/makeIcon('FileEarmarkPerson','');// eslint-disable-next-line\nexport var BIconFileEarmarkPersonFill=/*#__PURE__*/makeIcon('FileEarmarkPersonFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkPlay=/*#__PURE__*/makeIcon('FileEarmarkPlay','');// eslint-disable-next-line\nexport var BIconFileEarmarkPlayFill=/*#__PURE__*/makeIcon('FileEarmarkPlayFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkPlus=/*#__PURE__*/makeIcon('FileEarmarkPlus','');// eslint-disable-next-line\nexport var BIconFileEarmarkPlusFill=/*#__PURE__*/makeIcon('FileEarmarkPlusFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkPost=/*#__PURE__*/makeIcon('FileEarmarkPost','');// eslint-disable-next-line\nexport var BIconFileEarmarkPostFill=/*#__PURE__*/makeIcon('FileEarmarkPostFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkPpt=/*#__PURE__*/makeIcon('FileEarmarkPpt','');// eslint-disable-next-line\nexport var BIconFileEarmarkPptFill=/*#__PURE__*/makeIcon('FileEarmarkPptFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkRichtext=/*#__PURE__*/makeIcon('FileEarmarkRichtext','');// eslint-disable-next-line\nexport var BIconFileEarmarkRichtextFill=/*#__PURE__*/makeIcon('FileEarmarkRichtextFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkRuled=/*#__PURE__*/makeIcon('FileEarmarkRuled','');// eslint-disable-next-line\nexport var BIconFileEarmarkRuledFill=/*#__PURE__*/makeIcon('FileEarmarkRuledFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkSlides=/*#__PURE__*/makeIcon('FileEarmarkSlides','');// eslint-disable-next-line\nexport var BIconFileEarmarkSlidesFill=/*#__PURE__*/makeIcon('FileEarmarkSlidesFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkSpreadsheet=/*#__PURE__*/makeIcon('FileEarmarkSpreadsheet','');// eslint-disable-next-line\nexport var BIconFileEarmarkSpreadsheetFill=/*#__PURE__*/makeIcon('FileEarmarkSpreadsheetFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkText=/*#__PURE__*/makeIcon('FileEarmarkText','');// eslint-disable-next-line\nexport var BIconFileEarmarkTextFill=/*#__PURE__*/makeIcon('FileEarmarkTextFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkWord=/*#__PURE__*/makeIcon('FileEarmarkWord','');// eslint-disable-next-line\nexport var BIconFileEarmarkWordFill=/*#__PURE__*/makeIcon('FileEarmarkWordFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkX=/*#__PURE__*/makeIcon('FileEarmarkX','');// eslint-disable-next-line\nexport var BIconFileEarmarkXFill=/*#__PURE__*/makeIcon('FileEarmarkXFill','');// eslint-disable-next-line\nexport var BIconFileEarmarkZip=/*#__PURE__*/makeIcon('FileEarmarkZip','');// eslint-disable-next-line\nexport var BIconFileEarmarkZipFill=/*#__PURE__*/makeIcon('FileEarmarkZipFill','');// eslint-disable-next-line\nexport var BIconFileEasel=/*#__PURE__*/makeIcon('FileEasel','');// eslint-disable-next-line\nexport var BIconFileEaselFill=/*#__PURE__*/makeIcon('FileEaselFill','');// eslint-disable-next-line\nexport var BIconFileExcel=/*#__PURE__*/makeIcon('FileExcel','');// eslint-disable-next-line\nexport var BIconFileExcelFill=/*#__PURE__*/makeIcon('FileExcelFill','');// eslint-disable-next-line\nexport var BIconFileFill=/*#__PURE__*/makeIcon('FileFill','');// eslint-disable-next-line\nexport var BIconFileFont=/*#__PURE__*/makeIcon('FileFont','');// eslint-disable-next-line\nexport var BIconFileFontFill=/*#__PURE__*/makeIcon('FileFontFill','');// eslint-disable-next-line\nexport var BIconFileImage=/*#__PURE__*/makeIcon('FileImage','');// eslint-disable-next-line\nexport var BIconFileImageFill=/*#__PURE__*/makeIcon('FileImageFill','');// eslint-disable-next-line\nexport var BIconFileLock=/*#__PURE__*/makeIcon('FileLock','');// eslint-disable-next-line\nexport var BIconFileLock2=/*#__PURE__*/makeIcon('FileLock2','');// eslint-disable-next-line\nexport var BIconFileLock2Fill=/*#__PURE__*/makeIcon('FileLock2Fill','');// eslint-disable-next-line\nexport var BIconFileLockFill=/*#__PURE__*/makeIcon('FileLockFill','');// eslint-disable-next-line\nexport var BIconFileMedical=/*#__PURE__*/makeIcon('FileMedical','');// eslint-disable-next-line\nexport var BIconFileMedicalFill=/*#__PURE__*/makeIcon('FileMedicalFill','');// eslint-disable-next-line\nexport var BIconFileMinus=/*#__PURE__*/makeIcon('FileMinus','');// eslint-disable-next-line\nexport var BIconFileMinusFill=/*#__PURE__*/makeIcon('FileMinusFill','');// eslint-disable-next-line\nexport var BIconFileMusic=/*#__PURE__*/makeIcon('FileMusic','');// eslint-disable-next-line\nexport var BIconFileMusicFill=/*#__PURE__*/makeIcon('FileMusicFill','');// eslint-disable-next-line\nexport var BIconFilePerson=/*#__PURE__*/makeIcon('FilePerson','');// eslint-disable-next-line\nexport var BIconFilePersonFill=/*#__PURE__*/makeIcon('FilePersonFill','');// eslint-disable-next-line\nexport var BIconFilePlay=/*#__PURE__*/makeIcon('FilePlay','');// eslint-disable-next-line\nexport var BIconFilePlayFill=/*#__PURE__*/makeIcon('FilePlayFill','');// eslint-disable-next-line\nexport var BIconFilePlus=/*#__PURE__*/makeIcon('FilePlus','');// eslint-disable-next-line\nexport var BIconFilePlusFill=/*#__PURE__*/makeIcon('FilePlusFill','');// eslint-disable-next-line\nexport var BIconFilePost=/*#__PURE__*/makeIcon('FilePost','');// eslint-disable-next-line\nexport var BIconFilePostFill=/*#__PURE__*/makeIcon('FilePostFill','');// eslint-disable-next-line\nexport var BIconFilePpt=/*#__PURE__*/makeIcon('FilePpt','');// eslint-disable-next-line\nexport var BIconFilePptFill=/*#__PURE__*/makeIcon('FilePptFill','');// eslint-disable-next-line\nexport var BIconFileRichtext=/*#__PURE__*/makeIcon('FileRichtext','');// eslint-disable-next-line\nexport var BIconFileRichtextFill=/*#__PURE__*/makeIcon('FileRichtextFill','');// eslint-disable-next-line\nexport var BIconFileRuled=/*#__PURE__*/makeIcon('FileRuled','');// eslint-disable-next-line\nexport var BIconFileRuledFill=/*#__PURE__*/makeIcon('FileRuledFill','');// eslint-disable-next-line\nexport var BIconFileSlides=/*#__PURE__*/makeIcon('FileSlides','');// eslint-disable-next-line\nexport var BIconFileSlidesFill=/*#__PURE__*/makeIcon('FileSlidesFill','');// eslint-disable-next-line\nexport var BIconFileSpreadsheet=/*#__PURE__*/makeIcon('FileSpreadsheet','');// eslint-disable-next-line\nexport var BIconFileSpreadsheetFill=/*#__PURE__*/makeIcon('FileSpreadsheetFill','');// eslint-disable-next-line\nexport var BIconFileText=/*#__PURE__*/makeIcon('FileText','');// eslint-disable-next-line\nexport var BIconFileTextFill=/*#__PURE__*/makeIcon('FileTextFill','');// eslint-disable-next-line\nexport var BIconFileWord=/*#__PURE__*/makeIcon('FileWord','');// eslint-disable-next-line\nexport var BIconFileWordFill=/*#__PURE__*/makeIcon('FileWordFill','');// eslint-disable-next-line\nexport var BIconFileX=/*#__PURE__*/makeIcon('FileX','');// eslint-disable-next-line\nexport var BIconFileXFill=/*#__PURE__*/makeIcon('FileXFill','');// eslint-disable-next-line\nexport var BIconFileZip=/*#__PURE__*/makeIcon('FileZip','');// eslint-disable-next-line\nexport var BIconFileZipFill=/*#__PURE__*/makeIcon('FileZipFill','');// eslint-disable-next-line\nexport var BIconFiles=/*#__PURE__*/makeIcon('Files','');// eslint-disable-next-line\nexport var BIconFilesAlt=/*#__PURE__*/makeIcon('FilesAlt','');// eslint-disable-next-line\nexport var BIconFilm=/*#__PURE__*/makeIcon('Film','');// eslint-disable-next-line\nexport var BIconFilter=/*#__PURE__*/makeIcon('Filter','');// eslint-disable-next-line\nexport var BIconFilterCircle=/*#__PURE__*/makeIcon('FilterCircle','');// eslint-disable-next-line\nexport var BIconFilterCircleFill=/*#__PURE__*/makeIcon('FilterCircleFill','');// eslint-disable-next-line\nexport var BIconFilterLeft=/*#__PURE__*/makeIcon('FilterLeft','');// eslint-disable-next-line\nexport var BIconFilterRight=/*#__PURE__*/makeIcon('FilterRight','');// eslint-disable-next-line\nexport var BIconFilterSquare=/*#__PURE__*/makeIcon('FilterSquare','');// eslint-disable-next-line\nexport var BIconFilterSquareFill=/*#__PURE__*/makeIcon('FilterSquareFill','');// eslint-disable-next-line\nexport var BIconFlag=/*#__PURE__*/makeIcon('Flag','');// eslint-disable-next-line\nexport var BIconFlagFill=/*#__PURE__*/makeIcon('FlagFill','');// eslint-disable-next-line\nexport var BIconFlower1=/*#__PURE__*/makeIcon('Flower1','');// eslint-disable-next-line\nexport var BIconFlower2=/*#__PURE__*/makeIcon('Flower2','');// eslint-disable-next-line\nexport var BIconFlower3=/*#__PURE__*/makeIcon('Flower3','');// eslint-disable-next-line\nexport var BIconFolder=/*#__PURE__*/makeIcon('Folder','');// eslint-disable-next-line\nexport var BIconFolder2=/*#__PURE__*/makeIcon('Folder2','');// eslint-disable-next-line\nexport var BIconFolder2Open=/*#__PURE__*/makeIcon('Folder2Open','');// eslint-disable-next-line\nexport var BIconFolderCheck=/*#__PURE__*/makeIcon('FolderCheck','');// eslint-disable-next-line\nexport var BIconFolderFill=/*#__PURE__*/makeIcon('FolderFill','');// eslint-disable-next-line\nexport var BIconFolderMinus=/*#__PURE__*/makeIcon('FolderMinus','');// eslint-disable-next-line\nexport var BIconFolderPlus=/*#__PURE__*/makeIcon('FolderPlus','');// eslint-disable-next-line\nexport var BIconFolderSymlink=/*#__PURE__*/makeIcon('FolderSymlink','');// eslint-disable-next-line\nexport var BIconFolderSymlinkFill=/*#__PURE__*/makeIcon('FolderSymlinkFill','');// eslint-disable-next-line\nexport var BIconFolderX=/*#__PURE__*/makeIcon('FolderX','');// eslint-disable-next-line\nexport var BIconFonts=/*#__PURE__*/makeIcon('Fonts','');// eslint-disable-next-line\nexport var BIconForward=/*#__PURE__*/makeIcon('Forward','');// eslint-disable-next-line\nexport var BIconForwardFill=/*#__PURE__*/makeIcon('ForwardFill','');// eslint-disable-next-line\nexport var BIconFront=/*#__PURE__*/makeIcon('Front','');// eslint-disable-next-line\nexport var BIconFullscreen=/*#__PURE__*/makeIcon('Fullscreen','');// eslint-disable-next-line\nexport var BIconFullscreenExit=/*#__PURE__*/makeIcon('FullscreenExit','');// eslint-disable-next-line\nexport var BIconFunnel=/*#__PURE__*/makeIcon('Funnel','');// eslint-disable-next-line\nexport var BIconFunnelFill=/*#__PURE__*/makeIcon('FunnelFill','');// eslint-disable-next-line\nexport var BIconGear=/*#__PURE__*/makeIcon('Gear','');// eslint-disable-next-line\nexport var BIconGearFill=/*#__PURE__*/makeIcon('GearFill','');// eslint-disable-next-line\nexport var BIconGearWide=/*#__PURE__*/makeIcon('GearWide','');// eslint-disable-next-line\nexport var BIconGearWideConnected=/*#__PURE__*/makeIcon('GearWideConnected','');// eslint-disable-next-line\nexport var BIconGem=/*#__PURE__*/makeIcon('Gem','');// eslint-disable-next-line\nexport var BIconGeo=/*#__PURE__*/makeIcon('Geo','');// eslint-disable-next-line\nexport var BIconGeoAlt=/*#__PURE__*/makeIcon('GeoAlt','');// eslint-disable-next-line\nexport var BIconGeoAltFill=/*#__PURE__*/makeIcon('GeoAltFill','');// eslint-disable-next-line\nexport var BIconGeoFill=/*#__PURE__*/makeIcon('GeoFill','');// eslint-disable-next-line\nexport var BIconGift=/*#__PURE__*/makeIcon('Gift','');// eslint-disable-next-line\nexport var BIconGiftFill=/*#__PURE__*/makeIcon('GiftFill','');// eslint-disable-next-line\nexport var BIconGithub=/*#__PURE__*/makeIcon('Github','');// eslint-disable-next-line\nexport var BIconGlobe=/*#__PURE__*/makeIcon('Globe','');// eslint-disable-next-line\nexport var BIconGlobe2=/*#__PURE__*/makeIcon('Globe2','');// eslint-disable-next-line\nexport var BIconGoogle=/*#__PURE__*/makeIcon('Google','');// eslint-disable-next-line\nexport var BIconGraphDown=/*#__PURE__*/makeIcon('GraphDown','');// eslint-disable-next-line\nexport var BIconGraphUp=/*#__PURE__*/makeIcon('GraphUp','');// eslint-disable-next-line\nexport var BIconGrid=/*#__PURE__*/makeIcon('Grid','');// eslint-disable-next-line\nexport var BIconGrid1x2=/*#__PURE__*/makeIcon('Grid1x2','');// eslint-disable-next-line\nexport var BIconGrid1x2Fill=/*#__PURE__*/makeIcon('Grid1x2Fill','');// eslint-disable-next-line\nexport var BIconGrid3x2=/*#__PURE__*/makeIcon('Grid3x2','');// eslint-disable-next-line\nexport var BIconGrid3x2Gap=/*#__PURE__*/makeIcon('Grid3x2Gap','');// eslint-disable-next-line\nexport var BIconGrid3x2GapFill=/*#__PURE__*/makeIcon('Grid3x2GapFill','');// eslint-disable-next-line\nexport var BIconGrid3x3=/*#__PURE__*/makeIcon('Grid3x3','');// eslint-disable-next-line\nexport var BIconGrid3x3Gap=/*#__PURE__*/makeIcon('Grid3x3Gap','');// eslint-disable-next-line\nexport var BIconGrid3x3GapFill=/*#__PURE__*/makeIcon('Grid3x3GapFill','');// eslint-disable-next-line\nexport var BIconGridFill=/*#__PURE__*/makeIcon('GridFill','');// eslint-disable-next-line\nexport var BIconGripHorizontal=/*#__PURE__*/makeIcon('GripHorizontal','');// eslint-disable-next-line\nexport var BIconGripVertical=/*#__PURE__*/makeIcon('GripVertical','');// eslint-disable-next-line\nexport var BIconHammer=/*#__PURE__*/makeIcon('Hammer','');// eslint-disable-next-line\nexport var BIconHandIndex=/*#__PURE__*/makeIcon('HandIndex','');// eslint-disable-next-line\nexport var BIconHandIndexThumb=/*#__PURE__*/makeIcon('HandIndexThumb','');// eslint-disable-next-line\nexport var BIconHandThumbsDown=/*#__PURE__*/makeIcon('HandThumbsDown','');// eslint-disable-next-line\nexport var BIconHandThumbsUp=/*#__PURE__*/makeIcon('HandThumbsUp','');// eslint-disable-next-line\nexport var BIconHandbag=/*#__PURE__*/makeIcon('Handbag','');// eslint-disable-next-line\nexport var BIconHandbagFill=/*#__PURE__*/makeIcon('HandbagFill','');// eslint-disable-next-line\nexport var BIconHash=/*#__PURE__*/makeIcon('Hash','');// eslint-disable-next-line\nexport var BIconHdd=/*#__PURE__*/makeIcon('Hdd','');// eslint-disable-next-line\nexport var BIconHddFill=/*#__PURE__*/makeIcon('HddFill','');// eslint-disable-next-line\nexport var BIconHddNetwork=/*#__PURE__*/makeIcon('HddNetwork','');// eslint-disable-next-line\nexport var BIconHddNetworkFill=/*#__PURE__*/makeIcon('HddNetworkFill','');// eslint-disable-next-line\nexport var BIconHddRack=/*#__PURE__*/makeIcon('HddRack','');// eslint-disable-next-line\nexport var BIconHddRackFill=/*#__PURE__*/makeIcon('HddRackFill','');// eslint-disable-next-line\nexport var BIconHddStack=/*#__PURE__*/makeIcon('HddStack','');// eslint-disable-next-line\nexport var BIconHddStackFill=/*#__PURE__*/makeIcon('HddStackFill','');// eslint-disable-next-line\nexport var BIconHeadphones=/*#__PURE__*/makeIcon('Headphones','');// eslint-disable-next-line\nexport var BIconHeadset=/*#__PURE__*/makeIcon('Headset','');// eslint-disable-next-line\nexport var BIconHeart=/*#__PURE__*/makeIcon('Heart','');// eslint-disable-next-line\nexport var BIconHeartFill=/*#__PURE__*/makeIcon('HeartFill','');// eslint-disable-next-line\nexport var BIconHeartHalf=/*#__PURE__*/makeIcon('HeartHalf','');// eslint-disable-next-line\nexport var BIconHeptagon=/*#__PURE__*/makeIcon('Heptagon','');// eslint-disable-next-line\nexport var BIconHeptagonFill=/*#__PURE__*/makeIcon('HeptagonFill','');// eslint-disable-next-line\nexport var BIconHeptagonHalf=/*#__PURE__*/makeIcon('HeptagonHalf','');// eslint-disable-next-line\nexport var BIconHexagon=/*#__PURE__*/makeIcon('Hexagon','');// eslint-disable-next-line\nexport var BIconHexagonFill=/*#__PURE__*/makeIcon('HexagonFill','');// eslint-disable-next-line\nexport var BIconHexagonHalf=/*#__PURE__*/makeIcon('HexagonHalf','');// eslint-disable-next-line\nexport var BIconHourglass=/*#__PURE__*/makeIcon('Hourglass','');// eslint-disable-next-line\nexport var BIconHourglassBottom=/*#__PURE__*/makeIcon('HourglassBottom','');// eslint-disable-next-line\nexport var BIconHourglassSplit=/*#__PURE__*/makeIcon('HourglassSplit','');// eslint-disable-next-line\nexport var BIconHourglassTop=/*#__PURE__*/makeIcon('HourglassTop','');// eslint-disable-next-line\nexport var BIconHouse=/*#__PURE__*/makeIcon('House','');// eslint-disable-next-line\nexport var BIconHouseDoor=/*#__PURE__*/makeIcon('HouseDoor','');// eslint-disable-next-line\nexport var BIconHouseDoorFill=/*#__PURE__*/makeIcon('HouseDoorFill','');// eslint-disable-next-line\nexport var BIconHouseFill=/*#__PURE__*/makeIcon('HouseFill','');// eslint-disable-next-line\nexport var BIconHr=/*#__PURE__*/makeIcon('Hr','');// eslint-disable-next-line\nexport var BIconImage=/*#__PURE__*/makeIcon('Image','');// eslint-disable-next-line\nexport var BIconImageAlt=/*#__PURE__*/makeIcon('ImageAlt','');// eslint-disable-next-line\nexport var BIconImageFill=/*#__PURE__*/makeIcon('ImageFill','');// eslint-disable-next-line\nexport var BIconImages=/*#__PURE__*/makeIcon('Images','');// eslint-disable-next-line\nexport var BIconInbox=/*#__PURE__*/makeIcon('Inbox','');// eslint-disable-next-line\nexport var BIconInboxFill=/*#__PURE__*/makeIcon('InboxFill','');// eslint-disable-next-line\nexport var BIconInboxes=/*#__PURE__*/makeIcon('Inboxes','');// eslint-disable-next-line\nexport var BIconInboxesFill=/*#__PURE__*/makeIcon('InboxesFill','');// eslint-disable-next-line\nexport var BIconInfo=/*#__PURE__*/makeIcon('Info','');// eslint-disable-next-line\nexport var BIconInfoCircle=/*#__PURE__*/makeIcon('InfoCircle','');// eslint-disable-next-line\nexport var BIconInfoCircleFill=/*#__PURE__*/makeIcon('InfoCircleFill','');// eslint-disable-next-line\nexport var BIconInfoSquare=/*#__PURE__*/makeIcon('InfoSquare','');// eslint-disable-next-line\nexport var BIconInfoSquareFill=/*#__PURE__*/makeIcon('InfoSquareFill','');// eslint-disable-next-line\nexport var BIconInputCursor=/*#__PURE__*/makeIcon('InputCursor','');// eslint-disable-next-line\nexport var BIconInputCursorText=/*#__PURE__*/makeIcon('InputCursorText','');// eslint-disable-next-line\nexport var BIconInstagram=/*#__PURE__*/makeIcon('Instagram','');// eslint-disable-next-line\nexport var BIconIntersect=/*#__PURE__*/makeIcon('Intersect','');// eslint-disable-next-line\nexport var BIconJournal=/*#__PURE__*/makeIcon('Journal','');// eslint-disable-next-line\nexport var BIconJournalAlbum=/*#__PURE__*/makeIcon('JournalAlbum','');// eslint-disable-next-line\nexport var BIconJournalArrowDown=/*#__PURE__*/makeIcon('JournalArrowDown','');// eslint-disable-next-line\nexport var BIconJournalArrowUp=/*#__PURE__*/makeIcon('JournalArrowUp','');// eslint-disable-next-line\nexport var BIconJournalBookmark=/*#__PURE__*/makeIcon('JournalBookmark','');// eslint-disable-next-line\nexport var BIconJournalBookmarkFill=/*#__PURE__*/makeIcon('JournalBookmarkFill','');// eslint-disable-next-line\nexport var BIconJournalCheck=/*#__PURE__*/makeIcon('JournalCheck','');// eslint-disable-next-line\nexport var BIconJournalCode=/*#__PURE__*/makeIcon('JournalCode','');// eslint-disable-next-line\nexport var BIconJournalMedical=/*#__PURE__*/makeIcon('JournalMedical','');// eslint-disable-next-line\nexport var BIconJournalMinus=/*#__PURE__*/makeIcon('JournalMinus','');// eslint-disable-next-line\nexport var BIconJournalPlus=/*#__PURE__*/makeIcon('JournalPlus','');// eslint-disable-next-line\nexport var BIconJournalRichtext=/*#__PURE__*/makeIcon('JournalRichtext','');// eslint-disable-next-line\nexport var BIconJournalText=/*#__PURE__*/makeIcon('JournalText','');// eslint-disable-next-line\nexport var BIconJournalX=/*#__PURE__*/makeIcon('JournalX','');// eslint-disable-next-line\nexport var BIconJournals=/*#__PURE__*/makeIcon('Journals','');// eslint-disable-next-line\nexport var BIconJoystick=/*#__PURE__*/makeIcon('Joystick','');// eslint-disable-next-line\nexport var BIconJustify=/*#__PURE__*/makeIcon('Justify','');// eslint-disable-next-line\nexport var BIconJustifyLeft=/*#__PURE__*/makeIcon('JustifyLeft','');// eslint-disable-next-line\nexport var BIconJustifyRight=/*#__PURE__*/makeIcon('JustifyRight','');// eslint-disable-next-line\nexport var BIconKanban=/*#__PURE__*/makeIcon('Kanban','');// eslint-disable-next-line\nexport var BIconKanbanFill=/*#__PURE__*/makeIcon('KanbanFill','');// eslint-disable-next-line\nexport var BIconKey=/*#__PURE__*/makeIcon('Key','');// eslint-disable-next-line\nexport var BIconKeyFill=/*#__PURE__*/makeIcon('KeyFill','');// eslint-disable-next-line\nexport var BIconKeyboard=/*#__PURE__*/makeIcon('Keyboard','');// eslint-disable-next-line\nexport var BIconKeyboardFill=/*#__PURE__*/makeIcon('KeyboardFill','');// eslint-disable-next-line\nexport var BIconLadder=/*#__PURE__*/makeIcon('Ladder','');// eslint-disable-next-line\nexport var BIconLamp=/*#__PURE__*/makeIcon('Lamp','');// eslint-disable-next-line\nexport var BIconLampFill=/*#__PURE__*/makeIcon('LampFill','');// eslint-disable-next-line\nexport var BIconLaptop=/*#__PURE__*/makeIcon('Laptop','');// eslint-disable-next-line\nexport var BIconLaptopFill=/*#__PURE__*/makeIcon('LaptopFill','');// eslint-disable-next-line\nexport var BIconLayers=/*#__PURE__*/makeIcon('Layers','');// eslint-disable-next-line\nexport var BIconLayersFill=/*#__PURE__*/makeIcon('LayersFill','');// eslint-disable-next-line\nexport var BIconLayersHalf=/*#__PURE__*/makeIcon('LayersHalf','');// eslint-disable-next-line\nexport var BIconLayoutSidebar=/*#__PURE__*/makeIcon('LayoutSidebar','');// eslint-disable-next-line\nexport var BIconLayoutSidebarInset=/*#__PURE__*/makeIcon('LayoutSidebarInset','');// eslint-disable-next-line\nexport var BIconLayoutSidebarInsetReverse=/*#__PURE__*/makeIcon('LayoutSidebarInsetReverse','');// eslint-disable-next-line\nexport var BIconLayoutSidebarReverse=/*#__PURE__*/makeIcon('LayoutSidebarReverse','');// eslint-disable-next-line\nexport var BIconLayoutSplit=/*#__PURE__*/makeIcon('LayoutSplit','');// eslint-disable-next-line\nexport var BIconLayoutTextSidebar=/*#__PURE__*/makeIcon('LayoutTextSidebar','');// eslint-disable-next-line\nexport var BIconLayoutTextSidebarReverse=/*#__PURE__*/makeIcon('LayoutTextSidebarReverse','');// eslint-disable-next-line\nexport var BIconLayoutTextWindow=/*#__PURE__*/makeIcon('LayoutTextWindow','');// eslint-disable-next-line\nexport var BIconLayoutTextWindowReverse=/*#__PURE__*/makeIcon('LayoutTextWindowReverse','');// eslint-disable-next-line\nexport var BIconLayoutThreeColumns=/*#__PURE__*/makeIcon('LayoutThreeColumns','');// eslint-disable-next-line\nexport var BIconLayoutWtf=/*#__PURE__*/makeIcon('LayoutWtf','');// eslint-disable-next-line\nexport var BIconLifePreserver=/*#__PURE__*/makeIcon('LifePreserver','');// eslint-disable-next-line\nexport var BIconLightning=/*#__PURE__*/makeIcon('Lightning','');// eslint-disable-next-line\nexport var BIconLightningFill=/*#__PURE__*/makeIcon('LightningFill','');// eslint-disable-next-line\nexport var BIconLink=/*#__PURE__*/makeIcon('Link','');// eslint-disable-next-line\nexport var BIconLink45deg=/*#__PURE__*/makeIcon('Link45deg','');// eslint-disable-next-line\nexport var BIconLinkedin=/*#__PURE__*/makeIcon('Linkedin','');// eslint-disable-next-line\nexport var BIconList=/*#__PURE__*/makeIcon('List','');// eslint-disable-next-line\nexport var BIconListCheck=/*#__PURE__*/makeIcon('ListCheck','');// eslint-disable-next-line\nexport var BIconListNested=/*#__PURE__*/makeIcon('ListNested','');// eslint-disable-next-line\nexport var BIconListOl=/*#__PURE__*/makeIcon('ListOl','');// eslint-disable-next-line\nexport var BIconListStars=/*#__PURE__*/makeIcon('ListStars','');// eslint-disable-next-line\nexport var BIconListTask=/*#__PURE__*/makeIcon('ListTask','');// eslint-disable-next-line\nexport var BIconListUl=/*#__PURE__*/makeIcon('ListUl','');// eslint-disable-next-line\nexport var BIconLock=/*#__PURE__*/makeIcon('Lock','');// eslint-disable-next-line\nexport var BIconLockFill=/*#__PURE__*/makeIcon('LockFill','');// eslint-disable-next-line\nexport var BIconMailbox=/*#__PURE__*/makeIcon('Mailbox','');// eslint-disable-next-line\nexport var BIconMailbox2=/*#__PURE__*/makeIcon('Mailbox2','');// eslint-disable-next-line\nexport var BIconMap=/*#__PURE__*/makeIcon('Map','');// eslint-disable-next-line\nexport var BIconMapFill=/*#__PURE__*/makeIcon('MapFill','');// eslint-disable-next-line\nexport var BIconMarkdown=/*#__PURE__*/makeIcon('Markdown','');// eslint-disable-next-line\nexport var BIconMarkdownFill=/*#__PURE__*/makeIcon('MarkdownFill','');// eslint-disable-next-line\nexport var BIconMenuApp=/*#__PURE__*/makeIcon('MenuApp','');// eslint-disable-next-line\nexport var BIconMenuAppFill=/*#__PURE__*/makeIcon('MenuAppFill','');// eslint-disable-next-line\nexport var BIconMenuButton=/*#__PURE__*/makeIcon('MenuButton','');// eslint-disable-next-line\nexport var BIconMenuButtonFill=/*#__PURE__*/makeIcon('MenuButtonFill','');// eslint-disable-next-line\nexport var BIconMenuButtonWide=/*#__PURE__*/makeIcon('MenuButtonWide','');// eslint-disable-next-line\nexport var BIconMenuButtonWideFill=/*#__PURE__*/makeIcon('MenuButtonWideFill','');// eslint-disable-next-line\nexport var BIconMenuDown=/*#__PURE__*/makeIcon('MenuDown','');// eslint-disable-next-line\nexport var BIconMenuUp=/*#__PURE__*/makeIcon('MenuUp','');// eslint-disable-next-line\nexport var BIconMic=/*#__PURE__*/makeIcon('Mic','');// eslint-disable-next-line\nexport var BIconMicFill=/*#__PURE__*/makeIcon('MicFill','');// eslint-disable-next-line\nexport var BIconMicMute=/*#__PURE__*/makeIcon('MicMute','');// eslint-disable-next-line\nexport var BIconMicMuteFill=/*#__PURE__*/makeIcon('MicMuteFill','');// eslint-disable-next-line\nexport var BIconMinecart=/*#__PURE__*/makeIcon('Minecart','');// eslint-disable-next-line\nexport var BIconMinecartLoaded=/*#__PURE__*/makeIcon('MinecartLoaded','');// eslint-disable-next-line\nexport var BIconMoon=/*#__PURE__*/makeIcon('Moon','');// eslint-disable-next-line\nexport var BIconMouse=/*#__PURE__*/makeIcon('Mouse','');// eslint-disable-next-line\nexport var BIconMouse2=/*#__PURE__*/makeIcon('Mouse2','');// eslint-disable-next-line\nexport var BIconMouse3=/*#__PURE__*/makeIcon('Mouse3','');// eslint-disable-next-line\nexport var BIconMusicNote=/*#__PURE__*/makeIcon('MusicNote','');// eslint-disable-next-line\nexport var BIconMusicNoteBeamed=/*#__PURE__*/makeIcon('MusicNoteBeamed','');// eslint-disable-next-line\nexport var BIconMusicNoteList=/*#__PURE__*/makeIcon('MusicNoteList','');// eslint-disable-next-line\nexport var BIconMusicPlayer=/*#__PURE__*/makeIcon('MusicPlayer','');// eslint-disable-next-line\nexport var BIconMusicPlayerFill=/*#__PURE__*/makeIcon('MusicPlayerFill','');// eslint-disable-next-line\nexport var BIconNewspaper=/*#__PURE__*/makeIcon('Newspaper','');// eslint-disable-next-line\nexport var BIconNodeMinus=/*#__PURE__*/makeIcon('NodeMinus','');// eslint-disable-next-line\nexport var BIconNodeMinusFill=/*#__PURE__*/makeIcon('NodeMinusFill','');// eslint-disable-next-line\nexport var BIconNodePlus=/*#__PURE__*/makeIcon('NodePlus','');// eslint-disable-next-line\nexport var BIconNodePlusFill=/*#__PURE__*/makeIcon('NodePlusFill','');// eslint-disable-next-line\nexport var BIconNut=/*#__PURE__*/makeIcon('Nut','');// eslint-disable-next-line\nexport var BIconNutFill=/*#__PURE__*/makeIcon('NutFill','');// eslint-disable-next-line\nexport var BIconOctagon=/*#__PURE__*/makeIcon('Octagon','');// eslint-disable-next-line\nexport var BIconOctagonFill=/*#__PURE__*/makeIcon('OctagonFill','');// eslint-disable-next-line\nexport var BIconOctagonHalf=/*#__PURE__*/makeIcon('OctagonHalf','');// eslint-disable-next-line\nexport var BIconOption=/*#__PURE__*/makeIcon('Option','');// eslint-disable-next-line\nexport var BIconOutlet=/*#__PURE__*/makeIcon('Outlet','');// eslint-disable-next-line\nexport var BIconPaperclip=/*#__PURE__*/makeIcon('Paperclip','');// eslint-disable-next-line\nexport var BIconParagraph=/*#__PURE__*/makeIcon('Paragraph','');// eslint-disable-next-line\nexport var BIconPatchCheck=/*#__PURE__*/makeIcon('PatchCheck','');// eslint-disable-next-line\nexport var BIconPatchCheckFll=/*#__PURE__*/makeIcon('PatchCheckFll','');// eslint-disable-next-line\nexport var BIconPatchExclamation=/*#__PURE__*/makeIcon('PatchExclamation','');// eslint-disable-next-line\nexport var BIconPatchExclamationFll=/*#__PURE__*/makeIcon('PatchExclamationFll','');// eslint-disable-next-line\nexport var BIconPatchMinus=/*#__PURE__*/makeIcon('PatchMinus','');// eslint-disable-next-line\nexport var BIconPatchMinusFll=/*#__PURE__*/makeIcon('PatchMinusFll','');// eslint-disable-next-line\nexport var BIconPatchPlus=/*#__PURE__*/makeIcon('PatchPlus','');// eslint-disable-next-line\nexport var BIconPatchPlusFll=/*#__PURE__*/makeIcon('PatchPlusFll','');// eslint-disable-next-line\nexport var BIconPatchQuestion=/*#__PURE__*/makeIcon('PatchQuestion','');// eslint-disable-next-line\nexport var BIconPatchQuestionFll=/*#__PURE__*/makeIcon('PatchQuestionFll','');// eslint-disable-next-line\nexport var BIconPause=/*#__PURE__*/makeIcon('Pause','');// eslint-disable-next-line\nexport var BIconPauseBtn=/*#__PURE__*/makeIcon('PauseBtn','');// eslint-disable-next-line\nexport var BIconPauseBtnFill=/*#__PURE__*/makeIcon('PauseBtnFill','');// eslint-disable-next-line\nexport var BIconPauseCircle=/*#__PURE__*/makeIcon('PauseCircle','');// eslint-disable-next-line\nexport var BIconPauseCircleFill=/*#__PURE__*/makeIcon('PauseCircleFill','');// eslint-disable-next-line\nexport var BIconPauseFill=/*#__PURE__*/makeIcon('PauseFill','');// eslint-disable-next-line\nexport var BIconPeace=/*#__PURE__*/makeIcon('Peace','');// eslint-disable-next-line\nexport var BIconPeaceFill=/*#__PURE__*/makeIcon('PeaceFill','');// eslint-disable-next-line\nexport var BIconPen=/*#__PURE__*/makeIcon('Pen','');// eslint-disable-next-line\nexport var BIconPenFill=/*#__PURE__*/makeIcon('PenFill','');// eslint-disable-next-line\nexport var BIconPencil=/*#__PURE__*/makeIcon('Pencil','');// eslint-disable-next-line\nexport var BIconPencilFill=/*#__PURE__*/makeIcon('PencilFill','');// eslint-disable-next-line\nexport var BIconPencilSquare=/*#__PURE__*/makeIcon('PencilSquare','');// eslint-disable-next-line\nexport var BIconPentagon=/*#__PURE__*/makeIcon('Pentagon','');// eslint-disable-next-line\nexport var BIconPentagonFill=/*#__PURE__*/makeIcon('PentagonFill','');// eslint-disable-next-line\nexport var BIconPentagonHalf=/*#__PURE__*/makeIcon('PentagonHalf','');// eslint-disable-next-line\nexport var BIconPeople=/*#__PURE__*/makeIcon('People','');// eslint-disable-next-line\nexport var BIconPeopleFill=/*#__PURE__*/makeIcon('PeopleFill','');// eslint-disable-next-line\nexport var BIconPercent=/*#__PURE__*/makeIcon('Percent','');// eslint-disable-next-line\nexport var BIconPerson=/*#__PURE__*/makeIcon('Person','');// eslint-disable-next-line\nexport var BIconPersonBadge=/*#__PURE__*/makeIcon('PersonBadge','');// eslint-disable-next-line\nexport var BIconPersonBadgeFill=/*#__PURE__*/makeIcon('PersonBadgeFill','');// eslint-disable-next-line\nexport var BIconPersonBoundingBox=/*#__PURE__*/makeIcon('PersonBoundingBox','');// eslint-disable-next-line\nexport var BIconPersonCheck=/*#__PURE__*/makeIcon('PersonCheck','');// eslint-disable-next-line\nexport var BIconPersonCheckFill=/*#__PURE__*/makeIcon('PersonCheckFill','');// eslint-disable-next-line\nexport var BIconPersonCircle=/*#__PURE__*/makeIcon('PersonCircle','');// eslint-disable-next-line\nexport var BIconPersonDash=/*#__PURE__*/makeIcon('PersonDash','');// eslint-disable-next-line\nexport var BIconPersonDashFill=/*#__PURE__*/makeIcon('PersonDashFill','');// eslint-disable-next-line\nexport var BIconPersonFill=/*#__PURE__*/makeIcon('PersonFill','');// eslint-disable-next-line\nexport var BIconPersonLinesFill=/*#__PURE__*/makeIcon('PersonLinesFill','');// eslint-disable-next-line\nexport var BIconPersonPlus=/*#__PURE__*/makeIcon('PersonPlus','');// eslint-disable-next-line\nexport var BIconPersonPlusFill=/*#__PURE__*/makeIcon('PersonPlusFill','');// eslint-disable-next-line\nexport var BIconPersonSquare=/*#__PURE__*/makeIcon('PersonSquare','');// eslint-disable-next-line\nexport var BIconPersonX=/*#__PURE__*/makeIcon('PersonX','');// eslint-disable-next-line\nexport var BIconPersonXFill=/*#__PURE__*/makeIcon('PersonXFill','');// eslint-disable-next-line\nexport var BIconPhone=/*#__PURE__*/makeIcon('Phone','');// eslint-disable-next-line\nexport var BIconPhoneFill=/*#__PURE__*/makeIcon('PhoneFill','');// eslint-disable-next-line\nexport var BIconPhoneLandscape=/*#__PURE__*/makeIcon('PhoneLandscape','');// eslint-disable-next-line\nexport var BIconPhoneLandscapeFill=/*#__PURE__*/makeIcon('PhoneLandscapeFill','');// eslint-disable-next-line\nexport var BIconPhoneVibrate=/*#__PURE__*/makeIcon('PhoneVibrate','');// eslint-disable-next-line\nexport var BIconPieChart=/*#__PURE__*/makeIcon('PieChart','');// eslint-disable-next-line\nexport var BIconPieChartFill=/*#__PURE__*/makeIcon('PieChartFill','');// eslint-disable-next-line\nexport var BIconPip=/*#__PURE__*/makeIcon('Pip','');// eslint-disable-next-line\nexport var BIconPipFill=/*#__PURE__*/makeIcon('PipFill','');// eslint-disable-next-line\nexport var BIconPlay=/*#__PURE__*/makeIcon('Play','');// eslint-disable-next-line\nexport var BIconPlayBtn=/*#__PURE__*/makeIcon('PlayBtn','');// eslint-disable-next-line\nexport var BIconPlayBtnFill=/*#__PURE__*/makeIcon('PlayBtnFill','');// eslint-disable-next-line\nexport var BIconPlayCircle=/*#__PURE__*/makeIcon('PlayCircle','');// eslint-disable-next-line\nexport var BIconPlayCircleFill=/*#__PURE__*/makeIcon('PlayCircleFill','');// eslint-disable-next-line\nexport var BIconPlayFill=/*#__PURE__*/makeIcon('PlayFill','');// eslint-disable-next-line\nexport var BIconPlug=/*#__PURE__*/makeIcon('Plug','');// eslint-disable-next-line\nexport var BIconPlugFill=/*#__PURE__*/makeIcon('PlugFill','');// eslint-disable-next-line\nexport var BIconPlus=/*#__PURE__*/makeIcon('Plus','');// eslint-disable-next-line\nexport var BIconPlusCircle=/*#__PURE__*/makeIcon('PlusCircle','');// eslint-disable-next-line\nexport var BIconPlusCircleFill=/*#__PURE__*/makeIcon('PlusCircleFill','');// eslint-disable-next-line\nexport var BIconPlusSquare=/*#__PURE__*/makeIcon('PlusSquare','');// eslint-disable-next-line\nexport var BIconPlusSquareFill=/*#__PURE__*/makeIcon('PlusSquareFill','');// eslint-disable-next-line\nexport var BIconPower=/*#__PURE__*/makeIcon('Power','');// eslint-disable-next-line\nexport var BIconPrinter=/*#__PURE__*/makeIcon('Printer','');// eslint-disable-next-line\nexport var BIconPrinterFill=/*#__PURE__*/makeIcon('PrinterFill','');// eslint-disable-next-line\nexport var BIconPuzzle=/*#__PURE__*/makeIcon('Puzzle','');// eslint-disable-next-line\nexport var BIconPuzzleFill=/*#__PURE__*/makeIcon('PuzzleFill','');// eslint-disable-next-line\nexport var BIconQuestion=/*#__PURE__*/makeIcon('Question','');// eslint-disable-next-line\nexport var BIconQuestionCircle=/*#__PURE__*/makeIcon('QuestionCircle','');// eslint-disable-next-line\nexport var BIconQuestionCircleFill=/*#__PURE__*/makeIcon('QuestionCircleFill','');// eslint-disable-next-line\nexport var BIconQuestionDiamond=/*#__PURE__*/makeIcon('QuestionDiamond','');// eslint-disable-next-line\nexport var BIconQuestionDiamondFill=/*#__PURE__*/makeIcon('QuestionDiamondFill','');// eslint-disable-next-line\nexport var BIconQuestionOctagon=/*#__PURE__*/makeIcon('QuestionOctagon','');// eslint-disable-next-line\nexport var BIconQuestionOctagonFill=/*#__PURE__*/makeIcon('QuestionOctagonFill','');// eslint-disable-next-line\nexport var BIconQuestionSquare=/*#__PURE__*/makeIcon('QuestionSquare','');// eslint-disable-next-line\nexport var BIconQuestionSquareFill=/*#__PURE__*/makeIcon('QuestionSquareFill','');// eslint-disable-next-line\nexport var BIconReceipt=/*#__PURE__*/makeIcon('Receipt','');// eslint-disable-next-line\nexport var BIconReceiptCutoff=/*#__PURE__*/makeIcon('ReceiptCutoff','');// eslint-disable-next-line\nexport var BIconReception0=/*#__PURE__*/makeIcon('Reception0','');// eslint-disable-next-line\nexport var BIconReception1=/*#__PURE__*/makeIcon('Reception1','');// eslint-disable-next-line\nexport var BIconReception2=/*#__PURE__*/makeIcon('Reception2','');// eslint-disable-next-line\nexport var BIconReception3=/*#__PURE__*/makeIcon('Reception3','');// eslint-disable-next-line\nexport var BIconReception4=/*#__PURE__*/makeIcon('Reception4','');// eslint-disable-next-line\nexport var BIconRecord=/*#__PURE__*/makeIcon('Record','');// eslint-disable-next-line\nexport var BIconRecord2=/*#__PURE__*/makeIcon('Record2','');// eslint-disable-next-line\nexport var BIconRecord2Fill=/*#__PURE__*/makeIcon('Record2Fill','');// eslint-disable-next-line\nexport var BIconRecordBtn=/*#__PURE__*/makeIcon('RecordBtn','');// eslint-disable-next-line\nexport var BIconRecordBtnFill=/*#__PURE__*/makeIcon('RecordBtnFill','');// eslint-disable-next-line\nexport var BIconRecordCircle=/*#__PURE__*/makeIcon('RecordCircle','');// eslint-disable-next-line\nexport var BIconRecordCircleFill=/*#__PURE__*/makeIcon('RecordCircleFill','');// eslint-disable-next-line\nexport var BIconRecordFill=/*#__PURE__*/makeIcon('RecordFill','');// eslint-disable-next-line\nexport var BIconReply=/*#__PURE__*/makeIcon('Reply','');// eslint-disable-next-line\nexport var BIconReplyAll=/*#__PURE__*/makeIcon('ReplyAll','');// eslint-disable-next-line\nexport var BIconReplyAllFill=/*#__PURE__*/makeIcon('ReplyAllFill','');// eslint-disable-next-line\nexport var BIconReplyFill=/*#__PURE__*/makeIcon('ReplyFill','');// eslint-disable-next-line\nexport var BIconRss=/*#__PURE__*/makeIcon('Rss','');// eslint-disable-next-line\nexport var BIconRssFill=/*#__PURE__*/makeIcon('RssFill','');// eslint-disable-next-line\nexport var BIconScissors=/*#__PURE__*/makeIcon('Scissors','');// eslint-disable-next-line\nexport var BIconScrewdriver=/*#__PURE__*/makeIcon('Screwdriver','');// eslint-disable-next-line\nexport var BIconSearch=/*#__PURE__*/makeIcon('Search','');// eslint-disable-next-line\nexport var BIconSegmentedNav=/*#__PURE__*/makeIcon('SegmentedNav','');// eslint-disable-next-line\nexport var BIconServer=/*#__PURE__*/makeIcon('Server','');// eslint-disable-next-line\nexport var BIconShare=/*#__PURE__*/makeIcon('Share','');// eslint-disable-next-line\nexport var BIconShareFill=/*#__PURE__*/makeIcon('ShareFill','');// eslint-disable-next-line\nexport var BIconShield=/*#__PURE__*/makeIcon('Shield','');// eslint-disable-next-line\nexport var BIconShieldCheck=/*#__PURE__*/makeIcon('ShieldCheck','');// eslint-disable-next-line\nexport var BIconShieldExclamation=/*#__PURE__*/makeIcon('ShieldExclamation','');// eslint-disable-next-line\nexport var BIconShieldFill=/*#__PURE__*/makeIcon('ShieldFill','');// eslint-disable-next-line\nexport var BIconShieldFillCheck=/*#__PURE__*/makeIcon('ShieldFillCheck','');// eslint-disable-next-line\nexport var BIconShieldFillExclamation=/*#__PURE__*/makeIcon('ShieldFillExclamation','');// eslint-disable-next-line\nexport var BIconShieldFillMinus=/*#__PURE__*/makeIcon('ShieldFillMinus','');// eslint-disable-next-line\nexport var BIconShieldFillPlus=/*#__PURE__*/makeIcon('ShieldFillPlus','');// eslint-disable-next-line\nexport var BIconShieldFillX=/*#__PURE__*/makeIcon('ShieldFillX','');// eslint-disable-next-line\nexport var BIconShieldLock=/*#__PURE__*/makeIcon('ShieldLock','');// eslint-disable-next-line\nexport var BIconShieldLockFill=/*#__PURE__*/makeIcon('ShieldLockFill','');// eslint-disable-next-line\nexport var BIconShieldMinus=/*#__PURE__*/makeIcon('ShieldMinus','');// eslint-disable-next-line\nexport var BIconShieldPlus=/*#__PURE__*/makeIcon('ShieldPlus','');// eslint-disable-next-line\nexport var BIconShieldShaded=/*#__PURE__*/makeIcon('ShieldShaded','');// eslint-disable-next-line\nexport var BIconShieldSlash=/*#__PURE__*/makeIcon('ShieldSlash','');// eslint-disable-next-line\nexport var BIconShieldSlashFill=/*#__PURE__*/makeIcon('ShieldSlashFill','');// eslint-disable-next-line\nexport var BIconShieldX=/*#__PURE__*/makeIcon('ShieldX','');// eslint-disable-next-line\nexport var BIconShift=/*#__PURE__*/makeIcon('Shift','');// eslint-disable-next-line\nexport var BIconShiftFill=/*#__PURE__*/makeIcon('ShiftFill','');// eslint-disable-next-line\nexport var BIconShop=/*#__PURE__*/makeIcon('Shop','');// eslint-disable-next-line\nexport var BIconShopWindow=/*#__PURE__*/makeIcon('ShopWindow','');// eslint-disable-next-line\nexport var BIconShuffle=/*#__PURE__*/makeIcon('Shuffle','');// eslint-disable-next-line\nexport var BIconSignpost=/*#__PURE__*/makeIcon('Signpost','');// eslint-disable-next-line\nexport var BIconSignpost2=/*#__PURE__*/makeIcon('Signpost2','');// eslint-disable-next-line\nexport var BIconSignpost2Fill=/*#__PURE__*/makeIcon('Signpost2Fill','');// eslint-disable-next-line\nexport var BIconSignpostFill=/*#__PURE__*/makeIcon('SignpostFill','');// eslint-disable-next-line\nexport var BIconSignpostSplit=/*#__PURE__*/makeIcon('SignpostSplit','');// eslint-disable-next-line\nexport var BIconSignpostSplitFill=/*#__PURE__*/makeIcon('SignpostSplitFill','');// eslint-disable-next-line\nexport var BIconSim=/*#__PURE__*/makeIcon('Sim','');// eslint-disable-next-line\nexport var BIconSimFill=/*#__PURE__*/makeIcon('SimFill','');// eslint-disable-next-line\nexport var BIconSkipBackward=/*#__PURE__*/makeIcon('SkipBackward','');// eslint-disable-next-line\nexport var BIconSkipBackwardBtn=/*#__PURE__*/makeIcon('SkipBackwardBtn','');// eslint-disable-next-line\nexport var BIconSkipBackwardBtnFill=/*#__PURE__*/makeIcon('SkipBackwardBtnFill','');// eslint-disable-next-line\nexport var BIconSkipBackwardCircle=/*#__PURE__*/makeIcon('SkipBackwardCircle','');// eslint-disable-next-line\nexport var BIconSkipBackwardCircleFill=/*#__PURE__*/makeIcon('SkipBackwardCircleFill','');// eslint-disable-next-line\nexport var BIconSkipBackwardFill=/*#__PURE__*/makeIcon('SkipBackwardFill','');// eslint-disable-next-line\nexport var BIconSkipEnd=/*#__PURE__*/makeIcon('SkipEnd','');// eslint-disable-next-line\nexport var BIconSkipEndBtn=/*#__PURE__*/makeIcon('SkipEndBtn','');// eslint-disable-next-line\nexport var BIconSkipEndBtnFill=/*#__PURE__*/makeIcon('SkipEndBtnFill','');// eslint-disable-next-line\nexport var BIconSkipEndCircle=/*#__PURE__*/makeIcon('SkipEndCircle','');// eslint-disable-next-line\nexport var BIconSkipEndCircleFill=/*#__PURE__*/makeIcon('SkipEndCircleFill','');// eslint-disable-next-line\nexport var BIconSkipEndFill=/*#__PURE__*/makeIcon('SkipEndFill','');// eslint-disable-next-line\nexport var BIconSkipForward=/*#__PURE__*/makeIcon('SkipForward','');// eslint-disable-next-line\nexport var BIconSkipForwardBtn=/*#__PURE__*/makeIcon('SkipForwardBtn','');// eslint-disable-next-line\nexport var BIconSkipForwardBtnFill=/*#__PURE__*/makeIcon('SkipForwardBtnFill','');// eslint-disable-next-line\nexport var BIconSkipForwardCircle=/*#__PURE__*/makeIcon('SkipForwardCircle','');// eslint-disable-next-line\nexport var BIconSkipForwardCircleFill=/*#__PURE__*/makeIcon('SkipForwardCircleFill','');// eslint-disable-next-line\nexport var BIconSkipForwardFill=/*#__PURE__*/makeIcon('SkipForwardFill','');// eslint-disable-next-line\nexport var BIconSkipStart=/*#__PURE__*/makeIcon('SkipStart','');// eslint-disable-next-line\nexport var BIconSkipStartBtn=/*#__PURE__*/makeIcon('SkipStartBtn','');// eslint-disable-next-line\nexport var BIconSkipStartBtnFill=/*#__PURE__*/makeIcon('SkipStartBtnFill','');// eslint-disable-next-line\nexport var BIconSkipStartCircle=/*#__PURE__*/makeIcon('SkipStartCircle','');// eslint-disable-next-line\nexport var BIconSkipStartCircleFill=/*#__PURE__*/makeIcon('SkipStartCircleFill','');// eslint-disable-next-line\nexport var BIconSkipStartFill=/*#__PURE__*/makeIcon('SkipStartFill','');// eslint-disable-next-line\nexport var BIconSlack=/*#__PURE__*/makeIcon('Slack','');// eslint-disable-next-line\nexport var BIconSlash=/*#__PURE__*/makeIcon('Slash','');// eslint-disable-next-line\nexport var BIconSlashCircle=/*#__PURE__*/makeIcon('SlashCircle','');// eslint-disable-next-line\nexport var BIconSlashCircleFill=/*#__PURE__*/makeIcon('SlashCircleFill','');// eslint-disable-next-line\nexport var BIconSlashSquare=/*#__PURE__*/makeIcon('SlashSquare','');// eslint-disable-next-line\nexport var BIconSlashSquareFill=/*#__PURE__*/makeIcon('SlashSquareFill','');// eslint-disable-next-line\nexport var BIconSliders=/*#__PURE__*/makeIcon('Sliders','');// eslint-disable-next-line\nexport var BIconSmartwatch=/*#__PURE__*/makeIcon('Smartwatch','');// eslint-disable-next-line\nexport var BIconSortAlphaDown=/*#__PURE__*/makeIcon('SortAlphaDown','');// eslint-disable-next-line\nexport var BIconSortAlphaDownAlt=/*#__PURE__*/makeIcon('SortAlphaDownAlt','');// eslint-disable-next-line\nexport var BIconSortAlphaUp=/*#__PURE__*/makeIcon('SortAlphaUp','');// eslint-disable-next-line\nexport var BIconSortAlphaUpAlt=/*#__PURE__*/makeIcon('SortAlphaUpAlt','');// eslint-disable-next-line\nexport var BIconSortDown=/*#__PURE__*/makeIcon('SortDown','');// eslint-disable-next-line\nexport var BIconSortDownAlt=/*#__PURE__*/makeIcon('SortDownAlt','');// eslint-disable-next-line\nexport var BIconSortNumericDown=/*#__PURE__*/makeIcon('SortNumericDown','');// eslint-disable-next-line\nexport var BIconSortNumericDownAlt=/*#__PURE__*/makeIcon('SortNumericDownAlt','');// eslint-disable-next-line\nexport var BIconSortNumericUp=/*#__PURE__*/makeIcon('SortNumericUp','');// eslint-disable-next-line\nexport var BIconSortNumericUpAlt=/*#__PURE__*/makeIcon('SortNumericUpAlt','');// eslint-disable-next-line\nexport var BIconSortUp=/*#__PURE__*/makeIcon('SortUp','');// eslint-disable-next-line\nexport var BIconSortUpAlt=/*#__PURE__*/makeIcon('SortUpAlt','');// eslint-disable-next-line\nexport var BIconSoundwave=/*#__PURE__*/makeIcon('Soundwave','');// eslint-disable-next-line\nexport var BIconSpeaker=/*#__PURE__*/makeIcon('Speaker','');// eslint-disable-next-line\nexport var BIconSpeakerFill=/*#__PURE__*/makeIcon('SpeakerFill','');// eslint-disable-next-line\nexport var BIconSpellcheck=/*#__PURE__*/makeIcon('Spellcheck','');// eslint-disable-next-line\nexport var BIconSquare=/*#__PURE__*/makeIcon('Square','');// eslint-disable-next-line\nexport var BIconSquareFill=/*#__PURE__*/makeIcon('SquareFill','');// eslint-disable-next-line\nexport var BIconSquareHalf=/*#__PURE__*/makeIcon('SquareHalf','');// eslint-disable-next-line\nexport var BIconStar=/*#__PURE__*/makeIcon('Star','');// eslint-disable-next-line\nexport var BIconStarFill=/*#__PURE__*/makeIcon('StarFill','');// eslint-disable-next-line\nexport var BIconStarHalf=/*#__PURE__*/makeIcon('StarHalf','');// eslint-disable-next-line\nexport var BIconStickies=/*#__PURE__*/makeIcon('Stickies','');// eslint-disable-next-line\nexport var BIconStickiesFill=/*#__PURE__*/makeIcon('StickiesFill','');// eslint-disable-next-line\nexport var BIconSticky=/*#__PURE__*/makeIcon('Sticky','');// eslint-disable-next-line\nexport var BIconStickyFill=/*#__PURE__*/makeIcon('StickyFill','');// eslint-disable-next-line\nexport var BIconStop=/*#__PURE__*/makeIcon('Stop','');// eslint-disable-next-line\nexport var BIconStopBtn=/*#__PURE__*/makeIcon('StopBtn','');// eslint-disable-next-line\nexport var BIconStopBtnFill=/*#__PURE__*/makeIcon('StopBtnFill','');// eslint-disable-next-line\nexport var BIconStopCircle=/*#__PURE__*/makeIcon('StopCircle','');// eslint-disable-next-line\nexport var BIconStopCircleFill=/*#__PURE__*/makeIcon('StopCircleFill','');// eslint-disable-next-line\nexport var BIconStopFill=/*#__PURE__*/makeIcon('StopFill','');// eslint-disable-next-line\nexport var BIconStoplights=/*#__PURE__*/makeIcon('Stoplights','');// eslint-disable-next-line\nexport var BIconStoplightsFill=/*#__PURE__*/makeIcon('StoplightsFill','');// eslint-disable-next-line\nexport var BIconStopwatch=/*#__PURE__*/makeIcon('Stopwatch','');// eslint-disable-next-line\nexport var BIconStopwatchFill=/*#__PURE__*/makeIcon('StopwatchFill','');// eslint-disable-next-line\nexport var BIconSubtract=/*#__PURE__*/makeIcon('Subtract','');// eslint-disable-next-line\nexport var BIconSuitClub=/*#__PURE__*/makeIcon('SuitClub','');// eslint-disable-next-line\nexport var BIconSuitClubFill=/*#__PURE__*/makeIcon('SuitClubFill','');// eslint-disable-next-line\nexport var BIconSuitDiamond=/*#__PURE__*/makeIcon('SuitDiamond','');// eslint-disable-next-line\nexport var BIconSuitDiamondFill=/*#__PURE__*/makeIcon('SuitDiamondFill','');// eslint-disable-next-line\nexport var BIconSuitHeart=/*#__PURE__*/makeIcon('SuitHeart','');// eslint-disable-next-line\nexport var BIconSuitHeartFill=/*#__PURE__*/makeIcon('SuitHeartFill','');// eslint-disable-next-line\nexport var BIconSuitSpade=/*#__PURE__*/makeIcon('SuitSpade','');// eslint-disable-next-line\nexport var BIconSuitSpadeFill=/*#__PURE__*/makeIcon('SuitSpadeFill','');// eslint-disable-next-line\nexport var BIconSun=/*#__PURE__*/makeIcon('Sun','');// eslint-disable-next-line\nexport var BIconSunglasses=/*#__PURE__*/makeIcon('Sunglasses','');// eslint-disable-next-line\nexport var BIconTable=/*#__PURE__*/makeIcon('Table','');// eslint-disable-next-line\nexport var BIconTablet=/*#__PURE__*/makeIcon('Tablet','');// eslint-disable-next-line\nexport var BIconTabletFill=/*#__PURE__*/makeIcon('TabletFill','');// eslint-disable-next-line\nexport var BIconTabletLandscape=/*#__PURE__*/makeIcon('TabletLandscape','');// eslint-disable-next-line\nexport var BIconTabletLandscapeFill=/*#__PURE__*/makeIcon('TabletLandscapeFill','');// eslint-disable-next-line\nexport var BIconTag=/*#__PURE__*/makeIcon('Tag','');// eslint-disable-next-line\nexport var BIconTagFill=/*#__PURE__*/makeIcon('TagFill','');// eslint-disable-next-line\nexport var BIconTags=/*#__PURE__*/makeIcon('Tags','');// eslint-disable-next-line\nexport var BIconTagsFill=/*#__PURE__*/makeIcon('TagsFill','');// eslint-disable-next-line\nexport var BIconTelephone=/*#__PURE__*/makeIcon('Telephone','');// eslint-disable-next-line\nexport var BIconTelephoneFill=/*#__PURE__*/makeIcon('TelephoneFill','');// eslint-disable-next-line\nexport var BIconTelephoneForward=/*#__PURE__*/makeIcon('TelephoneForward','');// eslint-disable-next-line\nexport var BIconTelephoneForwardFill=/*#__PURE__*/makeIcon('TelephoneForwardFill','');// eslint-disable-next-line\nexport var BIconTelephoneInbound=/*#__PURE__*/makeIcon('TelephoneInbound','');// eslint-disable-next-line\nexport var BIconTelephoneInboundFill=/*#__PURE__*/makeIcon('TelephoneInboundFill','');// eslint-disable-next-line\nexport var BIconTelephoneMinus=/*#__PURE__*/makeIcon('TelephoneMinus','');// eslint-disable-next-line\nexport var BIconTelephoneMinusFill=/*#__PURE__*/makeIcon('TelephoneMinusFill','');// eslint-disable-next-line\nexport var BIconTelephoneOutbound=/*#__PURE__*/makeIcon('TelephoneOutbound','');// eslint-disable-next-line\nexport var BIconTelephoneOutboundFill=/*#__PURE__*/makeIcon('TelephoneOutboundFill','');// eslint-disable-next-line\nexport var BIconTelephonePlus=/*#__PURE__*/makeIcon('TelephonePlus','');// eslint-disable-next-line\nexport var BIconTelephonePlusFill=/*#__PURE__*/makeIcon('TelephonePlusFill','');// eslint-disable-next-line\nexport var BIconTelephoneX=/*#__PURE__*/makeIcon('TelephoneX','');// eslint-disable-next-line\nexport var BIconTelephoneXFill=/*#__PURE__*/makeIcon('TelephoneXFill','');// eslint-disable-next-line\nexport var BIconTerminal=/*#__PURE__*/makeIcon('Terminal','');// eslint-disable-next-line\nexport var BIconTerminalFill=/*#__PURE__*/makeIcon('TerminalFill','');// eslint-disable-next-line\nexport var BIconTextCenter=/*#__PURE__*/makeIcon('TextCenter','');// eslint-disable-next-line\nexport var BIconTextIndentLeft=/*#__PURE__*/makeIcon('TextIndentLeft','');// eslint-disable-next-line\nexport var BIconTextIndentRight=/*#__PURE__*/makeIcon('TextIndentRight','');// eslint-disable-next-line\nexport var BIconTextLeft=/*#__PURE__*/makeIcon('TextLeft','');// eslint-disable-next-line\nexport var BIconTextParagraph=/*#__PURE__*/makeIcon('TextParagraph','');// eslint-disable-next-line\nexport var BIconTextRight=/*#__PURE__*/makeIcon('TextRight','');// eslint-disable-next-line\nexport var BIconTextarea=/*#__PURE__*/makeIcon('Textarea','');// eslint-disable-next-line\nexport var BIconTextareaResize=/*#__PURE__*/makeIcon('TextareaResize','');// eslint-disable-next-line\nexport var BIconTextareaT=/*#__PURE__*/makeIcon('TextareaT','');// eslint-disable-next-line\nexport var BIconThermometer=/*#__PURE__*/makeIcon('Thermometer','');// eslint-disable-next-line\nexport var BIconThermometerHalf=/*#__PURE__*/makeIcon('ThermometerHalf','');// eslint-disable-next-line\nexport var BIconThreeDots=/*#__PURE__*/makeIcon('ThreeDots','');// eslint-disable-next-line\nexport var BIconThreeDotsVertical=/*#__PURE__*/makeIcon('ThreeDotsVertical','');// eslint-disable-next-line\nexport var BIconToggle2Off=/*#__PURE__*/makeIcon('Toggle2Off','');// eslint-disable-next-line\nexport var BIconToggle2On=/*#__PURE__*/makeIcon('Toggle2On','');// eslint-disable-next-line\nexport var BIconToggleOff=/*#__PURE__*/makeIcon('ToggleOff','');// eslint-disable-next-line\nexport var BIconToggleOn=/*#__PURE__*/makeIcon('ToggleOn','');// eslint-disable-next-line\nexport var BIconToggles=/*#__PURE__*/makeIcon('Toggles','');// eslint-disable-next-line\nexport var BIconToggles2=/*#__PURE__*/makeIcon('Toggles2','');// eslint-disable-next-line\nexport var BIconTools=/*#__PURE__*/makeIcon('Tools','');// eslint-disable-next-line\nexport var BIconTrash=/*#__PURE__*/makeIcon('Trash','');// eslint-disable-next-line\nexport var BIconTrash2=/*#__PURE__*/makeIcon('Trash2','');// eslint-disable-next-line\nexport var BIconTrash2Fill=/*#__PURE__*/makeIcon('Trash2Fill','');// eslint-disable-next-line\nexport var BIconTrashFill=/*#__PURE__*/makeIcon('TrashFill','');// eslint-disable-next-line\nexport var BIconTree=/*#__PURE__*/makeIcon('Tree','');// eslint-disable-next-line\nexport var BIconTreeFill=/*#__PURE__*/makeIcon('TreeFill','');// eslint-disable-next-line\nexport var BIconTriangle=/*#__PURE__*/makeIcon('Triangle','');// eslint-disable-next-line\nexport var BIconTriangleFill=/*#__PURE__*/makeIcon('TriangleFill','');// eslint-disable-next-line\nexport var BIconTriangleHalf=/*#__PURE__*/makeIcon('TriangleHalf','');// eslint-disable-next-line\nexport var BIconTrophy=/*#__PURE__*/makeIcon('Trophy','');// eslint-disable-next-line\nexport var BIconTrophyFill=/*#__PURE__*/makeIcon('TrophyFill','');// eslint-disable-next-line\nexport var BIconTruck=/*#__PURE__*/makeIcon('Truck','');// eslint-disable-next-line\nexport var BIconTruckFlatbed=/*#__PURE__*/makeIcon('TruckFlatbed','');// eslint-disable-next-line\nexport var BIconTv=/*#__PURE__*/makeIcon('Tv','');// eslint-disable-next-line\nexport var BIconTvFill=/*#__PURE__*/makeIcon('TvFill','');// eslint-disable-next-line\nexport var BIconTwitch=/*#__PURE__*/makeIcon('Twitch','');// eslint-disable-next-line\nexport var BIconTwitter=/*#__PURE__*/makeIcon('Twitter','');// eslint-disable-next-line\nexport var BIconType=/*#__PURE__*/makeIcon('Type','');// eslint-disable-next-line\nexport var BIconTypeBold=/*#__PURE__*/makeIcon('TypeBold','');// eslint-disable-next-line\nexport var BIconTypeH1=/*#__PURE__*/makeIcon('TypeH1','');// eslint-disable-next-line\nexport var BIconTypeH2=/*#__PURE__*/makeIcon('TypeH2','');// eslint-disable-next-line\nexport var BIconTypeH3=/*#__PURE__*/makeIcon('TypeH3','');// eslint-disable-next-line\nexport var BIconTypeItalic=/*#__PURE__*/makeIcon('TypeItalic','');// eslint-disable-next-line\nexport var BIconTypeStrikethrough=/*#__PURE__*/makeIcon('TypeStrikethrough','');// eslint-disable-next-line\nexport var BIconTypeUnderline=/*#__PURE__*/makeIcon('TypeUnderline','');// eslint-disable-next-line\nexport var BIconUiChecks=/*#__PURE__*/makeIcon('UiChecks','');// eslint-disable-next-line\nexport var BIconUiChecksGrid=/*#__PURE__*/makeIcon('UiChecksGrid','');// eslint-disable-next-line\nexport var BIconUiRadios=/*#__PURE__*/makeIcon('UiRadios','');// eslint-disable-next-line\nexport var BIconUiRadiosGrid=/*#__PURE__*/makeIcon('UiRadiosGrid','');// eslint-disable-next-line\nexport var BIconUnion=/*#__PURE__*/makeIcon('Union','');// eslint-disable-next-line\nexport var BIconUnlock=/*#__PURE__*/makeIcon('Unlock','');// eslint-disable-next-line\nexport var BIconUnlockFill=/*#__PURE__*/makeIcon('UnlockFill','');// eslint-disable-next-line\nexport var BIconUpc=/*#__PURE__*/makeIcon('Upc','');// eslint-disable-next-line\nexport var BIconUpcScan=/*#__PURE__*/makeIcon('UpcScan','');// eslint-disable-next-line\nexport var BIconUpload=/*#__PURE__*/makeIcon('Upload','');// eslint-disable-next-line\nexport var BIconVectorPen=/*#__PURE__*/makeIcon('VectorPen','');// eslint-disable-next-line\nexport var BIconViewList=/*#__PURE__*/makeIcon('ViewList','');// eslint-disable-next-line\nexport var BIconViewStacked=/*#__PURE__*/makeIcon('ViewStacked','');// eslint-disable-next-line\nexport var BIconVinyl=/*#__PURE__*/makeIcon('Vinyl','');// eslint-disable-next-line\nexport var BIconVinylFill=/*#__PURE__*/makeIcon('VinylFill','');// eslint-disable-next-line\nexport var BIconVoicemail=/*#__PURE__*/makeIcon('Voicemail','');// eslint-disable-next-line\nexport var BIconVolumeDown=/*#__PURE__*/makeIcon('VolumeDown','');// eslint-disable-next-line\nexport var BIconVolumeDownFill=/*#__PURE__*/makeIcon('VolumeDownFill','');// eslint-disable-next-line\nexport var BIconVolumeMute=/*#__PURE__*/makeIcon('VolumeMute','');// eslint-disable-next-line\nexport var BIconVolumeMuteFill=/*#__PURE__*/makeIcon('VolumeMuteFill','');// eslint-disable-next-line\nexport var BIconVolumeOff=/*#__PURE__*/makeIcon('VolumeOff','');// eslint-disable-next-line\nexport var BIconVolumeOffFill=/*#__PURE__*/makeIcon('VolumeOffFill','');// eslint-disable-next-line\nexport var BIconVolumeUp=/*#__PURE__*/makeIcon('VolumeUp','');// eslint-disable-next-line\nexport var BIconVolumeUpFill=/*#__PURE__*/makeIcon('VolumeUpFill','');// eslint-disable-next-line\nexport var BIconVr=/*#__PURE__*/makeIcon('Vr','');// eslint-disable-next-line\nexport var BIconWallet=/*#__PURE__*/makeIcon('Wallet','');// eslint-disable-next-line\nexport var BIconWallet2=/*#__PURE__*/makeIcon('Wallet2','');// eslint-disable-next-line\nexport var BIconWalletFill=/*#__PURE__*/makeIcon('WalletFill','');// eslint-disable-next-line\nexport var BIconWatch=/*#__PURE__*/makeIcon('Watch','');// eslint-disable-next-line\nexport var BIconWifi=/*#__PURE__*/makeIcon('Wifi','');// eslint-disable-next-line\nexport var BIconWifi1=/*#__PURE__*/makeIcon('Wifi1','');// eslint-disable-next-line\nexport var BIconWifi2=/*#__PURE__*/makeIcon('Wifi2','');// eslint-disable-next-line\nexport var BIconWifiOff=/*#__PURE__*/makeIcon('WifiOff','');// eslint-disable-next-line\nexport var BIconWindow=/*#__PURE__*/makeIcon('Window','');// eslint-disable-next-line\nexport var BIconWrench=/*#__PURE__*/makeIcon('Wrench','');// eslint-disable-next-line\nexport var BIconX=/*#__PURE__*/makeIcon('X','');// eslint-disable-next-line\nexport var BIconXCircle=/*#__PURE__*/makeIcon('XCircle','');// eslint-disable-next-line\nexport var BIconXCircleFill=/*#__PURE__*/makeIcon('XCircleFill','');// eslint-disable-next-line\nexport var BIconXDiamond=/*#__PURE__*/makeIcon('XDiamond','');// eslint-disable-next-line\nexport var BIconXDiamondFill=/*#__PURE__*/makeIcon('XDiamondFill','');// eslint-disable-next-line\nexport var BIconXOctagon=/*#__PURE__*/makeIcon('XOctagon','');// eslint-disable-next-line\nexport var BIconXOctagonFill=/*#__PURE__*/makeIcon('XOctagonFill','');// eslint-disable-next-line\nexport var BIconXSquare=/*#__PURE__*/makeIcon('XSquare','');// eslint-disable-next-line\nexport var BIconXSquareFill=/*#__PURE__*/makeIcon('XSquareFill','');// eslint-disable-next-line\nexport var BIconYoutube=/*#__PURE__*/makeIcon('Youtube','');// eslint-disable-next-line\nexport var BIconZoomIn=/*#__PURE__*/makeIcon('ZoomIn','');// eslint-disable-next-line\nexport var BIconZoomOut=/*#__PURE__*/makeIcon('ZoomOut','');// --- END AUTO-GENERATED FILE ---","import { toString } from './string';\n\nvar escapeChar = function escapeChar(value) {\n return '\\\\' + value;\n}; // The `cssEscape()` util is based on this `CSS.escape()` polyfill:\n// https://github.com/mathiasbynens/CSS.escape\n\n\nexport var cssEscape = function cssEscape(value) {\n value = toString(value);\n var length = value.length;\n var firstCharCode = value.charCodeAt(0);\n return value.split('').reduce(function (result, char, index) {\n var charCode = value.charCodeAt(index); // If the character is NULL (U+0000), use (U+FFFD) as replacement\n\n if (charCode === 0x0000) {\n return result + \"\\uFFFD\";\n } // If the character ...\n\n\n if ( // ... is U+007F OR\n charCode === 0x007f || // ... is in the range [\\1-\\1F] (U+0001 to U+001F) OR ...\n charCode >= 0x0001 && charCode <= 0x001f || // ... is the first character and is in the range [0-9] (U+0030 to U+0039) OR ...\n index === 0 && charCode >= 0x0030 && charCode <= 0x0039 || // ... 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 // ... https://drafts.csswg.org/cssom/#escape-a-character-as-code-point\n return result + escapeChar(\"\".concat(charCode.toString(16), \" \"));\n } // If the character ...\n\n\n if ( // ... is the first character AND ...\n index === 0 && // ... is a `-` (U+002D) AND ...\n charCode === 0x002d && // ... there is no second character ...\n length === 1) {\n // ... use the escaped character\n return result + escapeChar(char);\n } // If the character ...\n\n\n if ( // ... is greater than or equal to U+0080 OR ...\n charCode >= 0x0080 || // ... is `-` (U+002D) OR ...\n charCode === 0x002d || // ... is `_` (U+005F) OR ...\n charCode === 0x005f || // ... is in the range [0-9] (U+0030 to U+0039) OR ...\n charCode >= 0x0030 && charCode <= 0x0039 || // ... is in the range [A-Z] (U+0041 to U+005A) OR ...\n charCode >= 0x0041 && charCode <= 0x005a || // ... is in the range [a-z] (U+0061 to U+007A) ...\n charCode >= 0x0061 && charCode <= 0x007a) {\n // ... use the character itself\n return result + char;\n } // Otherwise use the escaped character\n // See: https://drafts.csswg.org/cssom/#escape-a-character\n\n\n return result + escapeChar(char);\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'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_FORM_ROW); // --- Main component ---\n// @vue/component\n\nexport var BFormRow = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_ROW,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n return h(props.tag, mergeData(data, {\n staticClass: 'form-row'\n }), children);\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'; // --- Props ---\n\nexport var props = makePropsConfigurable({\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}, NAME_FORM_VALID_FEEDBACK); // --- Main component ---\n// @vue/component\n\nexport var BFormValidFeedback = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_VALID_FEEDBACK,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var tooltip = props.tooltip,\n ariaLive = props.ariaLive;\n var show = props.forceShow === true || props.state === true;\n return h(props.tag, 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 }), children);\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { NAME_FORM_GROUP } from '../../constants/components';\nimport { IS_BROWSER } from '../../constants/env';\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { RX_SPACE_SPLIT } from '../../constants/regex';\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_DESCRIPTION, SLOT_NAME_INVALID_FEEDBACK, SLOT_NAME_LABEL, SLOT_NAME_VALID_FEEDBACK } from '../../constants/slots';\nimport { arrayIncludes } from '../../utils/array';\nimport { getBreakpointsUpCached } from '../../utils/config';\nimport { cssEscape } from '../../utils/css-escape';\nimport { select, selectAll, isVisible, setAttr, removeAttr, getAttr, attemptFocus } 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'; // --- Constants ---\n\nvar INPUTS = ['input', 'select', 'textarea']; // Selector for finding first input in the form group\n\nvar INPUT_SELECTOR = INPUTS.map(function (v) {\n return \"\".concat(v, \":not([disabled])\");\n}).join(); // A list of interactive elements (tag names) inside ``'s legend\n\nvar LEGEND_INTERACTIVE_ELEMENTS = [].concat(INPUTS, ['a', 'button', 'label']); // --- Props ---\n// Prop generator for lazy generation of props\n\nexport var generateProps = function generateProps() {\n return makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), formStateProps), getBreakpointsUpCached().reduce(function (props, breakpoint) {\n // i.e. 'content-cols', 'content-cols-sm', 'content-cols-md', ...\n props[suffixPropName(breakpoint, 'contentCols')] = makeProp(PROP_TYPE_BOOLEAN_NUMBER_STRING); // i.e. 'label-align', 'label-align-sm', 'label-align-md', ...\n\n props[suffixPropName(breakpoint, 'labelAlign')] = makeProp(PROP_TYPE_STRING); // i.e. 'label-cols', 'label-cols-sm', 'label-cols-md', ...\n\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 })), NAME_FORM_GROUP);\n}; // --- Main component ---\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\n\nexport var BFormGroup = {\n name: NAME_FORM_GROUP,\n mixins: [idMixin, formStateMixin, normalizeSlotMixin],\n\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; // eslint-disable-next-line no-return-assign\n\n return this.props = generateProps();\n },\n\n data: function data() {\n return {\n ariaDescribedby: null\n };\n },\n computed: {\n contentColProps: function contentColProps() {\n return this.getColProps(this.$props, 'content');\n },\n labelAlignClasses: function labelAlignClasses() {\n return this.getAlignClasses(this.$props, 'label');\n },\n labelColProps: function labelColProps() {\n return this.getColProps(this.$props, 'label');\n },\n isHorizontal: function 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: function ariaDescribedby(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.updateAriaDescribedby(newValue, oldValue);\n }\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n this.$nextTick(function () {\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: function getAlignClasses(props, prefix) {\n return getBreakpointsUpCached().reduce(function (result, breakpoint) {\n var propValue = props[suffixPropName(breakpoint, \"\".concat(prefix, \"Align\"))] || null;\n\n if (propValue) {\n result.push(['text', breakpoint, propValue].filter(identity).join('-'));\n }\n\n return result;\n }, []);\n },\n getColProps: function getColProps(props, prefix) {\n return getBreakpointsUpCached().reduce(function (result, breakpoint) {\n var propValue = props[suffixPropName(breakpoint, \"\".concat(prefix, \"Cols\"))]; // Handle case where the prop's value is an empty string,\n // which represents `true`\n\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); // Ensure column size is greater than `0`\n\n propValue = propValue > 0 ? propValue : false;\n } // Add the prop to the list of props to give to ``\n // If breakpoint is '' (`${prefix}Cols` is `true`), then we use\n // the 'col' prop to make equal width at 'xs'\n\n\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: function updateAriaDescribedby(newValue, oldValue) {\n var labelFor = this.labelFor;\n\n if (IS_BROWSER && labelFor) {\n // We need to escape `labelFor` since it can be user-provided\n var $input = select(\"#\".concat(cssEscape(labelFor)), this.$refs.content);\n\n if ($input) {\n var attr = 'aria-describedby';\n var newIds = (newValue || '').split(RX_SPACE_SPLIT);\n var oldIds = (oldValue || '').split(RX_SPACE_SPLIT); // Update ID list, preserving any original IDs\n // and ensuring the ID's are unique\n\n var ids = (getAttr($input, attr) || '').split(RX_SPACE_SPLIT).filter(function (id) {\n return !arrayIncludes(oldIds, id);\n }).concat(newIds).filter(function (id, index, ids) {\n return ids.indexOf(id) === index;\n }).filter(identity).join(' ').trim();\n\n if (ids) {\n setAttr($input, attr, ids);\n } else {\n removeAttr($input, attr);\n }\n }\n }\n },\n onLegendClick: function onLegendClick(event) {\n // Don't do anything if `labelFor` is set\n\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 var target = event.target;\n var tagName = target ? target.tagName : ''; // If clicked an interactive element inside legend,\n // we just let the default happen\n\n /* istanbul ignore next */\n\n if (LEGEND_INTERACTIVE_ELEMENTS.indexOf(tagName) !== -1) {\n return;\n } // If only a single input, focus it, emulating label behaviour\n\n\n var inputs = selectAll(INPUT_SELECTOR, this.$refs.content).filter(isVisible);\n\n if (inputs.length === 1) {\n attemptFocus(inputs[0]);\n }\n }\n },\n render: function render(h) {\n var state = this.computedState,\n feedbackAriaLive = this.feedbackAriaLive,\n isHorizontal = this.isHorizontal,\n labelFor = this.labelFor,\n normalizeSlot = this.normalizeSlot,\n safeId = this.safeId,\n tooltip = this.tooltip;\n var id = safeId();\n var isFieldset = !labelFor;\n var $label = h();\n var labelContent = normalizeSlot(SLOT_NAME_LABEL) || this.label;\n var labelId = labelContent ? safeId('_BV_label_') : null;\n\n if (labelContent || isHorizontal) {\n var labelSize = this.labelSize,\n labelColProps = this.labelColProps;\n var labelTag = isFieldset ? 'legend' : 'label';\n\n if (this.labelSrOnly) {\n if (labelContent) {\n $label = h(labelTag, {\n class: 'sr-only',\n attrs: {\n id: labelId,\n for: labelFor || null\n }\n }, [labelContent]);\n }\n\n $label = h(isHorizontal ? BCol : 'div', {\n props: isHorizontal ? labelColProps : {}\n }, [$label]);\n } else {\n $label = h(isHorizontal ? BCol : labelTag, {\n on: isFieldset ? {\n click: this.onLegendClick\n } : {},\n props: isHorizontal ? _objectSpread(_objectSpread({}, labelColProps), {}, {\n tag: labelTag\n }) : {},\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: [// Hide the focus ring on the legend\n isFieldset ? 'bv-no-focus-ring' : '', // 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' : '', // Emulate label padding top of `0` on legend when not horizontal\n !isHorizontal && isFieldset ? 'pt-0' : '', // 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' : '', labelSize ? \"col-form-label-\".concat(labelSize) : '', this.labelAlignClasses, this.labelClass]\n }, [labelContent]);\n }\n }\n\n var $invalidFeedback = h();\n var invalidFeedbackContent = normalizeSlot(SLOT_NAME_INVALID_FEEDBACK) || this.invalidFeedback;\n var invalidFeedbackId = invalidFeedbackContent ? safeId('_BV_feedback_invalid_') : null;\n\n if (invalidFeedbackContent) {\n $invalidFeedback = h(BFormInvalidFeedback, {\n props: {\n ariaLive: feedbackAriaLive,\n id: invalidFeedbackId,\n role: feedbackAriaLive ? 'alert' : null,\n // If state is explicitly `false`, always show the feedback\n state: state,\n tooltip: tooltip\n },\n attrs: {\n tabindex: invalidFeedbackContent ? '-1' : null\n }\n }, [invalidFeedbackContent]);\n }\n\n var $validFeedback = h();\n var validFeedbackContent = normalizeSlot(SLOT_NAME_VALID_FEEDBACK) || this.validFeedback;\n var validFeedbackId = validFeedbackContent ? safeId('_BV_feedback_valid_') : null;\n\n if (validFeedbackContent) {\n $validFeedback = h(BFormValidFeedback, {\n props: {\n ariaLive: feedbackAriaLive,\n id: validFeedbackId,\n role: feedbackAriaLive ? 'alert' : null,\n // If state is explicitly `true`, always show the feedback\n state: state,\n tooltip: tooltip\n },\n attrs: {\n tabindex: validFeedbackContent ? '-1' : null\n }\n }, [validFeedbackContent]);\n }\n\n var $description = h();\n var descriptionContent = normalizeSlot(SLOT_NAME_DESCRIPTION) || this.description;\n var descriptionId = descriptionContent ? safeId('_BV_description_') : null;\n\n if (descriptionContent) {\n $description = h(BFormText, {\n attrs: {\n id: descriptionId,\n tabindex: '-1'\n }\n }, [descriptionContent]);\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\n\n var ariaDescribedby = this.ariaDescribedby = [descriptionId, state === false ? invalidFeedbackId : null, state === true ? validFeedbackId : null].filter(identity).join(' ') || null;\n var $content = h(isHorizontal ? BCol : 'div', {\n props: isHorizontal ? this.contentColProps : {},\n ref: 'content'\n }, [normalizeSlot(SLOT_NAME_DEFAULT, {\n ariaDescribedby: ariaDescribedby,\n descriptionId: descriptionId,\n id: id,\n labelId: labelId\n }) || h(), $invalidFeedback, $validFeedback, $description]); // 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\n return h(isFieldset ? 'fieldset' : isHorizontal ? BFormRow : 'div', {\n staticClass: 'form-group',\n class: [{\n 'was-validated': this.validated\n }, this.stateClass],\n attrs: {\n id: 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 }, isHorizontal && isFieldset ? [h(BFormRow, [$label, $content])] : [$label, $content]);\n }\n};","const capitalizeFirstLetter = value => value.charAt(0).toUpperCase() + value.slice(1)\n\nexport default capitalizeFirstLetter\n","// Localization utilities\nimport { RX_STRIP_LOCALE_MODS } from '../constants/regex';\nimport { arrayIncludes } from './array';\nimport { toString } from './string'; // Languages that are RTL\n\nvar RTL_LANGS = ['ar', 'az', 'ckb', 'fa', 'he', 'ks', 'lrc', 'mzn', 'ps', 'sd', 'te', 'ug', 'ur', 'yi'].map(function (locale) {\n return locale.toLowerCase();\n}); // Returns true if the locale is RTL\n\nexport var isLocaleRTL = function isLocaleRTL(locale) {\n // Determines if the locale is RTL (only single locale supported)\n var parts = toString(locale).toLowerCase().replace(RX_STRIP_LOCALE_MODS, '').split('-');\n var locale1 = parts.slice(0, 2).join('-');\n var locale2 = parts[0];\n return arrayIncludes(RTL_LANGS, locale1) || arrayIncludes(RTL_LANGS, locale2);\n};","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { 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'; // --- Props ---\n\nexport var props = makePropsConfigurable({\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}, NAME_FORM_TEXT); // --- Main component ---\n// @vue/component\n\nexport var BFormText = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_TEXT,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n return h(props.tag, mergeData(data, {\n class: _defineProperty({\n 'form-text': !props.inline\n }, \"text-\".concat(props.textVariant), props.textVariant),\n attrs: {\n id: props.id\n }\n }), children);\n }\n});","export var PLACEMENT_TOP_START = 'top-start';\nexport var PLACEMENT_TOP_END = 'top-end';\nexport var PLACEMENT_BOTTOM_START = 'bottom-start';\nexport var PLACEMENT_BOTTOM_END = 'bottom-end';\nexport var PLACEMENT_RIGHT_START = 'right-start';\nexport var PLACEMENT_RIGHT_END = 'right-end';\nexport var PLACEMENT_LEFT_START = 'left-start';\nexport var PLACEMENT_LEFT_END = 'left-end';","import { Vue } from '../vue';\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events';\nimport { contains } from '../utils/dom';\nimport { eventOn, eventOff } from '../utils/events'; // @vue/component\n\nexport var clickOutMixin = Vue.extend({\n data: function data() {\n return {\n listenForClickOut: false\n };\n },\n watch: {\n listenForClickOut: function listenForClickOut(newValue, oldValue) {\n if (newValue !== oldValue) {\n eventOff(this.clickOutElement, this.clickOutEventName, this._clickOutHandler, EVENT_OPTIONS_NO_CAPTURE);\n\n if (newValue) {\n eventOn(this.clickOutElement, this.clickOutEventName, this._clickOutHandler, EVENT_OPTIONS_NO_CAPTURE);\n }\n }\n }\n },\n beforeCreate: function beforeCreate() {\n // Declare non-reactive properties\n this.clickOutElement = null;\n this.clickOutEventName = null;\n },\n mounted: function mounted() {\n if (!this.clickOutElement) {\n this.clickOutElement = document;\n }\n\n if (!this.clickOutEventName) {\n this.clickOutEventName = 'click';\n }\n\n if (this.listenForClickOut) {\n eventOn(this.clickOutElement, this.clickOutEventName, this._clickOutHandler, EVENT_OPTIONS_NO_CAPTURE);\n }\n },\n beforeDestroy: function beforeDestroy() {\n eventOff(this.clickOutElement, this.clickOutEventName, this._clickOutHandler, EVENT_OPTIONS_NO_CAPTURE);\n },\n methods: {\n isClickOut: function isClickOut(event) {\n return !contains(this.$el, event.target);\n },\n _clickOutHandler: function _clickOutHandler(event) {\n if (this.clickOutHandler && this.isClickOut(event)) {\n this.clickOutHandler(event);\n }\n }\n }\n});","import { Vue } from '../vue';\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events';\nimport { eventOn, eventOff } from '../utils/events'; // @vue/component\n\nexport var focusInMixin = Vue.extend({\n data: function data() {\n return {\n listenForFocusIn: false\n };\n },\n watch: {\n listenForFocusIn: function listenForFocusIn(newValue, oldValue) {\n if (newValue !== oldValue) {\n eventOff(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE);\n\n if (newValue) {\n eventOn(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE);\n }\n }\n }\n },\n beforeCreate: function beforeCreate() {\n // Declare non-reactive properties\n this.focusInElement = null;\n },\n mounted: function mounted() {\n if (!this.focusInElement) {\n this.focusInElement = document;\n }\n\n if (this.listenForFocusIn) {\n eventOn(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE);\n }\n },\n beforeDestroy: function beforeDestroy() {\n eventOff(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE);\n },\n methods: {\n _focusInHandler: function _focusInHandler(event) {\n if (this.focusInHandler) {\n this.focusInHandler(event);\n }\n }\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport Popper from 'popper.js';\nimport { Vue } from '../vue';\nimport { NAME_DROPDOWN } from '../constants/components';\nimport { EVENT_NAME_CLICK, EVENT_NAME_HIDDEN, EVENT_NAME_HIDE, EVENT_NAME_SHOW, EVENT_NAME_SHOWN, EVENT_NAME_TOGGLE } from '../constants/events';\nimport { CODE_DOWN, CODE_ENTER, CODE_ESC, CODE_SPACE, CODE_UP } from '../constants/key-codes';\nimport { PLACEMENT_TOP_START, PLACEMENT_TOP_END, PLACEMENT_BOTTOM_START, PLACEMENT_BOTTOM_END, PLACEMENT_RIGHT_START, PLACEMENT_LEFT_START } from '../constants/popper';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_OBJECT, PROP_TYPE_STRING } 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'; // --- Constants ---\n\nvar ROOT_EVENT_NAME_SHOWN = getRootEventName(NAME_DROPDOWN, EVENT_NAME_SHOWN);\nvar ROOT_EVENT_NAME_HIDDEN = getRootEventName(NAME_DROPDOWN, EVENT_NAME_HIDDEN); // CSS selectors\n\nvar SELECTOR_FORM_CHILD = '.dropdown form';\nvar SELECTOR_ITEM = ['.dropdown-item', '.b-dropdown-form'].map(function (selector) {\n return \"\".concat(selector, \":not(.disabled):not([disabled])\");\n}).join(', '); // --- Helper methods ---\n// Return an array of visible items\n\nvar filterVisibles = function filterVisibles(els) {\n return (els || []).filter(isVisible);\n}; // --- Props ---\n\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, 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})), NAME_DROPDOWN); // --- Mixin ---\n// @vue/component\n\nexport var dropdownMixin = Vue.extend({\n mixins: [idMixin, listenOnRootMixin, clickOutMixin, focusInMixin],\n provide: function provide() {\n return {\n bvDropdown: this\n };\n },\n inject: {\n bvNavbar: {\n default: null\n }\n },\n props: props,\n data: function data() {\n return {\n visible: false,\n visibleChangePrevented: false\n };\n },\n computed: {\n inNavbar: function inNavbar() {\n return !isNull(this.bvNavbar);\n },\n toggler: function toggler() {\n var toggle = this.$refs.toggle;\n return toggle ? toggle.$el || toggle : null;\n },\n directionClass: function 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\n return '';\n },\n boundaryClass: function boundaryClass() {\n // Position `static` is needed to allow menu to \"breakout\" of the `scrollParent`\n // boundaries when boundary is anything other than `scrollParent`\n // See: https://github.com/twbs/bootstrap/issues/24251#issuecomment-341413786\n return this.boundary !== 'scrollParent' && !this.inNavbar ? 'position-static' : '';\n }\n },\n watch: {\n visible: function visible(newValue, oldValue) {\n if (this.visibleChangePrevented) {\n this.visibleChangePrevented = false;\n return;\n }\n\n if (newValue !== oldValue) {\n var eventName = newValue ? EVENT_NAME_SHOW : EVENT_NAME_HIDE;\n var 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\n if (bvEvent.defaultPrevented) {\n // Reset value and exit if canceled\n this.visibleChangePrevented = true;\n this.visible = oldValue; // Just in case a child element triggered `this.hide(true)`\n\n this.$off(EVENT_NAME_HIDDEN, this.focusToggler);\n return;\n }\n\n if (newValue) {\n this.showMenu();\n } else {\n this.hideMenu();\n }\n }\n },\n disabled: function 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: function created() {\n // Create private non-reactive props\n this.$_popper = null;\n this.$_hideTimeout = null;\n },\n\n /* istanbul ignore next */\n deactivated: function deactivated() {\n // In case we are inside a ``\n this.visible = false;\n this.whileOpenListen(false);\n this.destroyPopper();\n },\n beforeDestroy: function beforeDestroy() {\n this.visible = false;\n this.whileOpenListen(false);\n this.destroyPopper();\n this.clearHideTimeout();\n },\n methods: {\n // Event emitter\n emitEvent: function emitEvent(bvEvent) {\n var type = bvEvent.type;\n this.emitOnRoot(getRootEventName(NAME_DROPDOWN, type), bvEvent);\n this.$emit(type, bvEvent);\n },\n showMenu: function showMenu() {\n var _this = this;\n\n if (this.disabled) {\n /* istanbul ignore next */\n return;\n } // Only instantiate Popper.js when dropdown is not in ``\n\n\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 var el = this.dropup && this.right || this.split ? this.$el : this.$refs.toggle; // Make sure we have a reference to an element, not a component!\n\n el = el.$el || el; // Instantiate Popper.js\n\n this.createPopper(el);\n }\n } // Ensure other menus are closed\n\n\n this.emitOnRoot(ROOT_EVENT_NAME_SHOWN, this); // Enable listeners\n\n this.whileOpenListen(true); // Wrap in `$nextTick()` to ensure menu is fully rendered/shown\n\n this.$nextTick(function () {\n // Focus on the menu container on show\n _this.focusMenu(); // Emit the shown event\n\n\n _this.$emit(EVENT_NAME_SHOWN);\n });\n },\n hideMenu: function 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: function 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: function 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: function updatePopper() {\n try {\n this.$_popper.scheduleUpdate();\n } catch (_unused) {}\n },\n clearHideTimeout: function clearHideTimeout() {\n clearTimeout(this.$_hideTimeout);\n this.$_hideTimeout = null;\n },\n getPopperConfig: function getPopperConfig() {\n var placement = PLACEMENT_BOTTOM_START;\n\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\n var popperConfig = {\n placement: placement,\n modifiers: {\n offset: {\n offset: this.offset || 0\n },\n flip: {\n enabled: !this.noFlip\n }\n }\n };\n var boundariesElement = this.boundary;\n\n if (boundariesElement) {\n popperConfig.modifiers.preventOverflow = {\n boundariesElement: boundariesElement\n };\n }\n\n return mergeDeep(popperConfig, this.popperOpts || {});\n },\n // Turn listeners on/off while open\n whileOpenListen: function whileOpenListen(isOpen) {\n // Hide the dropdown when clicked outside\n this.listenForClickOut = isOpen; // Hide the dropdown when it loses focus\n\n this.listenForFocusIn = isOpen; // Hide the dropdown when another dropdown is opened\n\n var method = isOpen ? '$on' : '$off';\n this.$root[method](ROOT_EVENT_NAME_SHOWN, this.rootCloseListener);\n },\n rootCloseListener: function rootCloseListener(vm) {\n if (vm !== this) {\n this.visible = false;\n }\n },\n // Public method to show dropdown\n show: function show() {\n var _this2 = this;\n\n if (this.disabled) {\n return;\n } // Wrap in a `requestAF()` to allow any previous\n // click handling to occur first\n\n\n requestAF(function () {\n _this2.visible = true;\n });\n },\n // Public method to hide dropdown\n hide: function hide() {\n var refocus = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n /* istanbul ignore next */\n if (this.disabled) {\n return;\n }\n\n this.visible = false;\n\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: function toggle(event) {\n event = event || {}; // Early exit when not a click event or ENTER, SPACE or DOWN were pressed\n\n var _event = event,\n type = _event.type,\n keyCode = _event.keyCode;\n\n if (type !== 'click' && !(type === 'keydown' && [CODE_ENTER, CODE_SPACE, CODE_DOWN].indexOf(keyCode) !== -1)) {\n /* istanbul ignore next */\n return;\n }\n /* istanbul ignore next */\n\n\n if (this.disabled) {\n this.visible = false;\n return;\n }\n\n this.$emit(EVENT_NAME_TOGGLE, event);\n stopEvent(event); // Toggle visibility\n\n if (this.visible) {\n this.hide(true);\n } else {\n this.show();\n }\n },\n // Mousedown handler for the toggle\n\n /* istanbul ignore next */\n onMousedown: function 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, {\n propagation: false\n });\n },\n // Called from dropdown menu context\n onKeydown: function onKeydown(event) {\n var keyCode = event.keyCode;\n\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: function onEsc(event) {\n if (this.visible) {\n this.visible = false;\n stopEvent(event); // Return focus to original trigger button\n\n this.$once(EVENT_NAME_HIDDEN, this.focusToggler);\n }\n },\n // Called only in split button mode, for the split button\n onSplitClick: function onSplitClick(event) {\n /* istanbul ignore next */\n if (this.disabled) {\n this.visible = false;\n return;\n }\n\n this.$emit(EVENT_NAME_CLICK, event);\n },\n // Shared hide handler between click-out and focus-in events\n hideHandler: function hideHandler(event) {\n var _this3 = this;\n\n var target = event.target;\n\n if (this.visible && !contains(this.$refs.menu, target) && !contains(this.toggler, target)) {\n this.clearHideTimeout();\n this.$_hideTimeout = setTimeout(function () {\n return _this3.hide();\n }, this.inNavbar ? 300 : 0);\n }\n },\n // Document click-out listener\n clickOutHandler: function clickOutHandler(event) {\n this.hideHandler(event);\n },\n // Document focus-in listener\n focusInHandler: function focusInHandler(event) {\n this.hideHandler(event);\n },\n // Keyboard nav\n focusNext: function focusNext(event, up) {\n var _this4 = this;\n\n // Ignore key up/down on form elements\n var target = event.target;\n\n if (!this.visible || event && closest(SELECTOR_FORM_CHILD, target)) {\n /* istanbul ignore next: should never happen */\n return;\n }\n\n stopEvent(event);\n this.$nextTick(function () {\n var items = _this4.getItems();\n\n if (items.length < 1) {\n /* istanbul ignore next: should never happen */\n return;\n }\n\n var index = items.indexOf(target);\n\n if (up && index > 0) {\n index--;\n } else if (!up && index < items.length - 1) {\n index++;\n }\n\n if (index < 0) {\n /* istanbul ignore next: should never happen */\n index = 0;\n }\n\n _this4.focusItem(index, items);\n });\n },\n focusItem: function focusItem(index, items) {\n var el = items.find(function (el, i) {\n return i === index;\n });\n attemptFocus(el);\n },\n getItems: function getItems() {\n // Get all items\n return filterVisibles(selectAll(SELECTOR_ITEM, this.$refs.menu));\n },\n focusMenu: function focusMenu() {\n attemptFocus(this.$refs.menu);\n },\n focusToggler: function focusToggler() {\n var _this5 = this;\n\n this.$nextTick(function () {\n attemptFocus(_this5.toggler);\n });\n }\n }\n});","import capitalizeFirstLetter from './capitalizeFirstLetter'\n\nconst addSpaceToString = value => (\n capitalizeFirstLetter(value.replace(/([A-Z])/g, ' $1').trim())\n)\n\nexport default addSpaceToString\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AuditTrail.vue?vue&type=style&index=0&id=6d56ea70&lang=scss&scoped=true&\"","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { 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'; // --- Constants ---\n// Base attributes needed on all icons\n\nvar baseAttrs = {\n viewBox: '0 0 16 16',\n width: '1em',\n height: '1em',\n focusable: 'false',\n role: 'img',\n 'aria-label': 'icon'\n}; // Attributes that are nulled out when stacked\n\nvar stackedAttrs = {\n width: null,\n height: null,\n focusable: null,\n role: null,\n 'aria-label': null\n}; // --- Props ---\n\nexport var 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}; // --- Main component ---\n// Shared private base component to reduce bundle/runtime size\n// @vue/component\n\nexport var BVIconBase = /*#__PURE__*/Vue.extend({\n name: NAME_ICON_BASE,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _class;\n\n var data = _ref.data,\n props = _ref.props,\n children = _ref.children;\n var animation = props.animation,\n content = props.content,\n flipH = props.flipH,\n flipV = props.flipV,\n stacked = props.stacked,\n title = props.title,\n variant = props.variant;\n var fontScale = mathMax(toFloat(props.fontScale, 1), 0) || 1;\n var scale = mathMax(toFloat(props.scale, 1), 0) || 1;\n var rotate = toFloat(props.rotate, 0);\n var shiftH = toFloat(props.shiftH, 0);\n var shiftV = toFloat(props.shiftV, 0); // 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\n var hasScale = flipH || flipV || scale !== 1;\n var hasTransforms = hasScale || rotate;\n var hasShift = shiftH || shiftV;\n var hasContent = !isUndefinedOrNull(content);\n var transforms = [hasTransforms ? 'translate(8 8)' : null, hasScale ? \"scale(\".concat((flipH ? -1 : 1) * scale, \" \").concat((flipV ? -1 : 1) * scale, \")\") : null, rotate ? \"rotate(\".concat(rotate, \")\") : null, hasTransforms ? 'translate(-8 -8)' : null].filter(identity); // We wrap the content in a `` for handling the transforms (except shift)\n\n var $inner = h('g', {\n attrs: {\n transform: transforms.join(' ') || null\n },\n domProps: hasContent ? {\n innerHTML: content || ''\n } : {}\n }, children); // If needed, we wrap in an additional `` in order to handle the shifting\n\n if (hasShift) {\n $inner = h('g', {\n attrs: {\n transform: \"translate(\".concat(16 * shiftH / 16, \" \").concat(-16 * shiftV / 16, \")\")\n }\n }, [$inner]);\n }\n\n if (stacked) {\n // Wrap in an additional `` for proper\n // animation handling if stacked\n $inner = h('g', {}, [$inner]);\n }\n\n var $title = title ? h('title', title) : null;\n return h('svg', mergeData({\n staticClass: 'b-icon bi',\n class: (_class = {}, _defineProperty(_class, \"text-\".concat(variant), variant), _defineProperty(_class, \"b-icon-animation-\".concat(animation), animation), _class),\n attrs: baseAttrs,\n style: stacked ? {} : {\n fontSize: fontScale === 1 ? null : \"\".concat(fontScale * 100, \"%\")\n }\n }, // Merge in user supplied data\n data, // If icon is stacked, null out some attrs\n stacked ? {\n attrs: stackedAttrs\n } : {}, // These cannot be overridden by users\n {\n attrs: {\n xmlns: stacked ? null : 'http://www.w3.org/2000/svg',\n fill: 'currentColor'\n }\n }), [$title, $inner]);\n }\n});","import { Vue } from '../vue';\nimport { PROP_TYPE_STRING } from '../constants/props';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n size: makeProp(PROP_TYPE_STRING)\n}, 'formControls'); // --- Mixin ---\n// @vue/component\n\nexport var formSizeMixin = Vue.extend({\n props: props,\n computed: {\n sizeFormClass: function sizeFormClass() {\n return [this.size ? \"form-control-\".concat(this.size) : null];\n }\n }\n});","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(255, 255, 255, 0.15)'),expression:\"'rgba(255, 255, 255, 0.15)'\",modifiers:{\"400\":true}}],attrs:{\"variant\":_vm.variant,\"disabled\":_vm.disabled,\"size\":_vm.size,\"block\":_vm.block},on:{\"click\":_vm.onClick}},[_c('feather-icon',{staticClass:\"mr-50\",attrs:{\"icon\":_vm.icon,\"show-icon\":_vm.showIcon}}),(_vm.loading)?_c('b-spinner',{attrs:{\"small\":\"\"}}):_vm._e(),_c('span',{staticClass:\"align-middle\"},[_vm._v(\" \"+_vm._s(_vm.label))])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n {{ label }}\n \n \n\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Button.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Button.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Button.vue?vue&type=template&id=501d0161&\"\nimport script from \"./Button.vue?vue&type=script&lang=js&\"\nexport * from \"./Button.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { 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'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, 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})), NAME_CARD_HEADER); // --- Main component ---\n// @vue/component\n\nexport var BCardHeader = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_HEADER,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _ref2;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var headerBgVariant = props.headerBgVariant,\n headerBorderVariant = props.headerBorderVariant,\n headerTextVariant = props.headerTextVariant;\n return h(props.headerTag, mergeData(data, {\n staticClass: 'card-header',\n class: [props.headerClass, (_ref2 = {}, _defineProperty(_ref2, \"bg-\".concat(headerBgVariant), headerBgVariant), _defineProperty(_ref2, \"border-\".concat(headerBorderVariant), headerBorderVariant), _defineProperty(_ref2, \"text-\".concat(headerTextVariant), headerTextVariant), _ref2)],\n domProps: children ? {} : htmlOrText(props.headerHtml, props.header)\n }), children);\n }\n});","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mx-2 mb-2\"},[_c('b-row',[_c('b-col',{staticClass:\"d-flex align-items-center justify-content-center justify-content-sm-start\",attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('span',{staticClass:\"text-muted\"},[_vm._v(_vm._s(_vm.$t('Showing'))+\" \"+_vm._s(_vm.from)+\" \"+_vm._s(_vm.$t('to'))+\" \"+_vm._s(_vm.to)+\" \"+_vm._s(_vm.$t('of'))+\" \"+_vm._s(_vm.totalRows)+\" \"+_vm._s(_vm.$t('entries'))+\" \")])]),_c('b-col',{staticClass:\"d-flex align-items-center justify-content-center justify-content-sm-end\",attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('Pagination',{attrs:{\"total-rows\":_vm.totalRows,\"per-page\":_vm.perPage},model:{value:(_vm.currentPage),callback:function ($$v) {_vm.currentPage=$$v},expression:\"currentPage\"}})],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-pagination',{staticClass:\"mb-0 mt-1 mt-sm-0\",attrs:{\"total-rows\":_vm.totalRows,\"per-page\":_vm.perPage,\"first-number\":\"\",\"last-number\":\"\",\"prev-class\":\"prev-item\",\"next-class\":\"next-item\"},scopedSlots:_vm._u([{key:\"prev-text\",fn:function(){return [_c('feather-icon',{attrs:{\"icon\":\"ChevronLeftIcon\",\"size\":\"18\"}})]},proxy:true},{key:\"next-text\",fn:function(){return [_c('feather-icon',{attrs:{\"icon\":\"ChevronRightIcon\",\"size\":\"18\"}})]},proxy:true}]),model:{value:(_vm.currentPage),callback:function ($$v) {_vm.currentPage=$$v},expression:\"currentPage\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n \n\n \n \n \n \n \n\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Pagination.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Pagination.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Pagination.vue?vue&type=template&id=24a69b3b&\"\nimport script from \"./Pagination.vue?vue&type=script&lang=js&\"\nexport * from \"./Pagination.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n \n \n\n \n {{ $t('Showing') }} {{ from }} {{ $t('to') }} {{ to }} {{ $t('of') }} {{ totalRows }} {{ $t('entries') }} \n \n\n \n \n \n \n\n \n \n\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TablePagination.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TablePagination.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TablePagination.vue?vue&type=template&id=77d3811a&\"\nimport script from \"./TablePagination.vue?vue&type=script&lang=js&\"\nexport * from \"./TablePagination.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectField.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AuditTrail.vue?vue&type=style&index=1&lang=scss&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableEntries.vue?vue&type=style&index=1&id=bcfccc92&lang=scss&scoped=true&\"","/* 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'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n // Tri-state prop: true, false, null (or undefined)\n state: makeProp(PROP_TYPE_BOOLEAN, null)\n}, 'formState'); // --- Mixin ---\n// @vue/component\n\nexport var formStateMixin = Vue.extend({\n props: props,\n computed: {\n computedState: function computedState() {\n // If not a boolean, ensure that value is null\n return isBoolean(this.state) ? this.state : null;\n },\n stateClass: function stateClass() {\n var state = this.computedState;\n return state === true ? 'is-valid' : state === false ? 'is-invalid' : null;\n },\n computedAriaInvalid: function computedAriaInvalid() {\n var ariaInvalid = this.ariaInvalid;\n\n if (ariaInvalid === true || ariaInvalid === 'true' || ariaInvalid === '') {\n return 'true';\n }\n\n return this.computedState === false ? 'true' : ariaInvalid;\n }\n }\n});","import { Vue } from '../vue';\nimport { NAME_CARD } from '../constants/components';\nimport { PROP_TYPE_STRING } from '../constants/props';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\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}, NAME_CARD); // --- Mixin ---\n// @vue/component\n\nexport var cardMixin = Vue.extend({\n props: props\n});","// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectField.vue?vue&type=style&index=1&id=4d9d6277&lang=scss&scoped=true&\"","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'; // --- Constants ---\n\nvar SELECTOR = 'input, textarea, select'; // --- Props ---\n\nexport var props = makePropsConfigurable({\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}, 'formControls'); // --- Mixin ---\n// @vue/component\n\nexport var formControlMixin = Vue.extend({\n props: props,\n mounted: function mounted() {\n this.handleAutofocus();\n },\n\n /* istanbul ignore next */\n activated: function activated() {\n this.handleAutofocus();\n },\n methods: {\n handleAutofocus: function handleAutofocus() {\n var _this = this;\n\n this.$nextTick(function () {\n requestAF(function () {\n var el = _this.$el;\n\n if (_this.autofocus && isVisible(el)) {\n if (!matches(el, SELECTOR)) {\n el = select(SELECTOR, el);\n }\n\n attemptFocus(el);\n }\n });\n });\n }\n }\n});","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('validation-provider',{attrs:{\"name\":_vm.errorName,\"rules\":_vm.rules},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('b-form-group',{attrs:{\"state\":errors.length > 0 ? false:null}},[_c('label',{attrs:{\"for\":_vm.id}},[_vm._v(_vm._s(_vm.label))]),_c('v-select',{attrs:{\"id\":_vm.id,\"dir\":_vm.$store.state.appConfig.isRTL ? 'rtl' : 'ltr',\"options\":_vm.options,\"placeholder\":_vm.placeholder,\"label\":_vm.item,\"clearable\":_vm.clearable,\"value\":_vm.value,\"disabled\":_vm.readonly,\"reduce\":_vm.reduce,\"multiple\":_vm.multiple},on:{\"input\":_vm.setSelected},scopedSlots:_vm._u([{key:\"spinner\",fn:function(ref){return [(_vm.loading)?_c('b-spinner',{attrs:{\"variant\":\"primary\",\"small\":\"\"}}):_vm._e()]}}],null,true),model:{value:(_vm.innerValue),callback:function ($$v) {_vm.innerValue=$$v},expression:\"innerValue\"}}),_c('b-form-invalid-feedback',{attrs:{\"state\":errors.length > 0 ? false:null}},[_vm._v(\"\\n \"+_vm._s(errors[0])+\"\\n \")])],1)]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n\n \n 0 ? false:null\"\n >\n {{ label }}\n \n \n \n \n \n\n 0 ? false:null\">\n {{ errors[0] }}\n \n \n \n\n \n\n\n\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectField.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectField.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SelectField.vue?vue&type=template&id=4d9d6277&scoped=true&\"\nimport script from \"./SelectField.vue?vue&type=script&lang=js&\"\nexport * from \"./SelectField.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SelectField.vue?vue&type=style&index=0&lang=scss&\"\nimport style1 from \"./SelectField.vue?vue&type=style&index=1&id=4d9d6277&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4d9d6277\",\n null\n \n)\n\nexport default component.exports","/**!\n * @fileOverview Kickass library to create and place poppers near their reference elements.\n * @version 1.16.1\n * @license\n * Copyright (c) 2016 Federico Zivolo and contributors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';\n\nvar timeoutDuration = function () {\n var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];\n for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {\n if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {\n return 1;\n }\n }\n return 0;\n}();\n\nfunction microtaskDebounce(fn) {\n var called = false;\n return function () {\n if (called) {\n return;\n }\n called = true;\n window.Promise.resolve().then(function () {\n called = false;\n fn();\n });\n };\n}\n\nfunction taskDebounce(fn) {\n var scheduled = false;\n return function () {\n if (!scheduled) {\n scheduled = true;\n setTimeout(function () {\n scheduled = false;\n fn();\n }, timeoutDuration);\n }\n };\n}\n\nvar supportsMicroTasks = isBrowser && window.Promise;\n\n/**\n* Create a debounced version of a method, that's asynchronously deferred\n* but called in the minimum time possible.\n*\n* @method\n* @memberof Popper.Utils\n* @argument {Function} fn\n* @returns {Function}\n*/\nvar debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce;\n\n/**\n * Check if the given variable is a function\n * @method\n * @memberof Popper.Utils\n * @argument {Any} functionToCheck - variable to check\n * @returns {Boolean} answer to: is a function?\n */\nfunction isFunction(functionToCheck) {\n var getType = {};\n return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';\n}\n\n/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nfunction getStyleComputedProperty(element, property) {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n var window = element.ownerDocument.defaultView;\n var css = window.getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n\n/**\n * Returns the parentNode or the host of the element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} parent\n */\nfunction getParentNode(element) {\n if (element.nodeName === 'HTML') {\n return element;\n }\n return element.parentNode || element.host;\n}\n\n/**\n * Returns the scrolling parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} scroll parent\n */\nfunction getScrollParent(element) {\n // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n if (!element) {\n return document.body;\n }\n\n switch (element.nodeName) {\n case 'HTML':\n case 'BODY':\n return element.ownerDocument.body;\n case '#document':\n return element.body;\n }\n\n // Firefox want us to check `-x` and `-y` variations as well\n\n var _getStyleComputedProp = getStyleComputedProperty(element),\n overflow = _getStyleComputedProp.overflow,\n overflowX = _getStyleComputedProp.overflowX,\n overflowY = _getStyleComputedProp.overflowY;\n\n if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {\n return element;\n }\n\n return getScrollParent(getParentNode(element));\n}\n\n/**\n * Returns the reference node of the reference object, or the reference object itself.\n * @method\n * @memberof Popper.Utils\n * @param {Element|Object} reference - the reference element (the popper will be relative to this)\n * @returns {Element} parent\n */\nfunction getReferenceNode(reference) {\n return reference && reference.referenceNode ? reference.referenceNode : reference;\n}\n\nvar isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nvar isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nfunction isIE(version) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n\n/**\n * Returns the offset parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} offset parent\n */\nfunction getOffsetParent(element) {\n if (!element) {\n return document.documentElement;\n }\n\n var noOffsetParent = isIE(10) ? document.body : null;\n\n // NOTE: 1 DOM access here\n var offsetParent = element.offsetParent || null;\n // Skip hidden elements which don't have an offsetParent\n while (offsetParent === noOffsetParent && element.nextElementSibling) {\n offsetParent = (element = element.nextElementSibling).offsetParent;\n }\n\n var nodeName = offsetParent && offsetParent.nodeName;\n\n if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n return element ? element.ownerDocument.documentElement : document.documentElement;\n }\n\n // .offsetParent will return the closest TH, TD or TABLE in case\n // no offsetParent is present, I hate this job...\n if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {\n return getOffsetParent(offsetParent);\n }\n\n return offsetParent;\n}\n\nfunction isOffsetContainer(element) {\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY') {\n return false;\n }\n return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;\n}\n\n/**\n * Finds the root node (document, shadowDOM root) of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} node\n * @returns {Element} root node\n */\nfunction getRoot(node) {\n if (node.parentNode !== null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\n/**\n * Finds the offset parent common to the two provided nodes\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element1\n * @argument {Element} element2\n * @returns {Element} common offset parent\n */\nfunction findCommonOffsetParent(element1, element2) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n return document.documentElement;\n }\n\n // Here we make sure to give as \"start\" the element that comes first in the DOM\n var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;\n var start = order ? element1 : element2;\n var end = order ? element2 : element1;\n\n // Get common ancestor container\n var range = document.createRange();\n range.setStart(start, 0);\n range.setEnd(end, 0);\n var commonAncestorContainer = range.commonAncestorContainer;\n\n // Both nodes are inside #document\n\n if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {\n if (isOffsetContainer(commonAncestorContainer)) {\n return commonAncestorContainer;\n }\n\n return getOffsetParent(commonAncestorContainer);\n }\n\n // one of the nodes is inside shadowDOM, find which one\n var element1root = getRoot(element1);\n if (element1root.host) {\n return findCommonOffsetParent(element1root.host, element2);\n } else {\n return findCommonOffsetParent(element1, getRoot(element2).host);\n }\n}\n\n/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} side `top` or `left`\n * @returns {number} amount of scrolled pixels\n */\nfunction getScroll(element) {\n var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';\n\n var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n var html = element.ownerDocument.documentElement;\n var scrollingElement = element.ownerDocument.scrollingElement || html;\n return scrollingElement[upperSide];\n }\n\n return element[upperSide];\n}\n\n/*\n * Sum or subtract the element scroll values (left and top) from a given rect object\n * @method\n * @memberof Popper.Utils\n * @param {Object} rect - Rect object you want to change\n * @param {HTMLElement} element - The element from the function reads the scroll values\n * @param {Boolean} subtract - set to true if you want to subtract the scroll values\n * @return {Object} rect - The modifier rect object\n */\nfunction includeScroll(rect, element) {\n var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n var modifier = subtract ? -1 : 1;\n rect.top += scrollTop * modifier;\n rect.bottom += scrollTop * modifier;\n rect.left += scrollLeft * modifier;\n rect.right += scrollLeft * modifier;\n return rect;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nfunction getBordersSize(styles, axis) {\n var sideA = axis === 'x' ? 'Left' : 'Top';\n var sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n\n return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']);\n}\n\nfunction getSize(axis, body, html, computedStyle) {\n return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0);\n}\n\nfunction getWindowSizes(document) {\n var body = document.body;\n var html = document.documentElement;\n var computedStyle = isIE(10) && getComputedStyle(html);\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle)\n };\n}\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n\n\n\nvar defineProperty = function (obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n};\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nfunction getClientRect(offsets) {\n return _extends({}, offsets, {\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height\n });\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nfunction getBoundingClientRect(element) {\n var rect = {};\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n } else {\n rect = element.getBoundingClientRect();\n }\n } catch (e) {}\n\n var result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top\n };\n\n // subtract scrollbar size from sizes\n var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};\n var width = sizes.width || element.clientWidth || result.width;\n var height = sizes.height || element.clientHeight || result.height;\n\n var horizScrollbar = element.offsetWidth - width;\n var vertScrollbar = element.offsetHeight - height;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n var styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result);\n}\n\nfunction getOffsetRectRelativeToArbitraryNode(children, parent) {\n var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var isIE10 = isIE(10);\n var isHTML = parent.nodeName === 'HTML';\n var childrenRect = getBoundingClientRect(children);\n var parentRect = getBoundingClientRect(parent);\n var scrollParent = getScrollParent(children);\n\n var styles = getStyleComputedProperty(parent);\n var borderTopWidth = parseFloat(styles.borderTopWidth);\n var borderLeftWidth = parseFloat(styles.borderLeftWidth);\n\n // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n if (fixedPosition && isHTML) {\n parentRect.top = Math.max(parentRect.top, 0);\n parentRect.left = Math.max(parentRect.left, 0);\n }\n var offsets = getClientRect({\n top: childrenRect.top - parentRect.top - borderTopWidth,\n left: childrenRect.left - parentRect.left - borderLeftWidth,\n width: childrenRect.width,\n height: childrenRect.height\n });\n offsets.marginTop = 0;\n offsets.marginLeft = 0;\n\n // Subtract margins of documentElement in case it's being used as parent\n // we do this only on HTML because it's the only element that behaves\n // differently when margins are applied to it. The margins are included in\n // the box of the documentElement, in the other cases not.\n if (!isIE10 && isHTML) {\n var marginTop = parseFloat(styles.marginTop);\n var marginLeft = parseFloat(styles.marginLeft);\n\n offsets.top -= borderTopWidth - marginTop;\n offsets.bottom -= borderTopWidth - marginTop;\n offsets.left -= borderLeftWidth - marginLeft;\n offsets.right -= borderLeftWidth - marginLeft;\n\n // Attach marginTop and marginLeft because in some circumstances we may need them\n offsets.marginTop = marginTop;\n offsets.marginLeft = marginLeft;\n }\n\n if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {\n offsets = includeScroll(offsets, parent);\n }\n\n return offsets;\n}\n\nfunction getViewportOffsetRectRelativeToArtbitraryNode(element) {\n var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var html = element.ownerDocument.documentElement;\n var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n var width = Math.max(html.clientWidth, window.innerWidth || 0);\n var height = Math.max(html.clientHeight, window.innerHeight || 0);\n\n var scrollTop = !excludeScroll ? getScroll(html) : 0;\n var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n\n var offset = {\n top: scrollTop - relativeOffset.top + relativeOffset.marginTop,\n left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,\n width: width,\n height: height\n };\n\n return getClientRect(offset);\n}\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {Element} customContainer\n * @returns {Boolean} answer to \"isFixed?\"\n */\nfunction isFixed(element) {\n var nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n if (getStyleComputedProperty(element, 'position') === 'fixed') {\n return true;\n }\n var parentNode = getParentNode(element);\n if (!parentNode) {\n return false;\n }\n return isFixed(parentNode);\n}\n\n/**\n * Finds the first parent of an element that has a transformed property defined\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} first transformed parent or documentElement\n */\n\nfunction getFixedPositionOffsetParent(element) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element || !element.parentElement || isIE()) {\n return document.documentElement;\n }\n var el = element.parentElement;\n while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n el = el.parentElement;\n }\n return el || document.documentElement;\n}\n\n/**\n * Computed the boundaries limits and return them\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} popper\n * @param {HTMLElement} reference\n * @param {number} padding\n * @param {HTMLElement} boundariesElement - Element used to define the boundaries\n * @param {Boolean} fixedPosition - Is in fixed position mode\n * @returns {Object} Coordinates of the boundaries\n */\nfunction getBoundaries(popper, reference, padding, boundariesElement) {\n var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n // NOTE: 1 DOM access here\n\n var boundaries = { top: 0, left: 0 };\n var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n\n // Handle viewport case\n if (boundariesElement === 'viewport') {\n boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n } else {\n // Handle other cases based on DOM element used as boundaries\n var boundariesNode = void 0;\n if (boundariesElement === 'scrollParent') {\n boundariesNode = getScrollParent(getParentNode(reference));\n if (boundariesNode.nodeName === 'BODY') {\n boundariesNode = popper.ownerDocument.documentElement;\n }\n } else if (boundariesElement === 'window') {\n boundariesNode = popper.ownerDocument.documentElement;\n } else {\n boundariesNode = boundariesElement;\n }\n\n var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);\n\n // In case of HTML, we need a different computation\n if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n var _getWindowSizes = getWindowSizes(popper.ownerDocument),\n height = _getWindowSizes.height,\n width = _getWindowSizes.width;\n\n boundaries.top += offsets.top - offsets.marginTop;\n boundaries.bottom = height + offsets.top;\n boundaries.left += offsets.left - offsets.marginLeft;\n boundaries.right = width + offsets.left;\n } else {\n // for all the other DOM elements, this one is good\n boundaries = offsets;\n }\n }\n\n // Add paddings\n padding = padding || 0;\n var isPaddingNumber = typeof padding === 'number';\n boundaries.left += isPaddingNumber ? padding : padding.left || 0;\n boundaries.top += isPaddingNumber ? padding : padding.top || 0;\n boundaries.right -= isPaddingNumber ? padding : padding.right || 0;\n boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0;\n\n return boundaries;\n}\n\nfunction getArea(_ref) {\n var width = _ref.width,\n height = _ref.height;\n\n return width * height;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n * @method\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {\n var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n\n if (placement.indexOf('auto') === -1) {\n return placement;\n }\n\n var boundaries = getBoundaries(popper, reference, padding, boundariesElement);\n\n var rects = {\n top: {\n width: boundaries.width,\n height: refRect.top - boundaries.top\n },\n right: {\n width: boundaries.right - refRect.right,\n height: boundaries.height\n },\n bottom: {\n width: boundaries.width,\n height: boundaries.bottom - refRect.bottom\n },\n left: {\n width: refRect.left - boundaries.left,\n height: boundaries.height\n }\n };\n\n var sortedAreas = Object.keys(rects).map(function (key) {\n return _extends({\n key: key\n }, rects[key], {\n area: getArea(rects[key])\n });\n }).sort(function (a, b) {\n return b.area - a.area;\n });\n\n var filteredAreas = sortedAreas.filter(function (_ref2) {\n var width = _ref2.width,\n height = _ref2.height;\n return width >= popper.clientWidth && height >= popper.clientHeight;\n });\n\n var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;\n\n var variation = placement.split('-')[1];\n\n return computedPlacement + (variation ? '-' + variation : '');\n}\n\n/**\n * Get offsets to the reference element\n * @method\n * @memberof Popper.Utils\n * @param {Object} state\n * @param {Element} popper - the popper element\n * @param {Element} reference - the reference element (the popper will be relative to this)\n * @param {Element} fixedPosition - is in fixed position mode\n * @returns {Object} An object containing the offsets which will be applied to the popper\n */\nfunction getReferenceOffsets(state, popper, reference) {\n var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);\n}\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nfunction getOuterSizes(element) {\n var window = element.ownerDocument.defaultView;\n var styles = window.getComputedStyle(element);\n var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n var result = {\n width: element.offsetWidth + y,\n height: element.offsetHeight + x\n };\n return result;\n}\n\n/**\n * Get the opposite placement of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement\n * @returns {String} flipped placement\n */\nfunction getOppositePlacement(placement) {\n var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}\n\n/**\n * Get offsets to the popper\n * @method\n * @memberof Popper.Utils\n * @param {Object} position - CSS position the Popper will get applied\n * @param {HTMLElement} popper - the popper element\n * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)\n * @param {String} placement - one of the valid placement options\n * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper\n */\nfunction getPopperOffsets(popper, referenceOffsets, placement) {\n placement = placement.split('-')[0];\n\n // Get popper node sizes\n var popperRect = getOuterSizes(popper);\n\n // Add position, width and height to our offsets object\n var popperOffsets = {\n width: popperRect.width,\n height: popperRect.height\n };\n\n // depending by the popper placement we have to compute its offsets slightly differently\n var isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n var mainSide = isHoriz ? 'top' : 'left';\n var secondarySide = isHoriz ? 'left' : 'top';\n var measurement = isHoriz ? 'height' : 'width';\n var secondaryMeasurement = !isHoriz ? 'height' : 'width';\n\n popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;\n if (placement === secondarySide) {\n popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];\n } else {\n popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];\n }\n\n return popperOffsets;\n}\n\n/**\n * Mimics the `find` method of Array\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction find(arr, check) {\n // use native find if supported\n if (Array.prototype.find) {\n return arr.find(check);\n }\n\n // use `filter` to obtain the same behavior of `find`\n return arr.filter(check)[0];\n}\n\n/**\n * Return the index of the matching object\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction findIndex(arr, prop, value) {\n // use native findIndex if supported\n if (Array.prototype.findIndex) {\n return arr.findIndex(function (cur) {\n return cur[prop] === value;\n });\n }\n\n // use `find` + `indexOf` if `findIndex` isn't supported\n var match = find(arr, function (obj) {\n return obj[prop] === value;\n });\n return arr.indexOf(match);\n}\n\n/**\n * Loop trough the list of modifiers and run them in order,\n * each of them will then edit the data object.\n * @method\n * @memberof Popper.Utils\n * @param {dataObject} data\n * @param {Array} modifiers\n * @param {String} ends - Optional modifier name used as stopper\n * @returns {dataObject}\n */\nfunction runModifiers(modifiers, data, ends) {\n var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));\n\n modifiersToRun.forEach(function (modifier) {\n if (modifier['function']) {\n // eslint-disable-line dot-notation\n console.warn('`modifier.function` is deprecated, use `modifier.fn`!');\n }\n var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation\n if (modifier.enabled && isFunction(fn)) {\n // Add properties to offsets to make them a complete clientRect object\n // we do this before each modifier to make sure the previous one doesn't\n // mess with these values\n data.offsets.popper = getClientRect(data.offsets.popper);\n data.offsets.reference = getClientRect(data.offsets.reference);\n\n data = fn(data, modifier);\n }\n });\n\n return data;\n}\n\n/**\n * Updates the position of the popper, computing the new offsets and applying\n * the new style.\n * Prefer `scheduleUpdate` over `update` because of performance reasons.\n * @method\n * @memberof Popper\n */\nfunction update() {\n // if popper is destroyed, don't perform any further update\n if (this.state.isDestroyed) {\n return;\n }\n\n var data = {\n instance: this,\n styles: {},\n arrowStyles: {},\n attributes: {},\n flipped: false,\n offsets: {}\n };\n\n // compute reference element offsets\n data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding);\n\n // store the computed placement inside `originalPlacement`\n data.originalPlacement = data.placement;\n\n data.positionFixed = this.options.positionFixed;\n\n // compute the popper offsets\n data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);\n\n data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute';\n\n // run the modifiers\n data = runModifiers(this.modifiers, data);\n\n // the first `update` will call `onCreate` callback\n // the other ones will call `onUpdate` callback\n if (!this.state.isCreated) {\n this.state.isCreated = true;\n this.options.onCreate(data);\n } else {\n this.options.onUpdate(data);\n }\n}\n\n/**\n * Helper used to know if the given modifier is enabled.\n * @method\n * @memberof Popper.Utils\n * @returns {Boolean}\n */\nfunction isModifierEnabled(modifiers, modifierName) {\n return modifiers.some(function (_ref) {\n var name = _ref.name,\n enabled = _ref.enabled;\n return enabled && name === modifierName;\n });\n}\n\n/**\n * Get the prefixed supported property name\n * @method\n * @memberof Popper.Utils\n * @argument {String} property (camelCase)\n * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix)\n */\nfunction getSupportedPropertyName(property) {\n var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];\n var upperProp = property.charAt(0).toUpperCase() + property.slice(1);\n\n for (var i = 0; i < prefixes.length; i++) {\n var prefix = prefixes[i];\n var toCheck = prefix ? '' + prefix + upperProp : property;\n if (typeof document.body.style[toCheck] !== 'undefined') {\n return toCheck;\n }\n }\n return null;\n}\n\n/**\n * Destroys the popper.\n * @method\n * @memberof Popper\n */\nfunction destroy() {\n this.state.isDestroyed = true;\n\n // touch DOM only if `applyStyle` modifier is enabled\n if (isModifierEnabled(this.modifiers, 'applyStyle')) {\n this.popper.removeAttribute('x-placement');\n this.popper.style.position = '';\n this.popper.style.top = '';\n this.popper.style.left = '';\n this.popper.style.right = '';\n this.popper.style.bottom = '';\n this.popper.style.willChange = '';\n this.popper.style[getSupportedPropertyName('transform')] = '';\n }\n\n this.disableEventListeners();\n\n // remove the popper if user explicitly asked for the deletion on destroy\n // do not use `remove` because IE11 doesn't support it\n if (this.options.removeOnDestroy) {\n this.popper.parentNode.removeChild(this.popper);\n }\n return this;\n}\n\n/**\n * Get the window associated with the element\n * @argument {Element} element\n * @returns {Window}\n */\nfunction getWindow(element) {\n var ownerDocument = element.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView : window;\n}\n\nfunction attachToScrollParents(scrollParent, event, callback, scrollParents) {\n var isBody = scrollParent.nodeName === 'BODY';\n var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent;\n target.addEventListener(event, callback, { passive: true });\n\n if (!isBody) {\n attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents);\n }\n scrollParents.push(target);\n}\n\n/**\n * Setup needed event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction setupEventListeners(reference, options, state, updateBound) {\n // Resize event listener on window\n state.updateBound = updateBound;\n getWindow(reference).addEventListener('resize', state.updateBound, { passive: true });\n\n // Scroll event listener on scroll parents\n var scrollElement = getScrollParent(reference);\n attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents);\n state.scrollElement = scrollElement;\n state.eventsEnabled = true;\n\n return state;\n}\n\n/**\n * It will add resize/scroll events and start recalculating\n * position of the popper element when they are triggered.\n * @method\n * @memberof Popper\n */\nfunction enableEventListeners() {\n if (!this.state.eventsEnabled) {\n this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate);\n }\n}\n\n/**\n * Remove event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction removeEventListeners(reference, state) {\n // Remove resize event listener on window\n getWindow(reference).removeEventListener('resize', state.updateBound);\n\n // Remove scroll event listener on scroll parents\n state.scrollParents.forEach(function (target) {\n target.removeEventListener('scroll', state.updateBound);\n });\n\n // Reset state\n state.updateBound = null;\n state.scrollParents = [];\n state.scrollElement = null;\n state.eventsEnabled = false;\n return state;\n}\n\n/**\n * It will remove resize/scroll events and won't recalculate popper position\n * when they are triggered. It also won't trigger `onUpdate` callback anymore,\n * unless you call `update` method manually.\n * @method\n * @memberof Popper\n */\nfunction disableEventListeners() {\n if (this.state.eventsEnabled) {\n cancelAnimationFrame(this.scheduleUpdate);\n this.state = removeEventListeners(this.reference, this.state);\n }\n}\n\n/**\n * Tells if a given input is a number\n * @method\n * @memberof Popper.Utils\n * @param {*} input to check\n * @return {Boolean}\n */\nfunction isNumeric(n) {\n return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);\n}\n\n/**\n * Set the style to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the style to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setStyles(element, styles) {\n Object.keys(styles).forEach(function (prop) {\n var unit = '';\n // add unit if the value is numeric and is one of the following\n if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) {\n unit = 'px';\n }\n element.style[prop] = styles[prop] + unit;\n });\n}\n\n/**\n * Set the attributes to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the attributes to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setAttributes(element, attributes) {\n Object.keys(attributes).forEach(function (prop) {\n var value = attributes[prop];\n if (value !== false) {\n element.setAttribute(prop, attributes[prop]);\n } else {\n element.removeAttribute(prop);\n }\n });\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} data.styles - List of style properties - values to apply to popper element\n * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The same data object\n */\nfunction applyStyle(data) {\n // any property present in `data.styles` will be applied to the popper,\n // in this way we can make the 3rd party modifiers add custom styles to it\n // Be aware, modifiers could override the properties defined in the previous\n // lines of this modifier!\n setStyles(data.instance.popper, data.styles);\n\n // any property present in `data.attributes` will be applied to the popper,\n // they will be set as HTML attributes of the element\n setAttributes(data.instance.popper, data.attributes);\n\n // if arrowElement is defined and arrowStyles has some properties\n if (data.arrowElement && Object.keys(data.arrowStyles).length) {\n setStyles(data.arrowElement, data.arrowStyles);\n }\n\n return data;\n}\n\n/**\n * Set the x-placement attribute before everything else because it could be used\n * to add margins to the popper margins needs to be calculated to get the\n * correct popper offsets.\n * @method\n * @memberof Popper.modifiers\n * @param {HTMLElement} reference - The reference element used to position the popper\n * @param {HTMLElement} popper - The HTML element used as popper\n * @param {Object} options - Popper.js options\n */\nfunction applyStyleOnLoad(reference, popper, options, modifierOptions, state) {\n // compute reference element offsets\n var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding);\n\n popper.setAttribute('x-placement', placement);\n\n // Apply `position` to popper before anything else because\n // without the position applied we can't guarantee correct computations\n setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' });\n\n return options;\n}\n\n/**\n * @function\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Boolean} shouldRound - If the offsets should be rounded at all\n * @returns {Object} The popper's position offsets rounded\n *\n * The tale of pixel-perfect positioning. It's still not 100% perfect, but as\n * good as it can be within reason.\n * Discussion here: https://github.com/FezVrasta/popper.js/pull/715\n *\n * Low DPI screens cause a popper to be blurry if not using full pixels (Safari\n * as well on High DPI screens).\n *\n * Firefox prefers no rounding for positioning and does not have blurriness on\n * high DPI screens.\n *\n * Only horizontal placement and left/right values need to be considered.\n */\nfunction getRoundedOffsets(data, shouldRound) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n var round = Math.round,\n floor = Math.floor;\n\n var noRound = function noRound(v) {\n return v;\n };\n\n var referenceWidth = round(reference.width);\n var popperWidth = round(popper.width);\n\n var isVertical = ['left', 'right'].indexOf(data.placement) !== -1;\n var isVariation = data.placement.indexOf('-') !== -1;\n var sameWidthParity = referenceWidth % 2 === popperWidth % 2;\n var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1;\n\n var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor;\n var verticalToInteger = !shouldRound ? noRound : round;\n\n return {\n left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left),\n top: verticalToInteger(popper.top),\n bottom: verticalToInteger(popper.bottom),\n right: horizontalToInteger(popper.right)\n };\n}\n\nvar isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent);\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeStyle(data, options) {\n var x = options.x,\n y = options.y;\n var popper = data.offsets.popper;\n\n // Remove this legacy support in Popper.js v2\n\n var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'applyStyle';\n }).gpuAcceleration;\n if (legacyGpuAccelerationOption !== undefined) {\n console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!');\n }\n var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration;\n\n var offsetParent = getOffsetParent(data.instance.popper);\n var offsetParentRect = getBoundingClientRect(offsetParent);\n\n // Styles\n var styles = {\n position: popper.position\n };\n\n var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox);\n\n var sideA = x === 'bottom' ? 'top' : 'bottom';\n var sideB = y === 'right' ? 'left' : 'right';\n\n // if gpuAcceleration is set to `true` and transform is supported,\n // we use `translate3d` to apply the position to the popper we\n // automatically use the supported prefixed version if needed\n var prefixedProperty = getSupportedPropertyName('transform');\n\n // now, let's make a step back and look at this code closely (wtf?)\n // If the content of the popper grows once it's been positioned, it\n // may happen that the popper gets misplaced because of the new content\n // overflowing its reference element\n // To avoid this problem, we provide two options (x and y), which allow\n // the consumer to define the offset origin.\n // If we position a popper on top of a reference element, we can set\n // `x` to `top` to make the popper grow towards its top instead of\n // its bottom.\n var left = void 0,\n top = void 0;\n if (sideA === 'bottom') {\n // when offsetParent is the positioning is relative to the bottom of the screen (excluding the scrollbar)\n // and not the bottom of the html element\n if (offsetParent.nodeName === 'HTML') {\n top = -offsetParent.clientHeight + offsets.bottom;\n } else {\n top = -offsetParentRect.height + offsets.bottom;\n }\n } else {\n top = offsets.top;\n }\n if (sideB === 'right') {\n if (offsetParent.nodeName === 'HTML') {\n left = -offsetParent.clientWidth + offsets.right;\n } else {\n left = -offsetParentRect.width + offsets.right;\n }\n } else {\n left = offsets.left;\n }\n if (gpuAcceleration && prefixedProperty) {\n styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)';\n styles[sideA] = 0;\n styles[sideB] = 0;\n styles.willChange = 'transform';\n } else {\n // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties\n var invertTop = sideA === 'bottom' ? -1 : 1;\n var invertLeft = sideB === 'right' ? -1 : 1;\n styles[sideA] = top * invertTop;\n styles[sideB] = left * invertLeft;\n styles.willChange = sideA + ', ' + sideB;\n }\n\n // Attributes\n var attributes = {\n 'x-placement': data.placement\n };\n\n // Update `data` attributes, styles and arrowStyles\n data.attributes = _extends({}, attributes, data.attributes);\n data.styles = _extends({}, styles, data.styles);\n data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles);\n\n return data;\n}\n\n/**\n * Helper used to know if the given modifier depends from another one.\n * It checks if the needed modifier is listed and enabled.\n * @method\n * @memberof Popper.Utils\n * @param {Array} modifiers - list of modifiers\n * @param {String} requestingName - name of requesting modifier\n * @param {String} requestedName - name of requested modifier\n * @returns {Boolean}\n */\nfunction isModifierRequired(modifiers, requestingName, requestedName) {\n var requesting = find(modifiers, function (_ref) {\n var name = _ref.name;\n return name === requestingName;\n });\n\n var isRequired = !!requesting && modifiers.some(function (modifier) {\n return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order;\n });\n\n if (!isRequired) {\n var _requesting = '`' + requestingName + '`';\n var requested = '`' + requestedName + '`';\n console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!');\n }\n return isRequired;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction arrow(data, options) {\n var _data$offsets$arrow;\n\n // arrow depends on keepTogether in order to work\n if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) {\n return data;\n }\n\n var arrowElement = options.element;\n\n // if arrowElement is a string, suppose it's a CSS selector\n if (typeof arrowElement === 'string') {\n arrowElement = data.instance.popper.querySelector(arrowElement);\n\n // if arrowElement is not found, don't run the modifier\n if (!arrowElement) {\n return data;\n }\n } else {\n // if the arrowElement isn't a query selector we must check that the\n // provided DOM node is child of its popper node\n if (!data.instance.popper.contains(arrowElement)) {\n console.warn('WARNING: `arrow.element` must be child of its popper element!');\n return data;\n }\n }\n\n var placement = data.placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isVertical = ['left', 'right'].indexOf(placement) !== -1;\n\n var len = isVertical ? 'height' : 'width';\n var sideCapitalized = isVertical ? 'Top' : 'Left';\n var side = sideCapitalized.toLowerCase();\n var altSide = isVertical ? 'left' : 'top';\n var opSide = isVertical ? 'bottom' : 'right';\n var arrowElementSize = getOuterSizes(arrowElement)[len];\n\n //\n // extends keepTogether behavior making sure the popper and its\n // reference have enough pixels in conjunction\n //\n\n // top/left side\n if (reference[opSide] - arrowElementSize < popper[side]) {\n data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize);\n }\n // bottom/right side\n if (reference[side] + arrowElementSize > popper[opSide]) {\n data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide];\n }\n data.offsets.popper = getClientRect(data.offsets.popper);\n\n // compute center of the popper\n var center = reference[side] + reference[len] / 2 - arrowElementSize / 2;\n\n // Compute the sideValue using the updated popper offsets\n // take popper margin in account because we don't have this info available\n var css = getStyleComputedProperty(data.instance.popper);\n var popperMarginSide = parseFloat(css['margin' + sideCapitalized]);\n var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width']);\n var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide;\n\n // prevent arrowElement from being placed not contiguously to its popper\n sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0);\n\n data.arrowElement = arrowElement;\n data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow);\n\n return data;\n}\n\n/**\n * Get the opposite placement variation of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement variation\n * @returns {String} flipped placement variation\n */\nfunction getOppositeVariation(variation) {\n if (variation === 'end') {\n return 'start';\n } else if (variation === 'start') {\n return 'end';\n }\n return variation;\n}\n\n/**\n * List of accepted placements to use as values of the `placement` option.\n * Valid placements are:\n * - `auto`\n * - `top`\n * - `right`\n * - `bottom`\n * - `left`\n *\n * Each placement can have a variation from this list:\n * - `-start`\n * - `-end`\n *\n * Variations are interpreted easily if you think of them as the left to right\n * written languages. Horizontally (`top` and `bottom`), `start` is left and `end`\n * is right.\n * Vertically (`left` and `right`), `start` is top and `end` is bottom.\n *\n * Some valid examples are:\n * - `top-end` (on top of reference, right aligned)\n * - `right-start` (on right of reference, top aligned)\n * - `bottom` (on bottom, centered)\n * - `auto-end` (on the side with more space available, alignment depends by placement)\n *\n * @static\n * @type {Array}\n * @enum {String}\n * @readonly\n * @method placements\n * @memberof Popper\n */\nvar placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start'];\n\n// Get rid of `auto` `auto-start` and `auto-end`\nvar validPlacements = placements.slice(3);\n\n/**\n * Given an initial placement, returns all the subsequent placements\n * clockwise (or counter-clockwise).\n *\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement - A valid placement (it accepts variations)\n * @argument {Boolean} counter - Set to true to walk the placements counterclockwise\n * @returns {Array} placements including their variations\n */\nfunction clockwise(placement) {\n var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var index = validPlacements.indexOf(placement);\n var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index));\n return counter ? arr.reverse() : arr;\n}\n\nvar BEHAVIORS = {\n FLIP: 'flip',\n CLOCKWISE: 'clockwise',\n COUNTERCLOCKWISE: 'counterclockwise'\n};\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction flip(data, options) {\n // if `inner` modifier is enabled, we can't use the `flip` modifier\n if (isModifierEnabled(data.instance.modifiers, 'inner')) {\n return data;\n }\n\n if (data.flipped && data.placement === data.originalPlacement) {\n // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides\n return data;\n }\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed);\n\n var placement = data.placement.split('-')[0];\n var placementOpposite = getOppositePlacement(placement);\n var variation = data.placement.split('-')[1] || '';\n\n var flipOrder = [];\n\n switch (options.behavior) {\n case BEHAVIORS.FLIP:\n flipOrder = [placement, placementOpposite];\n break;\n case BEHAVIORS.CLOCKWISE:\n flipOrder = clockwise(placement);\n break;\n case BEHAVIORS.COUNTERCLOCKWISE:\n flipOrder = clockwise(placement, true);\n break;\n default:\n flipOrder = options.behavior;\n }\n\n flipOrder.forEach(function (step, index) {\n if (placement !== step || flipOrder.length === index + 1) {\n return data;\n }\n\n placement = data.placement.split('-')[0];\n placementOpposite = getOppositePlacement(placement);\n\n var popperOffsets = data.offsets.popper;\n var refOffsets = data.offsets.reference;\n\n // using floor because the reference offsets may contain decimals we are not going to consider here\n var floor = Math.floor;\n var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom);\n\n var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left);\n var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right);\n var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top);\n var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom);\n\n var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom;\n\n // flip the variation if required\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n\n // flips variation if reference element overflows boundaries\n var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);\n\n // flips variation if popper content overflows boundaries\n var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop);\n\n var flippedVariation = flippedVariationByRef || flippedVariationByContent;\n\n if (overlapsRef || overflowsBoundaries || flippedVariation) {\n // this boolean to detect any flip loop\n data.flipped = true;\n\n if (overlapsRef || overflowsBoundaries) {\n placement = flipOrder[index + 1];\n }\n\n if (flippedVariation) {\n variation = getOppositeVariation(variation);\n }\n\n data.placement = placement + (variation ? '-' + variation : '');\n\n // this object contains `position`, we want to preserve it along with\n // any additional property we may add in the future\n data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));\n\n data = runModifiers(data.instance.modifiers, data, 'flip');\n }\n });\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction keepTogether(data) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var placement = data.placement.split('-')[0];\n var floor = Math.floor;\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n var side = isVertical ? 'right' : 'bottom';\n var opSide = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n if (popper[side] < floor(reference[opSide])) {\n data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement];\n }\n if (popper[opSide] > floor(reference[side])) {\n data.offsets.popper[opSide] = floor(reference[side]);\n }\n\n return data;\n}\n\n/**\n * Converts a string containing value + unit into a px value number\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} str - Value + unit string\n * @argument {String} measurement - `height` or `width`\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @returns {Number|String}\n * Value in pixels, or original string if no values were extracted\n */\nfunction toValue(str, measurement, popperOffsets, referenceOffsets) {\n // separate value from unit\n var split = str.match(/((?:\\-|\\+)?\\d*\\.?\\d*)(.*)/);\n var value = +split[1];\n var unit = split[2];\n\n // If it's not a number it's an operator, I guess\n if (!value) {\n return str;\n }\n\n if (unit.indexOf('%') === 0) {\n var element = void 0;\n switch (unit) {\n case '%p':\n element = popperOffsets;\n break;\n case '%':\n case '%r':\n default:\n element = referenceOffsets;\n }\n\n var rect = getClientRect(element);\n return rect[measurement] / 100 * value;\n } else if (unit === 'vh' || unit === 'vw') {\n // if is a vh or vw, we calculate the size based on the viewport\n var size = void 0;\n if (unit === 'vh') {\n size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n } else {\n size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n }\n return size / 100 * value;\n } else {\n // if is an explicit pixel unit, we get rid of the unit and keep the value\n // if is an implicit unit, it's px, and we return just the value\n return value;\n }\n}\n\n/**\n * Parse an `offset` string to extrapolate `x` and `y` numeric offsets.\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} offset\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @argument {String} basePlacement\n * @returns {Array} a two cells array with x and y offsets in numbers\n */\nfunction parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) {\n var offsets = [0, 0];\n\n // Use height if placement is left or right and index is 0 otherwise use width\n // in this way the first offset will use an axis and the second one\n // will use the other one\n var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1;\n\n // Split the offset string to obtain a list of values and operands\n // The regex addresses values with the plus or minus sign in front (+10, -20, etc)\n var fragments = offset.split(/(\\+|\\-)/).map(function (frag) {\n return frag.trim();\n });\n\n // Detect if the offset string contains a pair of values or a single one\n // they could be separated by comma or space\n var divider = fragments.indexOf(find(fragments, function (frag) {\n return frag.search(/,|\\s/) !== -1;\n }));\n\n if (fragments[divider] && fragments[divider].indexOf(',') === -1) {\n console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.');\n }\n\n // If divider is found, we divide the list of values and operands to divide\n // them by ofset X and Y.\n var splitRegex = /\\s*,\\s*|\\s+/;\n var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments];\n\n // Convert the values with units to absolute pixels to allow our computations\n ops = ops.map(function (op, index) {\n // Most of the units rely on the orientation of the popper\n var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width';\n var mergeWithPrevious = false;\n return op\n // This aggregates any `+` or `-` sign that aren't considered operators\n // e.g.: 10 + +5 => [10, +, +5]\n .reduce(function (a, b) {\n if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) {\n a[a.length - 1] = b;\n mergeWithPrevious = true;\n return a;\n } else if (mergeWithPrevious) {\n a[a.length - 1] += b;\n mergeWithPrevious = false;\n return a;\n } else {\n return a.concat(b);\n }\n }, [])\n // Here we convert the string values into number values (in px)\n .map(function (str) {\n return toValue(str, measurement, popperOffsets, referenceOffsets);\n });\n });\n\n // Loop trough the offsets arrays and execute the operations\n ops.forEach(function (op, index) {\n op.forEach(function (frag, index2) {\n if (isNumeric(frag)) {\n offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1);\n }\n });\n });\n return offsets;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @argument {Number|String} options.offset=0\n * The offset value as described in the modifier description\n * @returns {Object} The data object, properly modified\n */\nfunction offset(data, _ref) {\n var offset = _ref.offset;\n var placement = data.placement,\n _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var basePlacement = placement.split('-')[0];\n\n var offsets = void 0;\n if (isNumeric(+offset)) {\n offsets = [+offset, 0];\n } else {\n offsets = parseOffset(offset, popper, reference, basePlacement);\n }\n\n if (basePlacement === 'left') {\n popper.top += offsets[0];\n popper.left -= offsets[1];\n } else if (basePlacement === 'right') {\n popper.top += offsets[0];\n popper.left += offsets[1];\n } else if (basePlacement === 'top') {\n popper.left += offsets[0];\n popper.top -= offsets[1];\n } else if (basePlacement === 'bottom') {\n popper.left += offsets[0];\n popper.top += offsets[1];\n }\n\n data.popper = popper;\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction preventOverflow(data, options) {\n var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper);\n\n // If offsetParent is the reference element, we really want to\n // go one step up and use the next offsetParent as reference to\n // avoid to make this modifier completely useless and look like broken\n if (data.instance.reference === boundariesElement) {\n boundariesElement = getOffsetParent(boundariesElement);\n }\n\n // NOTE: DOM access here\n // resets the popper's position so that the document size can be calculated excluding\n // the size of the popper element itself\n var transformProp = getSupportedPropertyName('transform');\n var popperStyles = data.instance.popper.style; // assignment to help minification\n var top = popperStyles.top,\n left = popperStyles.left,\n transform = popperStyles[transformProp];\n\n popperStyles.top = '';\n popperStyles.left = '';\n popperStyles[transformProp] = '';\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed);\n\n // NOTE: DOM access here\n // restores the original style properties after the offsets have been computed\n popperStyles.top = top;\n popperStyles.left = left;\n popperStyles[transformProp] = transform;\n\n options.boundaries = boundaries;\n\n var order = options.priority;\n var popper = data.offsets.popper;\n\n var check = {\n primary: function primary(placement) {\n var value = popper[placement];\n if (popper[placement] < boundaries[placement] && !options.escapeWithReference) {\n value = Math.max(popper[placement], boundaries[placement]);\n }\n return defineProperty({}, placement, value);\n },\n secondary: function secondary(placement) {\n var mainSide = placement === 'right' ? 'left' : 'top';\n var value = popper[mainSide];\n if (popper[placement] > boundaries[placement] && !options.escapeWithReference) {\n value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height));\n }\n return defineProperty({}, mainSide, value);\n }\n };\n\n order.forEach(function (placement) {\n var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';\n popper = _extends({}, popper, check[side](placement));\n });\n\n data.offsets.popper = popper;\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction shift(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var shiftvariation = placement.split('-')[1];\n\n // if shift shiftvariation is specified, run the modifier\n if (shiftvariation) {\n var _data$offsets = data.offsets,\n reference = _data$offsets.reference,\n popper = _data$offsets.popper;\n\n var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;\n var side = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n var shiftOffsets = {\n start: defineProperty({}, side, reference[side]),\n end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])\n };\n\n data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]);\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction hide(data) {\n if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) {\n return data;\n }\n\n var refRect = data.offsets.reference;\n var bound = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'preventOverflow';\n }).boundaries;\n\n if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === true) {\n return data;\n }\n\n data.hide = true;\n data.attributes['x-out-of-boundaries'] = '';\n } else {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === false) {\n return data;\n }\n\n data.hide = false;\n data.attributes['x-out-of-boundaries'] = false;\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction inner(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1;\n\n var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1;\n\n popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0);\n\n data.placement = getOppositePlacement(placement);\n data.offsets.popper = getClientRect(popper);\n\n return data;\n}\n\n/**\n * Modifier function, each modifier can have a function of this type assigned\n * to its `fn` property.\n * These functions will be called on each update, this means that you must\n * make sure they are performant enough to avoid performance bottlenecks.\n *\n * @function ModifierFn\n * @argument {dataObject} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {dataObject} The data object, properly modified\n */\n\n/**\n * Modifiers are plugins used to alter the behavior of your poppers.\n * Popper.js uses a set of 9 modifiers to provide all the basic functionalities\n * needed by the library.\n *\n * Usually you don't want to override the `order`, `fn` and `onLoad` props.\n * All the other properties are configurations that could be tweaked.\n * @namespace modifiers\n */\nvar modifiers = {\n /**\n * Modifier used to shift the popper on the start or end of its reference\n * element.\n * It will read the variation of the `placement` property.\n * It can be one either `-end` or `-start`.\n * @memberof modifiers\n * @inner\n */\n shift: {\n /** @prop {number} order=100 - Index used to define the order of execution */\n order: 100,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: shift\n },\n\n /**\n * The `offset` modifier can shift your popper on both its axis.\n *\n * It accepts the following units:\n * - `px` or unit-less, interpreted as pixels\n * - `%` or `%r`, percentage relative to the length of the reference element\n * - `%p`, percentage relative to the length of the popper element\n * - `vw`, CSS viewport width unit\n * - `vh`, CSS viewport height unit\n *\n * For length is intended the main axis relative to the placement of the popper.\n * This means that if the placement is `top` or `bottom`, the length will be the\n * `width`. In case of `left` or `right`, it will be the `height`.\n *\n * You can provide a single value (as `Number` or `String`), or a pair of values\n * as `String` divided by a comma or one (or more) white spaces.\n * The latter is a deprecated method because it leads to confusion and will be\n * removed in v2.\n * Additionally, it accepts additions and subtractions between different units.\n * Note that multiplications and divisions aren't supported.\n *\n * Valid examples are:\n * ```\n * 10\n * '10%'\n * '10, 10'\n * '10%, 10'\n * '10 + 10%'\n * '10 - 5vh + 3%'\n * '-10px + 5vh, 5px - 6%'\n * ```\n * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap\n * > with their reference element, unfortunately, you will have to disable the `flip` modifier.\n * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373).\n *\n * @memberof modifiers\n * @inner\n */\n offset: {\n /** @prop {number} order=200 - Index used to define the order of execution */\n order: 200,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: offset,\n /** @prop {Number|String} offset=0\n * The offset value as described in the modifier description\n */\n offset: 0\n },\n\n /**\n * Modifier used to prevent the popper from being positioned outside the boundary.\n *\n * A scenario exists where the reference itself is not within the boundaries.\n * We can say it has \"escaped the boundaries\" — or just \"escaped\".\n * In this case we need to decide whether the popper should either:\n *\n * - detach from the reference and remain \"trapped\" in the boundaries, or\n * - if it should ignore the boundary and \"escape with its reference\"\n *\n * When `escapeWithReference` is set to`true` and reference is completely\n * outside its boundaries, the popper will overflow (or completely leave)\n * the boundaries in order to remain attached to the edge of the reference.\n *\n * @memberof modifiers\n * @inner\n */\n preventOverflow: {\n /** @prop {number} order=300 - Index used to define the order of execution */\n order: 300,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: preventOverflow,\n /**\n * @prop {Array} [priority=['left','right','top','bottom']]\n * Popper will try to prevent overflow following these priorities by default,\n * then, it could overflow on the left and on top of the `boundariesElement`\n */\n priority: ['left', 'right', 'top', 'bottom'],\n /**\n * @prop {number} padding=5\n * Amount of pixel used to define a minimum distance between the boundaries\n * and the popper. This makes sure the popper always has a little padding\n * between the edges of its container\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='scrollParent'\n * Boundaries used by the modifier. Can be `scrollParent`, `window`,\n * `viewport` or any DOM element.\n */\n boundariesElement: 'scrollParent'\n },\n\n /**\n * Modifier used to make sure the reference and its popper stay near each other\n * without leaving any gap between the two. Especially useful when the arrow is\n * enabled and you want to ensure that it points to its reference element.\n * It cares only about the first axis. You can still have poppers with margin\n * between the popper and its reference element.\n * @memberof modifiers\n * @inner\n */\n keepTogether: {\n /** @prop {number} order=400 - Index used to define the order of execution */\n order: 400,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: keepTogether\n },\n\n /**\n * This modifier is used to move the `arrowElement` of the popper to make\n * sure it is positioned between the reference element and its popper element.\n * It will read the outer size of the `arrowElement` node to detect how many\n * pixels of conjunction are needed.\n *\n * It has no effect if no `arrowElement` is provided.\n * @memberof modifiers\n * @inner\n */\n arrow: {\n /** @prop {number} order=500 - Index used to define the order of execution */\n order: 500,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: arrow,\n /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */\n element: '[x-arrow]'\n },\n\n /**\n * Modifier used to flip the popper's placement when it starts to overlap its\n * reference element.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n *\n * **NOTE:** this modifier will interrupt the current update cycle and will\n * restart it if it detects the need to flip the placement.\n * @memberof modifiers\n * @inner\n */\n flip: {\n /** @prop {number} order=600 - Index used to define the order of execution */\n order: 600,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: flip,\n /**\n * @prop {String|Array} behavior='flip'\n * The behavior used to change the popper's placement. It can be one of\n * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid\n * placements (with optional variations)\n */\n behavior: 'flip',\n /**\n * @prop {number} padding=5\n * The popper will flip if it hits the edges of the `boundariesElement`\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='viewport'\n * The element which will define the boundaries of the popper position.\n * The popper will never be placed outside of the defined boundaries\n * (except if `keepTogether` is enabled)\n */\n boundariesElement: 'viewport',\n /**\n * @prop {Boolean} flipVariations=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the reference element overlaps its boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariations: false,\n /**\n * @prop {Boolean} flipVariationsByContent=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the popper element overlaps its reference boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariationsByContent: false\n },\n\n /**\n * Modifier used to make the popper flow toward the inner of the reference element.\n * By default, when this modifier is disabled, the popper will be placed outside\n * the reference element.\n * @memberof modifiers\n * @inner\n */\n inner: {\n /** @prop {number} order=700 - Index used to define the order of execution */\n order: 700,\n /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */\n enabled: false,\n /** @prop {ModifierFn} */\n fn: inner\n },\n\n /**\n * Modifier used to hide the popper when its reference element is outside of the\n * popper boundaries. It will set a `x-out-of-boundaries` attribute which can\n * be used to hide with a CSS selector the popper when its reference is\n * out of boundaries.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n * @memberof modifiers\n * @inner\n */\n hide: {\n /** @prop {number} order=800 - Index used to define the order of execution */\n order: 800,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: hide\n },\n\n /**\n * Computes the style that will be applied to the popper element to gets\n * properly positioned.\n *\n * Note that this modifier will not touch the DOM, it just prepares the styles\n * so that `applyStyle` modifier can apply it. This separation is useful\n * in case you need to replace `applyStyle` with a custom implementation.\n *\n * This modifier has `850` as `order` value to maintain backward compatibility\n * with previous versions of Popper.js. Expect the modifiers ordering method\n * to change in future major versions of the library.\n *\n * @memberof modifiers\n * @inner\n */\n computeStyle: {\n /** @prop {number} order=850 - Index used to define the order of execution */\n order: 850,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: computeStyle,\n /**\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: true,\n /**\n * @prop {string} [x='bottom']\n * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin.\n * Change this if your popper should grow in a direction different from `bottom`\n */\n x: 'bottom',\n /**\n * @prop {string} [x='left']\n * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin.\n * Change this if your popper should grow in a direction different from `right`\n */\n y: 'right'\n },\n\n /**\n * Applies the computed styles to the popper element.\n *\n * All the DOM manipulations are limited to this modifier. This is useful in case\n * you want to integrate Popper.js inside a framework or view library and you\n * want to delegate all the DOM manipulations to it.\n *\n * Note that if you disable this modifier, you must make sure the popper element\n * has its position set to `absolute` before Popper.js can do its work!\n *\n * Just disable this modifier and define your own to achieve the desired effect.\n *\n * @memberof modifiers\n * @inner\n */\n applyStyle: {\n /** @prop {number} order=900 - Index used to define the order of execution */\n order: 900,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: applyStyle,\n /** @prop {Function} */\n onLoad: applyStyleOnLoad,\n /**\n * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: undefined\n }\n};\n\n/**\n * The `dataObject` is an object containing all the information used by Popper.js.\n * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks.\n * @name dataObject\n * @property {Object} data.instance The Popper.js instance\n * @property {String} data.placement Placement applied to popper\n * @property {String} data.originalPlacement Placement originally defined on init\n * @property {Boolean} data.flipped True if popper has been flipped by flip modifier\n * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper\n * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier\n * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.boundaries Offsets of the popper boundaries\n * @property {Object} data.offsets The measurements of popper, reference and arrow elements\n * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0\n */\n\n/**\n * Default options provided to Popper.js constructor.\n * These can be overridden using the `options` argument of Popper.js.\n * To override an option, simply pass an object with the same\n * structure of the `options` object, as the 3rd argument. For example:\n * ```\n * new Popper(ref, pop, {\n * modifiers: {\n * preventOverflow: { enabled: false }\n * }\n * })\n * ```\n * @type {Object}\n * @static\n * @memberof Popper\n */\nvar Defaults = {\n /**\n * Popper's placement.\n * @prop {Popper.placements} placement='bottom'\n */\n placement: 'bottom',\n\n /**\n * Set this to true if you want popper to position it self in 'fixed' mode\n * @prop {Boolean} positionFixed=false\n */\n positionFixed: false,\n\n /**\n * Whether events (resize, scroll) are initially enabled.\n * @prop {Boolean} eventsEnabled=true\n */\n eventsEnabled: true,\n\n /**\n * Set to true if you want to automatically remove the popper when\n * you call the `destroy` method.\n * @prop {Boolean} removeOnDestroy=false\n */\n removeOnDestroy: false,\n\n /**\n * Callback called when the popper is created.\n * By default, it is set to no-op.\n * Access Popper.js instance with `data.instance`.\n * @prop {onCreate}\n */\n onCreate: function onCreate() {},\n\n /**\n * Callback called when the popper is updated. This callback is not called\n * on the initialization/creation of the popper, but only on subsequent\n * updates.\n * By default, it is set to no-op.\n * Access Popper.js instance with `data.instance`.\n * @prop {onUpdate}\n */\n onUpdate: function onUpdate() {},\n\n /**\n * List of modifiers used to modify the offsets before they are applied to the popper.\n * They provide most of the functionalities of Popper.js.\n * @prop {modifiers}\n */\n modifiers: modifiers\n};\n\n/**\n * @callback onCreate\n * @param {dataObject} data\n */\n\n/**\n * @callback onUpdate\n * @param {dataObject} data\n */\n\n// Utils\n// Methods\nvar Popper = function () {\n /**\n * Creates a new Popper.js instance.\n * @class Popper\n * @param {Element|referenceObject} reference - The reference element used to position the popper\n * @param {Element} popper - The HTML / XML element used as the popper\n * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)\n * @return {Object} instance - The generated Popper.js instance\n */\n function Popper(reference, popper) {\n var _this = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n classCallCheck(this, Popper);\n\n this.scheduleUpdate = function () {\n return requestAnimationFrame(_this.update);\n };\n\n // make update() debounced, so that it only runs at most once-per-tick\n this.update = debounce(this.update.bind(this));\n\n // with {} we create a new object with the options inside it\n this.options = _extends({}, Popper.Defaults, options);\n\n // init state\n this.state = {\n isDestroyed: false,\n isCreated: false,\n scrollParents: []\n };\n\n // get reference and popper elements (allow jQuery wrappers)\n this.reference = reference && reference.jquery ? reference[0] : reference;\n this.popper = popper && popper.jquery ? popper[0] : popper;\n\n // Deep merge modifiers options\n this.options.modifiers = {};\n Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {\n _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});\n });\n\n // Refactoring modifiers' list (Object => Array)\n this.modifiers = Object.keys(this.options.modifiers).map(function (name) {\n return _extends({\n name: name\n }, _this.options.modifiers[name]);\n })\n // sort the modifiers by order\n .sort(function (a, b) {\n return a.order - b.order;\n });\n\n // modifiers have the ability to execute arbitrary code when Popper.js get inited\n // such code is executed in the same order of its modifier\n // they could add new properties to their options configuration\n // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`!\n this.modifiers.forEach(function (modifierOptions) {\n if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) {\n modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state);\n }\n });\n\n // fire the first update to position the popper in the right place\n this.update();\n\n var eventsEnabled = this.options.eventsEnabled;\n if (eventsEnabled) {\n // setup event listeners, they will take care of update the position in specific situations\n this.enableEventListeners();\n }\n\n this.state.eventsEnabled = eventsEnabled;\n }\n\n // We can't use class properties because they don't get listed in the\n // class prototype and break stuff like Sinon stubs\n\n\n createClass(Popper, [{\n key: 'update',\n value: function update$$1() {\n return update.call(this);\n }\n }, {\n key: 'destroy',\n value: function destroy$$1() {\n return destroy.call(this);\n }\n }, {\n key: 'enableEventListeners',\n value: function enableEventListeners$$1() {\n return enableEventListeners.call(this);\n }\n }, {\n key: 'disableEventListeners',\n value: function disableEventListeners$$1() {\n return disableEventListeners.call(this);\n }\n\n /**\n * Schedules an update. It will run on the next UI update available.\n * @method scheduleUpdate\n * @memberof Popper\n */\n\n\n /**\n * Collection of utilities useful when writing custom modifiers.\n * Starting from version 1.7, this method is available only if you\n * include `popper-utils.js` before `popper.js`.\n *\n * **DEPRECATION**: This way to access PopperUtils is deprecated\n * and will be removed in v2! Use the PopperUtils module directly instead.\n * Due to the high instability of the methods contained in Utils, we can't\n * guarantee them to follow semver. Use them at your own risk!\n * @static\n * @private\n * @type {Object}\n * @deprecated since version 1.8\n * @member Utils\n * @memberof Popper\n */\n\n }]);\n return Popper;\n}();\n\n/**\n * The `referenceObject` is an object that provides an interface compatible with Popper.js\n * and lets you use it as replacement of a real DOM node.\n * You can use this method to position a popper relatively to a set of coordinates\n * in case you don't have a DOM node to use as reference.\n *\n * ```\n * new Popper(referenceObject, popperNode);\n * ```\n *\n * NB: This feature isn't supported in Internet Explorer 10.\n * @name referenceObject\n * @property {Function} data.getBoundingClientRect\n * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method.\n * @property {number} data.clientWidth\n * An ES6 getter that will return the width of the virtual reference element.\n * @property {number} data.clientHeight\n * An ES6 getter that will return the height of the virtual reference element.\n */\n\n\nPopper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;\nPopper.placements = placements;\nPopper.Defaults = Defaults;\n\nexport default Popper;\n//# sourceMappingURL=popper.js.map\n","var $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n"],"sourceRoot":""}
\n {{ text }}\n
{{ modalHeader.fullName }}
{{ modalHeader.dateCreated }}
{{ modalHeader.requestHostIPAddress }}
\n {{ text }}: {{ value }}\n