{"version":3,"sources":["webpack:///./node_modules/bootstrap-vue/esm/components/spinner/spinner.js","webpack:///./node_modules/bootstrap-vue/esm/utils/date.js","webpack:///./src/views/apps/help-desk/category-list/CategoryUsers.vue?119f","webpack:///./src/views/apps/help-desk/category-list/CategoryUserAdd.vue?a6f9","webpack:///src/views/apps/help-desk/category-list/CategoryUserAdd.vue","webpack:///./src/views/apps/help-desk/category-list/CategoryUserAdd.vue?5b41","webpack:///./src/views/apps/help-desk/category-list/CategoryUserAdd.vue","webpack:///src/views/apps/help-desk/category-list/CategoryUsers.vue","webpack:///./src/views/apps/help-desk/category-list/CategoryUsers.vue?1b9a","webpack:///./src/views/apps/help-desk/category-list/CategoryUsers.vue","webpack:///./node_modules/core-js/internals/to-index.js","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack:///./node_modules/core-js/internals/native-url.js","webpack:///./src/@core/utils/filter.js","webpack:///./node_modules/core-js/internals/array-copy-within.js","webpack:///./node_modules/core-js/modules/es.typed-array.subarray.js","webpack:///./node_modules/core-js/internals/to-offset.js","webpack:///./src/components/List.vue?51e0","webpack:///./node_modules/core-js/modules/es.typed-array.sort.js","webpack:///./node_modules/file-saver/dist/FileSaver.min.js","webpack:///./node_modules/core-js/modules/es.typed-array.reduce-right.js","webpack:///./node_modules/bootstrap-vue/esm/directives/tooltip/tooltip.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/pagination.js","webpack:///./node_modules/bootstrap-vue/esm/components/pagination/pagination.js","webpack:///./node_modules/core-js/modules/es.typed-array.slice.js","webpack:///./node_modules/core-js/modules/web.url.js","webpack:///./src/components/List.vue?a00a","webpack:///./src/components/ExcelTemplateUploader.vue?ce8e","webpack:///src/components/ExcelTemplateUploader.vue","webpack:///./src/components/ExcelTemplateUploader.vue?9453","webpack:///./src/components/ExcelTemplateUploader.vue","webpack:///./src/components/ListHeader.vue?eef4","webpack:///./src/components/ListHeaderFilter.vue?b720","webpack:///./src/components/ListHeaderFilterModal.vue?7e45","webpack:///src/components/ListHeaderFilterModal.vue","webpack:///./src/components/ListHeaderFilterModal.vue?5914","webpack:///./src/components/ListHeaderFilterModal.vue","webpack:///src/components/ListHeaderFilter.vue","webpack:///./src/components/ListHeaderFilter.vue?42a4","webpack:///./src/components/ListHeaderFilter.vue","webpack:///src/components/ListHeader.vue","webpack:///./src/components/ListHeader.vue?8da9","webpack:///./src/components/ListHeader.vue","webpack:///src/components/List.vue","webpack:///./src/components/List.vue?1f13","webpack:///./src/components/List.vue","webpack:///./node_modules/core-js/modules/es.typed-array.last-index-of.js","webpack:///./node_modules/bootstrap-vue/esm/components/media/media-aside.js","webpack:///./node_modules/bootstrap-vue/esm/components/media/media-body.js","webpack:///./node_modules/bootstrap-vue/esm/components/media/media.js","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group-prepend.js","webpack:///./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack:///./node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack:///./node_modules/core-js/modules/es.typed-array.find-index.js","webpack:///./node_modules/core-js/modules/es.typed-array.set.js","webpack:///./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack:///./node_modules/core-js/modules/es.typed-array.map.js","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group-addon.js","webpack:///./src/@core/comp-functions/forms/form-validation.js","webpack:///./node_modules/core-js/modules/es.typed-array.uint8-array.js","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group.js","webpack:///./node_modules/core-js/modules/es.typed-array.join.js","webpack:///./node_modules/core-js/internals/string-punycode-to-ascii.js","webpack:///./node_modules/bootstrap-vue/esm/components/alert/alert.js","webpack:///./node_modules/core-js/modules/es.typed-array.iterator.js","webpack:///./node_modules/core-js/internals/array-buffer.js","webpack:///./node_modules/core-js/modules/es.typed-array.some.js","webpack:///./node_modules/core-js/modules/es.typed-array.to-string.js","webpack:///./node_modules/core-js/modules/es.typed-array.fill.js","webpack:///./node_modules/core-js/internals/typed-array-constructor.js","webpack:///./node_modules/core-js/internals/ieee754.js","webpack:///./node_modules/core-js/internals/array-fill.js","webpack:///./node_modules/core-js/modules/es.typed-array.includes.js","webpack:///./node_modules/core-js/modules/es.string.ends-with.js","webpack:///./node_modules/core-js/internals/typed-array-constructors-require-wrappers.js","webpack:///./node_modules/bootstrap-vue/esm/components/tooltip/helpers/bv-popper.js","webpack:///./node_modules/bootstrap-vue/esm/components/tooltip/helpers/bv-tooltip-template.js","webpack:///./node_modules/bootstrap-vue/esm/components/tooltip/helpers/bv-tooltip.js","webpack:///./node_modules/core-js/modules/web.url-search-params.js","webpack:///./node_modules/bootstrap-vue/esm/constants/date.js","webpack:///./node_modules/core-js/internals/get-iterator.js","webpack:///./node_modules/core-js/modules/es.typed-array.copy-within.js","webpack:///./node_modules/core-js/internals/typed-array-from.js","webpack:///./node_modules/core-js/modules/es.array.join.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-custom.js","webpack:///./node_modules/core-js/modules/es.typed-array.every.js","webpack:///./node_modules/core-js/internals/array-buffer-native.js","webpack:///./node_modules/core-js/modules/es.array-buffer.slice.js","webpack:///./node_modules/core-js/modules/es.typed-array.to-locale-string.js","webpack:///./node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js","webpack:///./src/components/FileUploader.vue?a79e","webpack:///src/components/FileUploader.vue","webpack:///./src/components/FileUploader.vue?64cb","webpack:///./src/components/FileUploader.vue","webpack:///./node_modules/bootstrap-vue/esm/components/sidebar/sidebar.js","webpack:///./node_modules/core-js/modules/es.typed-array.filter.js","webpack:///./node_modules/bootstrap-vue/esm/components/calendar/calendar.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-datepicker/form-datepicker.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-checkbox/form-checkbox.js","webpack:///./node_modules/bootstrap-vue/esm/utils/loose-index-of.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-file/form-file.js","webpack:///./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///./src/@core/utils/utils.js","webpack:///./node_modules/core-js/modules/es.typed-array.reduce.js","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group-append.js","webpack:///./node_modules/core-js/modules/es.typed-array.reverse.js","webpack:///./node_modules/core-js/modules/es.typed-array.find.js","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group-text.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-radio-check.js","webpack:///./node_modules/core-js/internals/array-reduce.js","webpack:///./node_modules/core-js/modules/es.typed-array.for-each.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-text.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/core-js/internals/array-last-index-of.js","webpack:///./src/services/file.service.js","webpack:///./node_modules/core-js/modules/es.typed-array.index-of.js","webpack:///./node_modules/core-js/internals/array-buffer-view-core.js","webpack:///./node_modules/core-js/internals/to-positive-integer.js"],"names":["_defineProperty","obj","key","value","Object","defineProperty","enumerable","configurable","writable","props","label","role","small","tag","type","variant","BSpinner","extend","name","functional","render","h","_ref","_class","data","slots","scopedSlots","$slots","$scopedSlots","$label","staticClass","attrs","class","concat","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","prototype","toString","call","slice","constructor","Array","from","test","len","length","arr2","Symbol","iterator","_arr","_n","_d","_e","undefined","_s","_i","next","done","push","err","isArray","_construct","Parent","args","Class","_isNativeReflectConstruct","Reflect","construct","a","apply","Constructor","Function","bind","instance","_setPrototypeOf","arguments","sham","Proxy","Date","e","p","setPrototypeOf","__proto__","createDate","_len","_key","parseYMD","date","trim","_date$split$map","split","map","v","_date$split$map2","year","month","day","getFullYear","getMonth","getDate","formatYMD","resolveLocale","locales","calendar","filter","fmt","Intl","DateTimeFormat","resolvedOptions","locale","createDateFormatter","options","dtf","format","datesEqual","date1","date2","firstDateOfMonth","setDate","lastDateOfMonth","setMonth","addYears","numberOfYears","setFullYear","oneMonthAgo","oneMonthAhead","oneYearAgo","oneYearAhead","oneDecadeAgo","oneDecadeAhead","constrainDate","min","max","_vm","this","_h","$createElement","_c","_self","isSidebarActive","on","$event","refCategoryUserList","refreshData","ref","actions","tableColumns","tableActions","fetchCategoryUsers","filters","deleteCategoryUser","_u","fn","item","avatar","avatarText","nombreCompleto","proxy","_v","nombreUsuario","tipoAsignacion","onAccessControlChange","ticketCategoriaUsuarioId","puedeLeer","model","callback","$$v","$set","expression","puedeReparar","staticRenderFns","resetForm","val","$emit","hide","$t","handleSubmit","preventDefault","onSubmit","errors","$store","state","appConfig","isRTL","users","option","$can","ticketCategoriaUsuario","directives","rawName","modifiers","components","BSidebar","BForm","BRow","BFormGroup","BButton","BFormInvalidFeedback","vSelect","ValidationObserver","ValidationProvider","Boolean","required","setup","ticketCategoriaId","fetchCategoryAvalibleUsers","router","loadAvalibleUsers","createCategoryUser","optionService","refFormObserver","component","List","CategoryUserAdd","BMedia","BAvatar","BLink","BFormCheckbox","fetchCategoryUser","pathCategoryUser","ticketUsuarioCategoriaId","toInteger","toLength","module","exports","it","number","RangeError","fails","wellKnownSymbol","IS_PURE","ITERATOR","url","URL","searchParams","result","pathname","forEach","toJSON","sort","href","get","String","URLSearchParams","username","host","hash","title","replacer","str","capitalizedArray","word","capitalized","charAt","toUpperCase","join","nameArray","toObject","toAbsoluteIndex","Math","copyWithin","target","start","O","to","end","count","inc","ArrayBufferViewCore","speciesConstructor","aTypedArray","exportTypedArrayMethod","begin","beginIndex","buffer","byteOffset","BYTES_PER_ELEMENT","toPositiveInteger","BYTES","offset","$sort","comparefn","b","autoBom","console","warn","Blob","c","d","XMLHttpRequest","open","responseType","onload","g","response","onerror","error","send","status","dispatchEvent","MouseEvent","document","createEvent","initMouseEvent","window","f","self","global","navigator","userAgent","saveAs","HTMLAnchorElement","webkitURL","j","createElement","download","rel","origin","location","createObjectURL","setTimeout","revokeObjectURL","msSaveOrOpenBlob","body","innerText","HTMLElement","safari","FileReader","k","onloadend","replace","readAsDataURL","l","m","$reduceRight","right","callbackfn","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","sym","getOwnPropertyDescriptor","_objectSpread","source","getOwnPropertyDescriptors","defineProperties","BV_TOOLTIP","DefaultTrigger","validTriggers","focus","hover","click","blur","manual","htmlRE","noninteractiveRE","noFadeRE","placementRE","boundaryRE","delayRE","delayShowRE","delayHideRE","offsetRE","variantRE","spacesRE","parseBindings","bindings","vnode","config","trigger","placement","fallbackPlacement","container","animation","id","html","interactive","disabled","delay","boundary","boundaryPadding","customClass","show","arg","mod","selectedTriggers","toLowerCase","applyTooltip","el","$parent","context","parent","_scopeId","__bv_prev_data__","$on","updateData","triggers","noFade","oldData","newData","prop","removeTooltip","$destroy","VBTooltip","componentUpdated","$nextTick","unbind","_watch","_makeModelMixin","defaultValue","validator","modelMixin","mixin","modelProps","MODEL_PROP_NAME","MODEL_EVENT_NAME","event","ELLIPSIS_THRESHOLD","DEFAULT_LIMIT","startNumber","numberOfPages","_","classes","limit","page","keyCode","immediatePropagation","currentTarget","align","ariaLabel","ellipsisClass","ellipsisText","firstClass","firstNumber","firstText","hideEllipsis","hideGotoEndButtons","labelFirstPage","labelLastPage","labelNextPage","labelPage","labelPrevPage","lastClass","lastNumber","lastText","nextClass","nextText","pageClass","pills","prevClass","prevText","size","paginationMixin","mixins","currentPage","localNumberOfPages","localLimit","computed","btnSize","alignment","styleClass","computedCurrentPage","paginationParams","showFirstDots","showLastDots","numberOfLinks","math","lastPageNumber","pageList","_this$paginationParam","pages","idx","_i2","_i3","watch","newValue","oldValue","created","_this","methods","handleKeyNav","shiftKey","isNav","propagation","focusFirst","focusPrev","focusLast","focusNext","getButtons","$el","btn","focusCurrent","_this2","find","_this3","_this4","reverse","_this5","buttons","index","indexOf","_this6","_this7","pageNumbers","_this$paginationParam2","fill","$buttons","isActivePage","pageNumber","noCurrentPage","makeEndBtn","linkTo","btnSlot","btnText","btnClass","pageTest","isDisabled","scope","$btnContent","normalizeSlot","$inner","linkProps","tabindex","ariaControls","onClick","keydown","makeEllipsis","isLast","makePageButton","active","tabIndex","btnContent","makePage","content","$firstPageBtn","$lastPageBtn","$pagination","DEFAULT_PER_PAGE","DEFAULT_TOTAL_ROWS","perPage","totalRows","BPagination","pageSizeNumberOfPages","clickEvt","cancelable","vueTarget","defaultPrevented","contains","pageNum","aTypedArrayConstructor","$slice","FORCED","Int8Array","list","C","EOF","$","DESCRIPTORS","USE_NATIVE_URL","redefine","anInstance","has","assign","arrayFrom","codeAt","toASCII","setToStringTag","URLSearchParamsModule","InternalStateModule","NativeURL","getInternalSearchParamsState","getState","setInternalState","set","getInternalURLState","getterFor","floor","pow","INVALID_AUTHORITY","INVALID_SCHEME","INVALID_HOST","INVALID_PORT","ALPHA","ALPHANUMERIC","DIGIT","HEX_START","OCT","DEC","HEX","FORBIDDEN_HOST_CODE_POINT","FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT","LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE","TAB_AND_NEW_LINE","parseHost","input","codePoints","parseIPv6","isSpecial","parseIPv4","percentEncode","C0ControlPercentEncodeSet","partsLength","numbers","part","radix","ipv4","parts","pop","parseInt","numbersSeen","ipv4Piece","swaps","swap","address","pieceIndex","compress","pointer","char","findLongestZeroSequence","ipv6","maxIndex","maxLength","currStart","currLength","serializeHost","ignore0","unshift","fragmentPercentEncodeSet","pathPercentEncodeSet","userinfoPercentEncodeSet","code","encodeURIComponent","specialSchemes","ftp","file","http","https","ws","wss","scheme","includesCredentials","password","cannotHaveUsernamePasswordPort","cannotBeABaseURL","isWindowsDriveLetter","string","normalized","second","startsWithWindowsDriveLetter","third","shortenURLsPath","path","pathSize","isSingleDot","segment","isDoubleDot","SCHEME_START","SCHEME","NO_SCHEME","SPECIAL_RELATIVE_OR_AUTHORITY","PATH_OR_AUTHORITY","RELATIVE","RELATIVE_SLASH","SPECIAL_AUTHORITY_SLASHES","SPECIAL_AUTHORITY_IGNORE_SLASHES","AUTHORITY","HOST","HOSTNAME","PORT","FILE","FILE_SLASH","FILE_HOST","PATH_START","PATH","CANNOT_BE_A_BASE_URL_PATH","QUERY","FRAGMENT","parseURL","stateOverride","base","bufferCodePoints","failure","seenAt","seenBracket","seenPasswordToken","port","query","fragment","codePoint","encodedCodePoints","shift","URLConstructor","baseState","that","urlString","searchParamsState","updateSearchParams","updateURL","serializeURL","getOrigin","protocol","getProtocol","getUsername","getPassword","getHost","hostname","getHostname","getPort","getPathname","search","getSearch","getSearchParams","getHash","URLPrototype","output","accessorDescriptor","getter","setter","nativeCreateObjectURL","nativeRevokeObjectURL","blob","forced","searchQuery","searchPlaceholder","staticStyle","tableColumnsValue","refetchRecordsFunction","sortByValue","isSortDirDesc","_l","slotName","_t","totalRecords","action","disabledCondition","aclAction","aclResource","routeName","$router","params","resolveTableActionParams","icon","dataMeta","Showing","of","onChangePage","uploadTemplateSelectCustomer","uploadTemplateFunction","refTable","refresh","success","deleteRecord","uploading","uploadErrors","templateFile","mensajeLecturaExcel","onDeleteFile","hojas","selectedSheet","selectCustomer","customers","r","selectedCustomer","loadTemplate","onUploadAgain","BModal","BAlert","FileUploader","heightFade","default","fetchOptions","refModal","emit","perPageOptions","perPageValue","searchQueryValue","onFilter","toolTip","routeParams","resolveComponent","multiple","BFormDatepicker","domainName","domainTextOptions","fetchTextOptions","ListFilterModal","BCol","BDropdown","BDropdownItem","BFormInput","ListFilter","Number","BCard","BTable","BCardText","ListHeader","ExcelTemplateUploader","keyField","sortBy","sortDirDesc","controllerName","modelName","refetchRecords","refetchRecordsName","uploadTemplate","fetchReport","fetchTemplate","deleteMethod","reportName","templateName","tableStore","metaDataViewModel","Fields","offSet","element","axios","records","total","downloadReportAction","i18n","downloadReport","downloadTemplateAction","downloadTemplate","tableActionDelete","refModalDelete","recordIdForDelete","uploadTemplateAction","localItemsCount","store","tableAction","param","refExcelTemplateUploader","beforeMount","$swal","text","confirmButton","buttonsStyling","$lastIndexOf","searchElement","verticalAlign","BMediaAside","children","BMediaBody","noBody","rightAlign","$children","slotScope","$aside","BInputGroupPrepend","append","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","$findIndex","findIndex","predicate","toOffset","arrayLike","src","$map","mapfn","isText","BInputGroupAddon","formValidation","resetFormData","clearFormData","resetObserver","reset","getValidationState","dirty","validated","fieldRequired","changed","valid","nextTick","clearForm","createTypedArrayConstructor","init","appendHtml","prepend","prependHtml","BInputGroup","$prepend","hasPrependSlot","domProps","$append","hasAppendSlot","$join","separator","maxInt","tMin","tMax","skew","damp","initialBias","initialN","delimiter","regexNonASCII","regexSeparators","OVERFLOW_ERROR","baseMinusTMin","stringFromCharCode","fromCharCode","ucs2decode","counter","charCodeAt","extra","digitToBasic","digit","adapt","delta","numPoints","firstTime","encode","currentValue","inputLength","bias","basicLength","handledCPCount","handledCPCountPlusOne","q","t","qMinusT","baseMinusT","encoded","labels","parseCountDown","parseShow","dismissLabel","dismissible","fade","countDown","localShow","clearCountDownInterval","$_countDownTimeout","$_filterTimer","beforeDestroy","dismiss","clearTimeout","$alert","$dismissButton","ArrayIterators","Uint8Array","arrayValues","values","arrayKeys","arrayEntries","entries","nativeTypedArrayIterator","CORRECT_ITER_NAME","typedArrayValues","NATIVE_ARRAY_BUFFER","createNonEnumerableProperty","redefineAll","toIndex","IEEE754","getPrototypeOf","getOwnPropertyNames","arrayFill","getInternalState","ARRAY_BUFFER","DATA_VIEW","PROTOTYPE","WRONG_LENGTH","WRONG_INDEX","NativeArrayBuffer","$ArrayBuffer","$DataView","$DataViewPrototype","ObjectPrototype","packIEEE754","pack","unpackIEEE754","unpack","packInt8","packInt16","packInt32","unpackInt32","packFloat32","packFloat64","addGetter","view","isLittleEndian","intIndex","byteLength","bytes","conversion","NaN","ArrayBufferPrototype","testView","nativeSetInt8","setInt8","getInt8","setUint8","unsafe","bufferLength","getUint8","getInt16","getUint16","getInt32","getUint32","getFloat32","getFloat64","setInt16","setUint16","setInt32","setUint32","setFloat32","setFloat64","ArrayBuffer","DataView","$some","some","Uint8ArrayPrototype","arrayToString","arrayJoin","IS_NOT_ARRAY_METHOD","$fill","TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS","ArrayBufferModule","createPropertyDescriptor","toPrimitive","classof","isObject","create","typedArrayFrom","setSpecies","definePropertyModule","getOwnPropertyDescriptorModule","inheritIfRequired","nativeDefineProperty","nativeGetOwnPropertyDescriptor","round","NATIVE_ARRAY_BUFFER_VIEWS","TYPED_ARRAY_TAG","TypedArray","TypedArrayPrototype","isTypedArray","fromList","isArrayBuffer","klass","isTypedArrayIndex","wrappedGetOwnPropertyDescriptor","wrappedDefineProperty","descriptor","stat","TYPE","wrapper","CLAMPED","match","CONSTRUCTOR_NAME","GETTER","SETTER","NativeTypedArrayConstructor","TypedArrayConstructor","TypedArrayConstructorPrototype","exported","addElement","dummy","typedArrayOffset","$length","$len","Infinity","abs","log","LN2","mantissaLength","exponent","mantissa","exponentLength","eMax","eBias","rt","sign","nBits","argumentsLength","endPos","$includes","includes","notARegExp","requireObjectCoercible","correctIsRegExpLogic","nativeEndsWith","endsWith","CORRECT_IS_REGEXP_LOGIC","MDN_POLYFILL_BUG","proto","searchString","endPosition","checkCorrectnessOfIteration","iterable","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","TOPLEFT","TOPRIGHT","RIGHTTOP","RIGHTBOTTOM","BOTTOMLEFT","BOTTOMRIGHT","LEFTTOP","LEFTBOTTOM","OffsetMap","arrowPadding","BVPopper","attachment","getAttachment","templateType","popperConfig","getOffset","flip","behavior","arrow","preventOverflow","padding","boundariesElement","onCreate","originalPlacement","popperPlacementChange","onUpdate","$_popper","popperCreate","handleDestroy","$once","updated","updatePopper","destroyPopper","destroyed","parentNode","removeChild","$refs","arrowOffset","width","destroy","scheduleUpdate","renderTemplate","appear","beforeEnter","afterEnter","beforeLeave","afterLeave","BVTooltipTemplate","extends","templateClasses","noninteractive","templateAttributes","$attrs","scopedStyleAttrs","templateListeners","mouseenter","mouseleave","focusin","focusout","$title","innerHTML","MODAL_SELECTOR","ROOT_EVENT_NAME_MODAL_HIDDEN","SIDEBAR_SELECTOR","CONTAINER_SELECTOR","DROPDOWN_CLASS","DROPDOWN_OPEN_SELECTOR","DATA_TITLE_ATTR","templateData","BVTooltip","activeTrigger","computedId","computedDelay","computedTriggers","identity","isWithActiveTrigger","computedTemplateData","newTriggers","oldTriggers","unListen","array","listen","handleTemplateUpdate","disable","enable","$_tip","$_hoverTimeout","$_hoverState","$_visibleInterval","$_enabled","$_noop","noop","getTarget","scopeId","deactivated","forceHide","setWhileOpenListeners","clearHoverTimeout","clearVisibilityInterval","destroyTemplate","getTemplate","titleUpdated","fixTitle","createTemplateAndShow","getContainer","Template","$tip","propsData","getPlacementTarget","getBoundary","onTemplateShow","onTemplateShown","onTemplateHide","onTemplateHidden","handleEvent","$mount","appendChild","hideTemplate","clearActiveTriggers","localPlacementTarget","_unused","removeAriaDescribedby","restoreTitle","getTemplateElement","dropdownOpen","showEvt","buildEvent","emitEvent","addAriaDescribedby","force","tip","hideEvt","prevHoverState","leave","getTargetId","isInModal","isDropdown","clearInterval","desc","relatedTarget","componentId","bvEvent","emitOnRoot","setRootListener","events","$root","method","doHide","doShow","doDisable","doEnable","setModalListener","setDropdownListener","visibleCheck","setOnTouchStartListener","_this8","setInterval","_this9","documentElement","__vue__","enter","eventTarget","toggle","_this10","_this11","getBuiltIn","createIteratorConstructor","hasOwn","anObject","getIterator","getIteratorMethod","$fetch","Headers","URL_SEARCH_PARAMS","URL_SEARCH_PARAMS_ITERATOR","getInternalParamsState","getInternalIteratorState","plus","sequences","percentSequence","RegExp","percentDecode","sequence","decodeURIComponent","deserialize","serialize","parseSearchParams","attribute","entry","attributes","validateArgumentsLength","passed","URLSearchParamsIterator","kind","step","URLSearchParamsConstructor","iteratorMethod","entryIterator","entryNext","first","URLSearchParamsPrototype","splice","getAll","found","entriesIndex","sliceIndex","boundFunction","fetch","headers","CALENDAR_GREGORY","CALENDAR_LONG","CALENDAR_NARROW","CALENDAR_SHORT","DATE_FORMAT_2_DIGIT","DATE_FORMAT_NUMERIC","$copyWithin","isArrayIteratorMethod","mapping","IndexedObject","toIndexedObject","arrayMethodIsStrict","nativeJoin","ES3_STRINGS","STRICT_METHOD","plain","formCustomMixin","custom","$every","every","nativeArrayBufferSlice","INCORRECT_SLICE","fin","viewSource","viewTarget","$toLocaleString","toLocaleString","TO_LOCALE_STRING_BUG","_createForOfIteratorHelper","allowArrayLike","F","s","normalCompletion","didErr","_e2","importingFile","onUploadFile","BFormFile","fileName","fileType","createFile","createExcelTemplateFile","reader","readAsArrayBuffer","image","blobURL","blobResize","arrayBuffer","byteArray","uploadFile","CLASS_NAME","ROOT_ACTION_EVENT_NAME_REQUEST_STATE","ROOT_ACTION_EVENT_NAME_TOGGLE","ROOT_EVENT_NAME_STATE","ROOT_EVENT_NAME_SYNC_STATE","ariaLabelledby","backdrop","backdropVariant","bgVariant","bodyClass","closeLabel","footerClass","headerClass","lazy","noCloseOnBackdrop","noCloseOnEsc","noCloseOnRouteChange","noEnforceFocus","noHeader","noHeaderClose","noSlide","shadow","sidebarClass","textVariant","zIndex","renderHeaderTitle","ctx","safeId","renderHeaderClose","renderHeader","$content","$close","renderBody","renderFooter","$footer","renderContent","$header","isOpen","renderBackdrop","onBackdropClick","inheritAttrs","visible","transitionProps","css","enterClass","enterActiveClass","enterToClass","leaveClass","leaveActiveClass","leaveToClass","hasTitle","hasNormalizedSlot","titleId","computedAttrs","bvAttrs","emitState","fullPath","$_returnFocusEl","mounted","listenOnRoot","handleToggle","handleSync","activated","emitSync","onKeydown","onTopTrapFocus","tabables","enforceFocus","onBottomTrapFocus","onBeforeEnter","onAfterEnter","onAfterLeave","$sidebar","style","$backdrop","$tabTrapTop","$tabTrapBottom","$filter","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","readonly","roleDescription","selectedVariant","showDecadeNav","startWeekday","todayVariant","valueAsDate","weekdayHeaderFormat","BCalendar","selected","selectedYMD","activeYMD","getToday","gridHasFocus","isLive","valueId","widgetId","navId","gridId","gridCaptionId","gridHelpId","activeId","selectedDate","activeDate","computedMin","computedMax","computedWeekStarts","computedLocale","computedDateDisabledFn","computedDateInfoFn","calendarLocale","calendarYear","calendarMonth","calendarFirstDay","calendarDaysInMonth","computedVariant","computedTodayVariant","computedNavButtonVariant","dir","selectedFormatted","formatDateString","activeFormatted","dateDisabled","rtl","dateOutOfRange","rangeFn","ymd","hour","minute","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","dayYMD","dayDisabled","dateInfo","isThisMonth","info","calendarHeadings","old","newYMD","oldYMD","setLive","grid","emitSelected","setGridFocusFlag","onKeydownWrapper","altKey","ctrlKey","checkDate","constrainedToday","onKeydownGrid","onClickDay","clickedDate","gotoPrevDecade","gotoPrevYear","gotoPrevMonth","gotoCurrentMonth","gotoNextMonth","gotoNextYear","gotoNextDecade","onHeaderClick","hideDecadeNav","todayYMD","highlightToday","for","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","pointerEvents","$gridHelp","$grid","$slot","$widget","lang","calendarProps","formBtnLabelControlProps","calendarWidth","closeButton","closeButtonVariant","dark","labelCloseButton","labelResetButton","labelTodayButton","noCloseOnSelect","resetButton","resetButtonVariant","resetValue","todayButton","todayButtonVariant","localYMD","isVisible","localLocale","formattedValue","calendarYM","computedLang","computedResetValue","control","setAndClose","onSelected","onInput","onContext","onTodayButton","onResetButton","onCloseButton","onShow","onShown","onHidden","defaultButtonFn","isHovered","hasFocus","$props","placeholder","_label","_label2","$calendar","menuClass","shown","_objectSpread2","MODEL_PROP_NAME_INDETERMINATE","MODEL_EVENT_NAME_INDETERMINATE","inject","bvGroup","isChecked","checked","computedLocalChecked","isRadio","setIndeterminate","computedLocalCheckedWatcher","$input","indeterminate","handleChange","_ref$target","uncheckedValue","localChecked","isGroup","VALUE_EMPTY_DEPRECATED_MSG","isValidValue","getDataTransferItemEntry","getAsEntry","webkitGetAsEntry","getAllFileEntries","dataTransferItemList","traverseDirectories","Promise","all","isDirectory","getAllFileEntriesInDirectory","createReader","isFile","resolve","$path","directoryReader","entryPromises","readDirectoryEntries","readEntries","then","accept","browseText","capture","directory","dropPlaceholder","fileNameFormatter","noDrop","noDropPlaceholder","noTraverse","files","dragging","dropAllowed","computedAccept","extOrType","startMatch","endMatch","rx","computedCapture","form","webkitdirectory","computedFileNameFormatter","defaultFileNameFormatter","clonedFiles","flattenedFiles","fileNames","labelContent","allowed","filesTraversed","names","$_form","$form","isFileValid","isFilesArrayValid","setFiles","setInputFiles","dataTransfer","ClipboardEvent","clipboardData","DataTransfer","items","add","_unused2","handleFiles","isDrop","filteredFiles","focusHandler","onChange","_event$dataTransfer","webkitRelativePath","onDragenter","_event$dataTransfer2","dropEffect","onDragover","_event$dataTransfer3","onDragleave","onDrop","stateClass","change","dragenter","dragover","dragleave","drop","_typeof","today","$reduce","left","BInputGroupAppend","middle","$find","BInputGroupText","_methods","button","buttonVariant","inline","formRadioCheckMixin","isBtnMode","isPlain","isCustom","isSwitch","switches","switch","isInline","isRequired","computedName","groupName","computedForm","computedSize","computedState","computedButtonVariant","buttonClasses","_ref2","handleFocus","$button","aFunction","createMethod","IS_RIGHT","memo","$forEach","textTag","PROP","MOUSEENTER","MOUSELEAVE","createListener","listener","_ref$value","hasListener","handlerChanged","VBHover","dropdown","buttonOnly","BVFormBtnLabelControl","idButton","idLabel","idMenu","idWrapper","computedDir","setFocus","handleHover","hovered","invalid","btnScope","opened","mousedown","onMousedown","scale","$hidden","$menu","sizeFormClass","directionClass","boundaryClass","arrayMethodUsesToLength","nativeLastIndexOf","lastIndexOf","NEGATIVE_ZERO","USES_TO_LENGTH","ACCESSORS","1","fileService","common","throwError","API_URL","process","fetchFile","idArchivo","catch","fetchFileStreaming","fetchFileDigitalRecord","reject","fetchFileDigitalRecordStreaming","post","createFiles","archivos","$indexOf","NAME","uid","Int8ArrayPrototype","Uint8ClampedArray","Uint8ClampedArrayPrototype","isPrototypeOf","TO_STRING_TAG","opera","TYPED_ARRAY_TAG_REQIRED","TypedArrayConstructorsList","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigIntArrayConstructorsList","BigInt64Array","BigUint64Array","isView","ARRAY","KEY","property","exportTypedArrayStaticMethod"],"mappings":"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","file":"js/chunk-e2c933d6.5f21a0a8.js","sourcesContent":["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_SPINNER } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_LABEL } from '../../constants/slots';\nimport { normalizeSlot } from '../../utils/normalize-slot';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n label: makeProp(PROP_TYPE_STRING),\n role: makeProp(PROP_TYPE_STRING, 'status'),\n small: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'span'),\n type: makeProp(PROP_TYPE_STRING, 'border'),\n variant: makeProp(PROP_TYPE_STRING)\n}, NAME_SPINNER); // --- Main component ---\n// @vue/component\n\nexport var BSpinner = /*#__PURE__*/Vue.extend({\n name: NAME_SPINNER,\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 $slots = slots();\n var $scopedSlots = scopedSlots || {};\n var $label = normalizeSlot(SLOT_NAME_LABEL, {}, $scopedSlots, $slots) || props.label;\n\n if ($label) {\n $label = h('span', {\n staticClass: 'sr-only'\n }, $label);\n }\n\n return h(props.tag, mergeData(data, {\n attrs: {\n role: $label ? props.role || 'status' : null,\n 'aria-hidden': $label ? null : 'true'\n },\n class: (_class = {}, _defineProperty(_class, \"spinner-\".concat(props.type), props.type), _defineProperty(_class, \"spinner-\".concat(props.type, \"-sm\"), props.small), _defineProperty(_class, \"text-\".concat(props.variant), props.variant), _class)\n }), [$label || h()]);\n }\n});","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 render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('category-user-add',{attrs:{\"is-sidebar-active\":_vm.isSidebarActive},on:{\"update:isSidebarActive\":function($event){_vm.isSidebarActive=$event},\"update:is-sidebar-active\":function($event){_vm.isSidebarActive=$event},\"refresh-data\":function () { _vm.refCategoryUserList.refreshData() }}}),_c('list',{ref:\"refCategoryUserList\",attrs:{\"sort-by\":\"TicketCategoriaUsuarioId\",\"refetch-records-name\":\"usuarios\",\"key-field\":\"TicketCategoriaUsuarioId\",\"actions\":_vm.actions,\"table-columns\":_vm.tableColumns,\"table-actions\":_vm.tableActions,\"refetch-records\":_vm.fetchCategoryUsers,\"filters\":_vm.filters,\"delete-method\":_vm.deleteCategoryUser},on:{\"update:filters\":function($event){_vm.filters=$event}},scopedSlots:_vm._u([{key:\"cell(nombreUsuario)\",fn:function(data){return [_c('b-media',{attrs:{\"vertical-align\":\"center\"},scopedSlots:_vm._u([{key:\"aside\",fn:function(){return [_c('b-avatar',{attrs:{\"size\":\"32\",\"src\":data.item.avatar,\"text\":_vm.avatarText(data.item.nombreCompleto),\"variant\":\"light-danger\"}})]},proxy:true}],null,true)},[_c('b-link',{staticClass:\"font-weight-bold d-block text-nowrap\"},[_vm._v(\" \"+_vm._s(data.item.nombreCompleto)+\" \")]),_c('small',{staticClass:\"text-muted\"},[_vm._v(\"@\"+_vm._s(data.item.nombreUsuario))])],1)]}},{key:\"cell(puedeLeer)\",fn:function(data){return [_c('b-form-checkbox',{attrs:{\"disabled\":data.item.tipoAsignacion !== 'Directa'},on:{\"change\":function($event){return _vm.onAccessControlChange(data.item.ticketCategoriaUsuarioId, 'puedeLeer', data.item.puedeLeer)}},model:{value:(data.item.puedeLeer),callback:function ($$v) {_vm.$set(data.item, \"puedeLeer\", $$v)},expression:\"data.item.puedeLeer\"}})]}},{key:\"cell(puedeReparar)\",fn:function(data){return [_c('b-form-checkbox',{attrs:{\"disabled\":data.item.tipoAsignacion !== 'Directa'},on:{\"change\":function($event){return _vm.onAccessControlChange(data.item.ticketCategoriaUsuarioId, 'puedeReparar', data.item.puedeReparar)}},model:{value:(data.item.puedeReparar),callback:function ($$v) {_vm.$set(data.item, \"puedeReparar\", $$v)},expression:\"data.item.puedeReparar\"}})]}}])})],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('b-sidebar',{attrs:{\"id\":\"add-new-user-sidebar\",\"visible\":_vm.isSidebarActive,\"bg-variant\":\"white\",\"sidebar-class\":\"sidebar-lg\",\"shadow\":\"\",\"backdrop\":\"\",\"no-header\":\"\",\"right\":\"\",\"width\":\"500\"},on:{\"hidden\":_vm.resetForm,\"change\":function (val) { return _vm.$emit('update:is-sidebar-active', val); }},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar hide = ref.hide;\nreturn [_c('div',{staticClass:\"\\n d-flex\\n justify-content-between\\n align-items-center\\n content-sidebar-header\\n px-2\\n py-1\\n \"},[_c('h5',{staticClass:\"mb-0\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"AppUser.list.addNewUser\"))+\" \")]),_c('feather-icon',{staticClass:\"ml-1 cursor-pointer\",attrs:{\"icon\":\"XIcon\",\"size\":\"16\"},on:{\"click\":hide}})],1),_c('validation-observer',{ref:\"refFormObserver\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('b-form',{staticClass:\"p-2\",on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.onSubmit)},\"reset\":function($event){$event.preventDefault();return _vm.resetForm($event)}}},[_c('validation-provider',{attrs:{\"name\":_vm.$t('AppHelpDesk.columns.user'),\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('b-form-group',{attrs:{\"label\":_vm.$t('AppHelpDesk.columns.user'),\"label-for\":\"usuario\",\"state\":errors.length > 0 ? false : null}},[_c('v-select',{attrs:{\"id\":\"usuario\",\"dir\":_vm.$store.state.appConfig.isRTL ? 'rtl' : 'ltr',\"label\":\"nombre\",\"options\":_vm.users,\"reduce\":function (option) { return option.nombreUsuario; },\"disabled\":!_vm.$can('write', 'MesaAyuda')},model:{value:(_vm.ticketCategoriaUsuario.nombreUsuario),callback:function ($$v) {_vm.$set(_vm.ticketCategoriaUsuario, \"nombreUsuario\", $$v)},expression:\"ticketCategoriaUsuario.nombreUsuario\"}}),_c('b-form-invalid-feedback',{attrs:{\"state\":errors.length > 0 ? false : null}},[_vm._v(\" \"+_vm._s(errors[0])+\" \")])],1)]}}],null,true)}),(_vm.$can('write', 'MesaAyuda'))?_c('b-row',{staticClass:\"float-right mt-2 mb-2\"},[_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}}],staticClass:\"mr-2\",attrs:{\"variant\":\"primary\",\"type\":\"submit\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"Lists.Add\"))+\" \")])],1):_vm._e()],1)]}}],null,true)})]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n $emit('update:is-sidebar-active', val)\"\r\n >\r\n \r\n \r\n \r\n \r\n {{ $t(\"AppUser.list.addNewUser\") }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n 0 ? false : null\"\r\n >\r\n option.nombreUsuario\"\r\n :disabled=\"!$can('write', 'MesaAyuda')\"\r\n />\r\n 0 ? false : null\"\r\n >\r\n {{ errors[0] }}\r\n \r\n \r\n \r\n \r\n \r\n {{ $t(\"Lists.Add\") }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\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!./CategoryUserAdd.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!./CategoryUserAdd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CategoryUserAdd.vue?vue&type=template&id=24fb5e28&\"\nimport script from \"./CategoryUserAdd.vue?vue&type=script&lang=js&\"\nexport * from \"./CategoryUserAdd.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","\r\n \r\n { refCategoryUserList.refreshData() }\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ data.item.nombreCompleto }}\r\n \r\n @{{ data.item.nombreUsuario }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\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!./CategoryUsers.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!./CategoryUsers.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CategoryUsers.vue?vue&type=template&id=db9ca588&\"\nimport script from \"./CategoryUsers.vue?vue&type=script&lang=js&\"\nexport * from \"./CategoryUsers.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 toInteger = require('../internals/to-integer');\nvar toLength = require('../internals/to-length');\n\n// `ToIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-toindex\nmodule.exports = function (it) {\n if (it === undefined) return 0;\n var number = toInteger(it);\n var length = toLength(number);\n if (number !== length) throw RangeError('Wrong length or index');\n return length;\n};\n","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = !fails(function () {\n var url = new URL('b?a=1&b=2&c=3', 'http://a');\n var searchParams = url.searchParams;\n var result = '';\n url.pathname = 'c%20d';\n searchParams.forEach(function (value, key) {\n searchParams['delete']('b');\n result += key + value;\n });\n return (IS_PURE && !url.toJSON)\n || !searchParams.sort\n || url.href !== 'http://a/c%20d?a=1&c=3'\n || searchParams.get('c') !== '3'\n || String(new URLSearchParams('?a=1')) !== 'a=1'\n || !searchParams[ITERATOR]\n // throws in Edge\n || new URL('https://a@b').username !== 'a'\n || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b'\n // not punycoded in Edge\n || new URL('http://тест').host !== 'xn--e1aybc'\n // not escaped in Chrome 62-\n || new URL('http://a#б').hash !== '#%D0%B1'\n // fails in Chrome 66-\n || result !== 'a1c3'\n // throws in Safari\n || new URL('http://x', undefined).host !== 'x';\n});\n","import { isToday } from './utils'\r\n\r\nexport const kFormatter = num => (num > 999 ? `${(num / 1000).toFixed(1)}k` : num)\r\n\r\nexport const title = (value, replacer = ' ') => {\r\n if (!value) return ''\r\n const str = value.toString()\r\n\r\n const arr = str.split(replacer)\r\n const capitalizedArray = []\r\n arr.forEach(word => {\r\n const capitalized = word.charAt(0).toUpperCase() + word.slice(1)\r\n capitalizedArray.push(capitalized)\r\n })\r\n return capitalizedArray.join(' ')\r\n}\r\n\r\nexport const avatarText = value => {\r\n if (!value) return ''\r\n const nameArray = value.split(' ')\r\n return nameArray.map(word => word.charAt(0).toUpperCase()).join('')\r\n}\r\n\r\n/**\r\n * Format and return date in Humanize format\r\n * Intl docs: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/format\r\n * Intl Constructor: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat\r\n * @param {String} value date to format\r\n * @param {Object} formatting Intl object to format with\r\n */\r\nexport const formatDate = (value, formatting = { month: 'short', day: 'numeric', year: 'numeric' }) => {\r\n if (!value) return value\r\n return new Intl.DateTimeFormat('en-US', formatting).format(new Date(value))\r\n}\r\n\r\n/**\r\n * Return short human friendly month representation of date\r\n * Can also convert date to only time if date is of today (Better UX)\r\n * @param {String} value date to format\r\n * @param {Boolean} toTimeForCurrentDay Shall convert to time if day is today/current\r\n */\r\nexport const formatDateToMonthShort = (value, toTimeForCurrentDay = true) => {\r\n const date = new Date(value)\r\n let formatting = { month: 'short', day: 'numeric' }\r\n\r\n if (toTimeForCurrentDay && isToday(date)) {\r\n formatting = { hour: 'numeric', minute: 'numeric' }\r\n }\r\n\r\n return new Intl.DateTimeFormat('en-US', formatting).format(new Date(value))\r\n}\r\n\r\n// Strip all the tags from markup and return plain text\r\nexport const filterTags = value => value.replace(/<\\/?[^>]+(>|$)/g, '')\r\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\n\nvar min = Math.min;\n\n// `Array.prototype.copyWithin` method implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.copywithin\nmodule.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) {\n var O = toObject(this);\n var len = toLength(O.length);\n var to = toAbsoluteIndex(target, len);\n var from = toAbsoluteIndex(start, len);\n var end = arguments.length > 2 ? arguments[2] : undefined;\n var count = min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to);\n var inc = 1;\n if (from < to && to < from + count) {\n inc = -1;\n from += count - 1;\n to += count - 1;\n }\n while (count-- > 0) {\n if (from in O) O[to] = O[from];\n else delete O[to];\n to += inc;\n from += inc;\n } return O;\n};\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar speciesConstructor = require('../internals/species-constructor');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.subarray` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.subarray\nexportTypedArrayMethod('subarray', function subarray(begin, end) {\n var O = aTypedArray(this);\n var length = O.length;\n var beginIndex = toAbsoluteIndex(begin, length);\n return new (speciesConstructor(O, O.constructor))(\n O.buffer,\n O.byteOffset + beginIndex * O.BYTES_PER_ELEMENT,\n toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - beginIndex)\n );\n});\n","var toPositiveInteger = require('../internals/to-positive-integer');\n\nmodule.exports = function (it, BYTES) {\n var offset = toPositiveInteger(it);\n if (offset % BYTES) throw RangeError('Wrong offset');\n return offset;\n};\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.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!./List.vue?vue&type=style&index=0&id=1b3d6a78&lang=scss&scoped=true&\"","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar $sort = [].sort;\n\n// `%TypedArray%.prototype.sort` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.sort\nexportTypedArrayMethod('sort', function sort(comparefn) {\n return $sort.call(aTypedArray(this), comparefn);\n});\n","(function(a,b){if(\"function\"==typeof define&&define.amd)define([],b);else if(\"undefined\"!=typeof exports)b();else{b(),a.FileSaver={exports:{}}.exports}})(this,function(){\"use strict\";function b(a,b){return\"undefined\"==typeof b?b={autoBom:!1}:\"object\"!=typeof b&&(console.warn(\"Deprecated: Expected third argument to be a object\"),b={autoBom:!b}),b.autoBom&&/^\\s*(?:text\\/\\S*|application\\/xml|\\S*\\/\\S*\\+xml)\\s*;.*charset\\s*=\\s*utf-8/i.test(a.type)?new Blob([\"\\uFEFF\",a],{type:a.type}):a}function c(a,b,c){var d=new XMLHttpRequest;d.open(\"GET\",a),d.responseType=\"blob\",d.onload=function(){g(d.response,b,c)},d.onerror=function(){console.error(\"could not download file\")},d.send()}function d(a){var b=new XMLHttpRequest;b.open(\"HEAD\",a,!1);try{b.send()}catch(a){}return 200<=b.status&&299>=b.status}function e(a){try{a.dispatchEvent(new MouseEvent(\"click\"))}catch(c){var b=document.createEvent(\"MouseEvents\");b.initMouseEvent(\"click\",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),a.dispatchEvent(b)}}var f=\"object\"==typeof window&&window.window===window?window:\"object\"==typeof self&&self.self===self?self:\"object\"==typeof global&&global.global===global?global:void 0,a=f.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),g=f.saveAs||(\"object\"!=typeof window||window!==f?function(){}:\"download\"in HTMLAnchorElement.prototype&&!a?function(b,g,h){var i=f.URL||f.webkitURL,j=document.createElement(\"a\");g=g||b.name||\"download\",j.download=g,j.rel=\"noopener\",\"string\"==typeof b?(j.href=b,j.origin===location.origin?e(j):d(j.href)?c(b,g,h):e(j,j.target=\"_blank\")):(j.href=i.createObjectURL(b),setTimeout(function(){i.revokeObjectURL(j.href)},4E4),setTimeout(function(){e(j)},0))}:\"msSaveOrOpenBlob\"in navigator?function(f,g,h){if(g=g||f.name||\"download\",\"string\"!=typeof f)navigator.msSaveOrOpenBlob(b(f,h),g);else if(d(f))c(f,g,h);else{var i=document.createElement(\"a\");i.href=f,i.target=\"_blank\",setTimeout(function(){e(i)})}}:function(b,d,e,g){if(g=g||open(\"\",\"_blank\"),g&&(g.document.title=g.document.body.innerText=\"downloading...\"),\"string\"==typeof b)return c(b,d,e);var h=\"application/octet-stream\"===b.type,i=/constructor/i.test(f.HTMLElement)||f.safari,j=/CriOS\\/[\\d]+/.test(navigator.userAgent);if((j||h&&i||a)&&\"undefined\"!=typeof FileReader){var k=new FileReader;k.onloadend=function(){var a=k.result;a=j?a:a.replace(/^data:[^;]*;/,\"data:attachment/file;\"),g?g.location.href=a:location=a,g=null},k.readAsDataURL(b)}else{var l=f.URL||f.webkitURL,m=l.createObjectURL(b);g?g.location=m:location.href=m,g=null,setTimeout(function(){l.revokeObjectURL(m)},4E4)}});f.saveAs=g.saveAs=g,\"undefined\"!=typeof module&&(module.exports=g)});\n\n//# sourceMappingURL=FileSaver.min.js.map","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $reduceRight = require('../internals/array-reduce').right;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.reduceRicht` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.reduceright\nexportTypedArrayMethod('reduceRight', function reduceRight(callbackfn /* , initialValue */) {\n return $reduceRight(aTypedArray(this), callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined);\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_TOOLTIP } from '../../constants/components';\nimport { IS_BROWSER } from '../../constants/env';\nimport { EVENT_NAME_SHOW } from '../../constants/events';\nimport { concat } from '../../utils/array';\nimport { getComponentConfig } from '../../utils/config';\nimport { getScopeId } from '../../utils/get-scope-id';\nimport { identity } from '../../utils/identity';\nimport { isFunction, isNumber, isPlainObject, isString, isUndefined, isUndefinedOrNull } from '../../utils/inspect';\nimport { looseEqual } from '../../utils/loose-equal';\nimport { toInteger } from '../../utils/number';\nimport { keys } from '../../utils/object';\nimport { BVTooltip } from '../../components/tooltip/helpers/bv-tooltip'; // Key which we use to store tooltip object on element\n\nvar BV_TOOLTIP = '__BV_Tooltip__'; // Default trigger\n\nvar DefaultTrigger = 'hover focus'; // Valid event triggers\n\nvar validTriggers = {\n focus: true,\n hover: true,\n click: true,\n blur: true,\n manual: true\n}; // Directive modifier test regular expressions. Pre-compile for performance\n\nvar htmlRE = /^html$/i;\nvar noninteractiveRE = /^noninteractive$/i;\nvar noFadeRE = /^nofade$/i;\nvar placementRE = /^(auto|top(left|right)?|bottom(left|right)?|left(top|bottom)?|right(top|bottom)?)$/i;\nvar boundaryRE = /^(window|viewport|scrollParent)$/i;\nvar delayRE = /^d\\d+$/i;\nvar delayShowRE = /^ds\\d+$/i;\nvar delayHideRE = /^dh\\d+$/i;\nvar offsetRE = /^o-?\\d+$/i;\nvar variantRE = /^v-.+$/i;\nvar spacesRE = /\\s+/; // Build a Tooltip config based on bindings (if any)\n// Arguments and modifiers take precedence over passed value config object\n\nvar parseBindings = function parseBindings(bindings, vnode)\n/* istanbul ignore next: not easy to test */\n{\n // We start out with a basic config\n var config = {\n title: undefined,\n trigger: '',\n // Default set below if needed\n placement: 'top',\n fallbackPlacement: 'flip',\n container: false,\n // Default of body\n animation: true,\n offset: 0,\n id: null,\n html: false,\n interactive: true,\n disabled: false,\n delay: getComponentConfig(NAME_TOOLTIP, 'delay', 50),\n boundary: String(getComponentConfig(NAME_TOOLTIP, 'boundary', 'scrollParent')),\n boundaryPadding: toInteger(getComponentConfig(NAME_TOOLTIP, 'boundaryPadding', 5), 0),\n variant: getComponentConfig(NAME_TOOLTIP, 'variant'),\n customClass: getComponentConfig(NAME_TOOLTIP, 'customClass')\n }; // Process `bindings.value`\n\n if (isString(bindings.value) || isNumber(bindings.value)) {\n // Value is tooltip content (HTML optionally supported)\n config.title = bindings.value;\n } else if (isFunction(bindings.value)) {\n // Title generator function\n config.title = bindings.value;\n } else if (isPlainObject(bindings.value)) {\n // Value is config object, so merge\n config = _objectSpread(_objectSpread({}, config), bindings.value);\n } // If title is not provided, try title attribute\n\n\n if (isUndefined(config.title)) {\n // Try attribute\n var data = vnode.data || {};\n config.title = data.attrs && !isUndefinedOrNull(data.attrs.title) ? data.attrs.title : undefined;\n } // Normalize delay\n\n\n if (!isPlainObject(config.delay)) {\n config.delay = {\n show: toInteger(config.delay, 0),\n hide: toInteger(config.delay, 0)\n };\n } // If argument, assume element ID of container element\n\n\n if (bindings.arg) {\n // Element ID specified as arg\n // We must prepend '#' to become a CSS selector\n config.container = \"#\".concat(bindings.arg);\n } // Process modifiers\n\n\n keys(bindings.modifiers).forEach(function (mod) {\n if (htmlRE.test(mod)) {\n // Title allows HTML\n config.html = true;\n } else if (noninteractiveRE.test(mod)) {\n // Noninteractive\n config.interactive = false;\n } else if (noFadeRE.test(mod)) {\n // No animation\n config.animation = false;\n } else if (placementRE.test(mod)) {\n // Placement of tooltip\n config.placement = mod;\n } else if (boundaryRE.test(mod)) {\n // Boundary of tooltip\n mod = mod === 'scrollparent' ? 'scrollParent' : mod;\n config.boundary = mod;\n } else if (delayRE.test(mod)) {\n // Delay value\n var delay = toInteger(mod.slice(1), 0);\n config.delay.show = delay;\n config.delay.hide = delay;\n } else if (delayShowRE.test(mod)) {\n // Delay show value\n config.delay.show = toInteger(mod.slice(2), 0);\n } else if (delayHideRE.test(mod)) {\n // Delay hide value\n config.delay.hide = toInteger(mod.slice(2), 0);\n } else if (offsetRE.test(mod)) {\n // Offset value, negative allowed\n config.offset = toInteger(mod.slice(1), 0);\n } else if (variantRE.test(mod)) {\n // Variant\n config.variant = mod.slice(2) || null;\n }\n }); // Special handling of event trigger modifiers trigger is\n // a space separated list\n\n var selectedTriggers = {}; // Parse current config object trigger\n\n concat(config.trigger || '').filter(identity).join(' ').trim().toLowerCase().split(spacesRE).forEach(function (trigger) {\n if (validTriggers[trigger]) {\n selectedTriggers[trigger] = true;\n }\n }); // Parse modifiers for triggers\n\n keys(bindings.modifiers).forEach(function (mod) {\n mod = mod.toLowerCase();\n\n if (validTriggers[mod]) {\n // If modifier is a valid trigger\n selectedTriggers[mod] = true;\n }\n }); // Sanitize triggers\n\n config.trigger = keys(selectedTriggers).join(' ');\n\n if (config.trigger === 'blur') {\n // Blur by itself is useless, so convert it to 'focus'\n config.trigger = 'focus';\n }\n\n if (!config.trigger) {\n // Use default trigger\n config.trigger = DefaultTrigger;\n } // Return the config\n\n\n return config;\n}; // Add/update Tooltip on our element\n\n\nvar applyTooltip = function applyTooltip(el, bindings, vnode) {\n if (!IS_BROWSER) {\n /* istanbul ignore next */\n return;\n }\n\n var config = parseBindings(bindings, vnode);\n\n if (!el[BV_TOOLTIP]) {\n var $parent = vnode.context;\n el[BV_TOOLTIP] = new BVTooltip({\n parent: $parent,\n // Add the parent's scoped style attribute data\n _scopeId: getScopeId($parent, undefined)\n });\n el[BV_TOOLTIP].__bv_prev_data__ = {};\n el[BV_TOOLTIP].$on(EVENT_NAME_SHOW, function ()\n /* istanbul ignore next: for now */\n {\n // Before showing the tooltip, we update the title if it is a function\n if (isFunction(config.title)) {\n el[BV_TOOLTIP].updateData({\n title: config.title(el)\n });\n }\n });\n }\n\n var data = {\n title: config.title,\n triggers: config.trigger,\n placement: config.placement,\n fallbackPlacement: config.fallbackPlacement,\n variant: config.variant,\n customClass: config.customClass,\n container: config.container,\n boundary: config.boundary,\n delay: config.delay,\n offset: config.offset,\n noFade: !config.animation,\n id: config.id,\n interactive: config.interactive,\n disabled: config.disabled,\n html: config.html\n };\n var oldData = el[BV_TOOLTIP].__bv_prev_data__;\n el[BV_TOOLTIP].__bv_prev_data__ = data;\n\n if (!looseEqual(data, oldData)) {\n // We only update the instance if data has changed\n var newData = {\n target: el\n };\n keys(data).forEach(function (prop) {\n // We only pass data properties that have changed\n if (data[prop] !== oldData[prop]) {\n // if title is a function, we execute it here\n newData[prop] = prop === 'title' && isFunction(data[prop]) ? data[prop](el) : data[prop];\n }\n });\n el[BV_TOOLTIP].updateData(newData);\n }\n}; // Remove Tooltip on our element\n\n\nvar removeTooltip = function removeTooltip(el) {\n if (el[BV_TOOLTIP]) {\n el[BV_TOOLTIP].$destroy();\n el[BV_TOOLTIP] = null;\n }\n\n delete el[BV_TOOLTIP];\n}; // Export our directive\n\n\nexport var VBTooltip = {\n bind: function bind(el, bindings, vnode) {\n applyTooltip(el, bindings, vnode);\n },\n // We use `componentUpdated` here instead of `update`, as the former\n // waits until the containing component and children have finished updating\n componentUpdated: function componentUpdated(el, bindings, vnode) {\n // Performed in a `$nextTick()` to prevent render update loops\n vnode.context.$nextTick(function () {\n applyTooltip(el, bindings, vnode);\n });\n },\n unbind: function unbind(el) {\n removeTooltip(el);\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_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});","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar speciesConstructor = require('../internals/species-constructor');\nvar fails = require('../internals/fails');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar $slice = [].slice;\n\nvar FORCED = fails(function () {\n // eslint-disable-next-line no-undef\n new Int8Array(1).slice();\n});\n\n// `%TypedArray%.prototype.slice` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.slice\nexportTypedArrayMethod('slice', function slice(start, end) {\n var list = $slice.call(aTypedArray(this), start, end);\n var C = speciesConstructor(this, this.constructor);\n var index = 0;\n var length = list.length;\n var result = new (aTypedArrayConstructor(C))(length);\n while (length > index) result[index] = list[index++];\n return result;\n}, FORCED);\n","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.string.iterator');\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar global = require('../internals/global');\nvar defineProperties = require('../internals/object-define-properties');\nvar redefine = require('../internals/redefine');\nvar anInstance = require('../internals/an-instance');\nvar has = require('../internals/has');\nvar assign = require('../internals/object-assign');\nvar arrayFrom = require('../internals/array-from');\nvar codeAt = require('../internals/string-multibyte').codeAt;\nvar toASCII = require('../internals/string-punycode-to-ascii');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar URLSearchParamsModule = require('../modules/web.url-search-params');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar NativeURL = global.URL;\nvar URLSearchParams = URLSearchParamsModule.URLSearchParams;\nvar getInternalSearchParamsState = URLSearchParamsModule.getState;\nvar setInternalState = InternalStateModule.set;\nvar getInternalURLState = InternalStateModule.getterFor('URL');\nvar floor = Math.floor;\nvar pow = Math.pow;\n\nvar INVALID_AUTHORITY = 'Invalid authority';\nvar INVALID_SCHEME = 'Invalid scheme';\nvar INVALID_HOST = 'Invalid host';\nvar INVALID_PORT = 'Invalid port';\n\nvar ALPHA = /[A-Za-z]/;\nvar ALPHANUMERIC = /[\\d+-.A-Za-z]/;\nvar DIGIT = /\\d/;\nvar HEX_START = /^(0x|0X)/;\nvar OCT = /^[0-7]+$/;\nvar DEC = /^\\d+$/;\nvar HEX = /^[\\dA-Fa-f]+$/;\n// eslint-disable-next-line no-control-regex\nvar FORBIDDEN_HOST_CODE_POINT = /[\\u0000\\u0009\\u000A\\u000D #%/:?@[\\\\]]/;\n// eslint-disable-next-line no-control-regex\nvar FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\\u0000\\u0009\\u000A\\u000D #/:?@[\\\\]]/;\n// eslint-disable-next-line no-control-regex\nvar LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\\u0000-\\u001F ]+|[\\u0000-\\u001F ]+$/g;\n// eslint-disable-next-line no-control-regex\nvar TAB_AND_NEW_LINE = /[\\u0009\\u000A\\u000D]/g;\nvar EOF;\n\nvar parseHost = function (url, input) {\n var result, codePoints, index;\n if (input.charAt(0) == '[') {\n if (input.charAt(input.length - 1) != ']') return INVALID_HOST;\n result = parseIPv6(input.slice(1, -1));\n if (!result) return INVALID_HOST;\n url.host = result;\n // opaque host\n } else if (!isSpecial(url)) {\n if (FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT.test(input)) return INVALID_HOST;\n result = '';\n codePoints = arrayFrom(input);\n for (index = 0; index < codePoints.length; index++) {\n result += percentEncode(codePoints[index], C0ControlPercentEncodeSet);\n }\n url.host = result;\n } else {\n input = toASCII(input);\n if (FORBIDDEN_HOST_CODE_POINT.test(input)) return INVALID_HOST;\n result = parseIPv4(input);\n if (result === null) return INVALID_HOST;\n url.host = result;\n }\n};\n\nvar parseIPv4 = function (input) {\n var parts = input.split('.');\n var partsLength, numbers, index, part, radix, number, ipv4;\n if (parts.length && parts[parts.length - 1] == '') {\n parts.pop();\n }\n partsLength = parts.length;\n if (partsLength > 4) return input;\n numbers = [];\n for (index = 0; index < partsLength; index++) {\n part = parts[index];\n if (part == '') return input;\n radix = 10;\n if (part.length > 1 && part.charAt(0) == '0') {\n radix = HEX_START.test(part) ? 16 : 8;\n part = part.slice(radix == 8 ? 1 : 2);\n }\n if (part === '') {\n number = 0;\n } else {\n if (!(radix == 10 ? DEC : radix == 8 ? OCT : HEX).test(part)) return input;\n number = parseInt(part, radix);\n }\n numbers.push(number);\n }\n for (index = 0; index < partsLength; index++) {\n number = numbers[index];\n if (index == partsLength - 1) {\n if (number >= pow(256, 5 - partsLength)) return null;\n } else if (number > 255) return null;\n }\n ipv4 = numbers.pop();\n for (index = 0; index < numbers.length; index++) {\n ipv4 += numbers[index] * pow(256, 3 - index);\n }\n return ipv4;\n};\n\n// eslint-disable-next-line max-statements\nvar parseIPv6 = function (input) {\n var address = [0, 0, 0, 0, 0, 0, 0, 0];\n var pieceIndex = 0;\n var compress = null;\n var pointer = 0;\n var value, length, numbersSeen, ipv4Piece, number, swaps, swap;\n\n var char = function () {\n return input.charAt(pointer);\n };\n\n if (char() == ':') {\n if (input.charAt(1) != ':') return;\n pointer += 2;\n pieceIndex++;\n compress = pieceIndex;\n }\n while (char()) {\n if (pieceIndex == 8) return;\n if (char() == ':') {\n if (compress !== null) return;\n pointer++;\n pieceIndex++;\n compress = pieceIndex;\n continue;\n }\n value = length = 0;\n while (length < 4 && HEX.test(char())) {\n value = value * 16 + parseInt(char(), 16);\n pointer++;\n length++;\n }\n if (char() == '.') {\n if (length == 0) return;\n pointer -= length;\n if (pieceIndex > 6) return;\n numbersSeen = 0;\n while (char()) {\n ipv4Piece = null;\n if (numbersSeen > 0) {\n if (char() == '.' && numbersSeen < 4) pointer++;\n else return;\n }\n if (!DIGIT.test(char())) return;\n while (DIGIT.test(char())) {\n number = parseInt(char(), 10);\n if (ipv4Piece === null) ipv4Piece = number;\n else if (ipv4Piece == 0) return;\n else ipv4Piece = ipv4Piece * 10 + number;\n if (ipv4Piece > 255) return;\n pointer++;\n }\n address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;\n numbersSeen++;\n if (numbersSeen == 2 || numbersSeen == 4) pieceIndex++;\n }\n if (numbersSeen != 4) return;\n break;\n } else if (char() == ':') {\n pointer++;\n if (!char()) return;\n } else if (char()) return;\n address[pieceIndex++] = value;\n }\n if (compress !== null) {\n swaps = pieceIndex - compress;\n pieceIndex = 7;\n while (pieceIndex != 0 && swaps > 0) {\n swap = address[pieceIndex];\n address[pieceIndex--] = address[compress + swaps - 1];\n address[compress + --swaps] = swap;\n }\n } else if (pieceIndex != 8) return;\n return address;\n};\n\nvar findLongestZeroSequence = function (ipv6) {\n var maxIndex = null;\n var maxLength = 1;\n var currStart = null;\n var currLength = 0;\n var index = 0;\n for (; index < 8; index++) {\n if (ipv6[index] !== 0) {\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n currStart = null;\n currLength = 0;\n } else {\n if (currStart === null) currStart = index;\n ++currLength;\n }\n }\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n return maxIndex;\n};\n\nvar serializeHost = function (host) {\n var result, index, compress, ignore0;\n // ipv4\n if (typeof host == 'number') {\n result = [];\n for (index = 0; index < 4; index++) {\n result.unshift(host % 256);\n host = floor(host / 256);\n } return result.join('.');\n // ipv6\n } else if (typeof host == 'object') {\n result = '';\n compress = findLongestZeroSequence(host);\n for (index = 0; index < 8; index++) {\n if (ignore0 && host[index] === 0) continue;\n if (ignore0) ignore0 = false;\n if (compress === index) {\n result += index ? ':' : '::';\n ignore0 = true;\n } else {\n result += host[index].toString(16);\n if (index < 7) result += ':';\n }\n }\n return '[' + result + ']';\n } return host;\n};\n\nvar C0ControlPercentEncodeSet = {};\nvar fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, {\n ' ': 1, '\"': 1, '<': 1, '>': 1, '`': 1\n});\nvar pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, {\n '#': 1, '?': 1, '{': 1, '}': 1\n});\nvar userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, {\n '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\\\': 1, ']': 1, '^': 1, '|': 1\n});\n\nvar percentEncode = function (char, set) {\n var code = codeAt(char, 0);\n return code > 0x20 && code < 0x7F && !has(set, char) ? char : encodeURIComponent(char);\n};\n\nvar specialSchemes = {\n ftp: 21,\n file: null,\n http: 80,\n https: 443,\n ws: 80,\n wss: 443\n};\n\nvar isSpecial = function (url) {\n return has(specialSchemes, url.scheme);\n};\n\nvar includesCredentials = function (url) {\n return url.username != '' || url.password != '';\n};\n\nvar cannotHaveUsernamePasswordPort = function (url) {\n return !url.host || url.cannotBeABaseURL || url.scheme == 'file';\n};\n\nvar isWindowsDriveLetter = function (string, normalized) {\n var second;\n return string.length == 2 && ALPHA.test(string.charAt(0))\n && ((second = string.charAt(1)) == ':' || (!normalized && second == '|'));\n};\n\nvar startsWithWindowsDriveLetter = function (string) {\n var third;\n return string.length > 1 && isWindowsDriveLetter(string.slice(0, 2)) && (\n string.length == 2 ||\n ((third = string.charAt(2)) === '/' || third === '\\\\' || third === '?' || third === '#')\n );\n};\n\nvar shortenURLsPath = function (url) {\n var path = url.path;\n var pathSize = path.length;\n if (pathSize && (url.scheme != 'file' || pathSize != 1 || !isWindowsDriveLetter(path[0], true))) {\n path.pop();\n }\n};\n\nvar isSingleDot = function (segment) {\n return segment === '.' || segment.toLowerCase() === '%2e';\n};\n\nvar isDoubleDot = function (segment) {\n segment = segment.toLowerCase();\n return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e';\n};\n\n// States:\nvar SCHEME_START = {};\nvar SCHEME = {};\nvar NO_SCHEME = {};\nvar SPECIAL_RELATIVE_OR_AUTHORITY = {};\nvar PATH_OR_AUTHORITY = {};\nvar RELATIVE = {};\nvar RELATIVE_SLASH = {};\nvar SPECIAL_AUTHORITY_SLASHES = {};\nvar SPECIAL_AUTHORITY_IGNORE_SLASHES = {};\nvar AUTHORITY = {};\nvar HOST = {};\nvar HOSTNAME = {};\nvar PORT = {};\nvar FILE = {};\nvar FILE_SLASH = {};\nvar FILE_HOST = {};\nvar PATH_START = {};\nvar PATH = {};\nvar CANNOT_BE_A_BASE_URL_PATH = {};\nvar QUERY = {};\nvar FRAGMENT = {};\n\n// eslint-disable-next-line max-statements\nvar parseURL = function (url, input, stateOverride, base) {\n var state = stateOverride || SCHEME_START;\n var pointer = 0;\n var buffer = '';\n var seenAt = false;\n var seenBracket = false;\n var seenPasswordToken = false;\n var codePoints, char, bufferCodePoints, failure;\n\n if (!stateOverride) {\n url.scheme = '';\n url.username = '';\n url.password = '';\n url.host = null;\n url.port = null;\n url.path = [];\n url.query = null;\n url.fragment = null;\n url.cannotBeABaseURL = false;\n input = input.replace(LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE, '');\n }\n\n input = input.replace(TAB_AND_NEW_LINE, '');\n\n codePoints = arrayFrom(input);\n\n while (pointer <= codePoints.length) {\n char = codePoints[pointer];\n switch (state) {\n case SCHEME_START:\n if (char && ALPHA.test(char)) {\n buffer += char.toLowerCase();\n state = SCHEME;\n } else if (!stateOverride) {\n state = NO_SCHEME;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case SCHEME:\n if (char && (ALPHANUMERIC.test(char) || char == '+' || char == '-' || char == '.')) {\n buffer += char.toLowerCase();\n } else if (char == ':') {\n if (stateOverride && (\n (isSpecial(url) != has(specialSchemes, buffer)) ||\n (buffer == 'file' && (includesCredentials(url) || url.port !== null)) ||\n (url.scheme == 'file' && !url.host)\n )) return;\n url.scheme = buffer;\n if (stateOverride) {\n if (isSpecial(url) && specialSchemes[url.scheme] == url.port) url.port = null;\n return;\n }\n buffer = '';\n if (url.scheme == 'file') {\n state = FILE;\n } else if (isSpecial(url) && base && base.scheme == url.scheme) {\n state = SPECIAL_RELATIVE_OR_AUTHORITY;\n } else if (isSpecial(url)) {\n state = SPECIAL_AUTHORITY_SLASHES;\n } else if (codePoints[pointer + 1] == '/') {\n state = PATH_OR_AUTHORITY;\n pointer++;\n } else {\n url.cannotBeABaseURL = true;\n url.path.push('');\n state = CANNOT_BE_A_BASE_URL_PATH;\n }\n } else if (!stateOverride) {\n buffer = '';\n state = NO_SCHEME;\n pointer = 0;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case NO_SCHEME:\n if (!base || (base.cannotBeABaseURL && char != '#')) return INVALID_SCHEME;\n if (base.cannotBeABaseURL && char == '#') {\n url.scheme = base.scheme;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n url.cannotBeABaseURL = true;\n state = FRAGMENT;\n break;\n }\n state = base.scheme == 'file' ? FILE : RELATIVE;\n continue;\n\n case SPECIAL_RELATIVE_OR_AUTHORITY:\n if (char == '/' && codePoints[pointer + 1] == '/') {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n pointer++;\n } else {\n state = RELATIVE;\n continue;\n } break;\n\n case PATH_OR_AUTHORITY:\n if (char == '/') {\n state = AUTHORITY;\n break;\n } else {\n state = PATH;\n continue;\n }\n\n case RELATIVE:\n url.scheme = base.scheme;\n if (char == EOF) {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = base.query;\n } else if (char == '/' || (char == '\\\\' && isSpecial(url))) {\n state = RELATIVE_SLASH;\n } else if (char == '?') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.path.pop();\n state = PATH;\n continue;\n } break;\n\n case RELATIVE_SLASH:\n if (isSpecial(url) && (char == '/' || char == '\\\\')) {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n } else if (char == '/') {\n state = AUTHORITY;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n state = PATH;\n continue;\n } break;\n\n case SPECIAL_AUTHORITY_SLASHES:\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n if (char != '/' || buffer.charAt(pointer + 1) != '/') continue;\n pointer++;\n break;\n\n case SPECIAL_AUTHORITY_IGNORE_SLASHES:\n if (char != '/' && char != '\\\\') {\n state = AUTHORITY;\n continue;\n } break;\n\n case AUTHORITY:\n if (char == '@') {\n if (seenAt) buffer = '%40' + buffer;\n seenAt = true;\n bufferCodePoints = arrayFrom(buffer);\n for (var i = 0; i < bufferCodePoints.length; i++) {\n var codePoint = bufferCodePoints[i];\n if (codePoint == ':' && !seenPasswordToken) {\n seenPasswordToken = true;\n continue;\n }\n var encodedCodePoints = percentEncode(codePoint, userinfoPercentEncodeSet);\n if (seenPasswordToken) url.password += encodedCodePoints;\n else url.username += encodedCodePoints;\n }\n buffer = '';\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url))\n ) {\n if (seenAt && buffer == '') return INVALID_AUTHORITY;\n pointer -= arrayFrom(buffer).length + 1;\n buffer = '';\n state = HOST;\n } else buffer += char;\n break;\n\n case HOST:\n case HOSTNAME:\n if (stateOverride && url.scheme == 'file') {\n state = FILE_HOST;\n continue;\n } else if (char == ':' && !seenBracket) {\n if (buffer == '') return INVALID_HOST;\n failure = parseHost(url, buffer);\n if (failure) return failure;\n buffer = '';\n state = PORT;\n if (stateOverride == HOSTNAME) return;\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url))\n ) {\n if (isSpecial(url) && buffer == '') return INVALID_HOST;\n if (stateOverride && buffer == '' && (includesCredentials(url) || url.port !== null)) return;\n failure = parseHost(url, buffer);\n if (failure) return failure;\n buffer = '';\n state = PATH_START;\n if (stateOverride) return;\n continue;\n } else {\n if (char == '[') seenBracket = true;\n else if (char == ']') seenBracket = false;\n buffer += char;\n } break;\n\n case PORT:\n if (DIGIT.test(char)) {\n buffer += char;\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url)) ||\n stateOverride\n ) {\n if (buffer != '') {\n var port = parseInt(buffer, 10);\n if (port > 0xFFFF) return INVALID_PORT;\n url.port = (isSpecial(url) && port === specialSchemes[url.scheme]) ? null : port;\n buffer = '';\n }\n if (stateOverride) return;\n state = PATH_START;\n continue;\n } else return INVALID_PORT;\n break;\n\n case FILE:\n url.scheme = 'file';\n if (char == '/' || char == '\\\\') state = FILE_SLASH;\n else if (base && base.scheme == 'file') {\n if (char == EOF) {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = base.query;\n } else if (char == '?') {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n if (!startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {\n url.host = base.host;\n url.path = base.path.slice();\n shortenURLsPath(url);\n }\n state = PATH;\n continue;\n }\n } else {\n state = PATH;\n continue;\n } break;\n\n case FILE_SLASH:\n if (char == '/' || char == '\\\\') {\n state = FILE_HOST;\n break;\n }\n if (base && base.scheme == 'file' && !startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {\n if (isWindowsDriveLetter(base.path[0], true)) url.path.push(base.path[0]);\n else url.host = base.host;\n }\n state = PATH;\n continue;\n\n case FILE_HOST:\n if (char == EOF || char == '/' || char == '\\\\' || char == '?' || char == '#') {\n if (!stateOverride && isWindowsDriveLetter(buffer)) {\n state = PATH;\n } else if (buffer == '') {\n url.host = '';\n if (stateOverride) return;\n state = PATH_START;\n } else {\n failure = parseHost(url, buffer);\n if (failure) return failure;\n if (url.host == 'localhost') url.host = '';\n if (stateOverride) return;\n buffer = '';\n state = PATH_START;\n } continue;\n } else buffer += char;\n break;\n\n case PATH_START:\n if (isSpecial(url)) {\n state = PATH;\n if (char != '/' && char != '\\\\') continue;\n } else if (!stateOverride && char == '?') {\n url.query = '';\n state = QUERY;\n } else if (!stateOverride && char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n state = PATH;\n if (char != '/') continue;\n } break;\n\n case PATH:\n if (\n char == EOF || char == '/' ||\n (char == '\\\\' && isSpecial(url)) ||\n (!stateOverride && (char == '?' || char == '#'))\n ) {\n if (isDoubleDot(buffer)) {\n shortenURLsPath(url);\n if (char != '/' && !(char == '\\\\' && isSpecial(url))) {\n url.path.push('');\n }\n } else if (isSingleDot(buffer)) {\n if (char != '/' && !(char == '\\\\' && isSpecial(url))) {\n url.path.push('');\n }\n } else {\n if (url.scheme == 'file' && !url.path.length && isWindowsDriveLetter(buffer)) {\n if (url.host) url.host = '';\n buffer = buffer.charAt(0) + ':'; // normalize windows drive letter\n }\n url.path.push(buffer);\n }\n buffer = '';\n if (url.scheme == 'file' && (char == EOF || char == '?' || char == '#')) {\n while (url.path.length > 1 && url.path[0] === '') {\n url.path.shift();\n }\n }\n if (char == '?') {\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n }\n } else {\n buffer += percentEncode(char, pathPercentEncodeSet);\n } break;\n\n case CANNOT_BE_A_BASE_URL_PATH:\n if (char == '?') {\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n url.path[0] += percentEncode(char, C0ControlPercentEncodeSet);\n } break;\n\n case QUERY:\n if (!stateOverride && char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n if (char == \"'\" && isSpecial(url)) url.query += '%27';\n else if (char == '#') url.query += '%23';\n else url.query += percentEncode(char, C0ControlPercentEncodeSet);\n } break;\n\n case FRAGMENT:\n if (char != EOF) url.fragment += percentEncode(char, fragmentPercentEncodeSet);\n break;\n }\n\n pointer++;\n }\n};\n\n// `URL` constructor\n// https://url.spec.whatwg.org/#url-class\nvar URLConstructor = function URL(url /* , base */) {\n var that = anInstance(this, URLConstructor, 'URL');\n var base = arguments.length > 1 ? arguments[1] : undefined;\n var urlString = String(url);\n var state = setInternalState(that, { type: 'URL' });\n var baseState, failure;\n if (base !== undefined) {\n if (base instanceof URLConstructor) baseState = getInternalURLState(base);\n else {\n failure = parseURL(baseState = {}, String(base));\n if (failure) throw TypeError(failure);\n }\n }\n failure = parseURL(state, urlString, null, baseState);\n if (failure) throw TypeError(failure);\n var searchParams = state.searchParams = new URLSearchParams();\n var searchParamsState = getInternalSearchParamsState(searchParams);\n searchParamsState.updateSearchParams(state.query);\n searchParamsState.updateURL = function () {\n state.query = String(searchParams) || null;\n };\n if (!DESCRIPTORS) {\n that.href = serializeURL.call(that);\n that.origin = getOrigin.call(that);\n that.protocol = getProtocol.call(that);\n that.username = getUsername.call(that);\n that.password = getPassword.call(that);\n that.host = getHost.call(that);\n that.hostname = getHostname.call(that);\n that.port = getPort.call(that);\n that.pathname = getPathname.call(that);\n that.search = getSearch.call(that);\n that.searchParams = getSearchParams.call(that);\n that.hash = getHash.call(that);\n }\n};\n\nvar URLPrototype = URLConstructor.prototype;\n\nvar serializeURL = function () {\n var url = getInternalURLState(this);\n var scheme = url.scheme;\n var username = url.username;\n var password = url.password;\n var host = url.host;\n var port = url.port;\n var path = url.path;\n var query = url.query;\n var fragment = url.fragment;\n var output = scheme + ':';\n if (host !== null) {\n output += '//';\n if (includesCredentials(url)) {\n output += username + (password ? ':' + password : '') + '@';\n }\n output += serializeHost(host);\n if (port !== null) output += ':' + port;\n } else if (scheme == 'file') output += '//';\n output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';\n if (query !== null) output += '?' + query;\n if (fragment !== null) output += '#' + fragment;\n return output;\n};\n\nvar getOrigin = function () {\n var url = getInternalURLState(this);\n var scheme = url.scheme;\n var port = url.port;\n if (scheme == 'blob') try {\n return new URL(scheme.path[0]).origin;\n } catch (error) {\n return 'null';\n }\n if (scheme == 'file' || !isSpecial(url)) return 'null';\n return scheme + '://' + serializeHost(url.host) + (port !== null ? ':' + port : '');\n};\n\nvar getProtocol = function () {\n return getInternalURLState(this).scheme + ':';\n};\n\nvar getUsername = function () {\n return getInternalURLState(this).username;\n};\n\nvar getPassword = function () {\n return getInternalURLState(this).password;\n};\n\nvar getHost = function () {\n var url = getInternalURLState(this);\n var host = url.host;\n var port = url.port;\n return host === null ? ''\n : port === null ? serializeHost(host)\n : serializeHost(host) + ':' + port;\n};\n\nvar getHostname = function () {\n var host = getInternalURLState(this).host;\n return host === null ? '' : serializeHost(host);\n};\n\nvar getPort = function () {\n var port = getInternalURLState(this).port;\n return port === null ? '' : String(port);\n};\n\nvar getPathname = function () {\n var url = getInternalURLState(this);\n var path = url.path;\n return url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';\n};\n\nvar getSearch = function () {\n var query = getInternalURLState(this).query;\n return query ? '?' + query : '';\n};\n\nvar getSearchParams = function () {\n return getInternalURLState(this).searchParams;\n};\n\nvar getHash = function () {\n var fragment = getInternalURLState(this).fragment;\n return fragment ? '#' + fragment : '';\n};\n\nvar accessorDescriptor = function (getter, setter) {\n return { get: getter, set: setter, configurable: true, enumerable: true };\n};\n\nif (DESCRIPTORS) {\n defineProperties(URLPrototype, {\n // `URL.prototype.href` accessors pair\n // https://url.spec.whatwg.org/#dom-url-href\n href: accessorDescriptor(serializeURL, function (href) {\n var url = getInternalURLState(this);\n var urlString = String(href);\n var failure = parseURL(url, urlString);\n if (failure) throw TypeError(failure);\n getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);\n }),\n // `URL.prototype.origin` getter\n // https://url.spec.whatwg.org/#dom-url-origin\n origin: accessorDescriptor(getOrigin),\n // `URL.prototype.protocol` accessors pair\n // https://url.spec.whatwg.org/#dom-url-protocol\n protocol: accessorDescriptor(getProtocol, function (protocol) {\n var url = getInternalURLState(this);\n parseURL(url, String(protocol) + ':', SCHEME_START);\n }),\n // `URL.prototype.username` accessors pair\n // https://url.spec.whatwg.org/#dom-url-username\n username: accessorDescriptor(getUsername, function (username) {\n var url = getInternalURLState(this);\n var codePoints = arrayFrom(String(username));\n if (cannotHaveUsernamePasswordPort(url)) return;\n url.username = '';\n for (var i = 0; i < codePoints.length; i++) {\n url.username += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n }),\n // `URL.prototype.password` accessors pair\n // https://url.spec.whatwg.org/#dom-url-password\n password: accessorDescriptor(getPassword, function (password) {\n var url = getInternalURLState(this);\n var codePoints = arrayFrom(String(password));\n if (cannotHaveUsernamePasswordPort(url)) return;\n url.password = '';\n for (var i = 0; i < codePoints.length; i++) {\n url.password += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n }),\n // `URL.prototype.host` accessors pair\n // https://url.spec.whatwg.org/#dom-url-host\n host: accessorDescriptor(getHost, function (host) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n parseURL(url, String(host), HOST);\n }),\n // `URL.prototype.hostname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hostname\n hostname: accessorDescriptor(getHostname, function (hostname) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n parseURL(url, String(hostname), HOSTNAME);\n }),\n // `URL.prototype.port` accessors pair\n // https://url.spec.whatwg.org/#dom-url-port\n port: accessorDescriptor(getPort, function (port) {\n var url = getInternalURLState(this);\n if (cannotHaveUsernamePasswordPort(url)) return;\n port = String(port);\n if (port == '') url.port = null;\n else parseURL(url, port, PORT);\n }),\n // `URL.prototype.pathname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-pathname\n pathname: accessorDescriptor(getPathname, function (pathname) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n url.path = [];\n parseURL(url, pathname + '', PATH_START);\n }),\n // `URL.prototype.search` accessors pair\n // https://url.spec.whatwg.org/#dom-url-search\n search: accessorDescriptor(getSearch, function (search) {\n var url = getInternalURLState(this);\n search = String(search);\n if (search == '') {\n url.query = null;\n } else {\n if ('?' == search.charAt(0)) search = search.slice(1);\n url.query = '';\n parseURL(url, search, QUERY);\n }\n getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);\n }),\n // `URL.prototype.searchParams` getter\n // https://url.spec.whatwg.org/#dom-url-searchparams\n searchParams: accessorDescriptor(getSearchParams),\n // `URL.prototype.hash` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hash\n hash: accessorDescriptor(getHash, function (hash) {\n var url = getInternalURLState(this);\n hash = String(hash);\n if (hash == '') {\n url.fragment = null;\n return;\n }\n if ('#' == hash.charAt(0)) hash = hash.slice(1);\n url.fragment = '';\n parseURL(url, hash, FRAGMENT);\n })\n });\n}\n\n// `URL.prototype.toJSON` method\n// https://url.spec.whatwg.org/#dom-url-tojson\nredefine(URLPrototype, 'toJSON', function toJSON() {\n return serializeURL.call(this);\n}, { enumerable: true });\n\n// `URL.prototype.toString` method\n// https://url.spec.whatwg.org/#URL-stringification-behavior\nredefine(URLPrototype, 'toString', function toString() {\n return serializeURL.call(this);\n}, { enumerable: true });\n\nif (NativeURL) {\n var nativeCreateObjectURL = NativeURL.createObjectURL;\n var nativeRevokeObjectURL = NativeURL.revokeObjectURL;\n // `URL.createObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL\n // eslint-disable-next-line no-unused-vars\n if (nativeCreateObjectURL) redefine(URLConstructor, 'createObjectURL', function createObjectURL(blob) {\n return nativeCreateObjectURL.apply(NativeURL, arguments);\n });\n // `URL.revokeObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL\n // eslint-disable-next-line no-unused-vars\n if (nativeRevokeObjectURL) redefine(URLConstructor, 'revokeObjectURL', function revokeObjectURL(url) {\n return nativeRevokeObjectURL.apply(NativeURL, arguments);\n });\n}\n\nsetToStringTag(URLConstructor, 'URL');\n\n$({ global: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, {\n URL: URLConstructor\n});\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-card',{staticClass:\"mb-0\",attrs:{\"no-body\":\"\"}},[_c('list-header',{attrs:{\"actions\":_vm.actions,\"filters\":_vm.filters,\"per-page\":_vm.perPage,\"search-query\":_vm.searchQuery,\"search-placeholder\":_vm.searchPlaceholder},on:{\"update:filters\":function($event){_vm.filters=$event},\"update:perPage\":function($event){_vm.perPage=$event},\"update:per-page\":function($event){_vm.perPage=$event},\"update:searchQuery\":function($event){_vm.searchQuery=$event},\"update:search-query\":function($event){_vm.searchQuery=$event},\"on-filter\":_vm.refreshData}}),_c('b-table',{ref:\"refTable\",staticStyle:{\"overflow-y\":\"clip\"},attrs:{\"responsive\":\"\",\"fields\":_vm.tableColumnsValue,\"items\":_vm.refetchRecordsFunction,\"primary-key\":\"id\",\"sort-by\":_vm.sortByValue,\"show-empty\":\"\",\"empty-text\":_vm.$t('Components.List.NoMatchingRecordsFound'),\"sort-desc\":_vm.isSortDirDesc,\"tbody-td-class\":\"table-succes\",\"fixed\":false},on:{\"update:sortBy\":function($event){_vm.sortByValue=$event},\"update:sort-by\":function($event){_vm.sortByValue=$event},\"update:sortDesc\":function($event){_vm.isSortDirDesc=$event},\"update:sort-desc\":function($event){_vm.isSortDirDesc=$event}},scopedSlots:_vm._u([_vm._l((_vm.$scopedSlots),function(_,slotName){return {key:slotName,fn:function(scope){return [_vm._t(slotName,null,null,scope)]}}}),{key:\"cell(actions)\",fn:function(data){return [_c('b-dropdown',{class:_vm.totalRecords == 1 ? 'm-3': '',attrs:{\"variant\":\"link\",\"no-caret\":\"\",\"right\":_vm.$store.state.appConfig.isRTL},scopedSlots:_vm._u([{key:\"button-content\",fn:function(){return [_c('feather-icon',{staticClass:\"align-middle text-body\",attrs:{\"icon\":\"MoreVerticalIcon\",\"size\":\"16\"}})]},proxy:true}],null,true)},_vm._l((_vm.tableActions),function(action){return _c('b-dropdown-item',{key:action.name,attrs:{\"disabled\":(action.disabledCondition && action.disabledCondition(data.item)) || !_vm.$can(action.aclAction, action.aclResource)},on:{\"click\":function($event){action.routeName ? _vm.$router.push({ name: action.routeName, params: _vm.resolveTableActionParams(action, data.item)}) : action.click(data.item)}}},[_c('feather-icon',{attrs:{\"icon\":action.icon}}),_c('span',{staticClass:\"align-middle ml-50\"},[_vm._v(_vm._s(action.label))])],1)}),1)]}}],null,true)}),_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('Components.List.Showing'))+\" \"+_vm._s(_vm.dataMeta.Showing)+\" \"+_vm._s(_vm.$t('Components.List.To'))+\" \"+_vm._s(_vm.dataMeta.to)+\" \"+_vm._s(_vm.$t('Components.List.Of'))+\" \"+_vm._s(_vm.dataMeta.of)+\" \"+_vm._s(_vm.$t('Components.List.Entries')))])]),_c('b-col',{staticClass:\"d-flex align-items-center justify-content-center justify-content-sm-end\",attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('b-pagination',{staticClass:\"mb-0 mt-1 mt-sm-0\",attrs:{\"total-rows\":_vm.totalRecords,\"per-page\":_vm.perPage,\"first-number\":\"\",\"last-number\":\"\",\"prev-class\":\"prev-item\",\"next-class\":\"next-item\"},on:{\"update:totalRows\":function($event){_vm.totalRecords=$event},\"update:total-rows\":function($event){_vm.totalRecords=$event},\"update:perPage\":function($event){_vm.perPage=$event},\"update:per-page\":function($event){_vm.perPage=$event},\"change\":_vm.onChangePage},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)],1)],1)],1),_c('excel-template-uploader',{ref:\"refExcelTemplateUploader\",attrs:{\"select-customer\":_vm.uploadTemplateSelectCustomer},on:{\"on-upload\":_vm.uploadTemplateFunction,\"on-upload-callback\":function () {\n _vm.refTable.refresh()\n _vm.success(_vm.$t('Components.List.TemplateUploadedTitle'), _vm.$t('Components.List.TemplateUploadedText'))\n }}}),_c('b-modal',{ref:\"refModalDelete\",attrs:{\"title\":_vm.$t('Components.List.DeleteConfirmationTitle')},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"variant\":\"outline-danger\"},on:{\"click\":_vm.deleteRecord}},[_c('feather-icon',{staticClass:\"align-middle text-body\",attrs:{\"icon\":\"TrashIcon\",\"size\":\"16\"}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.List.DeleteConfirmationYes'))+\" \")],1)]},proxy:true}])},[_c('b-card-text',[_vm._v(\" \"+_vm._s(_vm.$t('Components.List.DeleteConfirmationMessage'))+\" \")])],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('b-modal',{ref:\"refModal\",attrs:{\"no-close-on-backdrop\":\"\",\"hide-footer\":\"\",\"modal-class\":\"modal-primary\",\"centered\":\"\",\"title\":_vm.$t('Components.ExcelTemplateUploader.Title')}},[(!_vm.uploading && _vm.uploadErrors.length === 0)?_c('div',{attrs:{\"id\":\"upload-template\"}},[(_vm.templateFile.mensajeLecturaExcel)?_c('b-alert',{directives:[{name:\"height-fade\",rawName:\"v-height-fade\"}],staticClass:\"p-1\",attrs:{\"show\":\"\",\"fade\":\"\",\"variant\":_vm.templateFile.mensajeLecturaExcel === 'OK' ? 'success' : 'danger'}},[_vm._v(\" \"+_vm._s(_vm.templateFile.mensajeLecturaExcel === 'OK' ? _vm.$t('Components.ExcelTemplateUploader.ExcelFileOk') : _vm.$t('Components.ExcelTemplateUploader.ExcelFileError'))+\" \")]):_vm._e(),_c('b-form-group',{attrs:{\"label\":_vm.$t('Components.ExcelTemplateUploader.File')}},[_c('file-uploader',{attrs:{\"file-type\":\"excelTemplate\"},on:{\"on-delete-file\":_vm.onDeleteFile},model:{value:(_vm.templateFile),callback:function ($$v) {_vm.templateFile=$$v},expression:\"templateFile\"}})],1),(_vm.templateFile.hojas)?_c('b-form-group',{attrs:{\"label\":_vm.$t('Components.ExcelTemplateUploader.SelectBookSheet')}},[_c('v-select',{attrs:{\"dir\":_vm.$store.state.appConfig.isRTL ? 'rtl' : 'ltr',\"options\":_vm.templateFile.hojas,\"clearable\":false},model:{value:(_vm.selectedSheet),callback:function ($$v) {_vm.selectedSheet=$$v},expression:\"selectedSheet\"}})],1):_vm._e(),(_vm.selectCustomer && _vm.templateFile.hojas)?_c('b-form-group',{attrs:{\"label\":_vm.$t('Components.ExcelTemplateUploader.Customer')}},[_c('v-select',{attrs:{\"dir\":_vm.$store.state.appConfig.isRTL ? 'rtl' : 'ltr',\"options\":_vm.customers,\"reduce\":function (r) { return r.id; },\"label\":\"texto\",\"clearable\":false},model:{value:(_vm.selectedCustomer),callback:function ($$v) {_vm.selectedCustomer=$$v},expression:\"selectedCustomer\"}})],1):_vm._e(),(_vm.selectedSheet !== '' && (!_vm.selectCustomer || _vm.selectCustomer && _vm.selectedCustomer > 0))?_c('b-button',{attrs:{\"variant\":\"primary\",\"block\":\"\"},on:{\"click\":_vm.loadTemplate}},[_c('feather-icon',{staticClass:\"align-middle\",attrs:{\"icon\":\"UploadIcon\",\"size\":\"20\"}}),_c('strong',[_vm._v(\" \"+_vm._s(_vm.$t('Components.ExcelTemplateUploader.LoadExcelTemplate')))])],1):_vm._e()],1):_vm._e(),(_vm.uploading)?_c('div',{attrs:{\"id\":\"uploading-template\"}},[_c('b-spinner',{attrs:{\"block\":\"\"}}),_c('strong',[_vm._v(\" \"+_vm._s(_vm.$t('Components.ExcelTemplateUploader.LoadingTemplate')))])],1):_vm._e(),(_vm.uploadErrors.length > 0)?_c('div',{attrs:{\"id\":\"upload-errors\"}},[_c('b-alert',{directives:[{name:\"height-fade\",rawName:\"v-height-fade\"}],staticClass:\"p-1\",attrs:{\"show\":\"\",\"fade\":\"\",\"variant\":\"danger\"}},[_c('p',[_vm._v(_vm._s(_vm.$t('Components.ExcelTemplateUploader.UploadErrors'))+\": \")]),(Array.isArray(_vm.uploadErrors))?_c('div',_vm._l((_vm.uploadErrors),function(error){return _c('span',{key:error},[_c('li',[_vm._v(_vm._s(error))])])}),0):_vm._e(),(!Array.isArray(_vm.uploadErrors))?_c('span',[_vm._v(_vm._s(_vm.uploadErrors))]):_vm._e()]),_c('b-button',{attrs:{\"variant\":\"primary\",\"block\":\"\"},on:{\"click\":function($event){return _vm.onUploadAgain()}}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.ExcelTemplateUploader.UploadAgain'))+\" \")])],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n {{ templateFile.mensajeLecturaExcel === 'OK' ? $t('Components.ExcelTemplateUploader.ExcelFileOk') : $t('Components.ExcelTemplateUploader.ExcelFileError') }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n r.id\"\r\n label=\"texto\"\r\n :clearable=\"false\"\r\n />\r\n \r\n 0)\"\r\n variant=\"primary\"\r\n block\r\n @click=\"loadTemplate\"\r\n >\r\n \r\n {{ $t('Components.ExcelTemplateUploader.LoadExcelTemplate') }}\r\n \r\n \r\n \r\n \r\n {{ $t('Components.ExcelTemplateUploader.LoadingTemplate') }}\r\n \r\n 0\"\r\n id=\"upload-errors\"\r\n >\r\n \r\n {{ $t('Components.ExcelTemplateUploader.UploadErrors') }}: \r\n \r\n \r\n {{ error }}\r\n \r\n \r\n {{ uploadErrors }}\r\n \r\n \r\n {{ $t('Components.ExcelTemplateUploader.UploadAgain') }}\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\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!./ExcelTemplateUploader.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!./ExcelTemplateUploader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ExcelTemplateUploader.vue?vue&type=template&id=3b79291b&\"\nimport script from \"./ExcelTemplateUploader.vue?vue&type=script&lang=js&\"\nexport * from \"./ExcelTemplateUploader.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 render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _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\":\"2\"}},[_c('label',[_vm._v(_vm._s(_vm.$t('Components.ListHeader.Show')))]),_c('v-select',{staticClass:\"per-page-selector d-inline-block mx-50\",attrs:{\"dir\":_vm.$store.state.appConfig.isRTL ? 'rtl' : 'ltr',\"options\":_vm.perPageOptions,\"clearable\":false},model:{value:(_vm.perPageValue),callback:function ($$v) {_vm.perPageValue=$$v},expression:\"perPageValue\"}}),_c('label',[_vm._v(_vm._s(_vm.$t('Components.ListHeader.Entries')))])],1),_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"4\"}},[_c('div',{staticClass:\"d-flex align-items-center justify-content-end\"},[_c('b-form-input',{staticClass:\"d-inline-block mr-1\",attrs:{\"placeholder\":_vm.$t('Components.ListHeader.Search') + _vm.searchPlaceholder},model:{value:(_vm.searchQueryValue),callback:function ($$v) {_vm.searchQueryValue=$$v},expression:\"searchQueryValue\"}})],1)]),_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"3\"}},[(_vm.filters.length > 0)?_c('list-filter',{attrs:{\"filters\":_vm.filters},on:{\"update:filters\":function($event){_vm.filters=$event},\"on-filter\":_vm.onFilter}}):_vm._e()],1),_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"3\"}},[(_vm.actions.length > 0)?_c('b-dropdown',{attrs:{\"variant\":\"outline-primary\",\"right\":_vm.$store.state.appConfig.isRTL,\"block\":\"\",\"menu-class\":\"w-100\"},scopedSlots:_vm._u([{key:\"button-content\",fn:function(){return [_c('feather-icon',{staticClass:\"align-middle\",attrs:{\"icon\":\"CommandIcon\",\"size\":\"16\"}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.ListHeader.Actions'))+\" \")]},proxy:true}],null,false,180020307)},_vm._l((_vm.actions),function(action){return _c('b-dropdown-item',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.v-info\",modifiers:{\"hover\":true,\"v-info\":true}}],key:action.label,attrs:{\"title\":action.toolTip ? action.toolTip: '',\"disabled\":!_vm.$can(action.aclAction, action.aclResource)},on:{\"click\":function($event){action.routeName ? _vm.$router.push({ name: action.routeName, params: action.routeParams}) : action.click()}}},[_c('feather-icon',{attrs:{\"icon\":action.icon}}),(action.name === 'dateAndHour')?_c('span',{staticClass:\"align-middle ml-50\"},[_vm._v(_vm._s(action.value ? _vm.$t('Components.List.Filters.DateWhitoutHour') : _vm.$t('Components.List.Filters.FormatDate')))]):_c('span',{staticClass:\"align-middle ml-50\"},[_vm._v(_vm._s(action.label))])],1)}),1):_vm._e()],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-button',{attrs:{\"variant\":\"outline-info\",\"block\":\"\"},on:{\"click\":function($event){return _vm.refModal.show()}}},[_c('feather-icon',{staticClass:\"align-middle\",attrs:{\"icon\":\"FilterIcon\",\"size\":\"16\"}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.ListHeaderFilter.Filters'))+\" \")],1),_c('list-filter-modal',{ref:\"refModal\",attrs:{\"filters\":_vm.filters},on:{\"update:filters\":function($event){_vm.filters=$event},\"on-filter\":_vm.onFilter}})],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('b-modal',{ref:\"refModal\",attrs:{\"no-close-on-backdrop\":\"\",\"hide-footer\":\"\",\"modal-class\":\"modal-primary\",\"centered\":\"\",\"title\":_vm.$t('Components.ListHeaderFilterModal.Title')}},[_c('b-form',_vm._l((_vm.filters),function(filter){return _c('b-form-group',{key:filter.name,attrs:{\"label\":filter.label}},[_c(_vm.resolveComponent(filter.type),{tag:\"component\",attrs:{\"dir\":_vm.$store.state.appConfig.isRTL ? 'rtl' : 'ltr',\"label\":\"texto\",\"options\":filter.options,\"reduce\":function (option) { return option.id; },\"placeholder\":filter.label,\"disabled\":filter.disabled && filter.disabled === true,\"reset-button\":\"\",\"locale\":\"es\",\"multiple\":filter.multiple && filter.multiple === true},model:{value:(filter.value),callback:function ($$v) {_vm.$set(filter, \"value\", $$v)},expression:\"filter.value\"}})],1)}),1),_c('b-button',{attrs:{\"variant\":\"primary\",\"block\":\"\"},on:{\"click\":_vm.onFilter}},[_c('feather-icon',{staticClass:\"align-middle\",attrs:{\"icon\":\"FilterIcon\",\"size\":\"20\"}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.ListHeaderFilterModal.Filter'))+\" \")],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n option.id\"\r\n :placeholder=\"filter.label\"\r\n :disabled=\"filter.disabled && filter.disabled === true\"\r\n reset-button\r\n locale=\"es\"\r\n :multiple = \"filter.multiple && filter.multiple === true\"\r\n />\r\n \r\n \r\n \r\n \r\n {{ $t('Components.ListHeaderFilterModal.Filter') }}\r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\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!./ListHeaderFilterModal.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!./ListHeaderFilterModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ListHeaderFilterModal.vue?vue&type=template&id=16ab7044&\"\nimport script from \"./ListHeaderFilterModal.vue?vue&type=script&lang=js&\"\nexport * from \"./ListHeaderFilterModal.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","\r\n \r\n \r\n \r\n {{ $t('Components.ListHeaderFilter.Filters') }}\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\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!./ListHeaderFilter.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!./ListHeaderFilter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ListHeaderFilter.vue?vue&type=template&id=7789564a&\"\nimport script from \"./ListHeaderFilter.vue?vue&type=script&lang=js&\"\nexport * from \"./ListHeaderFilter.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","\r\n \r\n \r\n \r\n \r\n \r\n {{ $t('Components.ListHeader.Show') }}\r\n \r\n {{ $t('Components.ListHeader.Entries') }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 0\"\r\n :filters.sync=\"filters\"\r\n @on-filter=\"onFilter\"\r\n />\r\n \r\n \r\n \r\n 0\"\r\n variant=\"outline-primary\"\r\n :right=\"$store.state.appConfig.isRTL\"\r\n block\r\n menu-class=\"w-100\"\r\n >\r\n \r\n \r\n {{ $t('Components.ListHeader.Actions') }}\r\n \r\n \r\n \r\n {{ action.value ? $t('Components.List.Filters.DateWhitoutHour') : $t('Components.List.Filters.FormatDate') }}\r\n {{ action.label }}\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\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!./ListHeader.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!./ListHeader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ListHeader.vue?vue&type=template&id=76d7913e&\"\nimport script from \"./ListHeader.vue?vue&type=script&lang=js&\"\nexport * from \"./ListHeader.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","\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ action.label }}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n {{ $t('Components.List.Showing') }} {{ dataMeta.Showing }} {{ $t('Components.List.To') }} {{ dataMeta.to }} {{ $t('Components.List.Of') }} {{ dataMeta.of }} {{ $t('Components.List.Entries') }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n refTable.refresh()\r\n success($t('Components.List.TemplateUploadedTitle'), $t('Components.List.TemplateUploadedText'))\r\n }\r\n \"\r\n />\r\n \r\n \r\n {{ $t('Components.List.DeleteConfirmationMessage') }}\r\n \r\n \r\n \r\n \r\n {{ $t('Components.List.DeleteConfirmationYes') }}\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\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!./List.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!./List.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./List.vue?vue&type=template&id=1b3d6a78&scoped=true&\"\nimport script from \"./List.vue?vue&type=script&lang=js&\"\nexport * from \"./List.vue?vue&type=script&lang=js&\"\nimport style0 from \"./List.vue?vue&type=style&index=0&id=1b3d6a78&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 \"1b3d6a78\",\n null\n \n)\n\nexport default component.exports","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $lastIndexOf = require('../internals/array-last-index-of');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.lastIndexOf` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.lastindexof\n// eslint-disable-next-line no-unused-vars\nexportTypedArrayMethod('lastIndexOf', function lastIndexOf(searchElement /* , fromIndex */) {\n return $lastIndexOf.apply(aTypedArray(this), arguments);\n});\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_MEDIA_ASIDE } 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 right: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n verticalAlign: makeProp(PROP_TYPE_STRING, 'top')\n}, NAME_MEDIA_ASIDE); // --- Main component ---\n// @vue/component\n\nexport var BMediaAside = /*#__PURE__*/Vue.extend({\n name: NAME_MEDIA_ASIDE,\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 verticalAlign = props.verticalAlign;\n var align = verticalAlign === 'top' ? 'start' : verticalAlign === 'bottom' ? 'end' :\n /* istanbul ignore next */\n verticalAlign;\n return h(props.tag, mergeData(data, {\n staticClass: 'media-aside',\n class: _defineProperty({\n 'media-aside-right': props.right\n }, \"align-self-\".concat(align), align)\n }), children);\n }\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_MEDIA_BODY } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_MEDIA_BODY); // --- Main component ---\n// @vue/component\n\nexport var BMediaBody = /*#__PURE__*/Vue.extend({\n name: NAME_MEDIA_BODY,\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: 'media-body'\n }), children);\n }\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_MEDIA } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_ASIDE, SLOT_NAME_DEFAULT } from '../../constants/slots';\nimport { normalizeSlot } from '../../utils/normalize-slot';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { BMediaAside } from './media-aside';\nimport { BMediaBody } from './media-body'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n noBody: makeProp(PROP_TYPE_BOOLEAN, false),\n rightAlign: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n verticalAlign: makeProp(PROP_TYPE_STRING, 'top')\n}, NAME_MEDIA); // --- Main component ---\n// @vue/component\n\nexport var BMedia = /*#__PURE__*/Vue.extend({\n name: NAME_MEDIA,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n slots = _ref.slots,\n scopedSlots = _ref.scopedSlots,\n children = _ref.children;\n var noBody = props.noBody,\n rightAlign = props.rightAlign,\n verticalAlign = props.verticalAlign;\n var $children = noBody ? children : [];\n\n if (!noBody) {\n var slotScope = {};\n var $slots = slots();\n var $scopedSlots = scopedSlots || {};\n $children.push(h(BMediaBody, normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots)));\n var $aside = normalizeSlot(SLOT_NAME_ASIDE, slotScope, $scopedSlots, $slots);\n\n if ($aside) {\n $children[rightAlign ? 'push' : 'unshift'](h(BMediaAside, {\n props: {\n right: rightAlign,\n verticalAlign: verticalAlign\n }\n }, $aside));\n }\n }\n\n return h(props.tag, mergeData(data, {\n staticClass: 'media'\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_INPUT_GROUP_PREPEND } from '../../constants/components';\nimport { omit } from '../../utils/object';\nimport { makePropsConfigurable } from '../../utils/props';\nimport { BInputGroupAddon, props as BInputGroupAddonProps } from './input-group-addon'; // --- Props ---\n\nexport var props = makePropsConfigurable(omit(BInputGroupAddonProps, ['append']), NAME_INPUT_GROUP_PREPEND); // --- Main component ---\n// @vue/component\n\nexport var BInputGroupPrepend = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_GROUP_PREPEND,\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 // Pass all our data down to child, and set `append` to `true`\n return h(BInputGroupAddon, mergeData(data, {\n props: _objectSpread(_objectSpread({}, props), {}, {\n append: false\n })\n }), children);\n }\n});","export default function _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $findIndex = require('../internals/array-iteration').findIndex;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.findIndex` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.findindex\nexportTypedArrayMethod('findIndex', function findIndex(predicate /* , thisArg */) {\n return $findIndex(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar toLength = require('../internals/to-length');\nvar toOffset = require('../internals/to-offset');\nvar toObject = require('../internals/to-object');\nvar fails = require('../internals/fails');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\nvar FORCED = fails(function () {\n // eslint-disable-next-line no-undef\n new Int8Array(1).set({});\n});\n\n// `%TypedArray%.prototype.set` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.set\nexportTypedArrayMethod('set', function set(arrayLike /* , offset */) {\n aTypedArray(this);\n var offset = toOffset(arguments.length > 1 ? arguments[1] : undefined, 1);\n var length = this.length;\n var src = toObject(arrayLike);\n var len = toLength(src.length);\n var index = 0;\n if (len + offset > length) throw RangeError('Wrong length');\n while (index < len) this[offset + index] = src[index++];\n}, FORCED);\n","export default function _nonIterableRest() {\n 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}","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $map = require('../internals/array-iteration').map;\nvar speciesConstructor = require('../internals/species-constructor');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.map` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.map\nexportTypedArrayMethod('map', function map(mapfn /* , thisArg */) {\n return $map(aTypedArray(this), mapfn, arguments.length > 1 ? arguments[1] : undefined, function (O, length) {\n return new (aTypedArrayConstructor(speciesConstructor(O, O.constructor)))(length);\n });\n});\n","import { Vue, mergeData } from '../../vue';\nimport { NAME_INPUT_GROUP_ADDON } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { BInputGroupText } from './input-group-text'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n append: makeProp(PROP_TYPE_BOOLEAN, false),\n id: makeProp(PROP_TYPE_STRING),\n isText: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_INPUT_GROUP_ADDON); // --- Main component ---\n// @vue/component\n\nexport var BInputGroupAddon = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_GROUP_ADDON,\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 append = props.append;\n return h(props.tag, mergeData(data, {\n class: {\n 'input-group-append': append,\n 'input-group-prepend': !append\n },\n attrs: {\n id: props.id\n }\n }), props.isText ? [h(BInputGroupText, children)] : children);\n }\n});","import { ref, nextTick } from '@vue/composition-api'\r\n\r\n// ===========================================================\r\n// ! This is coupled with \"veeValidate\" plugin\r\n// ===========================================================\r\n\r\nexport default function formValidation(resetFormData, clearFormData = () => {}) {\r\n // ------------------------------------------------\r\n // refFormObserver\r\n // ! This is for veeValidate Observer\r\n // * Used for veeValidate form observer\r\n // ------------------------------------------------\r\n const refFormObserver = ref(null)\r\n\r\n // ------------------------------------------------\r\n // resetObserver\r\n // ! This function is coupled with veeValidate\r\n // * It resets form observer\r\n // ------------------------------------------------\r\n const resetObserver = () => {\r\n refFormObserver.value.reset()\r\n }\r\n\r\n // ------------------------------------------------\r\n // getValidationState\r\n // ! This function is coupled with veeValidate\r\n // * It returns true/false based on validation\r\n // ------------------------------------------------\r\n // eslint-disable-next-line object-curly-newline\r\n const getValidationState = ({ dirty, validated, required: fieldRequired, changed, valid = null }) => {\r\n const result = dirty || validated ? valid : null\r\n return !fieldRequired && !changed ? null : result\r\n }\r\n\r\n // ------------------------------------------------\r\n // resetForm\r\n // ! This function is coupled with veeValidate\r\n // * This uses resetFormData arg to reset form data\r\n // ------------------------------------------------\r\n const resetForm = () => {\r\n resetFormData()\r\n nextTick(() => {\r\n resetObserver()\r\n })\r\n }\r\n\r\n // ------------------------------------------------\r\n // clearForm\r\n // ! This function is coupled with veeValidate\r\n // * This uses clearFormData arg to reset form data\r\n // ------------------------------------------------\r\n const clearForm = () => {\r\n clearFormData()\r\n nextTick(() => {\r\n resetObserver()\r\n })\r\n }\r\n\r\n return {\r\n refFormObserver,\r\n resetObserver,\r\n getValidationState,\r\n resetForm,\r\n clearForm,\r\n }\r\n}\r\n","var createTypedArrayConstructor = require('../internals/typed-array-constructor');\n\n// `Uint8Array` constructor\n// https://tc39.github.io/ecma262/#sec-typedarray-objects\ncreateTypedArrayConstructor('Uint8', function (init) {\n return function Uint8Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\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_INPUT_GROUP } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_APPEND, SLOT_NAME_DEFAULT, SLOT_NAME_PREPEND } from '../../constants/slots';\nimport { htmlOrText } from '../../utils/html';\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { BInputGroupAppend } from './input-group-append';\nimport { BInputGroupPrepend } from './input-group-prepend';\nimport { BInputGroupText } from './input-group-text'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n append: makeProp(PROP_TYPE_STRING),\n appendHtml: makeProp(PROP_TYPE_STRING),\n id: makeProp(PROP_TYPE_STRING),\n prepend: makeProp(PROP_TYPE_STRING),\n prependHtml: makeProp(PROP_TYPE_STRING),\n size: makeProp(PROP_TYPE_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_INPUT_GROUP); // --- Main component ---\n// @vue/component\n\nexport var BInputGroup = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_GROUP,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n slots = _ref.slots,\n scopedSlots = _ref.scopedSlots;\n var prepend = props.prepend,\n prependHtml = props.prependHtml,\n append = props.append,\n appendHtml = props.appendHtml,\n size = props.size;\n var $scopedSlots = scopedSlots || {};\n var $slots = slots();\n var slotScope = {};\n var $prepend = h();\n var hasPrependSlot = hasNormalizedSlot(SLOT_NAME_PREPEND, $scopedSlots, $slots);\n\n if (hasPrependSlot || prepend || prependHtml) {\n $prepend = h(BInputGroupPrepend, [hasPrependSlot ? normalizeSlot(SLOT_NAME_PREPEND, slotScope, $scopedSlots, $slots) : h(BInputGroupText, {\n domProps: htmlOrText(prependHtml, prepend)\n })]);\n }\n\n var $append = h();\n var hasAppendSlot = hasNormalizedSlot(SLOT_NAME_APPEND, $scopedSlots, $slots);\n\n if (hasAppendSlot || append || appendHtml) {\n $append = h(BInputGroupAppend, [hasAppendSlot ? normalizeSlot(SLOT_NAME_APPEND, slotScope, $scopedSlots, $slots) : h(BInputGroupText, {\n domProps: htmlOrText(appendHtml, append)\n })]);\n }\n\n return h(props.tag, mergeData(data, {\n staticClass: 'input-group',\n class: _defineProperty({}, \"input-group-\".concat(size), size),\n attrs: {\n id: props.id || null,\n role: 'group'\n }\n }), [$prepend, normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots), $append]);\n }\n});","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar $join = [].join;\n\n// `%TypedArray%.prototype.join` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.join\n// eslint-disable-next-line no-unused-vars\nexportTypedArrayMethod('join', function join(separator) {\n return $join.apply(aTypedArray(this), arguments);\n});\n","'use strict';\n// based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js\nvar maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1\nvar base = 36;\nvar tMin = 1;\nvar tMax = 26;\nvar skew = 38;\nvar damp = 700;\nvar initialBias = 72;\nvar initialN = 128; // 0x80\nvar delimiter = '-'; // '\\x2D'\nvar regexNonASCII = /[^\\0-\\u007E]/; // non-ASCII chars\nvar regexSeparators = /[.\\u3002\\uFF0E\\uFF61]/g; // RFC 3490 separators\nvar OVERFLOW_ERROR = 'Overflow: input needs wider integers to process';\nvar baseMinusTMin = base - tMin;\nvar floor = Math.floor;\nvar stringFromCharCode = String.fromCharCode;\n\n/**\n * Creates an array containing the numeric code points of each Unicode\n * character in the string. While JavaScript uses UCS-2 internally,\n * this function will convert a pair of surrogate halves (each of which\n * UCS-2 exposes as separate characters) into a single code point,\n * matching UTF-16.\n */\nvar ucs2decode = function (string) {\n var output = [];\n var counter = 0;\n var length = string.length;\n while (counter < length) {\n var value = string.charCodeAt(counter++);\n if (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n // It's a high surrogate, and there is a next character.\n var extra = string.charCodeAt(counter++);\n if ((extra & 0xFC00) == 0xDC00) { // Low surrogate.\n output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n } else {\n // It's an unmatched surrogate; only append this code unit, in case the\n // next code unit is the high surrogate of a surrogate pair.\n output.push(value);\n counter--;\n }\n } else {\n output.push(value);\n }\n }\n return output;\n};\n\n/**\n * Converts a digit/integer into a basic code point.\n */\nvar digitToBasic = function (digit) {\n // 0..25 map to ASCII a..z or A..Z\n // 26..35 map to ASCII 0..9\n return digit + 22 + 75 * (digit < 26);\n};\n\n/**\n * Bias adaptation function as per section 3.4 of RFC 3492.\n * https://tools.ietf.org/html/rfc3492#section-3.4\n */\nvar adapt = function (delta, numPoints, firstTime) {\n var k = 0;\n delta = firstTime ? floor(delta / damp) : delta >> 1;\n delta += floor(delta / numPoints);\n for (; delta > baseMinusTMin * tMax >> 1; k += base) {\n delta = floor(delta / baseMinusTMin);\n }\n return floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n};\n\n/**\n * Converts a string of Unicode symbols (e.g. a domain name label) to a\n * Punycode string of ASCII-only symbols.\n */\n// eslint-disable-next-line max-statements\nvar encode = function (input) {\n var output = [];\n\n // Convert the input in UCS-2 to an array of Unicode code points.\n input = ucs2decode(input);\n\n // Cache the length.\n var inputLength = input.length;\n\n // Initialize the state.\n var n = initialN;\n var delta = 0;\n var bias = initialBias;\n var i, currentValue;\n\n // Handle the basic code points.\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < 0x80) {\n output.push(stringFromCharCode(currentValue));\n }\n }\n\n var basicLength = output.length; // number of basic code points.\n var handledCPCount = basicLength; // number of code points that have been handled;\n\n // Finish the basic string with a delimiter unless it's empty.\n if (basicLength) {\n output.push(delimiter);\n }\n\n // Main encoding loop:\n while (handledCPCount < inputLength) {\n // All non-basic code points < n have been handled already. Find the next larger one:\n var m = maxInt;\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue >= n && currentValue < m) {\n m = currentValue;\n }\n }\n\n // Increase `delta` enough to advance the decoder's state to , but guard against overflow.\n var handledCPCountPlusOne = handledCPCount + 1;\n if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n throw RangeError(OVERFLOW_ERROR);\n }\n\n delta += (m - n) * handledCPCountPlusOne;\n n = m;\n\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < n && ++delta > maxInt) {\n throw RangeError(OVERFLOW_ERROR);\n }\n if (currentValue == n) {\n // Represent delta as a generalized variable-length integer.\n var q = delta;\n for (var k = base; /* no condition */; k += base) {\n var t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n if (q < t) break;\n var qMinusT = q - t;\n var baseMinusT = base - t;\n output.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT)));\n q = floor(qMinusT / baseMinusT);\n }\n\n output.push(stringFromCharCode(digitToBasic(q)));\n bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n delta = 0;\n ++handledCPCount;\n }\n }\n\n ++delta;\n ++n;\n }\n return output.join('');\n};\n\nmodule.exports = function (input) {\n var encoded = [];\n var labels = input.toLowerCase().replace(regexSeparators, '\\u002E').split('.');\n var i, label;\n for (i = 0; i < labels.length; i++) {\n label = labels[i];\n encoded.push(regexNonASCII.test(label) ? 'xn--' + encode(label) : label);\n }\n return encoded.join('.');\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 { COMPONENT_UID_KEY, Vue } from '../../vue';\nimport { NAME_ALERT } from '../../constants/components';\nimport { EVENT_NAME_DISMISSED, EVENT_NAME_DISMISS_COUNT_DOWN } from '../../constants/events';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_DISMISS } from '../../constants/slots';\nimport { requestAF } from '../../utils/dom';\nimport { isBoolean, isNumeric } from '../../utils/inspect';\nimport { makeModelMixin } from '../../utils/model';\nimport { toInteger } from '../../utils/number';\nimport { sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot';\nimport { BButtonClose } from '../button/button-close';\nimport { BVTransition } from '../transition/bv-transition'; // --- Constants ---\n\nvar _makeModelMixin = makeModelMixin('show', {\n type: PROP_TYPE_BOOLEAN_NUMBER_STRING,\n defaultValue: false\n}),\n modelMixin = _makeModelMixin.mixin,\n modelProps = _makeModelMixin.props,\n MODEL_PROP_NAME = _makeModelMixin.prop,\n MODEL_EVENT_NAME = _makeModelMixin.event; // --- Helper methods ---\n// Convert `show` value to a number\n\n\nvar parseCountDown = function parseCountDown(show) {\n if (show === '' || isBoolean(show)) {\n return 0;\n }\n\n show = toInteger(show, 0);\n return show > 0 ? show : 0;\n}; // Convert `show` value to a boolean\n\n\nvar parseShow = function parseShow(show) {\n if (show === '' || show === true) {\n return true;\n }\n\n if (toInteger(show, 0) < 1) {\n // Boolean will always return false for the above comparison\n return false;\n }\n\n return !!show;\n}; // --- Props ---\n\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, modelProps), {}, {\n dismissLabel: makeProp(PROP_TYPE_STRING, 'Close'),\n dismissible: makeProp(PROP_TYPE_BOOLEAN, false),\n fade: makeProp(PROP_TYPE_BOOLEAN, false),\n variant: makeProp(PROP_TYPE_STRING, 'info')\n})), NAME_ALERT); // --- Main component ---\n// @vue/component\n\nexport var BAlert = /*#__PURE__*/Vue.extend({\n name: NAME_ALERT,\n mixins: [modelMixin, normalizeSlotMixin],\n props: props,\n data: function data() {\n return {\n countDown: 0,\n // If initially shown, we need to set these for SSR\n localShow: parseShow(this[MODEL_PROP_NAME])\n };\n },\n watch: (_watch = {}, _defineProperty(_watch, MODEL_PROP_NAME, function (newValue) {\n this.countDown = parseCountDown(newValue);\n this.localShow = parseShow(newValue);\n }), _defineProperty(_watch, \"countDown\", function countDown(newValue) {\n var _this = this;\n\n this.clearCountDownInterval();\n var show = this[MODEL_PROP_NAME]; // Ignore if `show` transitions to a boolean value\n\n if (isNumeric(show)) {\n this.$emit(EVENT_NAME_DISMISS_COUNT_DOWN, newValue); // Update the v-model if needed\n\n if (show !== newValue) {\n this.$emit(MODEL_EVENT_NAME, newValue);\n }\n\n if (newValue > 0) {\n this.localShow = true;\n this.$_countDownTimeout = setTimeout(function () {\n _this.countDown--;\n }, 1000);\n } else {\n // Slightly delay the hide to allow any UI updates\n this.$nextTick(function () {\n requestAF(function () {\n _this.localShow = false;\n });\n });\n }\n }\n }), _defineProperty(_watch, \"localShow\", function localShow(newValue) {\n var show = this[MODEL_PROP_NAME]; // Only emit dismissed events for dismissible or auto-dismissing alerts\n\n if (!newValue && (this.dismissible || isNumeric(show))) {\n this.$emit(EVENT_NAME_DISMISSED);\n } // Only emit booleans if we weren't passed a number via v-model\n\n\n if (!isNumeric(show) && show !== newValue) {\n this.$emit(MODEL_EVENT_NAME, newValue);\n }\n }), _watch),\n created: function created() {\n // Create private non-reactive props\n this.$_filterTimer = null;\n var show = this[MODEL_PROP_NAME];\n this.countDown = parseCountDown(show);\n this.localShow = parseShow(show);\n },\n beforeDestroy: function beforeDestroy() {\n this.clearCountDownInterval();\n },\n methods: {\n dismiss: function dismiss() {\n this.clearCountDownInterval();\n this.countDown = 0;\n this.localShow = false;\n },\n clearCountDownInterval: function clearCountDownInterval() {\n clearTimeout(this.$_countDownTimeout);\n this.$_countDownTimeout = null;\n }\n },\n render: function render(h) {\n var $alert = h();\n\n if (this.localShow) {\n var dismissible = this.dismissible,\n variant = this.variant;\n var $dismissButton = h();\n\n if (dismissible) {\n // Add dismiss button\n $dismissButton = h(BButtonClose, {\n attrs: {\n 'aria-label': this.dismissLabel\n },\n on: {\n click: this.dismiss\n }\n }, [this.normalizeSlot(SLOT_NAME_DISMISS)]);\n }\n\n $alert = h('div', {\n staticClass: 'alert',\n class: _defineProperty({\n 'alert-dismissible': dismissible\n }, \"alert-\".concat(variant), variant),\n attrs: {\n role: 'alert',\n 'aria-live': 'polite',\n 'aria-atomic': true\n },\n key: this[COMPONENT_UID_KEY]\n }, [$dismissButton, this.normalizeSlot()]);\n }\n\n return h(BVTransition, {\n props: {\n noFade: !this.fade\n }\n }, [$alert]);\n }\n});","'use strict';\nvar global = require('../internals/global');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar ArrayIterators = require('../modules/es.array.iterator');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar Uint8Array = global.Uint8Array;\nvar arrayValues = ArrayIterators.values;\nvar arrayKeys = ArrayIterators.keys;\nvar arrayEntries = ArrayIterators.entries;\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar nativeTypedArrayIterator = Uint8Array && Uint8Array.prototype[ITERATOR];\n\nvar CORRECT_ITER_NAME = !!nativeTypedArrayIterator\n && (nativeTypedArrayIterator.name == 'values' || nativeTypedArrayIterator.name == undefined);\n\nvar typedArrayValues = function values() {\n return arrayValues.call(aTypedArray(this));\n};\n\n// `%TypedArray%.prototype.entries` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.entries\nexportTypedArrayMethod('entries', function entries() {\n return arrayEntries.call(aTypedArray(this));\n});\n// `%TypedArray%.prototype.keys` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.keys\nexportTypedArrayMethod('keys', function keys() {\n return arrayKeys.call(aTypedArray(this));\n});\n// `%TypedArray%.prototype.values` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.values\nexportTypedArrayMethod('values', typedArrayValues, !CORRECT_ITER_NAME);\n// `%TypedArray%.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype-@@iterator\nexportTypedArrayMethod(ITERATOR, typedArrayValues, !CORRECT_ITER_NAME);\n","'use strict';\nvar global = require('../internals/global');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_ARRAY_BUFFER = require('../internals/array-buffer-native');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefineAll = require('../internals/redefine-all');\nvar fails = require('../internals/fails');\nvar anInstance = require('../internals/an-instance');\nvar toInteger = require('../internals/to-integer');\nvar toLength = require('../internals/to-length');\nvar toIndex = require('../internals/to-index');\nvar IEEE754 = require('../internals/ieee754');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar arrayFill = require('../internals/array-fill');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar ARRAY_BUFFER = 'ArrayBuffer';\nvar DATA_VIEW = 'DataView';\nvar PROTOTYPE = 'prototype';\nvar WRONG_LENGTH = 'Wrong length';\nvar WRONG_INDEX = 'Wrong index';\nvar NativeArrayBuffer = global[ARRAY_BUFFER];\nvar $ArrayBuffer = NativeArrayBuffer;\nvar $DataView = global[DATA_VIEW];\nvar $DataViewPrototype = $DataView && $DataView[PROTOTYPE];\nvar ObjectPrototype = Object.prototype;\nvar RangeError = global.RangeError;\n\nvar packIEEE754 = IEEE754.pack;\nvar unpackIEEE754 = IEEE754.unpack;\n\nvar packInt8 = function (number) {\n return [number & 0xFF];\n};\n\nvar packInt16 = function (number) {\n return [number & 0xFF, number >> 8 & 0xFF];\n};\n\nvar packInt32 = function (number) {\n return [number & 0xFF, number >> 8 & 0xFF, number >> 16 & 0xFF, number >> 24 & 0xFF];\n};\n\nvar unpackInt32 = function (buffer) {\n return buffer[3] << 24 | buffer[2] << 16 | buffer[1] << 8 | buffer[0];\n};\n\nvar packFloat32 = function (number) {\n return packIEEE754(number, 23, 4);\n};\n\nvar packFloat64 = function (number) {\n return packIEEE754(number, 52, 8);\n};\n\nvar addGetter = function (Constructor, key) {\n defineProperty(Constructor[PROTOTYPE], key, { get: function () { return getInternalState(this)[key]; } });\n};\n\nvar get = function (view, count, index, isLittleEndian) {\n var intIndex = toIndex(index);\n var store = getInternalState(view);\n if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX);\n var bytes = getInternalState(store.buffer).bytes;\n var start = intIndex + store.byteOffset;\n var pack = bytes.slice(start, start + count);\n return isLittleEndian ? pack : pack.reverse();\n};\n\nvar set = function (view, count, index, conversion, value, isLittleEndian) {\n var intIndex = toIndex(index);\n var store = getInternalState(view);\n if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX);\n var bytes = getInternalState(store.buffer).bytes;\n var start = intIndex + store.byteOffset;\n var pack = conversion(+value);\n for (var i = 0; i < count; i++) bytes[start + i] = pack[isLittleEndian ? i : count - i - 1];\n};\n\nif (!NATIVE_ARRAY_BUFFER) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, $ArrayBuffer, ARRAY_BUFFER);\n var byteLength = toIndex(length);\n setInternalState(this, {\n bytes: arrayFill.call(new Array(byteLength), 0),\n byteLength: byteLength\n });\n if (!DESCRIPTORS) this.byteLength = byteLength;\n };\n\n $DataView = function DataView(buffer, byteOffset, byteLength) {\n anInstance(this, $DataView, DATA_VIEW);\n anInstance(buffer, $ArrayBuffer, DATA_VIEW);\n var bufferLength = getInternalState(buffer).byteLength;\n var offset = toInteger(byteOffset);\n if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset');\n byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);\n if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH);\n setInternalState(this, {\n buffer: buffer,\n byteLength: byteLength,\n byteOffset: offset\n });\n if (!DESCRIPTORS) {\n this.buffer = buffer;\n this.byteLength = byteLength;\n this.byteOffset = offset;\n }\n };\n\n if (DESCRIPTORS) {\n addGetter($ArrayBuffer, 'byteLength');\n addGetter($DataView, 'buffer');\n addGetter($DataView, 'byteLength');\n addGetter($DataView, 'byteOffset');\n }\n\n redefineAll($DataView[PROTOTYPE], {\n getInt8: function getInt8(byteOffset) {\n return get(this, 1, byteOffset)[0] << 24 >> 24;\n },\n getUint8: function getUint8(byteOffset) {\n return get(this, 1, byteOffset)[0];\n },\n getInt16: function getInt16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined);\n return (bytes[1] << 8 | bytes[0]) << 16 >> 16;\n },\n getUint16: function getUint16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined);\n return bytes[1] << 8 | bytes[0];\n },\n getInt32: function getInt32(byteOffset /* , littleEndian */) {\n return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined));\n },\n getUint32: function getUint32(byteOffset /* , littleEndian */) {\n return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined)) >>> 0;\n },\n getFloat32: function getFloat32(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 23);\n },\n getFloat64: function getFloat64(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 8, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 52);\n },\n setInt8: function setInt8(byteOffset, value) {\n set(this, 1, byteOffset, packInt8, value);\n },\n setUint8: function setUint8(byteOffset, value) {\n set(this, 1, byteOffset, packInt8, value);\n },\n setInt16: function setInt16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setUint16: function setUint16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setInt32: function setInt32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setUint32: function setUint32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packFloat32, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) {\n set(this, 8, byteOffset, packFloat64, value, arguments.length > 2 ? arguments[2] : undefined);\n }\n });\n} else {\n if (!fails(function () {\n NativeArrayBuffer(1);\n }) || !fails(function () {\n new NativeArrayBuffer(-1); // eslint-disable-line no-new\n }) || fails(function () {\n new NativeArrayBuffer(); // eslint-disable-line no-new\n new NativeArrayBuffer(1.5); // eslint-disable-line no-new\n new NativeArrayBuffer(NaN); // eslint-disable-line no-new\n return NativeArrayBuffer.name != ARRAY_BUFFER;\n })) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, $ArrayBuffer);\n return new NativeArrayBuffer(toIndex(length));\n };\n var ArrayBufferPrototype = $ArrayBuffer[PROTOTYPE] = NativeArrayBuffer[PROTOTYPE];\n for (var keys = getOwnPropertyNames(NativeArrayBuffer), j = 0, key; keys.length > j;) {\n if (!((key = keys[j++]) in $ArrayBuffer)) {\n createNonEnumerableProperty($ArrayBuffer, key, NativeArrayBuffer[key]);\n }\n }\n ArrayBufferPrototype.constructor = $ArrayBuffer;\n }\n\n // WebKit bug - the same parent prototype for typed arrays and data view\n if (setPrototypeOf && getPrototypeOf($DataViewPrototype) !== ObjectPrototype) {\n setPrototypeOf($DataViewPrototype, ObjectPrototype);\n }\n\n // iOS Safari 7.x bug\n var testView = new $DataView(new $ArrayBuffer(2));\n var nativeSetInt8 = $DataViewPrototype.setInt8;\n testView.setInt8(0, 2147483648);\n testView.setInt8(1, 2147483649);\n if (testView.getInt8(0) || !testView.getInt8(1)) redefineAll($DataViewPrototype, {\n setInt8: function setInt8(byteOffset, value) {\n nativeSetInt8.call(this, byteOffset, value << 24 >> 24);\n },\n setUint8: function setUint8(byteOffset, value) {\n nativeSetInt8.call(this, byteOffset, value << 24 >> 24);\n }\n }, { unsafe: true });\n}\n\nsetToStringTag($ArrayBuffer, ARRAY_BUFFER);\nsetToStringTag($DataView, DATA_VIEW);\n\nmodule.exports = {\n ArrayBuffer: $ArrayBuffer,\n DataView: $DataView\n};\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $some = require('../internals/array-iteration').some;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.some` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.some\nexportTypedArrayMethod('some', function some(callbackfn /* , thisArg */) {\n return $some(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar exportTypedArrayMethod = require('../internals/array-buffer-view-core').exportTypedArrayMethod;\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar Uint8Array = global.Uint8Array;\nvar Uint8ArrayPrototype = Uint8Array && Uint8Array.prototype || {};\nvar arrayToString = [].toString;\nvar arrayJoin = [].join;\n\nif (fails(function () { arrayToString.call({}); })) {\n arrayToString = function toString() {\n return arrayJoin.call(this);\n };\n}\n\nvar IS_NOT_ARRAY_METHOD = Uint8ArrayPrototype.toString != arrayToString;\n\n// `%TypedArray%.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.tostring\nexportTypedArrayMethod('toString', arrayToString, IS_NOT_ARRAY_METHOD);\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $fill = require('../internals/array-fill');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.fill` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.fill\n// eslint-disable-next-line no-unused-vars\nexportTypedArrayMethod('fill', function fill(value /* , start, end */) {\n return $fill.apply(aTypedArray(this), arguments);\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS = require('../internals/typed-array-constructors-require-wrappers');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar ArrayBufferModule = require('../internals/array-buffer');\nvar anInstance = require('../internals/an-instance');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar toLength = require('../internals/to-length');\nvar toIndex = require('../internals/to-index');\nvar toOffset = require('../internals/to-offset');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar classof = require('../internals/classof');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar typedArrayFrom = require('../internals/typed-array-from');\nvar forEach = require('../internals/array-iteration').forEach;\nvar setSpecies = require('../internals/set-species');\nvar definePropertyModule = require('../internals/object-define-property');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar InternalStateModule = require('../internals/internal-state');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar round = Math.round;\nvar RangeError = global.RangeError;\nvar ArrayBuffer = ArrayBufferModule.ArrayBuffer;\nvar DataView = ArrayBufferModule.DataView;\nvar NATIVE_ARRAY_BUFFER_VIEWS = ArrayBufferViewCore.NATIVE_ARRAY_BUFFER_VIEWS;\nvar TYPED_ARRAY_TAG = ArrayBufferViewCore.TYPED_ARRAY_TAG;\nvar TypedArray = ArrayBufferViewCore.TypedArray;\nvar TypedArrayPrototype = ArrayBufferViewCore.TypedArrayPrototype;\nvar aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;\nvar isTypedArray = ArrayBufferViewCore.isTypedArray;\nvar BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';\nvar WRONG_LENGTH = 'Wrong length';\n\nvar fromList = function (C, list) {\n var index = 0;\n var length = list.length;\n var result = new (aTypedArrayConstructor(C))(length);\n while (length > index) result[index] = list[index++];\n return result;\n};\n\nvar addGetter = function (it, key) {\n nativeDefineProperty(it, key, { get: function () {\n return getInternalState(this)[key];\n } });\n};\n\nvar isArrayBuffer = function (it) {\n var klass;\n return it instanceof ArrayBuffer || (klass = classof(it)) == 'ArrayBuffer' || klass == 'SharedArrayBuffer';\n};\n\nvar isTypedArrayIndex = function (target, key) {\n return isTypedArray(target)\n && typeof key != 'symbol'\n && key in target\n && String(+key) == String(key);\n};\n\nvar wrappedGetOwnPropertyDescriptor = function getOwnPropertyDescriptor(target, key) {\n return isTypedArrayIndex(target, key = toPrimitive(key, true))\n ? createPropertyDescriptor(2, target[key])\n : nativeGetOwnPropertyDescriptor(target, key);\n};\n\nvar wrappedDefineProperty = function defineProperty(target, key, descriptor) {\n if (isTypedArrayIndex(target, key = toPrimitive(key, true))\n && isObject(descriptor)\n && has(descriptor, 'value')\n && !has(descriptor, 'get')\n && !has(descriptor, 'set')\n // TODO: add validation descriptor w/o calling accessors\n && !descriptor.configurable\n && (!has(descriptor, 'writable') || descriptor.writable)\n && (!has(descriptor, 'enumerable') || descriptor.enumerable)\n ) {\n target[key] = descriptor.value;\n return target;\n } return nativeDefineProperty(target, key, descriptor);\n};\n\nif (DESCRIPTORS) {\n if (!NATIVE_ARRAY_BUFFER_VIEWS) {\n getOwnPropertyDescriptorModule.f = wrappedGetOwnPropertyDescriptor;\n definePropertyModule.f = wrappedDefineProperty;\n addGetter(TypedArrayPrototype, 'buffer');\n addGetter(TypedArrayPrototype, 'byteOffset');\n addGetter(TypedArrayPrototype, 'byteLength');\n addGetter(TypedArrayPrototype, 'length');\n }\n\n $({ target: 'Object', stat: true, forced: !NATIVE_ARRAY_BUFFER_VIEWS }, {\n getOwnPropertyDescriptor: wrappedGetOwnPropertyDescriptor,\n defineProperty: wrappedDefineProperty\n });\n\n module.exports = function (TYPE, wrapper, CLAMPED) {\n var BYTES = TYPE.match(/\\d+$/)[0] / 8;\n var CONSTRUCTOR_NAME = TYPE + (CLAMPED ? 'Clamped' : '') + 'Array';\n var GETTER = 'get' + TYPE;\n var SETTER = 'set' + TYPE;\n var NativeTypedArrayConstructor = global[CONSTRUCTOR_NAME];\n var TypedArrayConstructor = NativeTypedArrayConstructor;\n var TypedArrayConstructorPrototype = TypedArrayConstructor && TypedArrayConstructor.prototype;\n var exported = {};\n\n var getter = function (that, index) {\n var data = getInternalState(that);\n return data.view[GETTER](index * BYTES + data.byteOffset, true);\n };\n\n var setter = function (that, index, value) {\n var data = getInternalState(that);\n if (CLAMPED) value = (value = round(value)) < 0 ? 0 : value > 0xFF ? 0xFF : value & 0xFF;\n data.view[SETTER](index * BYTES + data.byteOffset, value, true);\n };\n\n var addElement = function (that, index) {\n nativeDefineProperty(that, index, {\n get: function () {\n return getter(this, index);\n },\n set: function (value) {\n return setter(this, index, value);\n },\n enumerable: true\n });\n };\n\n if (!NATIVE_ARRAY_BUFFER_VIEWS) {\n TypedArrayConstructor = wrapper(function (that, data, offset, $length) {\n anInstance(that, TypedArrayConstructor, CONSTRUCTOR_NAME);\n var index = 0;\n var byteOffset = 0;\n var buffer, byteLength, length;\n if (!isObject(data)) {\n length = toIndex(data);\n byteLength = length * BYTES;\n buffer = new ArrayBuffer(byteLength);\n } else if (isArrayBuffer(data)) {\n buffer = data;\n byteOffset = toOffset(offset, BYTES);\n var $len = data.byteLength;\n if ($length === undefined) {\n if ($len % BYTES) throw RangeError(WRONG_LENGTH);\n byteLength = $len - byteOffset;\n if (byteLength < 0) throw RangeError(WRONG_LENGTH);\n } else {\n byteLength = toLength($length) * BYTES;\n if (byteLength + byteOffset > $len) throw RangeError(WRONG_LENGTH);\n }\n length = byteLength / BYTES;\n } else if (isTypedArray(data)) {\n return fromList(TypedArrayConstructor, data);\n } else {\n return typedArrayFrom.call(TypedArrayConstructor, data);\n }\n setInternalState(that, {\n buffer: buffer,\n byteOffset: byteOffset,\n byteLength: byteLength,\n length: length,\n view: new DataView(buffer)\n });\n while (index < length) addElement(that, index++);\n });\n\n if (setPrototypeOf) setPrototypeOf(TypedArrayConstructor, TypedArray);\n TypedArrayConstructorPrototype = TypedArrayConstructor.prototype = create(TypedArrayPrototype);\n } else if (TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS) {\n TypedArrayConstructor = wrapper(function (dummy, data, typedArrayOffset, $length) {\n anInstance(dummy, TypedArrayConstructor, CONSTRUCTOR_NAME);\n return inheritIfRequired(function () {\n if (!isObject(data)) return new NativeTypedArrayConstructor(toIndex(data));\n if (isArrayBuffer(data)) return $length !== undefined\n ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES), $length)\n : typedArrayOffset !== undefined\n ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES))\n : new NativeTypedArrayConstructor(data);\n if (isTypedArray(data)) return fromList(TypedArrayConstructor, data);\n return typedArrayFrom.call(TypedArrayConstructor, data);\n }(), dummy, TypedArrayConstructor);\n });\n\n if (setPrototypeOf) setPrototypeOf(TypedArrayConstructor, TypedArray);\n forEach(getOwnPropertyNames(NativeTypedArrayConstructor), function (key) {\n if (!(key in TypedArrayConstructor)) {\n createNonEnumerableProperty(TypedArrayConstructor, key, NativeTypedArrayConstructor[key]);\n }\n });\n TypedArrayConstructor.prototype = TypedArrayConstructorPrototype;\n }\n\n if (TypedArrayConstructorPrototype.constructor !== TypedArrayConstructor) {\n createNonEnumerableProperty(TypedArrayConstructorPrototype, 'constructor', TypedArrayConstructor);\n }\n\n if (TYPED_ARRAY_TAG) {\n createNonEnumerableProperty(TypedArrayConstructorPrototype, TYPED_ARRAY_TAG, CONSTRUCTOR_NAME);\n }\n\n exported[CONSTRUCTOR_NAME] = TypedArrayConstructor;\n\n $({\n global: true, forced: TypedArrayConstructor != NativeTypedArrayConstructor, sham: !NATIVE_ARRAY_BUFFER_VIEWS\n }, exported);\n\n if (!(BYTES_PER_ELEMENT in TypedArrayConstructor)) {\n createNonEnumerableProperty(TypedArrayConstructor, BYTES_PER_ELEMENT, BYTES);\n }\n\n if (!(BYTES_PER_ELEMENT in TypedArrayConstructorPrototype)) {\n createNonEnumerableProperty(TypedArrayConstructorPrototype, BYTES_PER_ELEMENT, BYTES);\n }\n\n setSpecies(CONSTRUCTOR_NAME);\n };\n} else module.exports = function () { /* empty */ };\n","// IEEE754 conversions based on https://github.com/feross/ieee754\n// eslint-disable-next-line no-shadow-restricted-names\nvar Infinity = 1 / 0;\nvar abs = Math.abs;\nvar pow = Math.pow;\nvar floor = Math.floor;\nvar log = Math.log;\nvar LN2 = Math.LN2;\n\nvar pack = function (number, mantissaLength, bytes) {\n var buffer = new Array(bytes);\n var exponentLength = bytes * 8 - mantissaLength - 1;\n var eMax = (1 << exponentLength) - 1;\n var eBias = eMax >> 1;\n var rt = mantissaLength === 23 ? pow(2, -24) - pow(2, -77) : 0;\n var sign = number < 0 || number === 0 && 1 / number < 0 ? 1 : 0;\n var index = 0;\n var exponent, mantissa, c;\n number = abs(number);\n // eslint-disable-next-line no-self-compare\n if (number != number || number === Infinity) {\n // eslint-disable-next-line no-self-compare\n mantissa = number != number ? 1 : 0;\n exponent = eMax;\n } else {\n exponent = floor(log(number) / LN2);\n if (number * (c = pow(2, -exponent)) < 1) {\n exponent--;\n c *= 2;\n }\n if (exponent + eBias >= 1) {\n number += rt / c;\n } else {\n number += rt * pow(2, 1 - eBias);\n }\n if (number * c >= 2) {\n exponent++;\n c /= 2;\n }\n if (exponent + eBias >= eMax) {\n mantissa = 0;\n exponent = eMax;\n } else if (exponent + eBias >= 1) {\n mantissa = (number * c - 1) * pow(2, mantissaLength);\n exponent = exponent + eBias;\n } else {\n mantissa = number * pow(2, eBias - 1) * pow(2, mantissaLength);\n exponent = 0;\n }\n }\n for (; mantissaLength >= 8; buffer[index++] = mantissa & 255, mantissa /= 256, mantissaLength -= 8);\n exponent = exponent << mantissaLength | mantissa;\n exponentLength += mantissaLength;\n for (; exponentLength > 0; buffer[index++] = exponent & 255, exponent /= 256, exponentLength -= 8);\n buffer[--index] |= sign * 128;\n return buffer;\n};\n\nvar unpack = function (buffer, mantissaLength) {\n var bytes = buffer.length;\n var exponentLength = bytes * 8 - mantissaLength - 1;\n var eMax = (1 << exponentLength) - 1;\n var eBias = eMax >> 1;\n var nBits = exponentLength - 7;\n var index = bytes - 1;\n var sign = buffer[index--];\n var exponent = sign & 127;\n var mantissa;\n sign >>= 7;\n for (; nBits > 0; exponent = exponent * 256 + buffer[index], index--, nBits -= 8);\n mantissa = exponent & (1 << -nBits) - 1;\n exponent >>= -nBits;\n nBits += mantissaLength;\n for (; nBits > 0; mantissa = mantissa * 256 + buffer[index], index--, nBits -= 8);\n if (exponent === 0) {\n exponent = 1 - eBias;\n } else if (exponent === eMax) {\n return mantissa ? NaN : sign ? -Infinity : Infinity;\n } else {\n mantissa = mantissa + pow(2, mantissaLength);\n exponent = exponent - eBias;\n } return (sign ? -1 : 1) * mantissa * pow(2, exponent - mantissaLength);\n};\n\nmodule.exports = {\n pack: pack,\n unpack: unpack\n};\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\n\n// `Array.prototype.fill` method implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.fill\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = toLength(O.length);\n var argumentsLength = arguments.length;\n var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);\n var end = argumentsLength > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $includes = require('../internals/array-includes').includes;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.includes` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.includes\nexportTypedArrayMethod('includes', function includes(searchElement /* , fromIndex */) {\n return $includes(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\nvar nativeEndsWith = ''.endsWith;\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('endsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'endsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.endsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.endswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n endsWith: function endsWith(searchString /* , endPosition = @length */) {\n var that = String(requireObjectCoercible(this));\n notARegExp(searchString);\n var endPosition = arguments.length > 1 ? arguments[1] : undefined;\n var len = toLength(that.length);\n var end = endPosition === undefined ? len : min(toLength(endPosition), len);\n var search = String(searchString);\n return nativeEndsWith\n ? nativeEndsWith.call(that, search, end)\n : that.slice(end - search.length, end) === search;\n }\n});\n","/* eslint-disable no-new */\nvar global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar NATIVE_ARRAY_BUFFER_VIEWS = require('../internals/array-buffer-view-core').NATIVE_ARRAY_BUFFER_VIEWS;\n\nvar ArrayBuffer = global.ArrayBuffer;\nvar Int8Array = global.Int8Array;\n\nmodule.exports = !NATIVE_ARRAY_BUFFER_VIEWS || !fails(function () {\n Int8Array(1);\n}) || !fails(function () {\n new Int8Array(-1);\n}) || !checkCorrectnessOfIteration(function (iterable) {\n new Int8Array();\n new Int8Array(null);\n new Int8Array(1.5);\n new Int8Array(iterable);\n}, true) || fails(function () {\n // Safari (11+) bug - a reason why even Safari 13 should load a typed array polyfill\n return new Int8Array(new ArrayBuffer(2), 1, undefined).length !== 1;\n});\n","// Base on-demand component for tooltip / popover templates\n//\n// Currently:\n// Responsible for positioning and transitioning the template\n// Templates are only instantiated when shown, and destroyed when hidden\n//\nimport Popper from 'popper.js';\nimport { Vue } from '../../../vue';\nimport { NAME_POPPER } from '../../../constants/components';\nimport { EVENT_NAME_HIDDEN, EVENT_NAME_HIDE, EVENT_NAME_SHOW, EVENT_NAME_SHOWN, HOOK_EVENT_NAME_DESTROYED } from '../../../constants/events';\nimport { PROP_TYPE_ARRAY_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../../constants/props';\nimport { HTMLElement, SVGElement } from '../../../constants/safe-types';\nimport { getCS, requestAF, select } from '../../../utils/dom';\nimport { toFloat } from '../../../utils/number';\nimport { makeProp } from '../../../utils/props';\nimport { BVTransition } from '../../transition/bv-transition'; // --- Constants ---\n\nvar AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: 'right',\n BOTTOM: 'bottom',\n LEFT: 'left',\n TOPLEFT: 'top',\n TOPRIGHT: 'top',\n RIGHTTOP: 'right',\n RIGHTBOTTOM: 'right',\n BOTTOMLEFT: 'bottom',\n BOTTOMRIGHT: 'bottom',\n LEFTTOP: 'left',\n LEFTBOTTOM: 'left'\n};\nvar OffsetMap = {\n AUTO: 0,\n TOPLEFT: -1,\n TOP: 0,\n TOPRIGHT: +1,\n RIGHTTOP: -1,\n RIGHT: 0,\n RIGHTBOTTOM: +1,\n BOTTOMLEFT: -1,\n BOTTOM: 0,\n BOTTOMRIGHT: +1,\n LEFTTOP: -1,\n LEFT: 0,\n LEFTBOTTOM: +1\n}; // --- Props ---\n\nexport var props = {\n // The minimum distance (in `px`) from the edge of the\n // tooltip/popover that the arrow can be positioned\n arrowPadding: makeProp(PROP_TYPE_NUMBER_STRING, 6),\n // 'scrollParent', 'viewport', 'window', or `Element`\n boundary: makeProp([HTMLElement, PROP_TYPE_STRING], 'scrollParent'),\n // Tooltip/popover will try and stay away from\n // boundary edge by this many pixels\n boundaryPadding: makeProp(PROP_TYPE_NUMBER_STRING, 5),\n fallbackPlacement: makeProp(PROP_TYPE_ARRAY_STRING, 'flip'),\n offset: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n placement: makeProp(PROP_TYPE_STRING, 'top'),\n // Element that the tooltip/popover is positioned relative to\n target: makeProp([HTMLElement, SVGElement])\n}; // --- Main component ---\n// @vue/component\n\nexport var BVPopper = /*#__PURE__*/Vue.extend({\n name: NAME_POPPER,\n props: props,\n data: function data() {\n return {\n // reactive props set by parent\n noFade: false,\n // State related data\n localShow: true,\n attachment: this.getAttachment(this.placement)\n };\n },\n computed: {\n /* istanbul ignore next */\n templateType: function templateType() {\n // Overridden by template component\n return 'unknown';\n },\n popperConfig: function popperConfig() {\n var _this = this;\n\n var placement = this.placement;\n return {\n placement: this.getAttachment(placement),\n modifiers: {\n offset: {\n offset: this.getOffset(placement)\n },\n flip: {\n behavior: this.fallbackPlacement\n },\n // `arrow.element` can also be a reference to an HTML Element\n // maybe we should make this a `$ref` in the templates?\n arrow: {\n element: '.arrow'\n },\n preventOverflow: {\n padding: this.boundaryPadding,\n boundariesElement: this.boundary\n }\n },\n onCreate: function onCreate(data) {\n // Handle flipping arrow classes\n if (data.originalPlacement !== data.placement) {\n /* istanbul ignore next: can't test in JSDOM */\n _this.popperPlacementChange(data);\n }\n },\n onUpdate: function onUpdate(data) {\n // Handle flipping arrow classes\n _this.popperPlacementChange(data);\n }\n };\n }\n },\n created: function created() {\n var _this2 = this;\n\n // Note: We are created on-demand, and should be guaranteed that\n // DOM is rendered/ready by the time the created hook runs\n this.$_popper = null; // Ensure we show as we mount\n\n this.localShow = true; // Create popper instance before shown\n\n this.$on(EVENT_NAME_SHOW, function (el) {\n _this2.popperCreate(el);\n }); // Self destruct handler\n\n var handleDestroy = function handleDestroy() {\n _this2.$nextTick(function () {\n // In a `requestAF()` to release control back to application\n requestAF(function () {\n _this2.$destroy();\n });\n });\n }; // Self destruct if parent destroyed\n\n\n this.$parent.$once(HOOK_EVENT_NAME_DESTROYED, handleDestroy); // Self destruct after hidden\n\n this.$once(EVENT_NAME_HIDDEN, handleDestroy);\n },\n beforeMount: function beforeMount() {\n // Ensure that the attachment position is correct before mounting\n // as our propsData is added after `new Template({...})`\n this.attachment = this.getAttachment(this.placement);\n },\n updated: function updated() {\n // Update popper if needed\n // TODO: Should this be a watcher on `this.popperConfig` instead?\n this.updatePopper();\n },\n beforeDestroy: function beforeDestroy() {\n this.destroyPopper();\n },\n destroyed: function destroyed() {\n // Make sure template is removed from DOM\n var el = this.$el;\n el && el.parentNode && el.parentNode.removeChild(el);\n },\n methods: {\n // \"Public\" method to trigger hide template\n hide: function hide() {\n this.localShow = false;\n },\n // Private\n getAttachment: function getAttachment(placement) {\n return AttachmentMap[String(placement).toUpperCase()] || 'auto';\n },\n getOffset: function getOffset(placement) {\n if (!this.offset) {\n // Could set a ref for the arrow element\n var arrow = this.$refs.arrow || select('.arrow', this.$el);\n var arrowOffset = toFloat(getCS(arrow).width, 0) + toFloat(this.arrowPadding, 0);\n\n switch (OffsetMap[String(placement).toUpperCase()] || 0) {\n /* istanbul ignore next: can't test in JSDOM */\n case +1:\n /* istanbul ignore next: can't test in JSDOM */\n return \"+50%p - \".concat(arrowOffset, \"px\");\n\n /* istanbul ignore next: can't test in JSDOM */\n\n case -1:\n /* istanbul ignore next: can't test in JSDOM */\n return \"-50%p + \".concat(arrowOffset, \"px\");\n\n default:\n return 0;\n }\n }\n /* istanbul ignore next */\n\n\n return this.offset;\n },\n popperCreate: function popperCreate(el) {\n this.destroyPopper(); // We use `el` rather than `this.$el` just in case the original\n // mountpoint root element type was changed by the template\n\n this.$_popper = new Popper(this.target, el, this.popperConfig);\n },\n destroyPopper: function destroyPopper() {\n this.$_popper && this.$_popper.destroy();\n this.$_popper = null;\n },\n updatePopper: function updatePopper() {\n this.$_popper && this.$_popper.scheduleUpdate();\n },\n popperPlacementChange: function popperPlacementChange(data) {\n // Callback used by popper to adjust the arrow placement\n this.attachment = this.getAttachment(data.placement);\n },\n\n /* istanbul ignore next */\n renderTemplate: function renderTemplate(h) {\n // Will be overridden by templates\n return h('div');\n }\n },\n render: function render(h) {\n var _this3 = this;\n\n var noFade = this.noFade; // Note: 'show' and 'fade' classes are only appled during transition\n\n return h(BVTransition, {\n // Transitions as soon as mounted\n props: {\n appear: true,\n noFade: noFade\n },\n on: {\n // Events used by parent component/instance\n beforeEnter: function beforeEnter(el) {\n return _this3.$emit(EVENT_NAME_SHOW, el);\n },\n afterEnter: function afterEnter(el) {\n return _this3.$emit(EVENT_NAME_SHOWN, el);\n },\n beforeLeave: function beforeLeave(el) {\n return _this3.$emit(EVENT_NAME_HIDE, el);\n },\n afterLeave: function afterLeave(el) {\n return _this3.$emit(EVENT_NAME_HIDDEN, el);\n }\n }\n }, [this.localShow ? this.renderTemplate(h) : h()]);\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_TOOLTIP_TEMPLATE } from '../../../constants/components';\nimport { EVENT_NAME_FOCUSIN, EVENT_NAME_FOCUSOUT, EVENT_NAME_MOUSEENTER, EVENT_NAME_MOUSELEAVE } from '../../../constants/events';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../../constants/props';\nimport { isFunction } from '../../../utils/inspect';\nimport { makeProp } from '../../../utils/props';\nimport { scopedStyleMixin } from '../../../mixins/scoped-style';\nimport { BVPopper } from './bv-popper'; // --- Props ---\n\nexport var props = {\n // Used only by the directive versions\n html: makeProp(PROP_TYPE_BOOLEAN, false),\n // Other non-reactive (while open) props are pulled in from BVPopper\n id: makeProp(PROP_TYPE_STRING)\n}; // --- Main component ---\n// @vue/component\n\nexport var BVTooltipTemplate = /*#__PURE__*/Vue.extend({\n name: NAME_TOOLTIP_TEMPLATE,\n extends: BVPopper,\n mixins: [scopedStyleMixin],\n props: props,\n data: function data() {\n // We use data, rather than props to ensure reactivity\n // Parent component will directly set this data\n return {\n title: '',\n content: '',\n variant: null,\n customClass: null,\n interactive: true\n };\n },\n computed: {\n templateType: function templateType() {\n return 'tooltip';\n },\n templateClasses: function templateClasses() {\n var _ref;\n\n var variant = this.variant,\n attachment = this.attachment,\n templateType = this.templateType;\n return [(_ref = {\n // Disables pointer events to hide the tooltip when the user\n // hovers over its content\n noninteractive: !this.interactive\n }, _defineProperty(_ref, \"b-\".concat(templateType, \"-\").concat(variant), variant), _defineProperty(_ref, \"bs-\".concat(templateType, \"-\").concat(attachment), attachment), _ref), this.customClass];\n },\n templateAttributes: function templateAttributes() {\n var id = this.id;\n return _objectSpread(_objectSpread({}, this.$parent.$parent.$attrs), {}, {\n id: id,\n role: 'tooltip',\n tabindex: '-1'\n }, this.scopedStyleAttrs);\n },\n templateListeners: function templateListeners() {\n var _this = this;\n\n // Used for hover/focus trigger listeners\n return {\n mouseenter:\n /* istanbul ignore next */\n function mouseenter(event) {\n _this.$emit(EVENT_NAME_MOUSEENTER, event);\n },\n mouseleave:\n /* istanbul ignore next */\n function mouseleave(event) {\n _this.$emit(EVENT_NAME_MOUSELEAVE, event);\n },\n focusin:\n /* istanbul ignore next */\n function focusin(event) {\n _this.$emit(EVENT_NAME_FOCUSIN, event);\n },\n focusout:\n /* istanbul ignore next */\n function focusout(event) {\n _this.$emit(EVENT_NAME_FOCUSOUT, event);\n }\n };\n }\n },\n methods: {\n renderTemplate: function renderTemplate(h) {\n var title = this.title; // Title can be a scoped slot function\n\n var $title = isFunction(title) ? title({}) : title; // Directive versions only\n\n var domProps = this.html && !isFunction(title) ? {\n innerHTML: title\n } : {};\n return h('div', {\n staticClass: 'tooltip b-tooltip',\n class: this.templateClasses,\n attrs: this.templateAttributes,\n on: this.templateListeners\n }, [h('div', {\n staticClass: 'arrow',\n ref: 'arrow'\n }), h('div', {\n staticClass: 'tooltip-inner',\n domProps: domProps\n }, [$title])]);\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// Tooltip \"Class\" (Built as a renderless Vue instance)\n//\n// Handles trigger events, etc.\n// Instantiates template on demand\nimport { COMPONENT_UID_KEY, Vue } from '../../../vue';\nimport { NAME_MODAL, NAME_TOOLTIP_HELPER } from '../../../constants/components';\nimport { EVENT_NAME_DISABLE, EVENT_NAME_DISABLED, EVENT_NAME_ENABLE, EVENT_NAME_ENABLED, EVENT_NAME_FOCUSIN, EVENT_NAME_FOCUSOUT, EVENT_NAME_HIDDEN, EVENT_NAME_HIDE, EVENT_NAME_MOUSEENTER, EVENT_NAME_MOUSELEAVE, EVENT_NAME_SHOW, EVENT_NAME_SHOWN, EVENT_OPTIONS_NO_CAPTURE, HOOK_EVENT_NAME_BEFORE_DESTROY, HOOK_EVENT_NAME_DESTROYED } from '../../../constants/events';\nimport { arrayIncludes, concat, from as arrayFrom } from '../../../utils/array';\nimport { attemptFocus, closest, contains, getAttr, getById, hasAttr, hasClass, isDisabled, isElement, isVisible, removeAttr, requestAF, select, setAttr } from '../../../utils/dom';\nimport { eventOff, eventOn, eventOnOff, getRootActionEventName, getRootEventName } from '../../../utils/events';\nimport { getScopeId } from '../../../utils/get-scope-id';\nimport { identity } from '../../../utils/identity';\nimport { isFunction, isNumber, isPlainObject, isString, isUndefined, isUndefinedOrNull } from '../../../utils/inspect';\nimport { looseEqual } from '../../../utils/loose-equal';\nimport { mathMax } from '../../../utils/math';\nimport { noop } from '../../../utils/noop';\nimport { toInteger } from '../../../utils/number';\nimport { keys } from '../../../utils/object';\nimport { warn } from '../../../utils/warn';\nimport { BvEvent } from '../../../utils/bv-event.class';\nimport { listenOnRootMixin } from '../../../mixins/listen-on-root';\nimport { BVTooltipTemplate } from './bv-tooltip-template'; // --- Constants ---\n// Modal container selector for appending tooltip/popover\n\nvar MODAL_SELECTOR = '.modal-content'; // Modal `$root` hidden event\n\nvar ROOT_EVENT_NAME_MODAL_HIDDEN = getRootEventName(NAME_MODAL, EVENT_NAME_HIDDEN); // Sidebar container selector for appending tooltip/popover\n\nvar SIDEBAR_SELECTOR = '.b-sidebar'; // For finding the container to append to\n\nvar CONTAINER_SELECTOR = [MODAL_SELECTOR, SIDEBAR_SELECTOR].join(', '); // For dropdown sniffing\n\nvar DROPDOWN_CLASS = 'dropdown';\nvar DROPDOWN_OPEN_SELECTOR = '.dropdown-menu.show'; // Data attribute to temporary store the `title` attribute's value\n\nvar DATA_TITLE_ATTR = 'data-original-title'; // Data specific to popper and template\n// We don't use props, as we need reactivity (we can't pass reactive props)\n\nvar templateData = {\n // Text string or Scoped slot function\n title: '',\n // Text string or Scoped slot function\n content: '',\n // String\n variant: null,\n // String, Array, Object\n customClass: null,\n // String or array of Strings (overwritten by BVPopper)\n triggers: '',\n // String (overwritten by BVPopper)\n placement: 'auto',\n // String or array of strings\n fallbackPlacement: 'flip',\n // Element or Component reference (or function that returns element) of\n // the element that will have the trigger events bound, and is also\n // default element for positioning\n target: null,\n // HTML ID, Element or Component reference\n container: null,\n // 'body'\n // Boolean\n noFade: false,\n // 'scrollParent', 'viewport', 'window', Element, or Component reference\n boundary: 'scrollParent',\n // Tooltip/popover will try and stay away from\n // boundary edge by this many pixels (Number)\n boundaryPadding: 5,\n // Arrow offset (Number)\n offset: 0,\n // Hover/focus delay (Number or Object)\n delay: 0,\n // Arrow of Tooltip/popover will try and stay away from\n // the edge of tooltip/popover edge by this many pixels\n arrowPadding: 6,\n // Interactive state (Boolean)\n interactive: true,\n // Disabled state (Boolean)\n disabled: false,\n // ID to use for tooltip/popover\n id: null,\n // Flag used by directives only, for HTML content\n html: false\n}; // --- Main component ---\n// @vue/component\n\nexport var BVTooltip = /*#__PURE__*/Vue.extend({\n name: NAME_TOOLTIP_HELPER,\n mixins: [listenOnRootMixin],\n data: function data() {\n return _objectSpread(_objectSpread({}, templateData), {}, {\n // State management data\n activeTrigger: {\n // manual: false,\n hover: false,\n click: false,\n focus: false\n },\n localShow: false\n });\n },\n computed: {\n templateType: function templateType() {\n // Overwritten by BVPopover\n return 'tooltip';\n },\n computedId: function computedId() {\n return this.id || \"__bv_\".concat(this.templateType, \"_\").concat(this[COMPONENT_UID_KEY], \"__\");\n },\n computedDelay: function computedDelay() {\n // Normalizes delay into object form\n var delay = {\n show: 0,\n hide: 0\n };\n\n if (isPlainObject(this.delay)) {\n delay.show = mathMax(toInteger(this.delay.show, 0), 0);\n delay.hide = mathMax(toInteger(this.delay.hide, 0), 0);\n } else if (isNumber(this.delay) || isString(this.delay)) {\n delay.show = delay.hide = mathMax(toInteger(this.delay, 0), 0);\n }\n\n return delay;\n },\n computedTriggers: function computedTriggers() {\n // Returns the triggers in sorted array form\n // TODO: Switch this to object form for easier lookup\n return concat(this.triggers).filter(identity).join(' ').trim().toLowerCase().split(/\\s+/).sort();\n },\n isWithActiveTrigger: function isWithActiveTrigger() {\n for (var trigger in this.activeTrigger) {\n if (this.activeTrigger[trigger]) {\n return true;\n }\n }\n\n return false;\n },\n computedTemplateData: function computedTemplateData() {\n var title = this.title,\n content = this.content,\n variant = this.variant,\n customClass = this.customClass,\n noFade = this.noFade,\n interactive = this.interactive;\n return {\n title: title,\n content: content,\n variant: variant,\n customClass: customClass,\n noFade: noFade,\n interactive: interactive\n };\n }\n },\n watch: {\n computedTriggers: function computedTriggers(newTriggers, oldTriggers) {\n var _this = this;\n\n // Triggers have changed, so re-register them\n\n /* istanbul ignore next */\n if (!looseEqual(newTriggers, oldTriggers)) {\n this.$nextTick(function () {\n // Disable trigger listeners\n _this.unListen(); // Clear any active triggers that are no longer in the list of triggers\n\n\n oldTriggers.forEach(function (trigger) {\n if (!arrayIncludes(newTriggers, trigger)) {\n if (_this.activeTrigger[trigger]) {\n _this.activeTrigger[trigger] = false;\n }\n }\n }); // Re-enable the trigger listeners\n\n _this.listen();\n });\n }\n },\n computedTemplateData: function computedTemplateData() {\n // If any of the while open reactive \"props\" change,\n // ensure that the template updates accordingly\n this.handleTemplateUpdate();\n },\n title: function title(newValue, oldValue) {\n // Make sure to hide the tooltip when the title is set empty\n if (newValue !== oldValue && !newValue) {\n this.hide();\n }\n },\n disabled: function disabled(newValue) {\n if (newValue) {\n this.disable();\n } else {\n this.enable();\n }\n }\n },\n created: function created() {\n var _this2 = this;\n\n // Create non-reactive properties\n this.$_tip = null;\n this.$_hoverTimeout = null;\n this.$_hoverState = '';\n this.$_visibleInterval = null;\n this.$_enabled = !this.disabled;\n this.$_noop = noop.bind(this); // Destroy ourselves when the parent is destroyed\n\n if (this.$parent) {\n this.$parent.$once(HOOK_EVENT_NAME_BEFORE_DESTROY, function () {\n _this2.$nextTick(function () {\n // In a `requestAF()` to release control back to application\n requestAF(function () {\n _this2.$destroy();\n });\n });\n });\n }\n\n this.$nextTick(function () {\n var target = _this2.getTarget();\n\n if (target && contains(document.body, target)) {\n // Copy the parent's scoped style attribute\n _this2.scopeId = getScopeId(_this2.$parent); // Set up all trigger handlers and listeners\n\n _this2.listen();\n } else {\n /* istanbul ignore next */\n warn(isString(_this2.target) ? \"Unable to find target element by ID \\\"#\".concat(_this2.target, \"\\\" in document.\") : 'The provided target is no valid HTML element.', _this2.templateType);\n }\n });\n },\n\n /* istanbul ignore next */\n updated: function updated() {\n // Usually called when the slots/data changes\n this.$nextTick(this.handleTemplateUpdate);\n },\n\n /* istanbul ignore next */\n deactivated: function deactivated() {\n // In a keepalive that has been deactivated, so hide\n // the tooltip/popover if it is showing\n this.forceHide();\n },\n beforeDestroy: function beforeDestroy() {\n // Remove all handler/listeners\n this.unListen();\n this.setWhileOpenListeners(false); // Clear any timeouts/intervals\n\n this.clearHoverTimeout();\n this.clearVisibilityInterval(); // Destroy the template\n\n this.destroyTemplate(); // Remove any other private properties created during create\n\n this.$_noop = null;\n },\n methods: {\n // --- Methods for creating and destroying the template ---\n getTemplate: function getTemplate() {\n // Overridden by BVPopover\n return BVTooltipTemplate;\n },\n updateData: function updateData() {\n var _this3 = this;\n\n var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Method for updating popper/template data\n // We only update data if it exists, and has not changed\n var titleUpdated = false;\n keys(templateData).forEach(function (prop) {\n if (!isUndefined(data[prop]) && _this3[prop] !== data[prop]) {\n _this3[prop] = data[prop];\n\n if (prop === 'title') {\n titleUpdated = true;\n }\n }\n }); // If the title has updated, we may need to handle the `title`\n // attribute on the trigger target\n // We only do this while the template is open\n\n if (titleUpdated && this.localShow) {\n this.fixTitle();\n }\n },\n createTemplateAndShow: function createTemplateAndShow() {\n // Creates the template instance and show it\n var container = this.getContainer();\n var Template = this.getTemplate();\n var $tip = this.$_tip = new Template({\n parent: this,\n // The following is not reactive to changes in the props data\n propsData: {\n // These values cannot be changed while template is showing\n id: this.computedId,\n html: this.html,\n placement: this.placement,\n fallbackPlacement: this.fallbackPlacement,\n target: this.getPlacementTarget(),\n boundary: this.getBoundary(),\n // Ensure the following are integers\n offset: toInteger(this.offset, 0),\n arrowPadding: toInteger(this.arrowPadding, 0),\n boundaryPadding: toInteger(this.boundaryPadding, 0)\n }\n }); // We set the initial reactive data (values that can be changed while open)\n\n this.handleTemplateUpdate(); // Template transition phase events (handled once only)\n // When the template has mounted, but not visibly shown yet\n\n $tip.$once(EVENT_NAME_SHOW, this.onTemplateShow); // When the template has completed showing\n\n $tip.$once(EVENT_NAME_SHOWN, this.onTemplateShown); // When the template has started to hide\n\n $tip.$once(EVENT_NAME_HIDE, this.onTemplateHide); // When the template has completed hiding\n\n $tip.$once(EVENT_NAME_HIDDEN, this.onTemplateHidden); // When the template gets destroyed for any reason\n\n $tip.$once(HOOK_EVENT_NAME_DESTROYED, this.destroyTemplate); // Convenience events from template\n // To save us from manually adding/removing DOM\n // listeners to tip element when it is open\n\n $tip.$on(EVENT_NAME_FOCUSIN, this.handleEvent);\n $tip.$on(EVENT_NAME_FOCUSOUT, this.handleEvent);\n $tip.$on(EVENT_NAME_MOUSEENTER, this.handleEvent);\n $tip.$on(EVENT_NAME_MOUSELEAVE, this.handleEvent); // Mount (which triggers the `show`)\n\n $tip.$mount(container.appendChild(document.createElement('div'))); // Template will automatically remove its markup from DOM when hidden\n },\n hideTemplate: function hideTemplate() {\n // Trigger the template to start hiding\n // The template will emit the `hide` event after this and\n // then emit the `hidden` event once it is fully hidden\n // The `hook:destroyed` will also be called (safety measure)\n this.$_tip && this.$_tip.hide(); // Clear out any stragging active triggers\n\n this.clearActiveTriggers(); // Reset the hover state\n\n this.$_hoverState = '';\n },\n // Destroy the template instance and reset state\n destroyTemplate: function destroyTemplate() {\n this.setWhileOpenListeners(false);\n this.clearHoverTimeout();\n this.$_hoverState = '';\n this.clearActiveTriggers();\n this.localPlacementTarget = null;\n\n try {\n this.$_tip.$destroy();\n } catch (_unused) {}\n\n this.$_tip = null;\n this.removeAriaDescribedby();\n this.restoreTitle();\n this.localShow = false;\n },\n getTemplateElement: function getTemplateElement() {\n return this.$_tip ? this.$_tip.$el : null;\n },\n handleTemplateUpdate: function handleTemplateUpdate() {\n var _this4 = this;\n\n // Update our template title/content \"props\"\n // So that the template updates accordingly\n var $tip = this.$_tip;\n\n if ($tip) {\n var props = ['title', 'content', 'variant', 'customClass', 'noFade', 'interactive']; // Only update the values if they have changed\n\n props.forEach(function (prop) {\n if ($tip[prop] !== _this4[prop]) {\n $tip[prop] = _this4[prop];\n }\n });\n }\n },\n // --- Show/Hide handlers ---\n // Show the tooltip\n show: function show() {\n var target = this.getTarget();\n\n if (!target || !contains(document.body, target) || !isVisible(target) || this.dropdownOpen() || (isUndefinedOrNull(this.title) || this.title === '') && (isUndefinedOrNull(this.content) || this.content === '')) {\n // If trigger element isn't in the DOM or is not visible, or\n // is on an open dropdown toggle, or has no content, then\n // we exit without showing\n return;\n } // If tip already exists, exit early\n\n\n if (this.$_tip || this.localShow) {\n /* istanbul ignore next */\n return;\n } // In the process of showing\n\n\n this.localShow = true; // Create a cancelable BvEvent\n\n var showEvt = this.buildEvent(EVENT_NAME_SHOW, {\n cancelable: true\n });\n this.emitEvent(showEvt); // Don't show if event cancelled\n\n /* istanbul ignore if */\n\n if (showEvt.defaultPrevented) {\n // Destroy the template (if for some reason it was created)\n this.destroyTemplate();\n return;\n } // Fix the title attribute on target\n\n\n this.fixTitle(); // Set aria-describedby on target\n\n this.addAriaDescribedby(); // Create and show the tooltip\n\n this.createTemplateAndShow();\n },\n hide: function hide() {\n var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n // Hide the tooltip\n var tip = this.getTemplateElement();\n /* istanbul ignore if */\n\n if (!tip || !this.localShow) {\n this.restoreTitle();\n return;\n } // Emit cancelable BvEvent 'hide'\n // We disable cancelling if `force` is true\n\n\n var hideEvt = this.buildEvent(EVENT_NAME_HIDE, {\n cancelable: !force\n });\n this.emitEvent(hideEvt);\n /* istanbul ignore if: ignore for now */\n\n if (hideEvt.defaultPrevented) {\n // Don't hide if event cancelled\n return;\n } // Tell the template to hide\n\n\n this.hideTemplate();\n },\n forceHide: function forceHide() {\n // Forcefully hides/destroys the template, regardless of any active triggers\n var tip = this.getTemplateElement();\n\n if (!tip || !this.localShow) {\n /* istanbul ignore next */\n return;\n } // Disable while open listeners/watchers\n // This is also done in the template `hide` event handler\n\n\n this.setWhileOpenListeners(false); // Clear any hover enter/leave event\n\n this.clearHoverTimeout();\n this.$_hoverState = '';\n this.clearActiveTriggers(); // Disable the fade animation on the template\n\n if (this.$_tip) {\n this.$_tip.noFade = true;\n } // Hide the tip (with force = true)\n\n\n this.hide(true);\n },\n enable: function enable() {\n this.$_enabled = true; // Create a non-cancelable BvEvent\n\n this.emitEvent(this.buildEvent(EVENT_NAME_ENABLED));\n },\n disable: function disable() {\n this.$_enabled = false; // Create a non-cancelable BvEvent\n\n this.emitEvent(this.buildEvent(EVENT_NAME_DISABLED));\n },\n // --- Handlers for template events ---\n // When template is inserted into DOM, but not yet shown\n onTemplateShow: function onTemplateShow() {\n // Enable while open listeners/watchers\n this.setWhileOpenListeners(true);\n },\n // When template show transition completes\n onTemplateShown: function onTemplateShown() {\n var prevHoverState = this.$_hoverState;\n this.$_hoverState = '';\n /* istanbul ignore next: occasional Node 10 coverage error */\n\n if (prevHoverState === 'out') {\n this.leave(null);\n } // Emit a non-cancelable BvEvent 'shown'\n\n\n this.emitEvent(this.buildEvent(EVENT_NAME_SHOWN));\n },\n // When template is starting to hide\n onTemplateHide: function onTemplateHide() {\n // Disable while open listeners/watchers\n this.setWhileOpenListeners(false);\n },\n // When template has completed closing (just before it self destructs)\n onTemplateHidden: function onTemplateHidden() {\n // Destroy the template\n this.destroyTemplate(); // Emit a non-cancelable BvEvent 'shown'\n\n this.emitEvent(this.buildEvent(EVENT_NAME_HIDDEN));\n },\n // --- Helper methods ---\n getTarget: function getTarget() {\n var target = this.target;\n\n if (isString(target)) {\n target = getById(target.replace(/^#/, ''));\n } else if (isFunction(target)) {\n target = target();\n } else if (target) {\n target = target.$el || target;\n }\n\n return isElement(target) ? target : null;\n },\n getPlacementTarget: function getPlacementTarget() {\n // This is the target that the tooltip will be placed on, which may not\n // necessarily be the same element that has the trigger event listeners\n // For now, this is the same as target\n // TODO:\n // Add in child selector support\n // Add in visibility checks for this element\n // Fallback to target if not found\n return this.getTarget();\n },\n getTargetId: function getTargetId() {\n // Returns the ID of the trigger element\n var target = this.getTarget();\n return target && target.id ? target.id : null;\n },\n getContainer: function getContainer() {\n // Handle case where container may be a component ref\n var container = this.container ? this.container.$el || this.container : false;\n var body = document.body;\n var target = this.getTarget(); // If we are in a modal, we append to the modal, If we\n // are in a sidebar, we append to the sidebar, else append\n // to body, unless a container is specified\n // TODO:\n // Template should periodically check to see if it is in dom\n // And if not, self destruct (if container got v-if'ed out of DOM)\n // Or this could possibly be part of the visibility check\n\n return container === false ? closest(CONTAINER_SELECTOR, target) || body :\n /*istanbul ignore next */\n isString(container) ?\n /*istanbul ignore next */\n getById(container.replace(/^#/, '')) || body :\n /*istanbul ignore next */\n body;\n },\n getBoundary: function getBoundary() {\n return this.boundary ? this.boundary.$el || this.boundary : 'scrollParent';\n },\n isInModal: function isInModal() {\n var target = this.getTarget();\n return target && closest(MODAL_SELECTOR, target);\n },\n isDropdown: function isDropdown() {\n // Returns true if trigger is a dropdown\n var target = this.getTarget();\n return target && hasClass(target, DROPDOWN_CLASS);\n },\n dropdownOpen: function dropdownOpen() {\n // Returns true if trigger is a dropdown and the dropdown menu is open\n var target = this.getTarget();\n return this.isDropdown() && target && select(DROPDOWN_OPEN_SELECTOR, target);\n },\n clearHoverTimeout: function clearHoverTimeout() {\n clearTimeout(this.$_hoverTimeout);\n this.$_hoverTimeout = null;\n },\n clearVisibilityInterval: function clearVisibilityInterval() {\n clearInterval(this.$_visibleInterval);\n this.$_visibleInterval = null;\n },\n clearActiveTriggers: function clearActiveTriggers() {\n for (var trigger in this.activeTrigger) {\n this.activeTrigger[trigger] = false;\n }\n },\n addAriaDescribedby: function addAriaDescribedby() {\n // Add aria-describedby on trigger element, without removing any other IDs\n var target = this.getTarget();\n var desc = getAttr(target, 'aria-describedby') || '';\n desc = desc.split(/\\s+/).concat(this.computedId).join(' ').trim(); // Update/add aria-described by\n\n setAttr(target, 'aria-describedby', desc);\n },\n removeAriaDescribedby: function removeAriaDescribedby() {\n var _this5 = this;\n\n // Remove aria-describedby on trigger element, without removing any other IDs\n var target = this.getTarget();\n var desc = getAttr(target, 'aria-describedby') || '';\n desc = desc.split(/\\s+/).filter(function (d) {\n return d !== _this5.computedId;\n }).join(' ').trim(); // Update or remove aria-describedby\n\n if (desc) {\n /* istanbul ignore next */\n setAttr(target, 'aria-describedby', desc);\n } else {\n removeAttr(target, 'aria-describedby');\n }\n },\n fixTitle: function fixTitle() {\n // If the target has a `title` attribute,\n // remove it and store it on a data attribute\n var target = this.getTarget();\n\n if (hasAttr(target, 'title')) {\n // Get `title` attribute value and remove it from target\n var title = getAttr(target, 'title');\n setAttr(target, 'title', ''); // Only set the data attribute when the value is truthy\n\n if (title) {\n setAttr(target, DATA_TITLE_ATTR, title);\n }\n }\n },\n restoreTitle: function restoreTitle() {\n // If the target had a `title` attribute,\n // restore it and remove the data attribute\n var target = this.getTarget();\n\n if (hasAttr(target, DATA_TITLE_ATTR)) {\n // Get data attribute value and remove it from target\n var title = getAttr(target, DATA_TITLE_ATTR);\n removeAttr(target, DATA_TITLE_ATTR); // Only restore the `title` attribute when the value is truthy\n\n if (title) {\n setAttr(target, 'title', title);\n }\n }\n },\n // --- BvEvent helpers ---\n buildEvent: function buildEvent(type) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n // Defaults to a non-cancellable event\n return new BvEvent(type, _objectSpread({\n cancelable: false,\n target: this.getTarget(),\n relatedTarget: this.getTemplateElement() || null,\n componentId: this.computedId,\n vueTarget: this\n }, options));\n },\n emitEvent: function emitEvent(bvEvent) {\n var type = bvEvent.type;\n this.emitOnRoot(getRootEventName(this.templateType, type), bvEvent);\n this.$emit(type, bvEvent);\n },\n // --- Event handler setup methods ---\n listen: function listen() {\n var _this6 = this;\n\n // Enable trigger event handlers\n var el = this.getTarget();\n\n if (!el) {\n /* istanbul ignore next */\n return;\n } // Listen for global show/hide events\n\n\n this.setRootListener(true); // Set up our listeners on the target trigger element\n\n this.computedTriggers.forEach(function (trigger) {\n if (trigger === 'click') {\n eventOn(el, 'click', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n } else if (trigger === 'focus') {\n eventOn(el, 'focusin', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n eventOn(el, 'focusout', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n } else if (trigger === 'blur') {\n // Used to close $tip when element looses focus\n\n /* istanbul ignore next */\n eventOn(el, 'focusout', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n } else if (trigger === 'hover') {\n eventOn(el, 'mouseenter', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n eventOn(el, 'mouseleave', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n }\n }, this);\n },\n\n /* istanbul ignore next */\n unListen: function unListen() {\n var _this7 = this;\n\n // Remove trigger event handlers\n var events = ['click', 'focusin', 'focusout', 'mouseenter', 'mouseleave'];\n var target = this.getTarget(); // Stop listening for global show/hide/enable/disable events\n\n this.setRootListener(false); // Clear out any active target listeners\n\n events.forEach(function (event) {\n target && eventOff(target, event, _this7.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n }, this);\n },\n setRootListener: function setRootListener(on) {\n // Listen for global `bv::{hide|show}::{tooltip|popover}` hide request event\n var $root = this.$root;\n\n if ($root) {\n var method = on ? '$on' : '$off';\n var type = this.templateType;\n $root[method](getRootActionEventName(type, EVENT_NAME_HIDE), this.doHide);\n $root[method](getRootActionEventName(type, EVENT_NAME_SHOW), this.doShow);\n $root[method](getRootActionEventName(type, EVENT_NAME_DISABLE), this.doDisable);\n $root[method](getRootActionEventName(type, EVENT_NAME_ENABLE), this.doEnable);\n }\n },\n setWhileOpenListeners: function setWhileOpenListeners(on) {\n // Events that are only registered when the template is showing\n // Modal close events\n this.setModalListener(on); // Dropdown open events (if we are attached to a dropdown)\n\n this.setDropdownListener(on); // Periodic $element visibility check\n // For handling when tip target is in , tabs, carousel, etc\n\n this.visibleCheck(on); // On-touch start listeners\n\n this.setOnTouchStartListener(on);\n },\n // Handler for periodic visibility check\n visibleCheck: function visibleCheck(on) {\n var _this8 = this;\n\n this.clearVisibilityInterval();\n var target = this.getTarget();\n var tip = this.getTemplateElement();\n\n if (on) {\n this.$_visibleInterval = setInterval(function () {\n if (tip && _this8.localShow && (!target.parentNode || !isVisible(target))) {\n // Target element is no longer visible or not in DOM, so force-hide the tooltip\n _this8.forceHide();\n }\n }, 100);\n }\n },\n setModalListener: function setModalListener(on) {\n // Handle case where tooltip/target is in a modal\n if (this.isInModal()) {\n // We can listen for modal hidden events on `$root`\n this.$root[on ? '$on' : '$off'](ROOT_EVENT_NAME_MODAL_HIDDEN, this.forceHide);\n }\n },\n\n /* istanbul ignore next: JSDOM doesn't support `ontouchstart` */\n setOnTouchStartListener: function setOnTouchStartListener(on) {\n var _this9 = this;\n\n // If this is a touch-enabled device we add extra empty\n // `mouseover` listeners to the body's immediate children\n // Only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n arrayFrom(document.body.children).forEach(function (el) {\n eventOnOff(on, el, 'mouseover', _this9.$_noop);\n });\n }\n },\n setDropdownListener: function setDropdownListener(on) {\n var target = this.getTarget();\n\n if (!target || !this.$root || !this.isDropdown) {\n return;\n } // We can listen for dropdown shown events on its instance\n // TODO:\n // We could grab the ID from the dropdown, and listen for\n // $root events for that particular dropdown id\n // Dropdown shown and hidden events will need to emit\n // Note: Dropdown auto-ID happens in a `$nextTick()` after mount\n // So the ID lookup would need to be done in a `$nextTick()`\n\n\n if (target.__vue__) {\n target.__vue__[on ? '$on' : '$off'](EVENT_NAME_SHOWN, this.forceHide);\n }\n },\n // --- Event handlers ---\n handleEvent: function handleEvent(event) {\n // General trigger event handler\n // target is the trigger element\n var target = this.getTarget();\n\n if (!target || isDisabled(target) || !this.$_enabled || this.dropdownOpen()) {\n // If disabled or not enabled, or if a dropdown that is open, don't do anything\n // If tip is shown before element gets disabled, then tip will not\n // close until no longer disabled or forcefully closed\n return;\n }\n\n var type = event.type;\n var triggers = this.computedTriggers;\n\n if (type === 'click' && arrayIncludes(triggers, 'click')) {\n this.click(event);\n } else if (type === 'mouseenter' && arrayIncludes(triggers, 'hover')) {\n // `mouseenter` is a non-bubbling event\n this.enter(event);\n } else if (type === 'focusin' && arrayIncludes(triggers, 'focus')) {\n // `focusin` is a bubbling event\n // `event` includes `relatedTarget` (element losing focus)\n this.enter(event);\n } else if (type === 'focusout' && (arrayIncludes(triggers, 'focus') || arrayIncludes(triggers, 'blur')) || type === 'mouseleave' && arrayIncludes(triggers, 'hover')) {\n // `focusout` is a bubbling event\n // `mouseleave` is a non-bubbling event\n // `tip` is the template (will be null if not open)\n var tip = this.getTemplateElement(); // `eventTarget` is the element which is losing focus/hover and\n\n var eventTarget = event.target; // `relatedTarget` is the element gaining focus/hover\n\n var relatedTarget = event.relatedTarget;\n /* istanbul ignore next */\n\n if ( // From tip to target\n tip && contains(tip, eventTarget) && contains(target, relatedTarget) || // From target to tip\n tip && contains(target, eventTarget) && contains(tip, relatedTarget) || // Within tip\n tip && contains(tip, eventTarget) && contains(tip, relatedTarget) || // Within target\n contains(target, eventTarget) && contains(target, relatedTarget)) {\n // If focus/hover moves within `tip` and `target`, don't trigger a leave\n return;\n } // Otherwise trigger a leave\n\n\n this.leave(event);\n }\n },\n doHide: function doHide(id) {\n // Programmatically hide tooltip or popover\n if (!id || this.getTargetId() === id || this.computedId === id) {\n // Close all tooltips or popovers, or this specific tip (with ID)\n this.forceHide();\n }\n },\n doShow: function doShow(id) {\n // Programmatically show tooltip or popover\n if (!id || this.getTargetId() === id || this.computedId === id) {\n // Open all tooltips or popovers, or this specific tip (with ID)\n this.show();\n }\n },\n\n /*istanbul ignore next: ignore for now */\n doDisable: function doDisable(id)\n /*istanbul ignore next: ignore for now */\n {\n // Programmatically disable tooltip or popover\n if (!id || this.getTargetId() === id || this.computedId === id) {\n // Disable all tooltips or popovers (no ID), or this specific tip (with ID)\n this.disable();\n }\n },\n\n /*istanbul ignore next: ignore for now */\n doEnable: function doEnable(id)\n /*istanbul ignore next: ignore for now */\n {\n // Programmatically enable tooltip or popover\n if (!id || this.getTargetId() === id || this.computedId === id) {\n // Enable all tooltips or popovers (no ID), or this specific tip (with ID)\n this.enable();\n }\n },\n click: function click(event) {\n if (!this.$_enabled || this.dropdownOpen()) {\n /* istanbul ignore next */\n return;\n } // Get around a WebKit bug where `click` does not trigger focus events\n // On most browsers, `click` triggers a `focusin`/`focus` event first\n // Needed so that trigger 'click blur' works on iOS\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/5099\n // We use `currentTarget` rather than `target` to trigger on the\n // element, not the inner content\n\n\n attemptFocus(event.currentTarget);\n this.activeTrigger.click = !this.activeTrigger.click;\n\n if (this.isWithActiveTrigger) {\n this.enter(null);\n } else {\n /* istanbul ignore next */\n this.leave(null);\n }\n },\n\n /* istanbul ignore next */\n toggle: function toggle() {\n // Manual toggle handler\n if (!this.$_enabled || this.dropdownOpen()) {\n /* istanbul ignore next */\n return;\n } // Should we register as an active trigger?\n // this.activeTrigger.manual = !this.activeTrigger.manual\n\n\n if (this.localShow) {\n this.leave(null);\n } else {\n this.enter(null);\n }\n },\n enter: function enter() {\n var _this10 = this;\n\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n // Opening trigger handler\n // Note: Click events are sent with event === null\n if (event) {\n this.activeTrigger[event.type === 'focusin' ? 'focus' : 'hover'] = true;\n }\n /* istanbul ignore next */\n\n\n if (this.localShow || this.$_hoverState === 'in') {\n this.$_hoverState = 'in';\n return;\n }\n\n this.clearHoverTimeout();\n this.$_hoverState = 'in';\n\n if (!this.computedDelay.show) {\n this.show();\n } else {\n // Hide any title attribute while enter delay is active\n this.fixTitle();\n this.$_hoverTimeout = setTimeout(function () {\n /* istanbul ignore else */\n if (_this10.$_hoverState === 'in') {\n _this10.show();\n } else if (!_this10.localShow) {\n _this10.restoreTitle();\n }\n }, this.computedDelay.show);\n }\n },\n leave: function leave() {\n var _this11 = this;\n\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n // Closing trigger handler\n // Note: Click events are sent with event === null\n if (event) {\n this.activeTrigger[event.type === 'focusout' ? 'focus' : 'hover'] = false;\n /* istanbul ignore next */\n\n if (event.type === 'focusout' && arrayIncludes(this.computedTriggers, 'blur')) {\n // Special case for `blur`: we clear out the other triggers\n this.activeTrigger.click = false;\n this.activeTrigger.hover = false;\n }\n }\n /* istanbul ignore next: ignore for now */\n\n\n if (this.isWithActiveTrigger) {\n return;\n }\n\n this.clearHoverTimeout();\n this.$_hoverState = 'out';\n\n if (!this.computedDelay.hide) {\n this.hide();\n } else {\n this.$_hoverTimeout = setTimeout(function () {\n if (_this11.$_hoverState === 'out') {\n _this11.hide();\n }\n }, this.computedDelay.hide);\n }\n }\n }\n});","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.array.iterator');\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar redefine = require('../internals/redefine');\nvar redefineAll = require('../internals/redefine-all');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar InternalStateModule = require('../internals/internal-state');\nvar anInstance = require('../internals/an-instance');\nvar hasOwn = require('../internals/has');\nvar bind = require('../internals/function-bind-context');\nvar classof = require('../internals/classof');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $fetch = getBuiltIn('fetch');\nvar Headers = getBuiltIn('Headers');\nvar ITERATOR = wellKnownSymbol('iterator');\nvar URL_SEARCH_PARAMS = 'URLSearchParams';\nvar URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS);\nvar getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR);\n\nvar plus = /\\+/g;\nvar sequences = Array(4);\n\nvar percentSequence = function (bytes) {\n return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\\\da-f]{2}){' + bytes + '})', 'gi'));\n};\n\nvar percentDecode = function (sequence) {\n try {\n return decodeURIComponent(sequence);\n } catch (error) {\n return sequence;\n }\n};\n\nvar deserialize = function (it) {\n var result = it.replace(plus, ' ');\n var bytes = 4;\n try {\n return decodeURIComponent(result);\n } catch (error) {\n while (bytes) {\n result = result.replace(percentSequence(bytes--), percentDecode);\n }\n return result;\n }\n};\n\nvar find = /[!'()~]|%20/g;\n\nvar replace = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+'\n};\n\nvar replacer = function (match) {\n return replace[match];\n};\n\nvar serialize = function (it) {\n return encodeURIComponent(it).replace(find, replacer);\n};\n\nvar parseSearchParams = function (result, query) {\n if (query) {\n var attributes = query.split('&');\n var index = 0;\n var attribute, entry;\n while (index < attributes.length) {\n attribute = attributes[index++];\n if (attribute.length) {\n entry = attribute.split('=');\n result.push({\n key: deserialize(entry.shift()),\n value: deserialize(entry.join('='))\n });\n }\n }\n }\n};\n\nvar updateSearchParams = function (query) {\n this.entries.length = 0;\n parseSearchParams(this.entries, query);\n};\n\nvar validateArgumentsLength = function (passed, required) {\n if (passed < required) throw TypeError('Not enough arguments');\n};\n\nvar URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) {\n setInternalState(this, {\n type: URL_SEARCH_PARAMS_ITERATOR,\n iterator: getIterator(getInternalParamsState(params).entries),\n kind: kind\n });\n}, 'Iterator', function next() {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var step = state.iterator.next();\n var entry = step.value;\n if (!step.done) {\n step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value];\n } return step;\n});\n\n// `URLSearchParams` constructor\n// https://url.spec.whatwg.org/#interface-urlsearchparams\nvar URLSearchParamsConstructor = function URLSearchParams(/* init */) {\n anInstance(this, URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n var init = arguments.length > 0 ? arguments[0] : undefined;\n var that = this;\n var entries = [];\n var iteratorMethod, iterator, next, step, entryIterator, entryNext, first, second, key;\n\n setInternalState(that, {\n type: URL_SEARCH_PARAMS,\n entries: entries,\n updateURL: function () { /* empty */ },\n updateSearchParams: updateSearchParams\n });\n\n if (init !== undefined) {\n if (isObject(init)) {\n iteratorMethod = getIteratorMethod(init);\n if (typeof iteratorMethod === 'function') {\n iterator = iteratorMethod.call(init);\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n entryIterator = getIterator(anObject(step.value));\n entryNext = entryIterator.next;\n if (\n (first = entryNext.call(entryIterator)).done ||\n (second = entryNext.call(entryIterator)).done ||\n !entryNext.call(entryIterator).done\n ) throw TypeError('Expected sequence with length 2');\n entries.push({ key: first.value + '', value: second.value + '' });\n }\n } else for (key in init) if (hasOwn(init, key)) entries.push({ key: key, value: init[key] + '' });\n } else {\n parseSearchParams(entries, typeof init === 'string' ? init.charAt(0) === '?' ? init.slice(1) : init : init + '');\n }\n }\n};\n\nvar URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;\n\nredefineAll(URLSearchParamsPrototype, {\n // `URLSearchParams.prototype.append` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-append\n append: function append(name, value) {\n validateArgumentsLength(arguments.length, 2);\n var state = getInternalParamsState(this);\n state.entries.push({ key: name + '', value: value + '' });\n state.updateURL();\n },\n // `URLSearchParams.prototype.delete` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-delete\n 'delete': function (name) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var key = name + '';\n var index = 0;\n while (index < entries.length) {\n if (entries[index].key === key) entries.splice(index, 1);\n else index++;\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.get` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-get\n get: function get(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) return entries[index].value;\n }\n return null;\n },\n // `URLSearchParams.prototype.getAll` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-getall\n getAll: function getAll(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var result = [];\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) result.push(entries[index].value);\n }\n return result;\n },\n // `URLSearchParams.prototype.has` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-has\n has: function has(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var index = 0;\n while (index < entries.length) {\n if (entries[index++].key === key) return true;\n }\n return false;\n },\n // `URLSearchParams.prototype.set` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-set\n set: function set(name, value) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var found = false;\n var key = name + '';\n var val = value + '';\n var index = 0;\n var entry;\n for (; index < entries.length; index++) {\n entry = entries[index];\n if (entry.key === key) {\n if (found) entries.splice(index--, 1);\n else {\n found = true;\n entry.value = val;\n }\n }\n }\n if (!found) entries.push({ key: key, value: val });\n state.updateURL();\n },\n // `URLSearchParams.prototype.sort` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-sort\n sort: function sort() {\n var state = getInternalParamsState(this);\n var entries = state.entries;\n // Array#sort is not stable in some engines\n var slice = entries.slice();\n var entry, entriesIndex, sliceIndex;\n entries.length = 0;\n for (sliceIndex = 0; sliceIndex < slice.length; sliceIndex++) {\n entry = slice[sliceIndex];\n for (entriesIndex = 0; entriesIndex < sliceIndex; entriesIndex++) {\n if (entries[entriesIndex].key > entry.key) {\n entries.splice(entriesIndex, 0, entry);\n break;\n }\n }\n if (entriesIndex === sliceIndex) entries.push(entry);\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.forEach` method\n forEach: function forEach(callback /* , thisArg */) {\n var entries = getInternalParamsState(this).entries;\n var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined, 3);\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n boundFunction(entry.value, entry.key, this);\n }\n },\n // `URLSearchParams.prototype.keys` method\n keys: function keys() {\n return new URLSearchParamsIterator(this, 'keys');\n },\n // `URLSearchParams.prototype.values` method\n values: function values() {\n return new URLSearchParamsIterator(this, 'values');\n },\n // `URLSearchParams.prototype.entries` method\n entries: function entries() {\n return new URLSearchParamsIterator(this, 'entries');\n }\n}, { enumerable: true });\n\n// `URLSearchParams.prototype[@@iterator]` method\nredefine(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries);\n\n// `URLSearchParams.prototype.toString` method\n// https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior\nredefine(URLSearchParamsPrototype, 'toString', function toString() {\n var entries = getInternalParamsState(this).entries;\n var result = [];\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n result.push(serialize(entry.key) + '=' + serialize(entry.value));\n } return result.join('&');\n}, { enumerable: true });\n\nsetToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n\n$({ global: true, forced: !USE_NATIVE_URL }, {\n URLSearchParams: URLSearchParamsConstructor\n});\n\n// Wrap `fetch` for correct work with polyfilled `URLSearchParams`\n// https://github.com/zloirock/core-js/issues/674\nif (!USE_NATIVE_URL && typeof $fetch == 'function' && typeof Headers == 'function') {\n $({ global: true, enumerable: true, forced: true }, {\n fetch: function fetch(input /* , init */) {\n var args = [input];\n var init, body, headers;\n if (arguments.length > 1) {\n init = arguments[1];\n if (isObject(init)) {\n body = init.body;\n if (classof(body) === URL_SEARCH_PARAMS) {\n headers = init.headers ? new Headers(init.headers) : new Headers();\n if (!headers.has('content-type')) {\n headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n init = create(init, {\n body: createPropertyDescriptor(0, String(body)),\n headers: createPropertyDescriptor(0, headers)\n });\n }\n }\n args.push(init);\n } return $fetch.apply(this, args);\n }\n });\n}\n\nmodule.exports = {\n URLSearchParams: URLSearchParamsConstructor,\n getState: getInternalParamsState\n};\n","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';","var anObject = require('../internals/an-object');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nmodule.exports = function (it) {\n var iteratorMethod = getIteratorMethod(it);\n if (typeof iteratorMethod != 'function') {\n throw TypeError(String(it) + ' is not iterable');\n } return anObject(iteratorMethod.call(it));\n};\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $copyWithin = require('../internals/array-copy-within');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.copyWithin` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.copywithin\nexportTypedArrayMethod('copyWithin', function copyWithin(target, start /* , end */) {\n return $copyWithin.call(aTypedArray(this), target, start, arguments.length > 2 ? arguments[2] : undefined);\n});\n","var toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar bind = require('../internals/function-bind-context');\nvar aTypedArrayConstructor = require('../internals/array-buffer-view-core').aTypedArrayConstructor;\n\nmodule.exports = function from(source /* , mapfn, thisArg */) {\n var O = toObject(source);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iteratorMethod = getIteratorMethod(O);\n var i, length, result, step, iterator, next;\n if (iteratorMethod != undefined && !isArrayIteratorMethod(iteratorMethod)) {\n iterator = iteratorMethod.call(O);\n next = iterator.next;\n O = [];\n while (!(step = next.call(iterator)).done) {\n O.push(step.value);\n }\n }\n if (mapping && argumentsLength > 2) {\n mapfn = bind(mapfn, arguments[2], 2);\n }\n length = toLength(O.length);\n result = new (aTypedArrayConstructor(this))(length);\n for (i = 0; length > i; i++) {\n result[i] = mapping ? mapfn(O[i], i) : O[i];\n }\n return result;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = [].join;\n\nvar ES3_STRINGS = IndexedObject != Object;\nvar STRICT_METHOD = arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {\n join: function join(separator) {\n return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","import { Vue } from '../vue';\nimport { PROP_TYPE_BOOLEAN } from '../constants/props';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n plain: makeProp(PROP_TYPE_BOOLEAN, false)\n}, 'formControls'); // --- Mixin ---\n// @vue/component\n\nexport var formCustomMixin = Vue.extend({\n props: props,\n computed: {\n custom: function custom() {\n return !this.plain;\n }\n }\n});","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $every = require('../internals/array-iteration').every;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.every` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.every\nexportTypedArrayMethod('every', function every(callbackfn /* , thisArg */) {\n return $every(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n});\n","module.exports = typeof ArrayBuffer !== 'undefined' && typeof DataView !== 'undefined';\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar ArrayBufferModule = require('../internals/array-buffer');\nvar anObject = require('../internals/an-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\nvar speciesConstructor = require('../internals/species-constructor');\n\nvar ArrayBuffer = ArrayBufferModule.ArrayBuffer;\nvar DataView = ArrayBufferModule.DataView;\nvar nativeArrayBufferSlice = ArrayBuffer.prototype.slice;\n\nvar INCORRECT_SLICE = fails(function () {\n return !new ArrayBuffer(2).slice(1, undefined).byteLength;\n});\n\n// `ArrayBuffer.prototype.slice` method\n// https://tc39.github.io/ecma262/#sec-arraybuffer.prototype.slice\n$({ target: 'ArrayBuffer', proto: true, unsafe: true, forced: INCORRECT_SLICE }, {\n slice: function slice(start, end) {\n if (nativeArrayBufferSlice !== undefined && end === undefined) {\n return nativeArrayBufferSlice.call(anObject(this), start); // FF fix\n }\n var length = anObject(this).byteLength;\n var first = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = new (speciesConstructor(this, ArrayBuffer))(toLength(fin - first));\n var viewSource = new DataView(this);\n var viewTarget = new DataView(result);\n var index = 0;\n while (first < fin) {\n viewTarget.setUint8(index++, viewSource.getUint8(first++));\n } return result;\n }\n});\n","'use strict';\nvar global = require('../internals/global');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar fails = require('../internals/fails');\n\nvar Int8Array = global.Int8Array;\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar $toLocaleString = [].toLocaleString;\nvar $slice = [].slice;\n\n// iOS Safari 6.x fails here\nvar TO_LOCALE_STRING_BUG = !!Int8Array && fails(function () {\n $toLocaleString.call(new Int8Array(1));\n});\n\nvar FORCED = fails(function () {\n return [1, 2].toLocaleString() != new Int8Array([1, 2]).toLocaleString();\n}) || !fails(function () {\n Int8Array.prototype.toLocaleString.call([1, 2]);\n});\n\n// `%TypedArray%.prototype.toLocaleString` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.tolocalestring\nexportTypedArrayMethod('toLocaleString', function toLocaleString() {\n return $toLocaleString.apply(TO_LOCALE_STRING_BUG ? $slice.call(aTypedArray(this)) : aTypedArray(this), arguments);\n}, FORCED);\n","import unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nexport default function _createForOfIteratorHelper(o, allowArrayLike) {\n var it;\n\n if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function F() {};\n\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = o[Symbol.iterator]();\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.value === '' && !_vm.importingFile)?_c('b-input-group',[_c('b-form-file',{attrs:{\"browse-text\":_vm.$t('fileUploader.browseText'),\"placeholder\":_vm.$t('fileUploader.noFileSelected'),\"state\":_vm.state},on:{\"input\":_vm.onUploadFile},model:{value:(_vm.file),callback:function ($$v) {_vm.file=$$v},expression:\"file\"}})],1):_vm._e(),(_vm.value !== '' && _vm.file)?_c('div',[_vm._v(\" \"+_vm._s(_vm.file.name)+\" \"),_c('feather-icon',{staticClass:\"ml-1 cursor-pointer\",attrs:{\"icon\":\"XCircleIcon\",\"size\":\"16\"},on:{\"click\":_vm.onDeleteFile}})],1):_vm._e(),(_vm.importingFile)?_c('div',[_c('b-spinner'),_vm._v(\" Cargando archivo... \")],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n \r\n \r\n {{ file.name }}\r\n \r\n \r\n \r\n \r\n Cargando archivo...\r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\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!./FileUploader.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!./FileUploader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FileUploader.vue?vue&type=template&id=38dfd9f3&\"\nimport script from \"./FileUploader.vue?vue&type=script&lang=js&\"\nexport * from \"./FileUploader.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 _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_COLLAPSE, NAME_SIDEBAR } from '../../constants/components';\nimport { IS_BROWSER } from '../../constants/env';\nimport { EVENT_NAME_CHANGE, EVENT_NAME_HIDDEN, EVENT_NAME_SHOWN } from '../../constants/events';\nimport { CODE_ESC } from '../../constants/key-codes';\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_FOOTER, SLOT_NAME_HEADER, SLOT_NAME_HEADER_CLOSE, SLOT_NAME_TITLE } from '../../constants/slots';\nimport { attemptFocus, contains, getActiveElement, getTabables } from '../../utils/dom';\nimport { getRootActionEventName, getRootEventName } from '../../utils/events';\nimport { makeModelMixin } from '../../utils/model';\nimport { sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { attrsMixin } from '../../mixins/attrs';\nimport { idMixin, props as idProps } from '../../mixins/id';\nimport { listenOnRootMixin } from '../../mixins/listen-on-root';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot';\nimport { BIconX } from '../../icons/icons';\nimport { BButtonClose } from '../button/button-close';\nimport { BVTransition } from '../transition/bv-transition'; // --- Constants ---\n\nvar CLASS_NAME = 'b-sidebar';\nvar ROOT_ACTION_EVENT_NAME_REQUEST_STATE = getRootActionEventName(NAME_COLLAPSE, 'request-state');\nvar ROOT_ACTION_EVENT_NAME_TOGGLE = getRootActionEventName(NAME_COLLAPSE, 'toggle');\nvar ROOT_EVENT_NAME_STATE = getRootEventName(NAME_COLLAPSE, 'state');\nvar ROOT_EVENT_NAME_SYNC_STATE = getRootEventName(NAME_COLLAPSE, 'sync-state');\n\nvar _makeModelMixin = makeModelMixin('visible', {\n type: PROP_TYPE_BOOLEAN,\n defaultValue: false,\n event: EVENT_NAME_CHANGE\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 ariaLabel: makeProp(PROP_TYPE_STRING),\n ariaLabelledby: makeProp(PROP_TYPE_STRING),\n // If `true`, shows a basic backdrop\n backdrop: makeProp(PROP_TYPE_BOOLEAN, false),\n backdropVariant: makeProp(PROP_TYPE_STRING, 'dark'),\n bgVariant: makeProp(PROP_TYPE_STRING, 'light'),\n bodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n // `aria-label` for close button\n closeLabel: makeProp(PROP_TYPE_STRING),\n footerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n headerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n noCloseOnBackdrop: makeProp(PROP_TYPE_BOOLEAN, false),\n noCloseOnEsc: makeProp(PROP_TYPE_BOOLEAN, false),\n noCloseOnRouteChange: makeProp(PROP_TYPE_BOOLEAN, false),\n noEnforceFocus: makeProp(PROP_TYPE_BOOLEAN, false),\n noHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n noHeaderClose: makeProp(PROP_TYPE_BOOLEAN, false),\n noSlide: makeProp(PROP_TYPE_BOOLEAN, false),\n right: makeProp(PROP_TYPE_BOOLEAN, false),\n shadow: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n sidebarClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n textVariant: makeProp(PROP_TYPE_STRING, 'dark'),\n title: makeProp(PROP_TYPE_STRING),\n width: makeProp(PROP_TYPE_STRING),\n zIndex: makeProp(PROP_TYPE_NUMBER_STRING)\n})), NAME_SIDEBAR); // --- Render methods ---\n\nvar renderHeaderTitle = function renderHeaderTitle(h, ctx) {\n // Render a empty `` when to title was provided\n var title = ctx.normalizeSlot(SLOT_NAME_TITLE, ctx.slotScope) || ctx.title;\n\n if (!title) {\n return h('span');\n }\n\n return h('strong', {\n attrs: {\n id: ctx.safeId('__title__')\n }\n }, [title]);\n};\n\nvar renderHeaderClose = function renderHeaderClose(h, ctx) {\n if (ctx.noHeaderClose) {\n return h();\n }\n\n var closeLabel = ctx.closeLabel,\n textVariant = ctx.textVariant,\n hide = ctx.hide;\n return h(BButtonClose, {\n props: {\n ariaLabel: closeLabel,\n textVariant: textVariant\n },\n on: {\n click: hide\n },\n ref: 'close-button'\n }, [ctx.normalizeSlot(SLOT_NAME_HEADER_CLOSE) || h(BIconX)]);\n};\n\nvar renderHeader = function renderHeader(h, ctx) {\n if (ctx.noHeader) {\n return h();\n }\n\n var $content = ctx.normalizeSlot(SLOT_NAME_HEADER, ctx.slotScope);\n\n if (!$content) {\n var $title = renderHeaderTitle(h, ctx);\n var $close = renderHeaderClose(h, ctx);\n $content = ctx.right ? [$close, $title] : [$title, $close];\n }\n\n return h('header', {\n staticClass: \"\".concat(CLASS_NAME, \"-header\"),\n class: ctx.headerClass,\n key: 'header'\n }, $content);\n};\n\nvar renderBody = function renderBody(h, ctx) {\n return h('div', {\n staticClass: \"\".concat(CLASS_NAME, \"-body\"),\n class: ctx.bodyClass,\n key: 'body'\n }, [ctx.normalizeSlot(SLOT_NAME_DEFAULT, ctx.slotScope)]);\n};\n\nvar renderFooter = function renderFooter(h, ctx) {\n var $footer = ctx.normalizeSlot(SLOT_NAME_FOOTER, ctx.slotScope);\n\n if (!$footer) {\n return h();\n }\n\n return h('footer', {\n staticClass: \"\".concat(CLASS_NAME, \"-footer\"),\n class: ctx.footerClass,\n key: 'footer'\n }, [$footer]);\n};\n\nvar renderContent = function renderContent(h, ctx) {\n // We render the header even if `lazy` is enabled as it\n // acts as the accessible label for the sidebar\n var $header = renderHeader(h, ctx);\n\n if (ctx.lazy && !ctx.isOpen) {\n return $header;\n }\n\n return [$header, renderBody(h, ctx), renderFooter(h, ctx)];\n};\n\nvar renderBackdrop = function renderBackdrop(h, ctx) {\n if (!ctx.backdrop) {\n return h();\n }\n\n var backdropVariant = ctx.backdropVariant;\n return h('div', {\n directives: [{\n name: 'show',\n value: ctx.localShow\n }],\n staticClass: 'b-sidebar-backdrop',\n class: _defineProperty({}, \"bg-\".concat(backdropVariant), backdropVariant),\n on: {\n click: ctx.onBackdropClick\n }\n });\n}; // --- Main component ---\n// @vue/component\n\n\nexport var BSidebar = /*#__PURE__*/Vue.extend({\n name: NAME_SIDEBAR,\n mixins: [attrsMixin, idMixin, modelMixin, listenOnRootMixin, normalizeSlotMixin],\n inheritAttrs: false,\n props: props,\n data: function data() {\n var visible = !!this[MODEL_PROP_NAME];\n return {\n // Internal `v-model` state\n localShow: visible,\n // For lazy render triggering\n isOpen: visible\n };\n },\n computed: {\n transitionProps: function transitionProps() {\n return this.noSlide ?\n /* istanbul ignore next */\n {\n css: true\n } : {\n css: true,\n enterClass: '',\n enterActiveClass: 'slide',\n enterToClass: 'show',\n leaveClass: 'show',\n leaveActiveClass: 'slide',\n leaveToClass: ''\n };\n },\n slotScope: function slotScope() {\n var hide = this.hide,\n right = this.right,\n visible = this.localShow;\n return {\n hide: hide,\n right: right,\n visible: visible\n };\n },\n hasTitle: function hasTitle() {\n var $scopedSlots = this.$scopedSlots,\n $slots = this.$slots;\n return !this.noHeader && !this.hasNormalizedSlot(SLOT_NAME_HEADER) && !!(this.normalizeSlot(SLOT_NAME_TITLE, this.slotScope, $scopedSlots, $slots) || this.title);\n },\n titleId: function titleId() {\n return this.hasTitle ? this.safeId('__title__') : null;\n },\n computedAttrs: function computedAttrs() {\n return _objectSpread(_objectSpread({}, this.bvAttrs), {}, {\n id: this.safeId(),\n tabindex: '-1',\n role: 'dialog',\n 'aria-modal': this.backdrop ? 'true' : 'false',\n 'aria-hidden': this.localShow ? null : 'true',\n 'aria-label': this.ariaLabel || null,\n 'aria-labelledby': this.ariaLabelledby || this.titleId || null\n });\n }\n },\n watch: (_watch = {}, _defineProperty(_watch, MODEL_PROP_NAME, function (newValue, oldValue) {\n if (newValue !== oldValue) {\n this.localShow = newValue;\n }\n }), _defineProperty(_watch, \"localShow\", function localShow(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.emitState(newValue);\n this.$emit(MODEL_EVENT_NAME, newValue);\n }\n }), _defineProperty(_watch, \"$route\", function $route() {\n var newValue = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var oldValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (!this.noCloseOnRouteChange && newValue.fullPath !== oldValue.fullPath) {\n this.hide();\n }\n }), _watch),\n created: function created() {\n // Define non-reactive properties\n this.$_returnFocusEl = null;\n },\n mounted: function mounted() {\n var _this = this;\n\n // Add `$root` listeners\n this.listenOnRoot(ROOT_ACTION_EVENT_NAME_TOGGLE, this.handleToggle);\n this.listenOnRoot(ROOT_ACTION_EVENT_NAME_REQUEST_STATE, this.handleSync); // Send out a gratuitous state event to ensure toggle button is synced\n\n this.$nextTick(function () {\n _this.emitState(_this.localShow);\n });\n },\n\n /* istanbul ignore next */\n activated: function activated() {\n this.emitSync();\n },\n beforeDestroy: function beforeDestroy() {\n this.localShow = false;\n this.$_returnFocusEl = null;\n },\n methods: {\n hide: function hide() {\n this.localShow = false;\n },\n emitState: function emitState() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.localShow;\n this.emitOnRoot(ROOT_EVENT_NAME_STATE, this.safeId(), state);\n },\n emitSync: function emitSync() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.localShow;\n this.emitOnRoot(ROOT_EVENT_NAME_SYNC_STATE, this.safeId(), state);\n },\n handleToggle: function handleToggle(id) {\n // Note `safeId()` can be null until after mount\n if (id && id === this.safeId()) {\n this.localShow = !this.localShow;\n }\n },\n handleSync: function handleSync(id) {\n var _this2 = this;\n\n // Note `safeId()` can be null until after mount\n if (id && id === this.safeId()) {\n this.$nextTick(function () {\n _this2.emitSync(_this2.localShow);\n });\n }\n },\n onKeydown: function onKeydown(event) {\n var keyCode = event.keyCode;\n\n if (!this.noCloseOnEsc && keyCode === CODE_ESC && this.localShow) {\n this.hide();\n }\n },\n onBackdropClick: function onBackdropClick() {\n if (this.localShow && !this.noCloseOnBackdrop) {\n this.hide();\n }\n },\n\n /* istanbul ignore next */\n onTopTrapFocus: function onTopTrapFocus() {\n var tabables = getTabables(this.$refs.content);\n this.enforceFocus(tabables.reverse()[0]);\n },\n\n /* istanbul ignore next */\n onBottomTrapFocus: function onBottomTrapFocus() {\n var tabables = getTabables(this.$refs.content);\n this.enforceFocus(tabables[0]);\n },\n onBeforeEnter: function onBeforeEnter() {\n // Returning focus to `document.body` may cause unwanted scrolls,\n // so we exclude setting focus on body\n this.$_returnFocusEl = getActiveElement(IS_BROWSER ? [document.body] : []); // Trigger lazy render\n\n this.isOpen = true;\n },\n onAfterEnter: function onAfterEnter(el) {\n if (!contains(el, getActiveElement())) {\n this.enforceFocus(el);\n }\n\n this.$emit(EVENT_NAME_SHOWN);\n },\n onAfterLeave: function onAfterLeave() {\n this.enforceFocus(this.$_returnFocusEl);\n this.$_returnFocusEl = null; // Trigger lazy render\n\n this.isOpen = false;\n this.$emit(EVENT_NAME_HIDDEN);\n },\n enforceFocus: function enforceFocus(el) {\n if (!this.noEnforceFocus) {\n attemptFocus(el);\n }\n }\n },\n render: function render(h) {\n var _ref;\n\n var bgVariant = this.bgVariant,\n width = this.width,\n textVariant = this.textVariant,\n localShow = this.localShow;\n var shadow = this.shadow === '' ? true : this.shadow;\n var $sidebar = h(this.tag, {\n staticClass: CLASS_NAME,\n class: [(_ref = {\n shadow: shadow === true\n }, _defineProperty(_ref, \"shadow-\".concat(shadow), shadow && shadow !== true), _defineProperty(_ref, \"\".concat(CLASS_NAME, \"-right\"), this.right), _defineProperty(_ref, \"bg-\".concat(bgVariant), bgVariant), _defineProperty(_ref, \"text-\".concat(textVariant), textVariant), _ref), this.sidebarClass],\n style: {\n width: width\n },\n attrs: this.computedAttrs,\n directives: [{\n name: 'show',\n value: localShow\n }],\n ref: 'content'\n }, [renderContent(h, this)]);\n $sidebar = h('transition', {\n props: this.transitionProps,\n on: {\n beforeEnter: this.onBeforeEnter,\n afterEnter: this.onAfterEnter,\n afterLeave: this.onAfterLeave\n }\n }, [$sidebar]);\n var $backdrop = h(BVTransition, {\n props: {\n noFade: this.noSlide\n }\n }, [renderBackdrop(h, this)]);\n var $tabTrapTop = h();\n var $tabTrapBottom = h();\n\n if (this.backdrop && localShow) {\n $tabTrapTop = h('div', {\n attrs: {\n tabindex: '0'\n },\n on: {\n focus: this.onTopTrapFocus\n }\n });\n $tabTrapBottom = h('div', {\n attrs: {\n tabindex: '0'\n },\n on: {\n focus: this.onBottomTrapFocus\n }\n });\n }\n\n return h('div', {\n staticClass: 'b-sidebar-outer',\n style: {\n zIndex: this.zIndex\n },\n attrs: {\n tabindex: '-1'\n },\n on: {\n keydown: this.onKeydown\n }\n }, [$tabTrapTop, $sidebar, $tabTrapBottom, $backdrop]);\n }\n});","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $filter = require('../internals/array-iteration').filter;\nvar speciesConstructor = require('../internals/species-constructor');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.filter` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.filter\nexportTypedArrayMethod('filter', function filter(callbackfn /* , thisArg */) {\n var list = $filter(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n var C = speciesConstructor(this, this.constructor);\n var index = 0;\n var length = list.length;\n var result = new (aTypedArrayConstructor(C))(length);\n while (length > index) result[index] = list[index++];\n return result;\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_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});","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});","var _objectSpread2;\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_CHECKBOX } from '../../constants/components';\nimport { EVENT_NAME_CHANGE, MODEL_EVENT_NAME_PREFIX } from '../../constants/events';\nimport { PROP_TYPE_ANY, PROP_TYPE_BOOLEAN } from '../../constants/props';\nimport { isArray } from '../../utils/inspect';\nimport { looseEqual } from '../../utils/loose-equal';\nimport { looseIndexOf } from '../../utils/loose-index-of';\nimport { sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { MODEL_EVENT_NAME, formRadioCheckMixin, props as formRadioCheckProps } from '../../mixins/form-radio-check'; // --- Constants ---\n\nvar MODEL_PROP_NAME_INDETERMINATE = 'indeterminate';\nvar MODEL_EVENT_NAME_INDETERMINATE = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_INDETERMINATE; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, formRadioCheckProps), {}, (_objectSpread2 = {}, _defineProperty(_objectSpread2, MODEL_PROP_NAME_INDETERMINATE, makeProp(PROP_TYPE_BOOLEAN, false)), _defineProperty(_objectSpread2, \"switch\", makeProp(PROP_TYPE_BOOLEAN, false)), _defineProperty(_objectSpread2, \"uncheckedValue\", makeProp(PROP_TYPE_ANY, false)), _defineProperty(_objectSpread2, \"value\", makeProp(PROP_TYPE_ANY, true)), _objectSpread2))), NAME_FORM_CHECKBOX); // --- Main component ---\n// @vue/component\n\nexport var BFormCheckbox = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_CHECKBOX,\n mixins: [formRadioCheckMixin],\n inject: {\n bvGroup: {\n from: 'bvCheckGroup',\n default: null\n }\n },\n props: props,\n computed: {\n isChecked: function isChecked() {\n var value = this.value,\n checked = this.computedLocalChecked;\n return isArray(checked) ? looseIndexOf(checked, value) > -1 : looseEqual(checked, value);\n },\n isRadio: function isRadio() {\n return false;\n }\n },\n watch: _defineProperty({}, MODEL_PROP_NAME_INDETERMINATE, function (newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.setIndeterminate(newValue);\n }\n }),\n mounted: function mounted() {\n // Set initial indeterminate state\n this.setIndeterminate(this[MODEL_PROP_NAME_INDETERMINATE]);\n },\n methods: {\n computedLocalCheckedWatcher: function computedLocalCheckedWatcher(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(MODEL_EVENT_NAME, newValue);\n var $input = this.$refs.input;\n\n if ($input) {\n this.$emit(MODEL_EVENT_NAME_INDETERMINATE, $input.indeterminate);\n }\n }\n },\n handleChange: function handleChange(_ref) {\n var _this = this;\n\n var _ref$target = _ref.target,\n checked = _ref$target.checked,\n indeterminate = _ref$target.indeterminate;\n var value = this.value,\n uncheckedValue = this.uncheckedValue; // Update `computedLocalChecked`\n\n var localChecked = this.computedLocalChecked;\n\n if (isArray(localChecked)) {\n var index = looseIndexOf(localChecked, value);\n\n if (checked && index < 0) {\n // Add value to array\n localChecked = localChecked.concat(value);\n } else if (!checked && index > -1) {\n // Remove value from array\n localChecked = localChecked.slice(0, index).concat(localChecked.slice(index + 1));\n }\n } else {\n localChecked = checked ? value : uncheckedValue;\n }\n\n this.computedLocalChecked = localChecked; // Fire events in a `$nextTick()` to ensure the `v-model` is updated\n\n this.$nextTick(function () {\n // Change is only emitted on user interaction\n _this.$emit(EVENT_NAME_CHANGE, localChecked); // If this is a child of a group, we emit a change event on it as well\n\n\n if (_this.isGroup) {\n _this.bvGroup.$emit(EVENT_NAME_CHANGE, localChecked);\n }\n\n _this.$emit(MODEL_EVENT_NAME_INDETERMINATE, indeterminate);\n });\n },\n setIndeterminate: function setIndeterminate(state) {\n // Indeterminate only supported in single checkbox mode\n if (isArray(this.computedLocalChecked)) {\n state = false;\n }\n\n var $input = this.$refs.input;\n\n if ($input) {\n $input.indeterminate = state; // Emit update event to prop\n\n this.$emit(MODEL_EVENT_NAME_INDETERMINATE, state);\n }\n }\n }\n});","import { looseEqual } from './loose-equal'; // Assumes that the first argument is an array\n\nexport var looseIndexOf = function looseIndexOf(array, value) {\n for (var i = 0; i < array.length; i++) {\n if (looseEqual(array[i], value)) {\n return i;\n }\n }\n\n return -1;\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_FILE } from '../../constants/components';\nimport { HAS_PROMISE_SUPPORT } from '../../constants/env';\nimport { EVENT_NAME_CHANGE, EVENT_OPTIONS_PASSIVE } from '../../constants/events';\nimport { PROP_TYPE_ARRAY, PROP_TYPE_BOOLEAN, PROP_TYPE_FUNCTION, PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_DROP_PLACEHOLDER, SLOT_NAME_FILE_NAME, SLOT_NAME_PLACEHOLDER } from '../../constants/slots';\nimport { RX_EXTENSION, RX_STAR } from '../../constants/regex';\nimport { File } from '../../constants/safe-types';\nimport { from as arrayFrom, flatten, flattenDeep } from '../../utils/array';\nimport { cloneDeep } from '../../utils/clone-deep';\nimport { closest } from '../../utils/dom';\nimport { eventOn, eventOff, stopEvent } from '../../utils/events';\nimport { identity } from '../../utils/identity';\nimport { isArray, isFile, isFunction, isNull, isUndefinedOrNull } from '../../utils/inspect';\nimport { looseEqual } from '../../utils/loose-equal';\nimport { makeModelMixin } from '../../utils/model';\nimport { sortKeys } from '../../utils/object';\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../../utils/props';\nimport { escapeRegExp } from '../../utils/string';\nimport { warn } from '../../utils/warn';\nimport { attrsMixin } from '../../mixins/attrs';\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control';\nimport { formCustomMixin, props as formCustomProps } from '../../mixins/form-custom';\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state';\nimport { idMixin, props as idProps } from '../../mixins/id';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot';\nimport { props as formSizeProps } from '../../mixins/form-size'; // --- Constants ---\n\nvar _makeModelMixin = makeModelMixin('value', {\n type: [PROP_TYPE_ARRAY, File],\n defaultValue: null,\n validator: function validator(value) {\n /* istanbul ignore next */\n if (value === '') {\n warn(VALUE_EMPTY_DEPRECATED_MSG, NAME_FORM_FILE);\n return true;\n }\n\n return isUndefinedOrNull(value) || isValidValue(value);\n }\n}),\n modelMixin = _makeModelMixin.mixin,\n modelProps = _makeModelMixin.props,\n MODEL_PROP_NAME = _makeModelMixin.prop,\n MODEL_EVENT_NAME = _makeModelMixin.event;\n\nvar VALUE_EMPTY_DEPRECATED_MSG = 'Setting \"value\"/\"v-model\" to an empty string for reset is deprecated. Set to \"null\" instead.'; // --- Helper methods ---\n\nvar isValidValue = function isValidValue(value) {\n return isFile(value) || isArray(value) && value.every(function (v) {\n return isValidValue(v);\n });\n}; // Helper method to \"safely\" get the entry from a data-transfer item\n\n/* istanbul ignore next: not supported in JSDOM */\n\n\nvar getDataTransferItemEntry = function getDataTransferItemEntry(item) {\n return isFunction(item.getAsEntry) ? item.getAsEntry() : isFunction(item.webkitGetAsEntry) ? item.webkitGetAsEntry() : null;\n}; // Drop handler function to get all files\n\n/* istanbul ignore next: not supported in JSDOM */\n\n\nvar getAllFileEntries = function getAllFileEntries(dataTransferItemList) {\n var traverseDirectories = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n return Promise.all(arrayFrom(dataTransferItemList).filter(function (item) {\n return item.kind === 'file';\n }).map(function (item) {\n var entry = getDataTransferItemEntry(item);\n\n if (entry) {\n if (entry.isDirectory && traverseDirectories) {\n return getAllFileEntriesInDirectory(entry.createReader(), \"\".concat(entry.name, \"/\"));\n } else if (entry.isFile) {\n return new Promise(function (resolve) {\n entry.file(function (file) {\n file.$path = '';\n resolve(file);\n });\n });\n }\n }\n\n return null;\n }).filter(identity));\n}; // Get all the file entries (recursive) in a directory\n\n/* istanbul ignore next: not supported in JSDOM */\n\n\nvar getAllFileEntriesInDirectory = function getAllFileEntriesInDirectory(directoryReader) {\n var path = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n return new Promise(function (resolve) {\n var entryPromises = [];\n\n var readDirectoryEntries = function readDirectoryEntries() {\n directoryReader.readEntries(function (entries) {\n if (entries.length === 0) {\n resolve(Promise.all(entryPromises).then(function (entries) {\n return flatten(entries);\n }));\n } else {\n entryPromises.push(Promise.all(entries.map(function (entry) {\n if (entry) {\n if (entry.isDirectory) {\n return getAllFileEntriesInDirectory(entry.createReader(), \"\".concat(path).concat(entry.name, \"/\"));\n } else if (entry.isFile) {\n return new Promise(function (resolve) {\n entry.file(function (file) {\n file.$path = \"\".concat(path).concat(file.name);\n resolve(file);\n });\n });\n }\n }\n\n return null;\n }).filter(identity)));\n readDirectoryEntries();\n }\n });\n };\n\n readDirectoryEntries();\n });\n}; // --- Props ---\n\n\nvar props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), modelProps), formControlProps), formCustomProps), formStateProps), formSizeProps), {}, {\n accept: makeProp(PROP_TYPE_STRING, ''),\n browseText: makeProp(PROP_TYPE_STRING, 'Browse'),\n // Instruct input to capture from camera\n capture: makeProp(PROP_TYPE_BOOLEAN, false),\n directory: makeProp(PROP_TYPE_BOOLEAN, false),\n dropPlaceholder: makeProp(PROP_TYPE_STRING, 'Drop files here'),\n fileNameFormatter: makeProp(PROP_TYPE_FUNCTION),\n multiple: makeProp(PROP_TYPE_BOOLEAN, false),\n noDrop: makeProp(PROP_TYPE_BOOLEAN, false),\n noDropPlaceholder: makeProp(PROP_TYPE_STRING, 'Not allowed'),\n // TODO:\n // Should we deprecate this and only support flat file structures?\n // Nested file structures are only supported when files are dropped\n // A Chromium \"bug\" prevents `webkitEntries` from being populated\n // on the file input's `change` event and is marked as \"WontFix\"\n // Mozilla implemented the behavior the same way as Chromium\n // See: https://bugs.chromium.org/p/chromium/issues/detail?id=138987\n // See: https://bugzilla.mozilla.org/show_bug.cgi?id=1326031\n noTraverse: makeProp(PROP_TYPE_BOOLEAN, false),\n placeholder: makeProp(PROP_TYPE_STRING, 'No file chosen')\n})), NAME_FORM_FILE); // --- Main component ---\n// @vue/component\n\nexport var BFormFile = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_FILE,\n mixins: [attrsMixin, idMixin, modelMixin, normalizeSlotMixin, formControlMixin, formStateMixin, formCustomMixin, normalizeSlotMixin],\n inheritAttrs: false,\n props: props,\n data: function data() {\n return {\n files: [],\n dragging: false,\n // IE 11 doesn't respect setting `event.dataTransfer.dropEffect`,\n // so we handle it ourselves as well\n // https://stackoverflow.com/a/46915971/2744776\n dropAllowed: !this.noDrop,\n hasFocus: false\n };\n },\n computed: {\n // Convert `accept` to an array of `[{ RegExpr, isMime }, ...]`\n computedAccept: function computedAccept() {\n var accept = this.accept;\n accept = (accept || '').trim().split(/[,\\s]+/).filter(identity); // Allow any file type/extension\n\n if (accept.length === 0) {\n return null;\n }\n\n return accept.map(function (extOrType) {\n var prop = 'name';\n var startMatch = '^';\n var endMatch = '$';\n\n if (RX_EXTENSION.test(extOrType)) {\n // File extension /\\.ext$/\n startMatch = '';\n } else {\n // MIME type /^mime\\/.+$/ or /^mime\\/type$/\n prop = 'type';\n\n if (RX_STAR.test(extOrType)) {\n endMatch = '.+$'; // Remove trailing `*`\n\n extOrType = extOrType.slice(0, -1);\n }\n } // Escape all RegExp special chars\n\n\n extOrType = escapeRegExp(extOrType);\n var rx = new RegExp(\"\".concat(startMatch).concat(extOrType).concat(endMatch));\n return {\n rx: rx,\n prop: prop\n };\n });\n },\n computedCapture: function computedCapture() {\n var capture = this.capture;\n return capture === true || capture === '' ? true : capture || null;\n },\n computedAttrs: function computedAttrs() {\n var name = this.name,\n disabled = this.disabled,\n required = this.required,\n form = this.form,\n computedCapture = this.computedCapture,\n accept = this.accept,\n multiple = this.multiple,\n directory = this.directory;\n return _objectSpread(_objectSpread({}, this.bvAttrs), {}, {\n type: 'file',\n id: this.safeId(),\n name: name,\n disabled: disabled,\n required: required,\n form: form || null,\n capture: computedCapture,\n accept: accept || null,\n multiple: multiple,\n directory: directory,\n webkitdirectory: directory,\n 'aria-required': required ? 'true' : null\n });\n },\n computedFileNameFormatter: function computedFileNameFormatter() {\n var fileNameFormatter = this.fileNameFormatter;\n return hasPropFunction(fileNameFormatter) ? fileNameFormatter : this.defaultFileNameFormatter;\n },\n clonedFiles: function clonedFiles() {\n return cloneDeep(this.files);\n },\n flattenedFiles: function flattenedFiles() {\n return flattenDeep(this.files);\n },\n fileNames: function fileNames() {\n return this.flattenedFiles.map(function (file) {\n return file.name;\n });\n },\n labelContent: function labelContent() {\n // Draging active\n\n /* istanbul ignore next: used by drag/drop which can't be tested easily */\n if (this.dragging && !this.noDrop) {\n return (// TODO: Add additional scope with file count, and other not-allowed reasons\n this.normalizeSlot(SLOT_NAME_DROP_PLACEHOLDER, {\n allowed: this.dropAllowed\n }) || (this.dropAllowed ? this.dropPlaceholder : this.$createElement('span', {\n staticClass: 'text-danger'\n }, this.noDropPlaceholder))\n );\n } // No file chosen\n\n\n if (this.files.length === 0) {\n return this.normalizeSlot(SLOT_NAME_PLACEHOLDER) || this.placeholder;\n }\n\n var flattenedFiles = this.flattenedFiles,\n clonedFiles = this.clonedFiles,\n fileNames = this.fileNames,\n computedFileNameFormatter = this.computedFileNameFormatter; // There is a slot for formatting the files/names\n\n if (this.hasNormalizedSlot(SLOT_NAME_FILE_NAME)) {\n return this.normalizeSlot(SLOT_NAME_FILE_NAME, {\n files: flattenedFiles,\n filesTraversed: clonedFiles,\n names: fileNames\n });\n }\n\n return computedFileNameFormatter(flattenedFiles, clonedFiles, fileNames);\n }\n },\n watch: (_watch = {}, _defineProperty(_watch, MODEL_PROP_NAME, function (newValue) {\n if (!newValue || isArray(newValue) && newValue.length === 0) {\n this.reset();\n }\n }), _defineProperty(_watch, \"files\", function files(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n var multiple = this.multiple,\n noTraverse = this.noTraverse;\n var files = !multiple || noTraverse ? flattenDeep(newValue) : newValue;\n this.$emit(MODEL_EVENT_NAME, multiple ? files : files[0] || null);\n }\n }), _watch),\n created: function created() {\n // Create private non-reactive props\n this.$_form = null;\n },\n mounted: function mounted() {\n // Listen for form reset events, to reset the file input\n var $form = closest('form', this.$el);\n\n if ($form) {\n eventOn($form, 'reset', this.reset, EVENT_OPTIONS_PASSIVE);\n this.$_form = $form;\n }\n },\n beforeDestroy: function beforeDestroy() {\n var $form = this.$_form;\n\n if ($form) {\n eventOff($form, 'reset', this.reset, EVENT_OPTIONS_PASSIVE);\n }\n },\n methods: {\n isFileValid: function isFileValid(file) {\n if (!file) {\n return false;\n }\n\n var accept = this.computedAccept;\n return accept ? accept.some(function (a) {\n return a.rx.test(file[a.prop]);\n }) : true;\n },\n isFilesArrayValid: function isFilesArrayValid(files) {\n var _this = this;\n\n return isArray(files) ? files.every(function (file) {\n return _this.isFileValid(file);\n }) : this.isFileValid(files);\n },\n defaultFileNameFormatter: function defaultFileNameFormatter(flattenedFiles, clonedFiles, fileNames) {\n return fileNames.join(', ');\n },\n setFiles: function setFiles(files) {\n // Reset the dragging flags\n this.dropAllowed = !this.noDrop;\n this.dragging = false; // Set the selected files\n\n this.files = this.multiple ? this.directory ? files : flattenDeep(files) : flattenDeep(files).slice(0, 1);\n },\n\n /* istanbul ignore next: used by Drag/Drop */\n setInputFiles: function setInputFiles(files) {\n // Try an set the file input files array so that `required`\n // constraint works for dropped files (will fail in IE11 though)\n // To be used only when dropping files\n try {\n // Firefox < 62 workaround exploiting https://bugzilla.mozilla.org/show_bug.cgi?id=1422655\n var dataTransfer = new ClipboardEvent('').clipboardData || new DataTransfer(); // Add flattened files to temp `dataTransfer` object to get a true `FileList` array\n\n flattenDeep(cloneDeep(files)).forEach(function (file) {\n // Make sure to remove the custom `$path` attribute\n delete file.$path;\n dataTransfer.items.add(file);\n });\n this.$refs.input.files = dataTransfer.files;\n } catch (_unused) {}\n },\n reset: function reset() {\n // IE 11 doesn't support setting `$input.value` to `''` or `null`\n // So we use this little extra hack to reset the value, just in case\n // This also appears to work on modern browsers as well\n // Wrapped in try in case IE 11 or mobile Safari crap out\n try {\n var $input = this.$refs.input;\n $input.value = '';\n $input.type = '';\n $input.type = 'file';\n } catch (_unused2) {}\n\n this.files = [];\n },\n handleFiles: function handleFiles(files) {\n var isDrop = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (isDrop) {\n // When dropped, make sure to filter files with the internal `accept` logic\n var filteredFiles = files.filter(this.isFilesArrayValid); // Only update files when we have any after filtering\n\n if (filteredFiles.length > 0) {\n this.setFiles(filteredFiles); // Try an set the file input's files array so that `required`\n // constraint works for dropped files (will fail in IE 11 though)\n\n this.setInputFiles(filteredFiles);\n }\n } else {\n // We always update the files from the `change` event\n this.setFiles(files);\n }\n },\n focusHandler: function focusHandler(event) {\n // Bootstrap v4 doesn't have focus styling for custom file input\n // Firefox has a `[type=file]:focus ~ sibling` selector issue,\n // so we add a `focus` class to get around these bugs\n if (this.plain || event.type === 'focusout') {\n this.hasFocus = false;\n } else {\n // Add focus styling for custom file input\n this.hasFocus = true;\n }\n },\n onChange: function onChange(event) {\n var _this2 = this;\n\n var type = event.type,\n target = event.target,\n _event$dataTransfer = event.dataTransfer,\n dataTransfer = _event$dataTransfer === void 0 ? {} : _event$dataTransfer;\n var isDrop = type === 'drop'; // Always emit original event\n\n this.$emit(EVENT_NAME_CHANGE, event);\n var items = arrayFrom(dataTransfer.items || []);\n\n if (HAS_PROMISE_SUPPORT && items.length > 0 && !isNull(getDataTransferItemEntry(items[0]))) {\n // Drop handling for modern browsers\n // Supports nested directory structures in `directory` mode\n\n /* istanbul ignore next: not supported in JSDOM */\n getAllFileEntries(items, this.directory).then(function (files) {\n return _this2.handleFiles(files, isDrop);\n });\n } else {\n // Standard file input handling (native file input change event),\n // or fallback drop mode (IE 11 / Opera) which don't support `directory` mode\n var files = arrayFrom(target.files || dataTransfer.files || []).map(function (file) {\n // Add custom `$path` property to each file (to be consistent with drop mode)\n file.$path = file.webkitRelativePath || '';\n return file;\n });\n this.handleFiles(files, isDrop);\n }\n },\n onDragenter: function onDragenter(event) {\n stopEvent(event);\n this.dragging = true;\n var _event$dataTransfer2 = event.dataTransfer,\n dataTransfer = _event$dataTransfer2 === void 0 ? {} : _event$dataTransfer2; // Early exit when the input or dropping is disabled\n\n if (this.noDrop || this.disabled || !this.dropAllowed) {\n // Show deny feedback\n\n /* istanbul ignore next: not supported in JSDOM */\n dataTransfer.dropEffect = 'none';\n this.dropAllowed = false;\n return;\n }\n /* istanbul ignore next: not supported in JSDOM */\n\n\n dataTransfer.dropEffect = 'copy';\n },\n // Note this event fires repeatedly while the mouse is over the dropzone at\n // intervals in the milliseconds, so avoid doing much processing in here\n onDragover: function onDragover(event) {\n stopEvent(event);\n this.dragging = true;\n var _event$dataTransfer3 = event.dataTransfer,\n dataTransfer = _event$dataTransfer3 === void 0 ? {} : _event$dataTransfer3; // Early exit when the input or dropping is disabled\n\n if (this.noDrop || this.disabled || !this.dropAllowed) {\n // Show deny feedback\n\n /* istanbul ignore next: not supported in JSDOM */\n dataTransfer.dropEffect = 'none';\n this.dropAllowed = false;\n return;\n }\n /* istanbul ignore next: not supported in JSDOM */\n\n\n dataTransfer.dropEffect = 'copy';\n },\n onDragleave: function onDragleave(event) {\n var _this3 = this;\n\n stopEvent(event);\n this.$nextTick(function () {\n _this3.dragging = false; // Reset `dropAllowed` to default\n\n _this3.dropAllowed = !_this3.noDrop;\n });\n },\n // Triggered by a file drop onto drop target\n onDrop: function onDrop(event) {\n var _this4 = this;\n\n stopEvent(event);\n this.dragging = false; // Early exit when the input or dropping is disabled\n\n if (this.noDrop || this.disabled || !this.dropAllowed) {\n this.$nextTick(function () {\n // Reset `dropAllowed` to default\n _this4.dropAllowed = !_this4.noDrop;\n });\n return;\n }\n\n this.onChange(event);\n }\n },\n render: function render(h) {\n var custom = this.custom,\n plain = this.plain,\n size = this.size,\n dragging = this.dragging,\n stateClass = this.stateClass,\n bvAttrs = this.bvAttrs; // Form Input\n\n var $input = h('input', {\n class: [{\n 'form-control-file': plain,\n 'custom-file-input': custom,\n focus: custom && this.hasFocus\n }, stateClass],\n // With IE 11, the input gets in the \"way\" of the drop events,\n // so we move it out of the way by putting it behind the label\n // Bootstrap v4 has it in front\n style: custom ? {\n zIndex: -5\n } : {},\n attrs: this.computedAttrs,\n on: {\n change: this.onChange,\n focusin: this.focusHandler,\n focusout: this.focusHandler,\n reset: this.reset\n },\n ref: 'input'\n });\n\n if (plain) {\n return $input;\n } // Overlay label\n\n\n var $label = h('label', {\n staticClass: 'custom-file-label',\n class: {\n dragging: dragging\n },\n attrs: {\n for: this.safeId(),\n // This goes away in Bootstrap v5\n 'data-browse': this.browseText || null\n }\n }, [h('span', {\n staticClass: 'd-block form-file-text',\n // `pointer-events: none` is used to make sure\n // the drag events fire only on the label\n style: {\n pointerEvents: 'none'\n }\n }, [this.labelContent])]); // Return rendered custom file input\n\n return h('div', {\n staticClass: 'custom-file b-form-file',\n class: [_defineProperty({}, \"b-custom-control-\".concat(size), size), stateClass, bvAttrs.class],\n style: bvAttrs.style,\n attrs: {\n id: this.safeId('_BV_file_outer_')\n },\n on: {\n dragenter: this.onDragenter,\n dragover: this.onDragover,\n dragleave: this.onDragleave,\n drop: this.onDrop\n }\n }, [$input, $label]);\n }\n});","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}","import router from '@/router'\r\n// eslint-disable-next-line object-curly-newline\r\nimport { reactive, getCurrentInstance, watch, toRefs } from '@vue/composition-api'\r\n\r\nexport const isObject = obj => typeof obj === 'object' && obj !== null\r\n\r\nexport const isToday = date => {\r\n const today = new Date()\r\n return (\r\n /* eslint-disable operator-linebreak */\r\n date.getDate() === today.getDate() &&\r\n date.getMonth() === today.getMonth() &&\r\n date.getFullYear() === today.getFullYear()\r\n /* eslint-enable */\r\n )\r\n}\r\n\r\nconst getRandomFromArray = array => array[Math.floor(Math.random() * array.length)]\r\n\r\n// ? Light and Dark variant is not included\r\n// prettier-ignore\r\nexport const getRandomBsVariant = () => getRandomFromArray(['primary', 'secondary', 'success', 'warning', 'danger', 'info'])\r\n\r\nexport const isDynamicRouteActive = route => {\r\n const { route: resolvedRoute } = router.resolve(route)\r\n return resolvedRoute.path === router.currentRoute.path\r\n}\r\n\r\n// Thanks: https://medium.com/better-programming/reactive-vue-routes-with-the-composition-api-18c1abd878d1\r\nexport const useRouter = () => {\r\n const vm = getCurrentInstance().proxy\r\n const state = reactive({\r\n route: vm.$route,\r\n })\r\n\r\n watch(\r\n () => vm.$route,\r\n r => {\r\n state.route = r\r\n },\r\n )\r\n\r\n return { ...toRefs(state), router: vm.$router }\r\n}\r\n\r\n/**\r\n * This is just enhancement over Object.extend [Gives deep extend]\r\n * @param {target} a Object which contains values to be overridden\r\n * @param {source} b Object which contains values to override\r\n */\r\n// export const objectExtend = (a, b) => {\r\n// // Don't touch 'null' or 'undefined' objects.\r\n// if (a == null || b == null) {\r\n// return a\r\n// }\r\n\r\n// Object.keys(b).forEach(key => {\r\n// if (Object.prototype.toString.call(b[key]) === '[object Object]') {\r\n// if (Object.prototype.toString.call(a[key]) !== '[object Object]') {\r\n// // eslint-disable-next-line no-param-reassign\r\n// a[key] = b[key]\r\n// } else {\r\n// // eslint-disable-next-line no-param-reassign\r\n// a[key] = objectExtend(a[key], b[key])\r\n// }\r\n// } else {\r\n// // eslint-disable-next-line no-param-reassign\r\n// a[key] = b[key]\r\n// }\r\n// })\r\n\r\n// return a\r\n// }\r\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $reduce = require('../internals/array-reduce').left;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.reduce` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.reduce\nexportTypedArrayMethod('reduce', function reduce(callbackfn /* , initialValue */) {\n return $reduce(aTypedArray(this), callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined);\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_INPUT_GROUP_APPEND } from '../../constants/components';\nimport { omit } from '../../utils/object';\nimport { makePropsConfigurable } from '../../utils/props';\nimport { BInputGroupAddon, props as BInputGroupAddonProps } from './input-group-addon'; // --- Props ---\n\nexport var props = makePropsConfigurable(omit(BInputGroupAddonProps, ['append']), NAME_INPUT_GROUP_APPEND); // --- Main component ---\n// @vue/component\n\nexport var BInputGroupAppend = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_GROUP_APPEND,\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 // Pass all our data down to child, and set `append` to `true`\n return h(BInputGroupAddon, mergeData(data, {\n props: _objectSpread(_objectSpread({}, props), {}, {\n append: true\n })\n }), children);\n }\n});","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar floor = Math.floor;\n\n// `%TypedArray%.prototype.reverse` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.reverse\nexportTypedArrayMethod('reverse', function reverse() {\n var that = this;\n var length = aTypedArray(that).length;\n var middle = floor(length / 2);\n var index = 0;\n var value;\n while (index < middle) {\n value = that[index];\n that[index++] = that[--length];\n that[length] = value;\n } return that;\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $find = require('../internals/array-iteration').find;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.find` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.find\nexportTypedArrayMethod('find', function find(predicate /* , thisArg */) {\n return $find(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n});\n","import { Vue, mergeData } from '../../vue';\nimport { NAME_INPUT_GROUP_TEXT } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_INPUT_GROUP_TEXT); // --- Main component ---\n// @vue/component\n\nexport var BInputGroupText = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_GROUP_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 staticClass: 'input-group-text'\n }), children);\n }\n});","var _watch, _methods;\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 { PROP_TYPE_ANY, PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props';\nimport { EVENT_NAME_CHANGE } from '../constants/events';\nimport { attemptBlur, attemptFocus } from '../utils/dom';\nimport { isBoolean } from '../utils/inspect';\nimport { looseEqual } from '../utils/loose-equal';\nimport { makeModelMixin } from '../utils/model';\nimport { sortKeys } from '../utils/object';\nimport { makeProp, makePropsConfigurable } from '../utils/props';\nimport { attrsMixin } from './attrs';\nimport { formControlMixin, props as formControlProps } from './form-control';\nimport { formCustomMixin, props as formCustomProps } from './form-custom';\nimport { formSizeMixin, props as formSizeProps } from './form-size';\nimport { formStateMixin, props as formStateProps } from './form-state';\nimport { idMixin, props as idProps } from './id';\nimport { normalizeSlotMixin } from './normalize-slot'; // --- Constants ---\n\nvar _makeModelMixin = makeModelMixin('checked', {\n defaultValue: null\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(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), modelProps), formControlProps), formSizeProps), formStateProps), formCustomProps), {}, {\n ariaLabel: makeProp(PROP_TYPE_STRING),\n ariaLabelledby: makeProp(PROP_TYPE_STRING),\n // Only applicable in standalone mode (non group)\n button: makeProp(PROP_TYPE_BOOLEAN, false),\n // Only applicable when rendered with button style\n buttonVariant: makeProp(PROP_TYPE_STRING),\n inline: makeProp(PROP_TYPE_BOOLEAN, false),\n value: makeProp(PROP_TYPE_ANY)\n})), 'formRadioCheckControls'); // --- Mixin ---\n// @vue/component\n\nexport var formRadioCheckMixin = Vue.extend({\n mixins: [attrsMixin, idMixin, modelMixin, normalizeSlotMixin, formControlMixin, formSizeMixin, formStateMixin, formCustomMixin],\n inheritAttrs: false,\n props: props,\n data: function data() {\n return {\n localChecked: this.isGroup ? this.bvGroup[MODEL_PROP_NAME] : this[MODEL_PROP_NAME],\n hasFocus: false\n };\n },\n computed: {\n computedLocalChecked: {\n get: function get() {\n return this.isGroup ? this.bvGroup.localChecked : this.localChecked;\n },\n set: function set(value) {\n if (this.isGroup) {\n this.bvGroup.localChecked = value;\n } else {\n this.localChecked = value;\n }\n }\n },\n isChecked: function isChecked() {\n return looseEqual(this.value, this.computedLocalChecked);\n },\n isRadio: function isRadio() {\n return true;\n },\n isGroup: function isGroup() {\n // Is this check/radio a child of check-group or radio-group?\n return !!this.bvGroup;\n },\n isBtnMode: function isBtnMode() {\n // Support button style in single input mode\n return this.isGroup ? this.bvGroup.buttons : this.button;\n },\n isPlain: function isPlain() {\n return this.isBtnMode ? false : this.isGroup ? this.bvGroup.plain : this.plain;\n },\n isCustom: function isCustom() {\n return this.isBtnMode ? false : !this.isPlain;\n },\n isSwitch: function isSwitch() {\n // Custom switch styling (checkboxes only)\n return this.isBtnMode || this.isRadio || this.isPlain ? false : this.isGroup ? this.bvGroup.switches : this.switch;\n },\n isInline: function isInline() {\n return this.isGroup ? this.bvGroup.inline : this.inline;\n },\n isDisabled: function isDisabled() {\n // Child can be disabled while parent isn't, but is always disabled if group is\n return this.isGroup ? this.bvGroup.disabled || this.disabled : this.disabled;\n },\n isRequired: function isRequired() {\n // Required only works when a name is provided for the input(s)\n // Child can only be required when parent is\n // Groups will always have a name (either user supplied or auto generated)\n return this.computedName && (this.isGroup ? this.bvGroup.required : this.required);\n },\n computedName: function computedName() {\n // Group name preferred over local name\n return (this.isGroup ? this.bvGroup.groupName : this.name) || null;\n },\n computedForm: function computedForm() {\n return (this.isGroup ? this.bvGroup.form : this.form) || null;\n },\n computedSize: function computedSize() {\n return (this.isGroup ? this.bvGroup.size : this.size) || '';\n },\n computedState: function computedState() {\n return this.isGroup ? this.bvGroup.computedState : isBoolean(this.state) ? this.state : null;\n },\n computedButtonVariant: function computedButtonVariant() {\n // Local variant preferred over group variant\n var buttonVariant = this.buttonVariant;\n\n if (buttonVariant) {\n return buttonVariant;\n }\n\n if (this.isGroup && this.bvGroup.buttonVariant) {\n return this.bvGroup.buttonVariant;\n }\n\n return 'secondary';\n },\n buttonClasses: function buttonClasses() {\n var _ref;\n\n var computedSize = this.computedSize;\n return ['btn', \"btn-\".concat(this.computedButtonVariant), (_ref = {}, _defineProperty(_ref, \"btn-\".concat(computedSize), computedSize), _defineProperty(_ref, \"disabled\", this.isDisabled), _defineProperty(_ref, \"active\", this.isChecked), _defineProperty(_ref, \"focus\", this.hasFocus), _ref)];\n },\n computedAttrs: function computedAttrs() {\n var disabled = this.isDisabled,\n required = this.isRequired;\n return _objectSpread(_objectSpread({}, this.bvAttrs), {}, {\n id: this.safeId(),\n type: this.isRadio ? 'radio' : 'checkbox',\n name: this.computedName,\n form: this.computedForm,\n disabled: disabled,\n required: required,\n 'aria-required': required || null,\n 'aria-label': this.ariaLabel || null,\n 'aria-labelledby': this.ariaLabelledby || null\n });\n }\n },\n watch: (_watch = {}, _defineProperty(_watch, MODEL_PROP_NAME, function () {\n this[\"\".concat(MODEL_PROP_NAME, \"Watcher\")].apply(this, arguments);\n }), _defineProperty(_watch, \"computedLocalChecked\", function computedLocalChecked() {\n this.computedLocalCheckedWatcher.apply(this, arguments);\n }), _watch),\n methods: (_methods = {}, _defineProperty(_methods, \"\".concat(MODEL_PROP_NAME, \"Watcher\"), function Watcher(newValue) {\n if (!looseEqual(newValue, this.computedLocalChecked)) {\n this.computedLocalChecked = newValue;\n }\n }), _defineProperty(_methods, \"computedLocalCheckedWatcher\", function computedLocalCheckedWatcher(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(MODEL_EVENT_NAME, newValue);\n }\n }), _defineProperty(_methods, \"handleChange\", function handleChange(_ref2) {\n var _this = this;\n\n var checked = _ref2.target.checked;\n var value = this.value;\n var localChecked = checked ? value : null;\n this.computedLocalChecked = value; // Fire events in a `$nextTick()` to ensure the `v-model` is updated\n\n this.$nextTick(function () {\n // Change is only emitted on user interaction\n _this.$emit(EVENT_NAME_CHANGE, localChecked); // If this is a child of a group, we emit a change event on it as well\n\n\n if (_this.isGroup) {\n _this.bvGroup.$emit(EVENT_NAME_CHANGE, localChecked);\n }\n });\n }), _defineProperty(_methods, \"handleFocus\", function handleFocus(event) {\n // When in buttons mode, we need to add 'focus' class to label when input focused\n // As it is the hidden input which has actual focus\n if (event.target) {\n if (event.type === 'focus') {\n this.hasFocus = true;\n } else if (event.type === 'blur') {\n this.hasFocus = false;\n }\n }\n }), _defineProperty(_methods, \"focus\", function focus() {\n if (!this.isDisabled) {\n attemptFocus(this.$refs.input);\n }\n }), _defineProperty(_methods, \"blur\", function blur() {\n if (!this.isDisabled) {\n attemptBlur(this.$refs.input);\n }\n }), _methods),\n render: function render(h) {\n var isRadio = this.isRadio,\n isBtnMode = this.isBtnMode,\n isPlain = this.isPlain,\n isCustom = this.isCustom,\n isInline = this.isInline,\n isSwitch = this.isSwitch,\n computedSize = this.computedSize,\n bvAttrs = this.bvAttrs;\n var $content = this.normalizeSlot();\n var $input = h('input', {\n class: [{\n 'form-check-input': isPlain,\n 'custom-control-input': isCustom,\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/2911\n 'position-static': isPlain && !$content\n }, isBtnMode ? '' : this.stateClass],\n directives: [{\n name: 'model',\n value: this.computedLocalChecked\n }],\n attrs: this.computedAttrs,\n domProps: {\n value: this.value,\n checked: this.isChecked\n },\n on: _objectSpread({\n change: this.handleChange\n }, isBtnMode ? {\n focus: this.handleFocus,\n blur: this.handleFocus\n } : {}),\n key: 'input',\n ref: 'input'\n });\n\n if (isBtnMode) {\n var $button = h('label', {\n class: this.buttonClasses\n }, [$input, $content]);\n\n if (!this.isGroup) {\n // Standalone button mode, so wrap in 'btn-group-toggle'\n // and flag it as inline-block to mimic regular buttons\n $button = h('div', {\n class: ['btn-group-toggle', 'd-inline-block']\n }, [$button]);\n }\n\n return $button;\n } // If no label content in plain mode we dont render the label\n // See: https://github.com/bootstrap-vue/bootstrap-vue/issues/2911\n\n\n var $label = h();\n\n if (!(isPlain && !$content)) {\n $label = h('label', {\n class: {\n 'form-check-label': isPlain,\n 'custom-control-label': isCustom\n },\n attrs: {\n for: this.safeId()\n }\n }, $content);\n }\n\n return h('div', {\n class: [_defineProperty({\n 'form-check': isPlain,\n 'form-check-inline': isPlain && isInline,\n 'custom-control': isCustom,\n 'custom-control-inline': isCustom && isInline,\n 'custom-checkbox': isCustom && !isRadio && !isSwitch,\n 'custom-switch': isSwitch,\n 'custom-radio': isCustom && isRadio\n }, \"b-custom-control-\".concat(computedSize), computedSize && !isBtnMode), bvAttrs.class],\n style: bvAttrs.style\n }, [$input, $label]);\n }\n});","var aFunction = require('../internals/a-function');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\nvar toLength = require('../internals/to-length');\n\n// `Array.prototype.{ reduce, reduceRight }` methods implementation\nvar createMethod = function (IS_RIGHT) {\n return function (that, callbackfn, argumentsLength, memo) {\n aFunction(callbackfn);\n var O = toObject(that);\n var self = IndexedObject(O);\n var length = toLength(O.length);\n var index = IS_RIGHT ? length - 1 : 0;\n var i = IS_RIGHT ? -1 : 1;\n if (argumentsLength < 2) while (true) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (IS_RIGHT ? index < 0 : length <= index) {\n throw TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.reduce` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.reduce\n left: createMethod(false),\n // `Array.prototype.reduceRight` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.reduceright\n right: createMethod(true)\n};\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.forEach` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.foreach\nexportTypedArrayMethod('forEach', function forEach(callbackfn /* , thisArg */) {\n $forEach(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n});\n","import { Vue, mergeData } from '../../vue';\nimport { NAME_CARD_TEXT } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n textTag: makeProp(PROP_TYPE_STRING, 'p')\n}, NAME_CARD_TEXT); // --- Main component ---\n// @vue/component\n\nexport var BCardText = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_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.textTag, mergeData(data, {\n staticClass: 'card-text'\n }), children);\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});","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toInteger = require('../internals/to-integer');\nvar toLength = require('../internals/to-length');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar min = Math.min;\nvar nativeLastIndexOf = [].lastIndexOf;\nvar NEGATIVE_ZERO = !!nativeLastIndexOf && 1 / [1].lastIndexOf(1, -0) < 0;\nvar STRICT_METHOD = arrayMethodIsStrict('lastIndexOf');\n// For preventing possible almost infinite loop in non-standard implementations, test the forward version of the method\nvar USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });\nvar FORCED = NEGATIVE_ZERO || !STRICT_METHOD || !USES_TO_LENGTH;\n\n// `Array.prototype.lastIndexOf` method implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.lastindexof\nmodule.exports = FORCED ? function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) {\n // convert -0 to +0\n if (NEGATIVE_ZERO) return nativeLastIndexOf.apply(this, arguments) || 0;\n var O = toIndexedObject(this);\n var length = toLength(O.length);\n var index = length - 1;\n if (arguments.length > 1) index = min(index, toInteger(arguments[1]));\n if (index < 0) index = length + index;\n for (;index >= 0; index--) if (index in O && O[index] === searchElement) return index || 0;\n return -1;\n} : nativeLastIndexOf;\n","import axios from '@axios'\r\nimport common from '@/libs/common'\r\n\r\nexport default function fileService() {\r\n const { throwError } = common()\r\n const API_URL = `${process.env.VUE_APP_ADUACORE_API_URL}/api`\r\n\r\n /* Standard prefix names:\r\n Post: create, Get: fetch,\r\n Put: update, Patch: partialUpdate,\r\n Delete: delete\r\n */\r\n\r\n const fetchFile = (idArchivo, callback) => {\r\n axios\r\n .get(`${API_URL}/Archivos/${idArchivo}`)\r\n .then(response => {\r\n callback(response.data)\r\n })\r\n .catch(error => throwError(error))\r\n }\r\n\r\n const fetchFileStreaming = (idArchivo, callback) => {\r\n axios\r\n .get(`${API_URL}/Archivos/${idArchivo}/Streaming`)\r\n .then(response => {\r\n callback(response.data)\r\n })\r\n .catch(error => throwError(error))\r\n }\r\n\r\n const fetchFileDigitalRecord = idArchivo => new Promise((resolve, reject) => {\r\n axios\r\n .get(`${API_URL}/Archivos/ExpedienteDigital/${idArchivo}`)\r\n .then(response => {\r\n resolve(response)\r\n })\r\n .catch(error => reject(error))\r\n })\r\n\r\n const fetchFileDigitalRecordStreaming = idArchivo => new Promise((resolve, reject) => {\r\n axios\r\n .get(`${API_URL}/Archivos/ExpedienteDigital/${idArchivo}/Streaming`)\r\n .then(response => {\r\n resolve(response)\r\n })\r\n .catch(error => reject(error))\r\n })\r\n\r\n const createFile = file => new Promise((resolve, reject) => {\r\n axios\r\n .post(`${API_URL}/Archivos`, file)\r\n .then(response => {\r\n resolve(response.data)\r\n })\r\n .catch(error => {\r\n reject()\r\n throwError(error)\r\n })\r\n })\r\n\r\n const createFiles = files => new Promise((resolve, reject) => {\r\n axios\r\n .post(`${API_URL}/Archivos/Multiples`, { archivos: files })\r\n .then(response => {\r\n resolve(response.data)\r\n })\r\n .catch(error => {\r\n reject()\r\n throwError(error)\r\n })\r\n })\r\n\r\n const createExcelTemplateFile = file => new Promise((resolve, reject) => {\r\n axios\r\n .post(`${API_URL}/Archivos/PlantillaExcel`, file)\r\n .then(response => {\r\n resolve(response.data)\r\n })\r\n .catch(error => {\r\n reject()\r\n throwError(error)\r\n })\r\n })\r\n\r\n return {\r\n fetchFile,\r\n fetchFileStreaming,\r\n createFile,\r\n createFiles,\r\n createExcelTemplateFile,\r\n fetchFileDigitalRecord,\r\n fetchFileDigitalRecordStreaming,\r\n }\r\n}\r\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $indexOf = require('../internals/array-includes').indexOf;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.indexOf` method\n// https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.indexof\nexportTypedArrayMethod('indexOf', function indexOf(searchElement /* , fromIndex */) {\n return $indexOf(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar NATIVE_ARRAY_BUFFER = require('../internals/array-buffer-native');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar has = require('../internals/has');\nvar classof = require('../internals/classof');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar uid = require('../internals/uid');\n\nvar Int8Array = global.Int8Array;\nvar Int8ArrayPrototype = Int8Array && Int8Array.prototype;\nvar Uint8ClampedArray = global.Uint8ClampedArray;\nvar Uint8ClampedArrayPrototype = Uint8ClampedArray && Uint8ClampedArray.prototype;\nvar TypedArray = Int8Array && getPrototypeOf(Int8Array);\nvar TypedArrayPrototype = Int8ArrayPrototype && getPrototypeOf(Int8ArrayPrototype);\nvar ObjectPrototype = Object.prototype;\nvar isPrototypeOf = ObjectPrototype.isPrototypeOf;\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar TYPED_ARRAY_TAG = uid('TYPED_ARRAY_TAG');\n// Fixing native typed arrays in Opera Presto crashes the browser, see #595\nvar NATIVE_ARRAY_BUFFER_VIEWS = NATIVE_ARRAY_BUFFER && !!setPrototypeOf && classof(global.opera) !== 'Opera';\nvar TYPED_ARRAY_TAG_REQIRED = false;\nvar NAME;\n\nvar TypedArrayConstructorsList = {\n Int8Array: 1,\n Uint8Array: 1,\n Uint8ClampedArray: 1,\n Int16Array: 2,\n Uint16Array: 2,\n Int32Array: 4,\n Uint32Array: 4,\n Float32Array: 4,\n Float64Array: 8\n};\n\nvar BigIntArrayConstructorsList = {\n BigInt64Array: 8,\n BigUint64Array: 8\n};\n\nvar isView = function isView(it) {\n if (!isObject(it)) return false;\n var klass = classof(it);\n return klass === 'DataView'\n || has(TypedArrayConstructorsList, klass)\n || has(BigIntArrayConstructorsList, klass);\n};\n\nvar isTypedArray = function (it) {\n if (!isObject(it)) return false;\n var klass = classof(it);\n return has(TypedArrayConstructorsList, klass)\n || has(BigIntArrayConstructorsList, klass);\n};\n\nvar aTypedArray = function (it) {\n if (isTypedArray(it)) return it;\n throw TypeError('Target is not a typed array');\n};\n\nvar aTypedArrayConstructor = function (C) {\n if (setPrototypeOf) {\n if (isPrototypeOf.call(TypedArray, C)) return C;\n } else for (var ARRAY in TypedArrayConstructorsList) if (has(TypedArrayConstructorsList, NAME)) {\n var TypedArrayConstructor = global[ARRAY];\n if (TypedArrayConstructor && (C === TypedArrayConstructor || isPrototypeOf.call(TypedArrayConstructor, C))) {\n return C;\n }\n } throw TypeError('Target is not a typed array constructor');\n};\n\nvar exportTypedArrayMethod = function (KEY, property, forced) {\n if (!DESCRIPTORS) return;\n if (forced) for (var ARRAY in TypedArrayConstructorsList) {\n var TypedArrayConstructor = global[ARRAY];\n if (TypedArrayConstructor && has(TypedArrayConstructor.prototype, KEY)) {\n delete TypedArrayConstructor.prototype[KEY];\n }\n }\n if (!TypedArrayPrototype[KEY] || forced) {\n redefine(TypedArrayPrototype, KEY, forced ? property\n : NATIVE_ARRAY_BUFFER_VIEWS && Int8ArrayPrototype[KEY] || property);\n }\n};\n\nvar exportTypedArrayStaticMethod = function (KEY, property, forced) {\n var ARRAY, TypedArrayConstructor;\n if (!DESCRIPTORS) return;\n if (setPrototypeOf) {\n if (forced) for (ARRAY in TypedArrayConstructorsList) {\n TypedArrayConstructor = global[ARRAY];\n if (TypedArrayConstructor && has(TypedArrayConstructor, KEY)) {\n delete TypedArrayConstructor[KEY];\n }\n }\n if (!TypedArray[KEY] || forced) {\n // V8 ~ Chrome 49-50 `%TypedArray%` methods are non-writable non-configurable\n try {\n return redefine(TypedArray, KEY, forced ? property : NATIVE_ARRAY_BUFFER_VIEWS && Int8Array[KEY] || property);\n } catch (error) { /* empty */ }\n } else return;\n }\n for (ARRAY in TypedArrayConstructorsList) {\n TypedArrayConstructor = global[ARRAY];\n if (TypedArrayConstructor && (!TypedArrayConstructor[KEY] || forced)) {\n redefine(TypedArrayConstructor, KEY, property);\n }\n }\n};\n\nfor (NAME in TypedArrayConstructorsList) {\n if (!global[NAME]) NATIVE_ARRAY_BUFFER_VIEWS = false;\n}\n\n// WebKit bug - typed arrays constructors prototype is Object.prototype\nif (!NATIVE_ARRAY_BUFFER_VIEWS || typeof TypedArray != 'function' || TypedArray === Function.prototype) {\n // eslint-disable-next-line no-shadow\n TypedArray = function TypedArray() {\n throw TypeError('Incorrect invocation');\n };\n if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) {\n if (global[NAME]) setPrototypeOf(global[NAME], TypedArray);\n }\n}\n\nif (!NATIVE_ARRAY_BUFFER_VIEWS || !TypedArrayPrototype || TypedArrayPrototype === ObjectPrototype) {\n TypedArrayPrototype = TypedArray.prototype;\n if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) {\n if (global[NAME]) setPrototypeOf(global[NAME].prototype, TypedArrayPrototype);\n }\n}\n\n// WebKit bug - one more object in Uint8ClampedArray prototype chain\nif (NATIVE_ARRAY_BUFFER_VIEWS && getPrototypeOf(Uint8ClampedArrayPrototype) !== TypedArrayPrototype) {\n setPrototypeOf(Uint8ClampedArrayPrototype, TypedArrayPrototype);\n}\n\nif (DESCRIPTORS && !has(TypedArrayPrototype, TO_STRING_TAG)) {\n TYPED_ARRAY_TAG_REQIRED = true;\n defineProperty(TypedArrayPrototype, TO_STRING_TAG, { get: function () {\n return isObject(this) ? this[TYPED_ARRAY_TAG] : undefined;\n } });\n for (NAME in TypedArrayConstructorsList) if (global[NAME]) {\n createNonEnumerableProperty(global[NAME], TYPED_ARRAY_TAG, NAME);\n }\n}\n\nmodule.exports = {\n NATIVE_ARRAY_BUFFER_VIEWS: NATIVE_ARRAY_BUFFER_VIEWS,\n TYPED_ARRAY_TAG: TYPED_ARRAY_TAG_REQIRED && TYPED_ARRAY_TAG,\n aTypedArray: aTypedArray,\n aTypedArrayConstructor: aTypedArrayConstructor,\n exportTypedArrayMethod: exportTypedArrayMethod,\n exportTypedArrayStaticMethod: exportTypedArrayStaticMethod,\n isView: isView,\n isTypedArray: isTypedArray,\n TypedArray: TypedArray,\n TypedArrayPrototype: TypedArrayPrototype\n};\n","var toInteger = require('../internals/to-integer');\n\nmodule.exports = function (it) {\n var result = toInteger(it);\n if (result < 0) throw RangeError(\"The argument can't be less than 0\");\n return result;\n};\n"],"sourceRoot":""}
{{ $t('Components.ExcelTemplateUploader.UploadErrors') }}: