{"version":3,"sources":["webpack:///./node_modules/bootstrap-vue/esm/components/spinner/spinner.js","webpack:///./node_modules/bootstrap-vue/esm/components/navbar/navbar-nav.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/td.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/thead.js","webpack:///./node_modules/bootstrap-vue/esm/components/navbar/navbar-toggle.js","webpack:///./node_modules/bootstrap-vue/esm/components/overlay/index.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/table-simple.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/index.js","webpack:///./node_modules/bootstrap-vue/esm/components/popover/helpers/bv-popover-template.js","webpack:///./node_modules/bootstrap-vue/esm/components/popover/helpers/bv-popover.js","webpack:///./node_modules/bootstrap-vue/esm/components/pagination/pagination.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/tfoot.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/sanitize-row.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/stringify-object-values.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/stringify-record-values.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-filtering.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/default-sort-compare.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-sorting.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-pagination.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-empty.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-top-row.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-bottom-row.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-busy.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-selectable.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-provider.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/table.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/tr.js","webpack:///./node_modules/bootstrap-vue/esm/components/pagination-nav/pagination-nav.js","webpack:///./node_modules/bootstrap-vue/esm/components/popover/popover.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-tbody-row.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-tbody.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-caption.js","webpack:///./node_modules/bootstrap-vue/esm/components/progress/index.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-stacked.js","webpack:///./node_modules/bootstrap-vue/esm/components/progress/progress.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/normalize-fields.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-items.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/th.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-table-renderer.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/constants.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-tfoot.js","webpack:///./node_modules/bootstrap-vue/esm/components/sidebar/index.js","webpack:///./node_modules/bootstrap-vue/esm/components/navbar/navbar-brand.js","webpack:///./node_modules/bootstrap-vue/esm/components/overlay/overlay.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/tbody.js","webpack:///./node_modules/bootstrap-vue/esm/components/pagination-nav/index.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/filter-event.js","webpack:///./node_modules/bootstrap-vue/esm/components/spinner/index.js","webpack:///./node_modules/bootstrap-vue/esm/components/sidebar/sidebar.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-thead.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/table-lite.js","webpack:///./node_modules/bootstrap-vue/esm/components/progress/progress-bar.js","webpack:///./node_modules/bootstrap-vue/esm/components/navbar/navbar.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/text-selection-active.js","webpack:///./node_modules/bootstrap-vue/esm/components/pagination/index.js","webpack:///./node_modules/bootstrap-vue/esm/components/table/helpers/mixin-colgroup.js","webpack:///./node_modules/bootstrap-vue/esm/components/popover/index.js","webpack:///./node_modules/bootstrap-vue/esm/components/navbar/index.js"],"names":["_defineProperty","obj","key","value","Object","defineProperty","enumerable","configurable","writable","NAME","BSpinner","extend","name","functional","props","type","String","default","label","variant","small","Boolean","role","tag","render","h","_ref","_class","data","slots","scopedSlots","$slots","$scopedSlots","staticClass","attrs","class","concat","computeJustifyContent","BNavbarNav","children","fill","justified","align","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","push","apply","_objectSpread","target","i","arguments","length","source","forEach","getOwnPropertyDescriptors","defineProperties","parseSpan","spanValidator","val","colspan","Number","validator","rowspan","stackedHeading","stickyColumn","BTd","mixins","inheritAttrs","inject","bvTableTr","computed","inTbody","this","inThead","inTfoot","isDark","isStacked","isStackedCell","isResponsive","isStickyHeader","hasStickyHeader","isStickyColumn","rowVariant","headVariant","footVariant","tableVariant","computedColspan","computedRowspan","cellClasses","cellAttrs","headOrFoot","scope","bvAttrs","content","normalizeSlot","on","bvListeners","BThead","provide","bvTableRowGroup","bvTable","isThead","dark","stickyHeader","theadClasses","theadAttrs","CLASS_NAME","BNavbarToggle","directives","BToggle","required","disabled","toggleState","created","listenOnRoot","handleStateEvt","methods","onClick","evt","$emit","id","state","click","expanded","OverlayPlugin","components","BOverlay","BTableSimple","isTableSimple","TableLitePlugin","BTableLite","TableSimplePlugin","BTbody","BTfoot","BTr","BTh","TablePlugin","BTable","plugins","BVPopoverTemplate","extends","templateType","renderTemplate","$title","title","$content","titleDomProps","html","innerHTML","contentDomProps","templateClasses","templateAttributes","templateListeners","ref","domProps","BVPopover","getTemplate","DEFAULT_PER_PAGE","DEFAULT_TOTAL_ROWS","size","perPage","totalRows","ariaControls","sanitizePerPage","sanitizeTotalRows","BPagination","numberOfPages","result","pageSizeNumberOfPages","watch","newVal","oldVal","currentPage","localNumberOfPages","_this","$nextTick","mounted","num","_this2","$el","contains","focusCurrent","makePage","pageNum","linkProps","isTfoot","tfootClasses","tfootAttrs","row","ignoreFields","includeFields","fieldsObj","undefined","reduce","array","f","filterByFormatted","formatter","stringifyObjectValues","sort","v","map","k","join","DEBOUNCE_DEPRECATED_MSG","RX_SPACES","RegExp","Array","filterFunction","Function","filterIgnoredFields","filterIncludedFields","filterDebounce","deprecated","test","isFiltered","localFilter","filterSanitize","computedFilterIgnored","identity","computedFilterIncluded","computedFilterDebounce","ms","warn","localFiltering","hasProvider","noProviderFiltering","filteredCheck","filteredItems","localItems","localFilterFn","items","criteria","filterFn","filterFnFactory","defaultFilterFnFactory","$_filterTimer","clearFilterTimer","deep","handler","newCriteria","timeout","setTimeout","beforeDestroy","clearTimeout","fn","item","_this3","regExp","pattern","replace","lastIndex","computedFieldsObj","a","b","sortBy","sortDesc","localeOpts","locale","nullLast","aa","get","bb","localeCompare","sortDirection","direction","sortCompare","sortCompareOptions","numeric","sortCompareLocale","sortNullLast","noSortReset","labelSortAsc","labelSortDesc","labelSortClear","noLocalSorting","noFooterSorting","sortIconLeft","localSortBy","localSortDesc","localSorting","noProviderSorting","isSortable","computedFields","some","sortable","sortedItems","slice","sortOptions","usage","sortLocale","field","sortByFormatted","getFieldFormatter","$on","handleSort","$off","isFoot","sortChanged","toggleLocalSortDesc","context","sortTheadThClasses","sortTheadThAttrs","ariaSort","sortTheadThLabel","labelSorting","localPaging","noProviderPaging","paginatedItems","math","showEmpty","emptyText","emptyHtml","emptyFilteredText","emptyFilteredHtml","renderEmpty","$createElement","computedItems","$empty","computedBusy","hasNormalizedSlot","tbodyTrClass","tbodyTrAttr","fields","slotName","renderTopRow","stacked","columns","renderBottomRow","busySlotName","busy","localBusy","stopIfBusy","preventDefault","stopPropagation","renderBusy","selectable","selectMode","selectedVariant","noSelectOnClick","selectedRows","selectedLastRow","isSelectable","hasSelectableRowClick","supportsSelectableRows","selectableHasSelection","selectableIsMultiSelect","selectableTableClasses","selectableTableAttrs","equal","clearSelected","setSelectionHandlers","_selectedRows","idx","beforeMount","selectRow","index","isRowSelected","selectedLastClicked","unselectRow","selectAllRows","range","selectableRowClasses","selectableRowAttrs","method","selectionHandler","selected","shiftKey","ctrlKey","metaKey","apiUrl","providerTriggerContext","ctx","_providerUpdate","refresh","_providerSetLocal","emitOnRoot","then","e","message","LIGHT","DARK","isTbody","isRowDark","trClasses","trAttrs","_linkProps","number","baseUrl","useRouter","linkGen","pageGen","pages","noPageDetect","sanitizeNumberOfPages","BPaginationNav","isNav","computedValue","setNumberOfPages","$router","$watch","guessCurrentPage","_this4","_this5","currentTarget","getPageInfo","link","path","text","info","_link","makeLink","to","href","resolveLink","document","createElement","body","appendChild","_link2","pathname","hash","search","removeChild","query","parentNode","resolveRoute","route","resolve","$route","guess","currRoute","loc","window","location","currLink","page","BPopover","triggers","placement","customClass","delay","boundary","boundaryPadding","getComponent","updateContent","setContent","setTitle","detailsSlotName","detailsTdClass","getTdValues","tdValue","defValue","parent","$parent","getThValues","thValue","getFormattedValue","toggleDetailsFactory","hasDetailsSlot","$set","_showDetails","rowHovered","tbodyRowEvtStopped","emitTbodyRowEvent","rowUnhovered","renderTbodyRowCell","colIndex","rowIndex","formatted","cellTag","isRowHeader","cellVariant","_cellVariants","tdClass","thAttr","tdAttr","slotScope","unformatted","toggleDetails","detailsShowing","rowSelected","$_bodyFieldSlotNameCache","$childNodes","renderTbodyRow","tableStriped","striped","rowShowDetails","hasRowClickHandler","$listeners","$rows","detailsId","safeId","$tds","ariaRowIndex","primaryKey","primaryKeyValue","rowKey","rowId","selectableClasses","selectableAttrs","userTrClasses","userTrAttrs","refInFor","_rowVariant","tabindex","mouseenter","mouseleave","detailsScope","$details","userDetailsTrClasses","userDetailsTrAttrs","tbodyClass","getTbodyTrs","refs","$refs","tbody","trs","itemRows","tr","getTbodyTrIndex","el","tagName","indexOf","hasListener","onTbodyRowKeydown","tabIndex","keyCode","ENTER","SPACE","onTBodyRowClicked","UP","DOWN","HOME","END","shift","onTbodyRowMiddleMouseRowClicked","which","onTbodyRowContextmenu","onTbodyRowDblClicked","renderTbody","$busy","cache","defaultSlotName","fullName","lowerName","toLowerCase","handlers","auxclick","contextmenu","dblclick","keydown","$tbody","tbodyTransitionProps","tbodyTransitionHandlers","caption","captionHtml","captionId","renderCaption","$caption","hasCaptionSlot","ProgressPlugin","BProgress","BProgressBar","isStackedAlways","stackedTableClasses","bvProgress","animated","height","precision","showProgress","showValue","max","progressHeight","childNodes","style","origFields","sample","memo","newItems","bordered","borderless","outlined","hover","fixed","responsive","noBorderCollapse","captionTop","tableClass","wrapperClasses","wrapperStyles","maxHeight","tableClasses","border","tableAttrs","adb","ariaAttrs","rowCount","renderColgroup","renderThead","renderTfoot","$table","IGNORED_FIELD_KEYS","EVENT_FILTER","footClone","footRowVariant","tfootClass","tfootTrClass","renderTFootCustom","SidebarPlugin","BSidebar","VBTogglePlugin","BNavbarBrand","isLink","positionCover","top","left","bottom","right","show","bgColor","opacity","blur","rounded","noCenter","noFade","spinnerType","spinnerVariant","spinnerSmall","overlayTag","wrapTag","noWrap","zIndex","computedRounded","computedVariant","overlayScope","defaultOverlayFn","$overlay","$background","backgroundColor","backdropFilter","transform","appear","isTransitionGroup","tbodyAttrs","tbodyProps","nativeOn","PaginationNavPlugin","TABLE_TAG_NAMES","filterEvent","labelFor","input","SpinnerPlugin","renderHeaderTitle","renderHeaderClose","noHeaderClose","closeLabel","textVariant","hide","ariaLabel","renderHeader","noHeader","$close","headerClass","renderBody","bodyClass","renderFooter","$footer","footerClass","renderContent","$header","lazy","isOpen","renderBackdrop","backdrop","backdropVariant","localShow","onBackdropClick","model","prop","event","bgVariant","shadow","width","ariaLabelledby","sidebarClass","noSlide","noCloseOnEsc","noCloseOnBackdrop","noCloseOnRouteChange","visible","transitionProps","css","enterClass","enterActiveClass","enterToClass","leaveClass","leaveActiveClass","leaveToClass","computedTile","titleId","computedAttrs","emitState","fullPath","$_returnFocusEl","handleToggle","handleSync","activated","emitSync","onKeydown","ESC","onTopTrapFocus","tabables","reverse","onBottomTrapFocus","onBeforeEnter","onAfterEnter","onAfterLeave","$sidebar","beforeEnter","afterEnter","afterLeave","$backdrop","$tabTrapTop","$tabTrapBottom","focus","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","o","minLen","_arrayLikeToArray","n","prototype","toString","call","constructor","from","iter","Symbol","iterator","isArray","len","arr2","headRowVariant","theadClass","theadTrClass","fieldClasses","thClass","headClicked","hasHeadClickListener","makeCell","labelHtml","trim","headerTitle","sortAttrs","sortClass","sortLabel","thStyle","abbr","headerAbbr","slotNames","column","$srLabel","$cells","$trs","progressBarClasses","computedStriped","computedAnimated","progressBarStyles","computedMax","computedPrecision","computedProgress","p","computedShowProgress","computedShowValue","toggleable","sticky","print","BNavbar","bvNavbar","breakpointClass","breakpoint","xs","textSelectionActive","sel","containsNode","PaginationPlugin","$colgroup","PopoverPlugin","VBPopoverPlugin","NavbarPlugin","BNavToggle","NavPlugin","CollapsePlugin","DropdownPlugin"],"mappings":"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","file":"js/chunk-vendors~1187b811.329ea62b.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 from '../../utils/vue';\nimport { mergeData } from 'vue-functional-data-merge';\nimport { getComponentConfig } from '../../utils/config';\nimport { normalizeSlot } from '../../utils/normalize-slot';\nvar NAME = 'BSpinner'; // @vue/component\n\nexport var BSpinner = /*#__PURE__*/Vue.extend({\n name: NAME,\n functional: true,\n props: {\n type: {\n type: String,\n default: 'border' // SCSS currently supports 'border' or 'grow'\n\n },\n label: {\n type: String // default: null\n\n },\n variant: {\n type: String,\n default: function _default() {\n return getComponentConfig(NAME, 'variant');\n }\n },\n small: {\n type: Boolean,\n default: false\n },\n role: {\n type: String,\n default: 'status'\n },\n tag: {\n type: String,\n default: 'span'\n }\n },\n 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('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 _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 { mergeData } from 'vue-functional-data-merge';\nimport Vue from '../../utils/vue';\nimport { pluckProps } from '../../utils/props';\nimport { props as BNavProps } from '../nav/nav'; // -- Constants --\n\nexport var props = pluckProps(['tag', 'fill', 'justified', 'align', 'small'], BNavProps); // -- Utils --\n\nvar computeJustifyContent = function computeJustifyContent(value) {\n // Normalize value\n value = value === 'left' ? 'start' : value === 'right' ? 'end' : value;\n return \"justify-content-\".concat(value);\n}; // @vue/component\n\n\nexport var BNavbarNav = /*#__PURE__*/Vue.extend({\n name: 'BNavbarNav',\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 children = _ref.children;\n return h(props.tag, mergeData(data, {\n staticClass: 'navbar-nav',\n class: (_class = {\n 'nav-fill': props.fill,\n 'nav-justified': props.justified\n }, _defineProperty(_class, computeJustifyContent(props.align), props.align), _defineProperty(_class, \"small\", props.small), _class)\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 from '../../utils/vue';\nimport { isTag } from '../../utils/dom';\nimport { isUndefinedOrNull } from '../../utils/inspect';\nimport { toInteger } from '../../utils/number';\nimport { toString } from '../../utils/string';\nimport attrsMixin from '../../mixins/attrs';\nimport listenersMixin from '../../mixins/listeners';\nimport normalizeSlotMixin from '../../mixins/normalize-slot'; // --- Utility methods ---\n// Parse a rowspan or colspan into a digit (or `null` if < `1` )\n\nvar parseSpan = function parseSpan(value) {\n value = toInteger(value, 0);\n return value > 0 ? value : null;\n};\n/* istanbul ignore next */\n\n\nvar spanValidator = function spanValidator(val) {\n return isUndefinedOrNull(val) || parseSpan(val) > 0;\n}; // --- Props ---\n\n\nexport var props = {\n variant: {\n type: String,\n default: null\n },\n colspan: {\n type: [Number, String],\n default: null,\n validator: spanValidator\n },\n rowspan: {\n type: [Number, String],\n default: null,\n validator: spanValidator\n },\n stackedHeading: {\n type: String,\n default: null\n },\n stickyColumn: {\n type: Boolean,\n default: false\n }\n}; // --- Main component ---\n// TODO:\n// In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n// to the child elements, so this can be converted to a functional component\n// @vue/component\n\nexport var BTd = /*#__PURE__*/Vue.extend({\n name: 'BTableCell',\n // Mixin order is important!\n mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n inheritAttrs: false,\n inject: {\n bvTableTr: {\n /* istanbul ignore next */\n default: function _default()\n /* istanbul ignore next */\n {\n return {};\n }\n }\n },\n props: props,\n computed: {\n tag: function tag() {\n // Overridden by \n return 'td';\n },\n inTbody: function inTbody() {\n return this.bvTableTr.inTbody;\n },\n inThead: function inThead() {\n return this.bvTableTr.inThead;\n },\n inTfoot: function inTfoot() {\n return this.bvTableTr.inTfoot;\n },\n isDark: function isDark() {\n return this.bvTableTr.isDark;\n },\n isStacked: function isStacked() {\n return this.bvTableTr.isStacked;\n },\n isStackedCell: function isStackedCell() {\n // We only support stacked-heading in tbody in stacked mode\n return this.inTbody && this.isStacked;\n },\n isResponsive: function isResponsive() {\n return this.bvTableTr.isResponsive;\n },\n isStickyHeader: function isStickyHeader() {\n // Needed to handle header background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n // Sticky headers only apply to cells in table `thead`\n return this.bvTableTr.isStickyHeader;\n },\n hasStickyHeader: function hasStickyHeader() {\n // Needed to handle header background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n return this.bvTableTr.hasStickyHeader;\n },\n isStickyColumn: function isStickyColumn() {\n // Needed to handle background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n // Sticky column cells are only available in responsive\n // mode (horizontal scrolling) or when sticky header mode\n // Applies to cells in `thead`, `tbody` and `tfoot`\n return !this.isStacked && (this.isResponsive || this.hasStickyHeader) && this.stickyColumn;\n },\n rowVariant: function rowVariant() {\n return this.bvTableTr.variant;\n },\n headVariant: function headVariant() {\n return this.bvTableTr.headVariant;\n },\n footVariant: function footVariant() {\n return this.bvTableTr.footVariant;\n },\n tableVariant: function tableVariant() {\n return this.bvTableTr.tableVariant;\n },\n computedColspan: function computedColspan() {\n return parseSpan(this.colspan);\n },\n computedRowspan: function computedRowspan() {\n return parseSpan(this.rowspan);\n },\n cellClasses: function cellClasses() {\n // We use computed props here for improved performance by caching\n // the results of the string interpolation\n var variant = this.variant;\n\n if (!variant && this.isStickyHeader && !this.headVariant || !variant && this.isStickyColumn && this.inTfoot && !this.footVariant || !variant && this.isStickyColumn && this.inThead && !this.headVariant || !variant && this.isStickyColumn && this.inTbody) {\n // Needed for sticky-header mode as Bootstrap v4 table cells do\n // not inherit parent's background-color. Boo!\n variant = this.rowVariant || this.tableVariant || 'b-table-default';\n }\n\n return [variant ? \"\".concat(this.isDark ? 'bg' : 'table', \"-\").concat(variant) : null, this.isStickyColumn ? 'b-table-sticky-column' : null];\n },\n cellAttrs: function cellAttrs() {\n // We use computed props here for improved performance by caching\n // the results of the object spread (Object.assign)\n var headOrFoot = this.inThead || this.inTfoot; // Make sure col/rowspan's are > 0 or null\n\n var colspan = this.computedColspan;\n var rowspan = this.computedRowspan; // Default role and scope\n\n var role = 'cell';\n var scope = null; // Compute role and scope\n // We only add scopes with an explicit span of 1 or greater\n\n if (headOrFoot) {\n // Header or footer cells\n role = 'columnheader';\n scope = colspan > 0 ? 'colspan' : 'col';\n } else if (isTag(this.tag, 'th')) {\n // th's in tbody\n role = 'rowheader';\n scope = rowspan > 0 ? 'rowgroup' : 'row';\n }\n\n return _objectSpread(_objectSpread({\n colspan: colspan,\n rowspan: rowspan,\n role: role,\n scope: scope\n }, this.bvAttrs), {}, {\n // Add in the stacked cell label data-attribute if in\n // stacked mode (if a stacked heading label is provided)\n 'data-label': this.isStackedCell && !isUndefinedOrNull(this.stackedHeading) ?\n /* istanbul ignore next */\n toString(this.stackedHeading) : null\n });\n }\n },\n render: function render(h) {\n var content = [this.normalizeSlot('default')];\n return h(this.tag, {\n class: this.cellClasses,\n attrs: this.cellAttrs,\n // Transfer any native listeners\n on: this.bvListeners\n }, [this.isStackedCell ? h('div', [content]) : content]);\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 '../../utils/vue';\nimport attrsMixin from '../../mixins/attrs';\nimport listenersMixin from '../../mixins/listeners';\nimport normalizeSlotMixin from '../../mixins/normalize-slot';\nexport var props = {\n headVariant: {\n // Also sniffed by / / \n type: String,\n // Supported values: 'lite', 'dark', or null\n default: null\n }\n}; // TODO:\n// In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n// to the child elements, so this can be converted to a functional component\n// @vue/component\n\nexport var BThead = /*#__PURE__*/Vue.extend({\n name: 'BThead',\n // Mixin order is important!\n mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n inheritAttrs: false,\n provide: function provide() {\n return {\n bvTableRowGroup: this\n };\n },\n inject: {\n bvTable: {\n // Sniffed by / / \n\n /* istanbul ignore next */\n default: function _default()\n /* istanbul ignore next */\n {\n return {};\n }\n }\n },\n props: props,\n computed: {\n isThead: function isThead() {\n // Sniffed by / / \n return true;\n },\n isDark: function isDark() {\n // Sniffed by / / \n return this.bvTable.dark;\n },\n isStacked: function isStacked() {\n // Sniffed by / / \n return this.bvTable.isStacked;\n },\n isResponsive: function isResponsive() {\n // Sniffed by / / \n return this.bvTable.isResponsive;\n },\n isStickyHeader: function isStickyHeader() {\n // Sniffed by / / \n // Needed to handle header background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n // Sticky headers only apply to cells in table `thead`\n return !this.isStacked && this.bvTable.stickyHeader;\n },\n hasStickyHeader: function hasStickyHeader() {\n // Sniffed by / / \n // Needed to handle header background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n return !this.isStacked && this.bvTable.stickyHeader;\n },\n tableVariant: function tableVariant() {\n // Sniffed by / / \n return this.bvTable.tableVariant;\n },\n theadClasses: function theadClasses() {\n return [this.headVariant ? \"thead-\".concat(this.headVariant) : null];\n },\n theadAttrs: function theadAttrs() {\n return _objectSpread({\n role: 'rowgroup'\n }, this.bvAttrs);\n }\n },\n render: function render(h) {\n return h('thead', {\n class: this.theadClasses,\n attrs: this.theadAttrs,\n // Pass down any native listeners\n on: this.bvListeners\n }, this.normalizeSlot('default'));\n }\n});","import Vue from '../../utils/vue';\nimport { getComponentConfig } from '../../utils/config';\nimport listenOnRootMixin from '../../mixins/listen-on-root';\nimport normalizeSlotMixin from '../../mixins/normalize-slot';\nimport { VBToggle, EVENT_STATE, EVENT_STATE_SYNC } from '../../directives/toggle/toggle'; // --- Constants ---\n\nvar NAME = 'BNavbarToggle';\nvar CLASS_NAME = 'navbar-toggler'; // --- Main component ---\n// @vue/component\n\nexport var BNavbarToggle = /*#__PURE__*/Vue.extend({\n name: NAME,\n directives: {\n BToggle: VBToggle\n },\n mixins: [listenOnRootMixin, normalizeSlotMixin],\n props: {\n label: {\n type: String,\n default: function _default() {\n return getComponentConfig(NAME, 'label');\n }\n },\n target: {\n type: String,\n required: true\n },\n disabled: {\n type: Boolean,\n default: false\n }\n },\n data: function data() {\n return {\n toggleState: false\n };\n },\n created: function created() {\n this.listenOnRoot(EVENT_STATE, this.handleStateEvt);\n this.listenOnRoot(EVENT_STATE_SYNC, this.handleStateEvt);\n },\n methods: {\n onClick: function onClick(evt) {\n if (!this.disabled) {\n // Emit courtesy `click` event\n this.$emit('click', evt);\n }\n },\n handleStateEvt: function handleStateEvt(id, state) {\n // We listen for state events so that we can pass the\n // boolean expanded state to the default scoped slot\n if (id === this.target) {\n this.toggleState = state;\n }\n }\n },\n render: function render(h) {\n var disabled = this.disabled;\n return h('button', {\n staticClass: CLASS_NAME,\n class: {\n disabled: disabled\n },\n directives: [{\n name: 'BToggle',\n value: this.target\n }],\n attrs: {\n type: 'button',\n disabled: disabled,\n 'aria-label': this.label\n },\n on: {\n click: this.onClick\n }\n }, [this.normalizeSlot('default', {\n expanded: this.toggleState\n }) || h('span', {\n staticClass: \"\".concat(CLASS_NAME, \"-icon\")\n })]);\n }\n});","import { BOverlay } from './overlay';\nimport { pluginFactory } from '../../utils/plugins';\nvar OverlayPlugin = /*#__PURE__*/pluginFactory({\n components: {\n BOverlay: BOverlay\n }\n});\nexport { OverlayPlugin, BOverlay };","import Vue from '../../utils/vue'; // Mixins\n\nimport idMixin from '../../mixins/id';\nimport normalizeSlotMixin from '../../mixins/normalize-slot'; // Main table renderer mixin\n\nimport tableRendererMixin from './helpers/mixin-table-renderer'; // Feature miins\n\nimport stackedMixin from './helpers/mixin-stacked'; // b-table-simple component definition\n// @vue/component\n\nexport var BTableSimple = /*#__PURE__*/Vue.extend({\n name: 'BTableSimple',\n // Order of mixins is important!\n // They are merged from first to last, followed by this component.\n mixins: [// Required mixins\n idMixin, normalizeSlotMixin, tableRendererMixin, // feature mixin\n // Stacked requires extra handling by users via\n // the table cell `stacked-heading` prop\n stackedMixin],\n computed: {\n isTableSimple: function isTableSimple() {\n return true;\n }\n } // render function provided by table-renderer mixin\n\n});","import { BTable } from './table';\nimport { BTableLite } from './table-lite';\nimport { BTableSimple } from './table-simple';\nimport { BTbody } from './tbody';\nimport { BThead } from './thead';\nimport { BTfoot } from './tfoot';\nimport { BTr } from './tr';\nimport { BTd } from './td';\nimport { BTh } from './th';\nimport { pluginFactory } from '../../utils/plugins';\nvar TableLitePlugin = /*#__PURE__*/pluginFactory({\n components: {\n BTableLite: BTableLite\n }\n});\nvar TableSimplePlugin = /*#__PURE__*/pluginFactory({\n components: {\n BTableSimple: BTableSimple,\n BTbody: BTbody,\n BThead: BThead,\n BTfoot: BTfoot,\n BTr: BTr,\n BTd: BTd,\n BTh: BTh\n }\n});\nvar TablePlugin = /*#__PURE__*/pluginFactory({\n components: {\n BTable: BTable\n },\n plugins: {\n TableLitePlugin: TableLitePlugin,\n TableSimplePlugin: TableSimplePlugin\n }\n});\nexport { // Plugins\nTablePlugin, TableLitePlugin, TableSimplePlugin // Table components\n, BTable, BTableLite, BTableSimple // Helper components\n, BTbody, BThead, BTfoot, BTr, BTd, BTh };","import Vue from '../../../utils/vue';\nimport { isFunction, isUndefinedOrNull } from '../../../utils/inspect';\nimport { BVTooltipTemplate } from '../../tooltip/helpers/bv-tooltip-template';\nvar NAME = 'BVPopoverTemplate'; // @vue/component\n\nexport var BVPopoverTemplate = /*#__PURE__*/Vue.extend({\n name: NAME,\n extends: BVTooltipTemplate,\n computed: {\n templateType: function templateType() {\n return 'popover';\n }\n },\n methods: {\n renderTemplate: function renderTemplate(h) {\n // Title and content could be a scoped slot function\n var $title = isFunction(this.title) ? this.title({}) : this.title;\n var $content = isFunction(this.content) ? this.content({}) : this.content; // Directive usage only\n\n var titleDomProps = this.html && !isFunction(this.title) ? {\n innerHTML: this.title\n } : {};\n var contentDomProps = this.html && !isFunction(this.content) ? {\n innerHTML: this.content\n } : {};\n return h('div', {\n staticClass: 'popover b-popover',\n class: this.templateClasses,\n attrs: this.templateAttributes,\n on: this.templateListeners\n }, [h('div', {\n ref: 'arrow',\n staticClass: 'arrow'\n }), isUndefinedOrNull($title) || $title === '' ?\n /* istanbul ignore next */\n h() : h('h3', {\n staticClass: 'popover-header',\n domProps: titleDomProps\n }, [$title]), isUndefinedOrNull($content) || $content === '' ?\n /* istanbul ignore next */\n h() : h('div', {\n staticClass: 'popover-body',\n domProps: contentDomProps\n }, [$content])]);\n }\n }\n});","// Popover \"Class\" (Built as a renderless Vue instance)\n// Inherits from BVTooltip\n//\n// Handles trigger events, etc.\n// Instantiates template on demand\nimport Vue from '../../../utils/vue';\nimport { BVTooltip } from '../../tooltip/helpers/bv-tooltip';\nimport { BVPopoverTemplate } from './bv-popover-template';\nvar NAME = 'BVPopover'; // @vue/component\n\nexport var BVPopover = /*#__PURE__*/Vue.extend({\n name: NAME,\n extends: BVTooltip,\n computed: {\n // Overwrites BVTooltip\n templateType: function templateType() {\n return 'popover';\n }\n },\n methods: {\n getTemplate: function getTemplate() {\n // Overwrites BVTooltip\n return BVPopoverTemplate;\n }\n }\n});","import Vue from '../../utils/vue';\nimport { getComponentConfig } from '../../utils/config';\nimport { attemptFocus, isVisible } from '../../utils/dom';\nimport { isUndefinedOrNull } from '../../utils/inspect';\nimport { mathCeil, mathMax } from '../../utils/math';\nimport { toInteger } from '../../utils/number';\nimport paginationMixin from '../../mixins/pagination'; // --- Constants ---\n\nvar NAME = 'BPagination';\nvar DEFAULT_PER_PAGE = 20;\nvar DEFAULT_TOTAL_ROWS = 0;\nvar props = {\n size: {\n type: String,\n default: function _default() {\n return getComponentConfig(NAME, 'size');\n }\n },\n perPage: {\n type: [Number, String],\n default: DEFAULT_PER_PAGE\n },\n totalRows: {\n type: [Number, String],\n default: DEFAULT_TOTAL_ROWS\n },\n ariaControls: {\n type: String // default: null\n\n }\n}; // --- Helper functions ---\n// Sanitize the provided per page number (converting to a number)\n\nvar sanitizePerPage = function sanitizePerPage(val) {\n return mathMax(toInteger(val) || DEFAULT_PER_PAGE, 1);\n}; // Sanitize the provided total rows number (converting to a number)\n\n\nvar sanitizeTotalRows = function sanitizeTotalRows(val) {\n return mathMax(toInteger(val) || DEFAULT_TOTAL_ROWS, 0);\n}; // The render function is brought in via the `paginationMixin`\n// @vue/component\n\n\nexport var BPagination = /*#__PURE__*/Vue.extend({\n name: NAME,\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 pageSizeNumberOfPages: function pageSizeNumberOfPages() {\n // Used for watching changes to `perPage` and `numberOfPages`\n return {\n perPage: sanitizePerPage(this.perPage),\n totalRows: sanitizeTotalRows(this.totalRows),\n numberOfPages: this.numberOfPages\n };\n }\n },\n watch: {\n pageSizeNumberOfPages: function pageSizeNumberOfPages(newVal, oldVal) {\n if (!isUndefinedOrNull(oldVal)) {\n if (newVal.perPage !== oldVal.perPage && newVal.totalRows === oldVal.totalRows) {\n // If the page size changes, reset to page 1\n this.currentPage = 1;\n } else if (newVal.numberOfPages !== oldVal.numberOfPages && this.currentPage > newVal.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 = newVal.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.value, 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 mounted: function mounted() {\n // Set the initial page count\n this.localNumberOfPages = this.numberOfPages;\n },\n methods: {\n // These methods are used by the render function\n onClick: function onClick(num, evt) {\n var _this2 = this;\n\n // Handle edge cases where number of pages has changed (i.e. if perPage changes)\n // This should normally not happen, but just in case.\n if (num > this.numberOfPages) {\n /* istanbul ignore next */\n num = this.numberOfPages;\n } else if (num < 1) {\n /* istanbul ignore next */\n num = 1;\n } // Update the v-model\n\n\n this.currentPage = num; // Emit event triggered by user interaction\n\n this.$emit('change', this.currentPage);\n this.$nextTick(function () {\n // Keep the current button focused if possible\n var target = evt.target;\n\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\n /* istanbul ignore next */\n return {};\n }\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport Vue from '../../utils/vue';\nimport attrsMixin from '../../mixins/attrs';\nimport listenersMixin from '../../mixins/listeners';\nimport normalizeSlotMixin from '../../mixins/normalize-slot';\nexport var props = {\n footVariant: {\n type: String,\n // Supported values: 'lite', 'dark', or null\n default: null\n }\n}; // TODO:\n// In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n// to the child elements, so this can be converted to a functional component\n// @vue/component\n\nexport var BTfoot = /*#__PURE__*/Vue.extend({\n name: 'BTfoot',\n // Mixin order is important!\n mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n inheritAttrs: false,\n provide: function provide() {\n return {\n bvTableRowGroup: this\n };\n },\n inject: {\n bvTable: {\n // Sniffed by / / \n\n /* istanbul ignore next */\n default: function _default()\n /* istanbul ignore next */\n {\n return {};\n }\n }\n },\n props: props,\n computed: {\n isTfoot: function isTfoot() {\n // Sniffed by / / \n return true;\n },\n isDark: function isDark() {\n // Sniffed by / / \n return this.bvTable.dark;\n },\n isStacked: function isStacked() {\n // Sniffed by / / \n return this.bvTable.isStacked;\n },\n isResponsive: function isResponsive() {\n // Sniffed by / / \n return this.bvTable.isResponsive;\n },\n isStickyHeader: function isStickyHeader() {\n // Sniffed by / / \n // Sticky headers are only supported in thead\n return false;\n },\n hasStickyHeader: function hasStickyHeader() {\n // Sniffed by / / \n // Needed to handle header background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n return !this.isStacked && this.bvTable.stickyHeader;\n },\n tableVariant: function tableVariant() {\n // Sniffed by / / \n return this.bvTable.tableVariant;\n },\n tfootClasses: function tfootClasses() {\n return [this.footVariant ? \"thead-\".concat(this.footVariant) : null];\n },\n tfootAttrs: function tfootAttrs() {\n return _objectSpread({\n role: 'rowgroup'\n }, this.bvAttrs);\n }\n },\n render: function render(h) {\n return h('tfoot', {\n class: this.tfootClasses,\n attrs: this.tfootAttrs,\n // Pass down any native listeners\n on: this.bvListeners\n }, this.normalizeSlot('default'));\n }\n});","import { keys } from '../../../utils/object';\nimport { arrayIncludes } from '../../../utils/array';\nimport { isFunction } from '../../../utils/inspect';\nimport { IGNORED_FIELD_KEYS } from './constants'; // Return a copy of a row after all reserved fields have been filtered out\n\nvar sanitizeRow = function sanitizeRow(row, ignoreFields, includeFields) {\n var fieldsObj = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n return keys(row).reduce(function (obj, key) {\n // Ignore special fields that start with `_`\n // Ignore fields in the `ignoreFields` array\n // Include only fields in the `includeFields` array\n if (!IGNORED_FIELD_KEYS[key] && !(ignoreFields && ignoreFields.length > 0 && arrayIncludes(ignoreFields, key)) && !(includeFields && includeFields.length > 0 && !arrayIncludes(includeFields, key))) {\n var f = fieldsObj[key] || {};\n var val = row[key]; // `f.filterByFormatted` will either be a function or boolean\n // `f.formater` will have already been noramlized into a function ref\n\n var filterByFormatted = f.filterByFormatted;\n var formatter = isFunction(filterByFormatted) ?\n /* istanbul ignore next */\n filterByFormatted : filterByFormatted ?\n /* istanbul ignore next */\n f.formatter : null;\n obj[key] = isFunction(formatter) ? formatter(val, key, row) : val;\n }\n\n return obj;\n }, {});\n};\n\nexport default sanitizeRow;","import { keys } from '../../../utils/object';\nimport { isDate, isObject, isUndefinedOrNull } from '../../../utils/inspect';\nimport { toString } from '../../../utils/string'; // Recursively stringifies the values of an object, space separated, in an\n// SSR safe deterministic way (keys are sorted before stringification)\n//\n// ex:\n// { b: 3, c: { z: 'zzz', d: null, e: 2 }, d: [10, 12, 11], a: 'one' }\n// becomes\n// 'one 3 2 zzz 10 12 11'\n//\n// Primitives (numbers/strings) are returned as-is\n// Null and undefined values are filtered out\n// Dates are converted to their native string format\n\nvar stringifyObjectValues = function stringifyObjectValues(val) {\n if (isUndefinedOrNull(val)) {\n /* istanbul ignore next */\n return '';\n } // Arrays are also object, and keys just returns the array indexes\n // Date objects we convert to strings\n\n\n if (isObject(val) && !isDate(val)) {\n return keys(val).sort() // Sort to prevent SSR issues on pre-rendered sorted tables\n .filter(function (v) {\n return !isUndefinedOrNull(v);\n }) // Ignore undefined/null values\n .map(function (k) {\n return stringifyObjectValues(val[k]);\n }).join(' ');\n }\n\n return toString(val);\n};\n\nexport default stringifyObjectValues;","import { isObject } from '../../../utils/inspect';\nimport sanitizeRow from './sanitize-row';\nimport stringifyObjectValues from './stringify-object-values'; // Stringifies the values of a record, ignoring any special top level field keys\n// TODO: Add option to stringify `scopedSlot` items\n\nvar stringifyRecordValues = function stringifyRecordValues(row, ignoreFields, includeFields, fieldsObj) {\n return isObject(row) ? stringifyObjectValues(sanitizeRow(row, ignoreFields, includeFields, fieldsObj)) :\n /* istanbul ignore next */\n '';\n};\n\nexport default stringifyRecordValues;","import cloneDeep from '../../../utils/clone-deep';\nimport identity from '../../../utils/identity';\nimport looseEqual from '../../../utils/loose-equal';\nimport { concat } from '../../../utils/array';\nimport { isFunction, isString, isRegExp } from '../../../utils/inspect';\nimport { toInteger } from '../../../utils/number';\nimport { escapeRegExp } from '../../../utils/string';\nimport { warn } from '../../../utils/warn';\nimport stringifyRecordValues from './stringify-record-values';\nvar DEBOUNCE_DEPRECATED_MSG = 'Prop \"filter-debounce\" is deprecated. Use the debounce feature of \"\" instead.';\nvar RX_SPACES = /[\\s\\uFEFF\\xA0]+/g;\nexport default {\n props: {\n filter: {\n type: [String, RegExp, Object, Array],\n default: null\n },\n filterFunction: {\n type: Function // default: null\n\n },\n filterIgnoredFields: {\n type: Array // default: undefined\n\n },\n filterIncludedFields: {\n type: Array // default: undefined\n\n },\n filterDebounce: {\n type: [Number, String],\n deprecated: DEBOUNCE_DEPRECATED_MSG,\n default: 0,\n validator: function validator(val) {\n return /^\\d+/.test(String(val));\n }\n }\n },\n data: function data() {\n return {\n // Flag for displaying which empty slot to show and some event triggering\n isFiltered: false,\n // Where we store the copy of the filter criteria after debouncing\n // We pre-set it with the sanitized filter value\n localFilter: this.filterSanitize(this.filter)\n };\n },\n computed: {\n computedFilterIgnored: function computedFilterIgnored() {\n return this.filterIgnoredFields ? concat(this.filterIgnoredFields).filter(identity) : null;\n },\n computedFilterIncluded: function computedFilterIncluded() {\n return this.filterIncludedFields ? concat(this.filterIncludedFields).filter(identity) : null;\n },\n computedFilterDebounce: function computedFilterDebounce() {\n var ms = toInteger(this.filterDebounce, 0);\n /* istanbul ignore next */\n\n if (ms > 0) {\n warn(DEBOUNCE_DEPRECATED_MSG, 'BTable');\n }\n\n return ms;\n },\n localFiltering: function localFiltering() {\n return this.hasProvider ? !!this.noProviderFiltering : true;\n },\n // For watching changes to `filteredItems` vs `localItems`\n filteredCheck: function filteredCheck() {\n return {\n filteredItems: this.filteredItems,\n localItems: this.localItems,\n localFilter: this.localFilter\n };\n },\n // Sanitized/normalize filter-function prop\n localFilterFn: function localFilterFn() {\n // Return `null` to signal to use internal filter function\n return isFunction(this.filterFunction) ? this.filterFunction : null;\n },\n // Returns the records in `localItems` that match the filter criteria\n // Returns the original `localItems` array if not sorting\n filteredItems: function filteredItems() {\n var items = this.localItems || []; // Note the criteria is debounced and sanitized\n\n var criteria = this.localFilter; // Resolve the filtering function, when requested\n // We prefer the provided filtering function and fallback to the internal one\n // When no filtering criteria is specified the filtering factories will return `null`\n\n var filterFn = this.localFiltering ? this.filterFnFactory(this.localFilterFn, criteria) || this.defaultFilterFnFactory(criteria) : null; // We only do local filtering when requested and there are records to filter\n\n return filterFn && items.length > 0 ? items.filter(filterFn) : items;\n }\n },\n watch: {\n // Watch for debounce being set to 0\n computedFilterDebounce: function computedFilterDebounce(newVal) {\n if (!newVal && this.$_filterTimer) {\n this.clearFilterTimer();\n this.localFilter = this.filterSanitize(this.filter);\n }\n },\n // Watch for changes to the filter criteria, and debounce if necessary\n filter: {\n // We need a deep watcher in case the user passes\n // an object when using `filter-function`\n deep: true,\n handler: function handler(newCriteria) {\n var _this = this;\n\n var timeout = this.computedFilterDebounce;\n this.clearFilterTimer();\n\n if (timeout && timeout > 0) {\n // If we have a debounce time, delay the update of `localFilter`\n this.$_filterTimer = setTimeout(function () {\n _this.localFilter = _this.filterSanitize(newCriteria);\n }, timeout);\n } else {\n // Otherwise, immediately update `localFilter` with `newFilter` value\n this.localFilter = this.filterSanitize(newCriteria);\n }\n }\n },\n // Watch for changes to the filter criteria and filtered items vs `localItems`\n // Set visual state and emit events as required\n filteredCheck: function filteredCheck(_ref) {\n var filteredItems = _ref.filteredItems,\n localFilter = _ref.localFilter;\n // Determine if the dataset is filtered or not\n var isFiltered = false;\n\n if (!localFilter) {\n // If filter criteria is falsey\n isFiltered = false;\n } else if (looseEqual(localFilter, []) || looseEqual(localFilter, {})) {\n // If filter criteria is an empty array or object\n isFiltered = false;\n } else if (localFilter) {\n // If filter criteria is truthy\n isFiltered = true;\n }\n\n if (isFiltered) {\n this.$emit('filtered', filteredItems, filteredItems.length);\n }\n\n this.isFiltered = isFiltered;\n },\n isFiltered: function isFiltered(newVal, oldVal) {\n if (newVal === false && oldVal === true) {\n // We need to emit a filtered event if isFiltered transitions from true to\n // false so that users can update their pagination controls.\n this.$emit('filtered', this.localItems, this.localItems.length);\n }\n }\n },\n created: function created() {\n var _this2 = this;\n\n // Create private non-reactive props\n this.$_filterTimer = null; // If filter is \"pre-set\", set the criteria\n // This will trigger any watchers/dependents\n // this.localFilter = this.filterSanitize(this.filter)\n // Set the initial filtered state in a `$nextTick()` so that\n // we trigger a filtered event if needed\n\n this.$nextTick(function () {\n _this2.isFiltered = Boolean(_this2.localFilter);\n });\n },\n beforeDestroy: function beforeDestroy()\n /* istanbul ignore next */\n {\n this.clearFilterTimer();\n },\n methods: {\n clearFilterTimer: function clearFilterTimer() {\n clearTimeout(this.$_filterTimer);\n this.$_filterTimer = null;\n },\n filterSanitize: function filterSanitize(criteria) {\n // Sanitizes filter criteria based on internal or external filtering\n if (this.localFiltering && !this.localFilterFn && !(isString(criteria) || isRegExp(criteria))) {\n // If using internal filter function, which only accepts string or RegExp,\n // return '' to signify no filter\n return '';\n } // Could be a string, object or array, as needed by external filter function\n // We use `cloneDeep` to ensure we have a new copy of an object or array\n // without Vue's reactive observers\n\n\n return cloneDeep(criteria);\n },\n // Filter Function factories\n filterFnFactory: function filterFnFactory(filterFn, criteria) {\n // Wrapper factory for external filter functions\n // Wrap the provided filter-function and return a new function\n // Returns `null` if no filter-function defined or if criteria is falsey\n // Rather than directly grabbing `this.computedLocalFilterFn` or `this.filterFunction`\n // we have it passed, so that the caller computed prop will be reactive to changes\n // in the original filter-function (as this routine is a method)\n if (!filterFn || !isFunction(filterFn) || !criteria || looseEqual(criteria, []) || looseEqual(criteria, {})) {\n return null;\n } // Build the wrapped filter test function, passing the criteria to the provided function\n\n\n var fn = function fn(item) {\n // Generated function returns true if the criteria matches part\n // of the serialized data, otherwise false\n return filterFn(item, criteria);\n }; // Return the wrapped function\n\n\n return fn;\n },\n defaultFilterFnFactory: function defaultFilterFnFactory(criteria) {\n var _this3 = this;\n\n // Generates the default filter function, using the given filter criteria\n // Returns `null` if no criteria or criteria format not supported\n if (!criteria || !(isString(criteria) || isRegExp(criteria))) {\n // Built in filter can only support strings or RegExp criteria (at the moment)\n return null;\n } // Build the RegExp needed for filtering\n\n\n var regExp = criteria;\n\n if (isString(regExp)) {\n // Escape special RegExp characters in the string and convert contiguous\n // whitespace to \\s+ matches\n var pattern = escapeRegExp(criteria).replace(RX_SPACES, '\\\\s+'); // Build the RegExp (no need for global flag, as we only need\n // to find the value once in the string)\n\n regExp = new RegExp(\".*\".concat(pattern, \".*\"), 'i');\n } // Generate the wrapped filter test function to use\n\n\n var fn = function fn(item) {\n // This searches all row values (and sub property values) in the entire (excluding\n // special `_` prefixed keys), because we convert the record to a space-separated\n // string containing all the value properties (recursively), even ones that are\n // not visible (not specified in this.fields)\n // Users can ignore filtering on specific fields, or on only certain fields,\n // and can optionall specify searching results of fields with formatter\n //\n // TODO: Enable searching on scoped slots (optional, as it will be SLOW)\n //\n // Generated function returns true if the criteria matches part of\n // the serialized data, otherwise false\n //\n // We set `lastIndex = 0` on the `RegExp` in case someone specifies the `/g` global flag\n regExp.lastIndex = 0;\n return regExp.test(stringifyRecordValues(item, _this3.computedFilterIgnored, _this3.computedFilterIncluded, _this3.computedFieldsObj));\n }; // Return the generated function\n\n\n return fn;\n }\n }\n};","import get from '../../../utils/get';\nimport { isDate, isFunction, isNumber, isUndefinedOrNull } from '../../../utils/inspect';\nimport stringifyObjectValues from './stringify-object-values'; // Default sort compare routine\n//\n// TODO: Add option to sort by multiple columns (tri-state per column,\n// plus order of columns in sort) where sortBy could be an array\n// of objects `[ {key: 'foo', sortDir: 'asc'}, {key:'bar', sortDir: 'desc'} ...]`\n// or an array of arrays `[ ['foo','asc'], ['bar','desc'] ]`\n// Multisort will most likely be handled in mixin-sort.js by\n// calling this method for each sortBy\n\nvar defaultSortCompare = function defaultSortCompare(a, b, sortBy, sortDesc, formatter, localeOpts, locale, nullLast) {\n var aa = get(a, sortBy, null);\n var bb = get(b, sortBy, null);\n\n if (isFunction(formatter)) {\n aa = formatter(aa, sortBy, a);\n bb = formatter(bb, sortBy, b);\n }\n\n aa = isUndefinedOrNull(aa) ? '' : aa;\n bb = isUndefinedOrNull(bb) ? '' : bb;\n\n if (isDate(aa) && isDate(bb) || isNumber(aa) && isNumber(bb)) {\n // Special case for comparing dates and numbers\n // Internally dates are compared via their epoch number values\n return aa < bb ? -1 : aa > bb ? 1 : 0;\n } else if (nullLast && aa === '' && bb !== '') {\n // Special case when sorting null/undefined/empty string last\n return 1;\n } else if (nullLast && aa !== '' && bb === '') {\n // Special case when sorting null/undefined/empty string last\n return -1;\n } // Do localized string comparison\n\n\n return stringifyObjectValues(aa).localeCompare(stringifyObjectValues(bb), locale, localeOpts);\n};\n\nexport default defaultSortCompare;","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 stableSort from '../../../utils/stable-sort';\nimport { arrayIncludes } from '../../../utils/array';\nimport { isFunction, isUndefinedOrNull } from '../../../utils/inspect';\nimport { trim } from '../../../utils/string';\nimport defaultSortCompare from './default-sort-compare';\nexport default {\n props: {\n sortBy: {\n type: String,\n default: ''\n },\n sortDesc: {\n // TODO: Make this tri-state: true, false, null\n type: Boolean,\n default: false\n },\n sortDirection: {\n // This prop is named incorrectly\n // It should be `initialSortDirection` as it is a bit misleading\n // (not to mention it screws up the ARIA label on the headers)\n type: String,\n default: 'asc',\n validator: function validator(direction) {\n return arrayIncludes(['asc', 'desc', 'last'], direction);\n }\n },\n sortCompare: {\n type: Function // default: null\n\n },\n sortCompareOptions: {\n // Supported localCompare options, see `options` section of:\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/localeCompare\n type: Object,\n default: function _default() {\n return {\n numeric: true\n };\n }\n },\n sortCompareLocale: {\n // String: locale code\n // Array: array of Locale strings\n type: [String, Array] // default: undefined\n\n },\n sortNullLast: {\n // Sort null and undefined to appear last\n type: Boolean,\n default: false\n },\n noSortReset: {\n // Another prop that should have had a better name.\n // It should be noSortClear (on non-sortable headers).\n // We will need to make sure the documentation is clear on what\n // this prop does (as well as in the code for future reference)\n type: Boolean,\n default: false\n },\n labelSortAsc: {\n type: String,\n default: 'Click to sort Ascending'\n },\n labelSortDesc: {\n type: String,\n default: 'Click to sort Descending'\n },\n labelSortClear: {\n type: String,\n default: 'Click to clear sorting'\n },\n noLocalSorting: {\n type: Boolean,\n default: false\n },\n noFooterSorting: {\n type: Boolean,\n default: false\n },\n sortIconLeft: {\n // Place the sorting icon on the left of the header cells\n type: Boolean,\n default: false\n }\n },\n data: function data() {\n return {\n localSortBy: this.sortBy || '',\n localSortDesc: this.sortDesc || false\n };\n },\n computed: {\n localSorting: function localSorting() {\n return this.hasProvider ? !!this.noProviderSorting : !this.noLocalSorting;\n },\n isSortable: function isSortable() {\n return this.computedFields.some(function (f) {\n return f.sortable;\n });\n },\n sortedItems: function sortedItems() {\n // Sorts the filtered items and returns a new array of the sorted items\n // or the original items array if not sorted.\n var items = (this.filteredItems || this.localItems || []).slice();\n var sortBy = this.localSortBy;\n var sortDesc = this.localSortDesc;\n var sortCompare = this.sortCompare;\n var localSorting = this.localSorting;\n\n var sortOptions = _objectSpread(_objectSpread({}, this.sortCompareOptions), {}, {\n usage: 'sort'\n });\n\n var sortLocale = this.sortCompareLocale || undefined;\n var nullLast = this.sortNullLast;\n\n if (sortBy && localSorting) {\n var field = this.computedFieldsObj[sortBy] || {};\n var sortByFormatted = field.sortByFormatted;\n var formatter = isFunction(sortByFormatted) ?\n /* istanbul ignore next */\n sortByFormatted : sortByFormatted ? this.getFieldFormatter(sortBy) : undefined; // `stableSort` returns a new array, and leaves the original array intact\n\n return stableSort(items, function (a, b) {\n var result = null;\n\n if (isFunction(sortCompare)) {\n // Call user provided sortCompare routine\n result = sortCompare(a, b, sortBy, sortDesc, formatter, sortOptions, sortLocale);\n }\n\n if (isUndefinedOrNull(result) || result === false) {\n // Fallback to built-in defaultSortCompare if sortCompare\n // is not defined or returns null/false\n result = defaultSortCompare(a, b, sortBy, sortDesc, formatter, sortOptions, sortLocale, nullLast);\n } // Negate result if sorting in descending order\n\n\n return (result || 0) * (sortDesc ? -1 : 1);\n });\n }\n\n return items;\n }\n },\n watch: {\n /* istanbul ignore next: pain in the butt to test */\n isSortable: function isSortable(newVal)\n /* istanbul ignore next: pain in the butt to test */\n {\n if (newVal) {\n if (this.isSortable) {\n this.$on('head-clicked', this.handleSort);\n }\n } else {\n this.$off('head-clicked', this.handleSort);\n }\n },\n sortDesc: function sortDesc(newVal) {\n if (newVal === this.localSortDesc) {\n /* istanbul ignore next */\n return;\n }\n\n this.localSortDesc = newVal || false;\n },\n sortBy: function sortBy(newVal) {\n if (newVal === this.localSortBy) {\n /* istanbul ignore next */\n return;\n }\n\n this.localSortBy = newVal || '';\n },\n // Update .sync props\n localSortDesc: function localSortDesc(newVal, oldVal) {\n // Emit update to sort-desc.sync\n if (newVal !== oldVal) {\n this.$emit('update:sortDesc', newVal);\n }\n },\n localSortBy: function localSortBy(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.$emit('update:sortBy', newVal);\n }\n }\n },\n created: function created() {\n if (this.isSortable) {\n this.$on('head-clicked', this.handleSort);\n }\n },\n methods: {\n // Handlers\n // Need to move from thead-mixin\n handleSort: function handleSort(key, field, evt, isFoot) {\n var _this = this;\n\n if (!this.isSortable) {\n /* istanbul ignore next */\n return;\n }\n\n if (isFoot && this.noFooterSorting) {\n return;\n } // TODO: make this tri-state sorting\n // cycle desc => asc => none => desc => ...\n\n\n var sortChanged = false;\n\n var toggleLocalSortDesc = function toggleLocalSortDesc() {\n var sortDirection = field.sortDirection || _this.sortDirection;\n\n if (sortDirection === 'asc') {\n _this.localSortDesc = false;\n } else if (sortDirection === 'desc') {\n _this.localSortDesc = true;\n } else {// sortDirection === 'last'\n // Leave at last sort direction from previous column\n }\n };\n\n if (field.sortable) {\n if (key === this.localSortBy) {\n // Change sorting direction on current column\n this.localSortDesc = !this.localSortDesc;\n } else {\n // Start sorting this column ascending\n this.localSortBy = key; // this.localSortDesc = false\n\n toggleLocalSortDesc();\n }\n\n sortChanged = true;\n } else if (this.localSortBy && !this.noSortReset) {\n this.localSortBy = '';\n toggleLocalSortDesc();\n sortChanged = true;\n }\n\n if (sortChanged) {\n // Sorting parameters changed\n this.$emit('sort-changed', this.context);\n }\n },\n // methods to compute classes and attrs for thead>th cells\n sortTheadThClasses: function sortTheadThClasses(key, field, isFoot) {\n return {\n // If sortable and sortIconLeft are true, then place sort icon on the left\n 'b-table-sort-icon-left': field.sortable && this.sortIconLeft && !(isFoot && this.noFooterSorting)\n };\n },\n sortTheadThAttrs: function sortTheadThAttrs(key, field, isFoot) {\n if (!this.isSortable || isFoot && this.noFooterSorting) {\n // No attributes if not a sortable table\n return {};\n }\n\n var sortable = field.sortable; // Assemble the aria-sort attribute value\n\n var ariaSort = sortable && this.localSortBy === key ? this.localSortDesc ? 'descending' : 'ascending' : sortable ? 'none' : null; // Return the attribute\n\n return {\n 'aria-sort': ariaSort\n };\n },\n sortTheadThLabel: function sortTheadThLabel(key, field, isFoot) {\n // A label to be placed in an `.sr-only` element in the header cell\n if (!this.isSortable || isFoot && this.noFooterSorting) {\n // No label if not a sortable table\n return null;\n }\n\n var sortable = field.sortable; // The correctness of these labels is very important for screen-reader users.\n\n var labelSorting = '';\n\n if (sortable) {\n if (this.localSortBy === key) {\n // currently sorted sortable column.\n labelSorting = this.localSortDesc ? this.labelSortAsc : this.labelSortDesc;\n } else {\n // Not currently sorted sortable column.\n // Not using nested ternary's here for clarity/readability\n // Default for ariaLabel\n labelSorting = this.localSortDesc ? this.labelSortDesc : this.labelSortAsc; // Handle sortDirection setting\n\n var sortDirection = this.sortDirection || field.sortDirection;\n\n if (sortDirection === 'asc') {\n labelSorting = this.labelSortAsc;\n } else if (sortDirection === 'desc') {\n labelSorting = this.labelSortDesc;\n }\n }\n } else if (!this.noSortReset) {\n // Non sortable column\n labelSorting = this.localSortBy ? this.labelSortClear : '';\n } // Return the sr-only sort label or null if no label\n\n\n return trim(labelSorting) || null;\n }\n }\n};","import { mathMax } from '../../../utils/math';\nimport { toInteger } from '../../../utils/number';\nexport default {\n props: {\n perPage: {\n type: [Number, String],\n default: 0\n },\n currentPage: {\n type: [Number, String],\n default: 1\n }\n },\n computed: {\n localPaging: function localPaging() {\n return this.hasProvider ? !!this.noProviderPaging : true;\n },\n paginatedItems: function paginatedItems() {\n var items = this.sortedItems || this.filteredItems || this.localItems || [];\n var currentPage = mathMax(toInteger(this.currentPage, 1), 1);\n var perPage = mathMax(toInteger(this.perPage, 0), 0); // Apply local pagination\n\n if (this.localPaging && !!perPage) {\n // Grab the current page of data (which may be past filtered items limit)\n items = items.slice((currentPage - 1) * perPage, currentPage * perPage);\n } // Return the items to display in the table\n\n\n return items;\n }\n }\n};","import { htmlOrText } from '../../../utils/html';\nimport { isFunction } from '../../../utils/inspect';\nimport { BTr } from '../tr';\nimport { BTd } from '../td';\nexport default {\n props: {\n showEmpty: {\n type: Boolean,\n default: false\n },\n emptyText: {\n type: String,\n default: 'There are no records to show'\n },\n emptyHtml: {\n type: String\n },\n emptyFilteredText: {\n type: String,\n default: 'There are no records matching your request'\n },\n emptyFilteredHtml: {\n type: String\n }\n },\n methods: {\n renderEmpty: function renderEmpty() {\n var h = this.$createElement;\n var items = this.computedItems;\n var $empty = h();\n\n if (this.showEmpty && (!items || items.length === 0) && !(this.computedBusy && this.hasNormalizedSlot('table-busy'))) {\n var isFiltered = this.isFiltered,\n emptyText = this.emptyText,\n emptyHtml = this.emptyHtml,\n emptyFilteredText = this.emptyFilteredText,\n emptyFilteredHtml = this.emptyFilteredHtml,\n computedFields = this.computedFields,\n tbodyTrClass = this.tbodyTrClass,\n tbodyTrAttr = this.tbodyTrAttr;\n $empty = this.normalizeSlot(this.isFiltered ? 'emptyfiltered' : 'empty', {\n emptyFilteredHtml: emptyFilteredHtml,\n emptyFilteredText: emptyFilteredText,\n emptyHtml: emptyHtml,\n emptyText: emptyText,\n fields: computedFields,\n // Not sure why this is included, as it will always be an empty array\n items: this.computedItems\n });\n\n if (!$empty) {\n $empty = h('div', {\n class: ['text-center', 'my-2'],\n domProps: isFiltered ? htmlOrText(emptyFilteredHtml, emptyFilteredText) : htmlOrText(emptyHtml, emptyText)\n });\n }\n\n $empty = h(BTd, {\n props: {\n colspan: computedFields.length || null\n }\n }, [h('div', {\n attrs: {\n role: 'alert',\n 'aria-live': 'polite'\n }\n }, [$empty])]);\n $empty = h(BTr, {\n staticClass: 'b-table-empty-row',\n class: [isFunction(tbodyTrClass) ?\n /* istanbul ignore next */\n this.tbodyTrClass(null, 'row-empty') : tbodyTrClass],\n attrs: isFunction(tbodyTrAttr) ?\n /* istanbul ignore next */\n this.tbodyTrAttr(null, 'row-empty') : tbodyTrAttr,\n key: isFiltered ? 'b-empty-filtered-row' : 'b-empty-row'\n }, [$empty]);\n }\n\n return $empty;\n }\n }\n};","import { isFunction } from '../../../utils/inspect';\nimport { BTr } from '../tr';\nvar slotName = 'top-row';\nexport default {\n methods: {\n renderTopRow: function renderTopRow() {\n var h = this.$createElement; // Add static Top Row slot (hidden in visibly stacked mode as we can't control the data-label)\n // If in *always* stacked mode, we don't bother rendering the row\n\n if (!this.hasNormalizedSlot(slotName) || this.stacked === true || this.stacked === '') {\n return h();\n }\n\n var fields = this.computedFields;\n return h(BTr, {\n key: 'b-top-row',\n staticClass: 'b-table-top-row',\n class: [isFunction(this.tbodyTrClass) ? this.tbodyTrClass(null, 'row-top') : this.tbodyTrClass],\n attrs: isFunction(this.tbodyTrAttr) ? this.tbodyTrAttr(null, 'row-top') : this.tbodyTrAttr\n }, [this.normalizeSlot(slotName, {\n columns: fields.length,\n fields: fields\n })]);\n }\n }\n};","import { isFunction } from '../../../utils/inspect';\nimport { BTr } from '../tr';\nvar slotName = 'bottom-row';\nexport default {\n methods: {\n renderBottomRow: function renderBottomRow() {\n var h = this.$createElement; // Static bottom row slot (hidden in visibly stacked mode as we can't control the data-label)\n // If in *always* stacked mode, we don't bother rendering the row\n\n if (!this.hasNormalizedSlot(slotName) || this.stacked === true || this.stacked === '') {\n return h();\n }\n\n var fields = this.computedFields;\n return h(BTr, {\n key: 'b-bottom-row',\n staticClass: 'b-table-bottom-row',\n class: [isFunction(this.tbodyTrClass) ?\n /* istanbul ignore next */\n this.tbodyTrClass(null, 'row-bottom') : this.tbodyTrClass],\n attrs: isFunction(this.tbodyTrAttr) ?\n /* istanbul ignore next */\n this.tbodyTrAttr(null, 'row-bottom') : this.tbodyTrAttr\n }, this.normalizeSlot(slotName, {\n columns: fields.length,\n fields: fields\n }));\n }\n }\n};","import { isFunction } from '../../../utils/inspect';\nimport { BTr } from '../tr';\nimport { BTd } from '../td';\nvar busySlotName = 'table-busy';\nexport default {\n props: {\n busy: {\n type: Boolean,\n default: false\n }\n },\n data: function data() {\n return {\n localBusy: false\n };\n },\n computed: {\n computedBusy: function computedBusy() {\n return this.busy || this.localBusy;\n }\n },\n watch: {\n localBusy: function localBusy(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.$emit('update:busy', newVal);\n }\n }\n },\n methods: {\n // Event handler helper\n stopIfBusy: function stopIfBusy(evt) {\n if (this.computedBusy) {\n // If table is busy (via provider) then don't propagate\n evt.preventDefault();\n evt.stopPropagation();\n return true;\n }\n\n return false;\n },\n // Render the busy indicator or return `null` if not busy\n renderBusy: function renderBusy() {\n var h = this.$createElement; // Return a busy indicator row, or `null` if not busy\n\n if (this.computedBusy && this.hasNormalizedSlot(busySlotName)) {\n // Show the busy slot\n return h(BTr, {\n key: 'table-busy-slot',\n staticClass: 'b-table-busy-slot',\n class: [isFunction(this.tbodyTrClass) ?\n /* istanbul ignore next */\n this.tbodyTrClass(null, busySlotName) : this.tbodyTrClass],\n attrs: isFunction(this.tbodyTrAttr) ?\n /* istanbul ignore next */\n this.tbodyTrAttr(null, busySlotName) : this.tbodyTrAttr\n }, [h(BTd, {\n props: {\n colspan: this.computedFields.length || null\n }\n }, [this.normalizeSlot(busySlotName)])]);\n } else {\n // We return `null` here so that we can determine if we need to\n // render the table items rows or not\n return null;\n }\n }\n }\n};","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 identity from '../../../utils/identity';\nimport looseEqual from '../../../utils/loose-equal';\nimport range from '../../../utils/range';\nimport { isArray, arrayIncludes } from '../../../utils/array';\nimport { getComponentConfig } from '../../../utils/config';\nimport { isNumber } from '../../../utils/inspect';\nimport { mathMax, mathMin } from '../../../utils/math';\nimport sanitizeRow from './sanitize-row';\nexport default {\n props: {\n selectable: {\n type: Boolean,\n default: false\n },\n selectMode: {\n type: String,\n default: 'multi',\n validator: function validator(val) {\n return arrayIncludes(['range', 'multi', 'single'], val);\n }\n },\n selectedVariant: {\n type: String,\n default: function _default() {\n return getComponentConfig('BTable', 'selectedVariant');\n }\n },\n noSelectOnClick: {\n // Disable use of click handlers for row selection\n type: Boolean,\n default: false\n }\n },\n data: function data() {\n return {\n selectedRows: [],\n selectedLastRow: -1\n };\n },\n computed: {\n isSelectable: function isSelectable() {\n return this.selectable && this.selectMode;\n },\n hasSelectableRowClick: function hasSelectableRowClick() {\n return this.isSelectable && !this.noSelectOnClick;\n },\n supportsSelectableRows: function supportsSelectableRows() {\n return true;\n },\n selectableHasSelection: function selectableHasSelection() {\n return this.isSelectable && this.selectedRows && this.selectedRows.length > 0 && this.selectedRows.some(identity);\n },\n selectableIsMultiSelect: function selectableIsMultiSelect() {\n return this.isSelectable && arrayIncludes(['range', 'multi'], this.selectMode);\n },\n selectableTableClasses: function selectableTableClasses() {\n var _ref;\n\n return _ref = {\n 'b-table-selectable': this.isSelectable\n }, _defineProperty(_ref, \"b-table-select-\".concat(this.selectMode), this.isSelectable), _defineProperty(_ref, 'b-table-selecting', this.selectableHasSelection), _defineProperty(_ref, 'b-table-selectable-no-click', this.isSelectable && !this.hasSelectableRowClick), _ref;\n },\n selectableTableAttrs: function selectableTableAttrs() {\n return {\n // TODO:\n // Should this attribute not be included when no-select-on-click is set\n // since this attribute implies keyboard navigation?\n 'aria-multiselectable': !this.isSelectable ? null : this.selectableIsMultiSelect ? 'true' : 'false'\n };\n }\n },\n watch: {\n computedItems: function computedItems(newVal, oldVal) {\n // Reset for selectable\n var equal = false;\n\n if (this.isSelectable && this.selectedRows.length > 0) {\n // Quick check against array length\n equal = isArray(newVal) && isArray(oldVal) && newVal.length === oldVal.length;\n\n for (var i = 0; equal && i < newVal.length; i++) {\n // Look for the first non-loosely equal row, after ignoring reserved fields\n equal = looseEqual(sanitizeRow(newVal[i]), sanitizeRow(oldVal[i]));\n }\n }\n\n if (!equal) {\n this.clearSelected();\n }\n },\n selectable: function selectable(newVal) {\n this.clearSelected();\n this.setSelectionHandlers(newVal);\n },\n selectMode: function selectMode() {\n this.clearSelected();\n },\n hasSelectableRowClick: function hasSelectableRowClick(newVal) {\n this.clearSelected();\n this.setSelectionHandlers(!newVal);\n },\n selectedRows: function selectedRows(_selectedRows, oldVal) {\n var _this = this;\n\n if (this.isSelectable && !looseEqual(_selectedRows, oldVal)) {\n var items = []; // `.forEach()` skips over non-existent indices (on sparse arrays)\n\n _selectedRows.forEach(function (v, idx) {\n if (v) {\n items.push(_this.computedItems[idx]);\n }\n });\n\n this.$emit('row-selected', items);\n }\n }\n },\n beforeMount: function beforeMount() {\n // Set up handlers if needed\n if (this.isSelectable) {\n this.setSelectionHandlers(true);\n }\n },\n methods: {\n // Public methods\n selectRow: function selectRow(index) {\n // Select a particular row (indexed based on computedItems)\n if (this.isSelectable && isNumber(index) && index >= 0 && index < this.computedItems.length && !this.isRowSelected(index)) {\n var selectedRows = this.selectableIsMultiSelect ? this.selectedRows.slice() : [];\n selectedRows[index] = true;\n this.selectedLastClicked = -1;\n this.selectedRows = selectedRows;\n }\n },\n unselectRow: function unselectRow(index) {\n // Un-select a particular row (indexed based on `computedItems`)\n if (this.isSelectable && isNumber(index) && this.isRowSelected(index)) {\n var selectedRows = this.selectedRows.slice();\n selectedRows[index] = false;\n this.selectedLastClicked = -1;\n this.selectedRows = selectedRows;\n }\n },\n selectAllRows: function selectAllRows() {\n var length = this.computedItems.length;\n\n if (this.isSelectable && length > 0) {\n this.selectedLastClicked = -1;\n this.selectedRows = this.selectableIsMultiSelect ? range(length).map(function () {\n return true;\n }) : [true];\n }\n },\n isRowSelected: function isRowSelected(index) {\n // Determine if a row is selected (indexed based on `computedItems`)\n return !!(isNumber(index) && this.selectedRows[index]);\n },\n clearSelected: function clearSelected() {\n // Clear any active selected row(s)\n this.selectedLastClicked = -1;\n this.selectedRows = [];\n },\n // Internal private methods\n selectableRowClasses: function selectableRowClasses(index) {\n if (this.isSelectable && this.isRowSelected(index)) {\n var variant = this.selectedVariant;\n return _defineProperty({\n 'b-table-row-selected': true\n }, \"\".concat(this.dark ? 'bg' : 'table', \"-\").concat(variant), variant);\n } else {\n return {};\n }\n },\n selectableRowAttrs: function selectableRowAttrs(index) {\n return {\n 'aria-selected': !this.isSelectable ? null : this.isRowSelected(index) ? 'true' : 'false'\n };\n },\n setSelectionHandlers: function setSelectionHandlers(on) {\n var method = on && !this.noSelectOnClick ? '$on' : '$off'; // Handle row-clicked event\n\n this[method]('row-clicked', this.selectionHandler); // Clear selection on filter, pagination, and sort changes\n\n this[method]('filtered', this.clearSelected);\n this[method]('context-changed', this.clearSelected);\n },\n selectionHandler: function selectionHandler(item, index, evt) {\n /* istanbul ignore if: should never happen */\n if (!this.isSelectable || this.noSelectOnClick) {\n // Don't do anything if table is not in selectable mode\n this.clearSelected();\n return;\n }\n\n var selectMode = this.selectMode;\n var selectedRows = this.selectedRows.slice();\n var selected = !selectedRows[index]; // Note 'multi' mode needs no special event handling\n\n if (selectMode === 'single') {\n selectedRows = [];\n } else if (selectMode === 'range') {\n if (this.selectedLastRow > -1 && evt.shiftKey) {\n // range\n for (var idx = mathMin(this.selectedLastRow, index); idx <= mathMax(this.selectedLastRow, index); idx++) {\n selectedRows[idx] = true;\n }\n\n selected = true;\n } else {\n if (!(evt.ctrlKey || evt.metaKey)) {\n // Clear range selection if any\n selectedRows = [];\n selected = true;\n }\n\n this.selectedLastRow = selected ? index : -1;\n }\n }\n\n selectedRows[index] = selected;\n this.selectedRows = selectedRows;\n }\n }\n};","import looseEqual from '../../../utils/loose-equal';\nimport { isArray, isFunction, isPromise } from '../../../utils/inspect';\nimport { clone } from '../../../utils/object';\nimport { warn } from '../../../utils/warn';\nimport listenOnRootMixin from '../../../mixins/listen-on-root';\nexport default {\n mixins: [listenOnRootMixin],\n props: {\n // Prop override(s)\n items: {\n // Adds in 'Function' support\n type: [Array, Function],\n\n /* istanbul ignore next */\n default: function _default()\n /* istanbul ignore next */\n {\n return [];\n }\n },\n // Additional props\n noProviderPaging: {\n type: Boolean,\n default: false\n },\n noProviderSorting: {\n type: Boolean,\n default: false\n },\n noProviderFiltering: {\n type: Boolean,\n default: false\n },\n apiUrl: {\n // Passthrough prop. Passed to the context object. Not used by b-table directly\n type: String,\n default: ''\n }\n },\n computed: {\n hasProvider: function hasProvider() {\n return isFunction(this.items);\n },\n providerTriggerContext: function providerTriggerContext() {\n // Used to trigger the provider function via a watcher. Only the fields that\n // are needed for triggering a provider update are included. Note that the\n // regular this.context is sent to the provider during fetches though, as they\n // may need all the prop info.\n var ctx = {\n apiUrl: this.apiUrl,\n filter: null,\n sortBy: null,\n sortDesc: null,\n perPage: null,\n currentPage: null\n };\n\n if (!this.noProviderFiltering) {\n // Either a string, or could be an object or array.\n ctx.filter = this.localFilter;\n }\n\n if (!this.noProviderSorting) {\n ctx.sortBy = this.localSortBy;\n ctx.sortDesc = this.localSortDesc;\n }\n\n if (!this.noProviderPaging) {\n ctx.perPage = this.perPage;\n ctx.currentPage = this.currentPage;\n }\n\n return clone(ctx);\n }\n },\n watch: {\n // Provider update triggering\n items: function items(newVal) {\n // If a new provider has been specified, trigger an update\n if (this.hasProvider || isFunction(newVal)) {\n this.$nextTick(this._providerUpdate);\n }\n },\n providerTriggerContext: function providerTriggerContext(newVal, oldVal) {\n // Trigger the provider to update as the relevant context values have changed.\n if (!looseEqual(newVal, oldVal)) {\n this.$nextTick(this._providerUpdate);\n }\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n // Call the items provider if necessary\n if (this.hasProvider && (!this.localItems || this.localItems.length === 0)) {\n // Fetch on mount if localItems is empty\n this._providerUpdate();\n } // Listen for global messages to tell us to force refresh the table\n\n\n this.listenOnRoot('bv::refresh::table', function (id) {\n if (id === _this.id || id === _this) {\n _this.refresh();\n }\n });\n },\n methods: {\n refresh: function refresh() {\n // Public Method: Force a refresh of the provider function\n this.$off('refreshed', this.refresh);\n\n if (this.computedBusy) {\n // Can't force an update when forced busy by user (busy prop === true)\n if (this.localBusy && this.hasProvider) {\n // But if provider running (localBusy), re-schedule refresh once `refreshed` emitted\n this.$on('refreshed', this.refresh);\n }\n } else {\n this.clearSelected();\n\n if (this.hasProvider) {\n this.$nextTick(this._providerUpdate);\n } else {\n /* istanbul ignore next */\n this.localItems = isArray(this.items) ? this.items.slice() : [];\n }\n }\n },\n // Provider related methods\n _providerSetLocal: function _providerSetLocal(items) {\n this.localItems = isArray(items) ? items.slice() : [];\n this.localBusy = false;\n this.$emit('refreshed'); // New root emit\n\n if (this.id) {\n this.emitOnRoot('bv::table::refreshed', this.id);\n }\n },\n _providerUpdate: function _providerUpdate() {\n var _this2 = this;\n\n // Refresh the provider function items.\n if (!this.hasProvider) {\n // Do nothing if no provider\n return;\n } // If table is busy, wait until refreshed before calling again\n\n\n if (this.computedBusy) {\n // Schedule a new refresh once `refreshed` is emitted\n this.$nextTick(this.refresh);\n return;\n } // Set internal busy state\n\n\n this.localBusy = true; // Call provider function with context and optional callback after DOM is fully updated\n\n this.$nextTick(function () {\n try {\n // Call provider function passing it the context and optional callback\n var data = _this2.items(_this2.context, _this2._providerSetLocal);\n\n if (isPromise(data)) {\n // Provider returned Promise\n data.then(function (items) {\n // Provider resolved with items\n _this2._providerSetLocal(items);\n });\n } else if (isArray(data)) {\n // Provider returned Array data\n _this2._providerSetLocal(data);\n } else {\n /* istanbul ignore if */\n if (_this2.items.length !== 2) {\n // Check number of arguments provider function requested\n // Provider not using callback (didn't request second argument), so we clear\n // busy state as most likely there was an error in the provider function\n\n /* istanbul ignore next */\n warn(\"Provider function didn't request callback and did not return a promise or data.\", 'BTable');\n _this2.localBusy = false;\n }\n }\n } catch (e)\n /* istanbul ignore next */\n {\n // Provider function borked on us, so we spew out a warning\n // and clear the busy state\n warn(\"Provider function error [\".concat(e.name, \"] \").concat(e.message, \".\"), 'BTable');\n _this2.localBusy = false;\n\n _this2.$off('refreshed', _this2.refresh);\n }\n });\n }\n }\n};","import Vue from '../../utils/vue'; // Mixins\n\nimport attrsMixin from '../../mixins/attrs';\nimport hasListenerMixin from '../../mixins/has-listener';\nimport idMixin from '../../mixins/id';\nimport normalizeSlotMixin from '../../mixins/normalize-slot'; // Table helper Mixins\n\nimport itemsMixin from './helpers/mixin-items';\nimport stackedMixin from './helpers/mixin-stacked';\nimport filteringMixin from './helpers/mixin-filtering';\nimport sortingMixin from './helpers/mixin-sorting';\nimport paginationMixin from './helpers/mixin-pagination';\nimport captionMixin from './helpers/mixin-caption';\nimport colgroupMixin from './helpers/mixin-colgroup';\nimport theadMixin from './helpers/mixin-thead';\nimport tfootMixin from './helpers/mixin-tfoot';\nimport tbodyMixin from './helpers/mixin-tbody';\nimport emptyMixin from './helpers/mixin-empty';\nimport topRowMixin from './helpers/mixin-top-row';\nimport bottomRowMixin from './helpers/mixin-bottom-row';\nimport busyMixin from './helpers/mixin-busy';\nimport selectableMixin from './helpers/mixin-selectable';\nimport providerMixin from './helpers/mixin-provider'; // Main table renderer mixin\n\nimport tableRendererMixin from './helpers/mixin-table-renderer'; // b-table component definition\n// @vue/component\n\nexport var BTable = /*#__PURE__*/Vue.extend({\n name: 'BTable',\n // Order of mixins is important!\n // They are merged from first to last, followed by this component\n mixins: [// General mixins\n attrsMixin, hasListenerMixin, idMixin, normalizeSlotMixin, // Required table mixins\n itemsMixin, tableRendererMixin, stackedMixin, theadMixin, tfootMixin, tbodyMixin, // Table features mixins\n stackedMixin, filteringMixin, sortingMixin, paginationMixin, captionMixin, colgroupMixin, selectableMixin, emptyMixin, topRowMixin, bottomRowMixin, busyMixin, providerMixin] // Render function is provided by table-renderer mixin\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 '../../utils/vue';\nimport attrsMixin from '../../mixins/attrs';\nimport listenersMixin from '../../mixins/listeners';\nimport normalizeSlotMixin from '../../mixins/normalize-slot';\nexport var props = {\n variant: {\n type: String,\n default: null\n }\n};\nvar LIGHT = 'light';\nvar DARK = 'dark'; // TODO:\n// In Bootstrap v5, we won't need \"sniffing\" as table element variants properly inherit\n// to the child elements, so this can be converted to a functional component\n// @vue/component\n\nexport var BTr = /*#__PURE__*/Vue.extend({\n name: 'BTr',\n // Mixin order is important!\n mixins: [attrsMixin, listenersMixin, normalizeSlotMixin],\n inheritAttrs: false,\n provide: function provide() {\n return {\n bvTableTr: this\n };\n },\n inject: {\n bvTableRowGroup: {\n /* istanbul ignore next */\n default: function _default()\n /* istanbul ignore next */\n {\n return {};\n }\n }\n },\n props: props,\n computed: {\n inTbody: function inTbody() {\n // Sniffed by / \n return this.bvTableRowGroup.isTbody;\n },\n inThead: function inThead() {\n // Sniffed by / \n return this.bvTableRowGroup.isThead;\n },\n inTfoot: function inTfoot() {\n // Sniffed by / \n return this.bvTableRowGroup.isTfoot;\n },\n isDark: function isDark() {\n // Sniffed by / \n return this.bvTableRowGroup.isDark;\n },\n isStacked: function isStacked() {\n // Sniffed by / \n return this.bvTableRowGroup.isStacked;\n },\n isResponsive: function isResponsive() {\n // Sniffed by / \n return this.bvTableRowGroup.isResponsive;\n },\n isStickyHeader: function isStickyHeader() {\n // Sniffed by / \n // Sticky headers are only supported in thead\n return this.bvTableRowGroup.isStickyHeader;\n },\n hasStickyHeader: function hasStickyHeader() {\n // Sniffed by / / \n // Needed to handle header background classes, due to lack of\n // background color inheritance with Bootstrap v4 table CSS\n return !this.isStacked && this.bvTableRowGroup.hasStickyHeader;\n },\n tableVariant: function tableVariant() {\n // Sniffed by / \n return this.bvTableRowGroup.tableVariant;\n },\n headVariant: function headVariant() {\n // Sniffed by / \n return this.inThead ? this.bvTableRowGroup.headVariant : null;\n },\n footVariant: function footVariant() {\n // Sniffed by / \n return this.inTfoot ? this.bvTableRowGroup.footVariant : null;\n },\n isRowDark: function isRowDark() {\n return this.headVariant === LIGHT || this.footVariant === LIGHT ?\n /* istanbul ignore next */\n false : this.headVariant === DARK || this.footVariant === DARK ?\n /* istanbul ignore next */\n true : this.isDark;\n },\n trClasses: function trClasses() {\n return [this.variant ? \"\".concat(this.isRowDark ? 'bg' : 'table', \"-\").concat(this.variant) : null];\n },\n trAttrs: function trAttrs() {\n return _objectSpread({\n role: 'row'\n }, this.bvAttrs);\n }\n },\n render: function render(h) {\n return h('tr', {\n class: this.trClasses,\n attrs: this.trAttrs,\n // Pass native listeners to child\n on: this.bvListeners\n }, this.normalizeSlot('default'));\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 '../../utils/vue';\nimport looseEqual from '../../utils/loose-equal';\nimport { getComponentConfig } from '../../utils/config';\nimport { attemptBlur, requestAF } from '../../utils/dom';\nimport { isBrowser } from '../../utils/env';\nimport { isArray, isUndefined, isFunction, isObject } from '../../utils/inspect';\nimport { mathMax } from '../../utils/math';\nimport { toInteger } from '../../utils/number';\nimport { omit } from '../../utils/object';\nimport { pluckProps } from '../../utils/props';\nimport { computeHref, parseQuery } from '../../utils/router';\nimport { toString } from '../../utils/string';\nimport { warn } from '../../utils/warn';\nimport paginationMixin from '../../mixins/pagination';\nimport { props as BLinkProps } from '../link/link'; // --- Constants ---\n\nvar NAME = 'BPaginationNav'; // --- Props ---\n\nvar _linkProps = omit(BLinkProps, ['event', 'routerTag']);\n\nvar props = _objectSpread({\n size: {\n type: String,\n default: function _default() {\n return getComponentConfig(NAME, 'size');\n }\n },\n numberOfPages: {\n type: [Number, String],\n default: 1,\n validator: function validator(value)\n /* istanbul ignore next */\n {\n var number = toInteger(value, 0);\n\n if (number < 1) {\n warn('Prop \"number-of-pages\" must be a number greater than \"0\"', NAME);\n return false;\n }\n\n return true;\n }\n },\n baseUrl: {\n type: String,\n default: '/'\n },\n useRouter: {\n type: Boolean,\n default: false\n },\n linkGen: {\n type: Function // default: null\n\n },\n pageGen: {\n type: Function // default: null\n\n },\n pages: {\n // Optional array of page links\n type: Array // default: null\n\n },\n noPageDetect: {\n // Disable auto page number detection if true\n type: Boolean,\n default: false\n }\n}, _linkProps); // --- Utility methods ---\n// Sanitize the provided number of pages (converting to a number)\n\n\nexport var sanitizeNumberOfPages = function sanitizeNumberOfPages(value) {\n return mathMax(toInteger(value, 0), 1);\n}; // --- Main component ---\n// The render function is brought in via the pagination mixin\n// @vue/component\n\nexport var BPaginationNav = /*#__PURE__*/Vue.extend({\n name: NAME,\n mixins: [paginationMixin],\n props: props,\n computed: {\n // Used by render function to trigger wrapping in '