{"version":3,"sources":["webpack:///./node_modules/bootstrap-vue/esm/directives/scrollspy/index.js","webpack:///./node_modules/bootstrap-vue/esm/icons/icon.js","webpack:///./node_modules/bootstrap-vue/esm/directives/hover/hover.js","webpack:///./node_modules/bootstrap-vue/esm/directives/visible/index.js","webpack:///./node_modules/bootstrap-vue/esm/directives/tooltip/tooltip.js","webpack:///./node_modules/bootstrap-vue/esm/directives/scrollspy/scrollspy.class.js","webpack:///./node_modules/bootstrap-vue/esm/directives/scrollspy/scrollspy.js","webpack:///./node_modules/bootstrap-vue/esm/directives/popover/index.js","webpack:///./node_modules/bootstrap-vue/esm/directives/toggle/toggle.js","webpack:///./node_modules/bootstrap-vue/esm/directives/visible/visible.js","webpack:///./node_modules/bootstrap-vue/esm/icons/helpers/icon-base.js","webpack:///./node_modules/bootstrap-vue/esm/directives/tooltip/index.js","webpack:///./node_modules/bootstrap-vue/esm/directives/popover/popover.js","webpack:///./node_modules/bootstrap-vue/esm/directives/hover/index.js","webpack:///./node_modules/bootstrap-vue/esm/directives/modal/index.js","webpack:///./node_modules/bootstrap-vue/esm/directives/modal/modal.js","webpack:///./node_modules/bootstrap-vue/esm/directives/toggle/index.js","webpack:///./node_modules/bootstrap-vue/esm/directives/index.js","webpack:///./node_modules/bootstrap-vue/esm/icons/helpers/make-icon.js"],"names":["VBScrollspyPlugin","directives","VBScrollspy","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","value","configurable","writable","RX_ICON_PREFIX","BIcon","extend","name","functional","props","icon","type","String","default","stacked","Boolean","render","h","_ref","data","parent","replace","iconName","concat","components","$options","componentRefOrName","PROP","MOUSEENTER","MOUSELEAVE","createListener","handler","listener","evt","fn","updateListeners","on","el","directive","_ref$value","hasListener","handlerChanged","VBHover","bind","componentUpdated","unbind","VBVisiblePlugin","VBVisible","BV_TOOLTIP","DefaultTrigger","validTriggers","focus","hover","click","blur","manual","htmlRE","noninteractiveRE","noFadeRE","placementRE","boundaryRE","delayRE","delayShowRE","delayHideRE","offsetRE","variantRE","spacesRE","parseBindings","bindings","vnode","NAME","config","title","undefined","trigger","placement","fallbackPlacement","container","animation","offset","id","html","interactive","disabled","delay","boundary","boundaryPadding","variant","customClass","attrs","show","hide","arg","modifiers","mod","test","slice","selectedTriggers","join","trim","toLowerCase","split","applyTooltip","$parent","context","_scopeId","__bv_prev_data__","$on","updateData","triggers","noFade","oldData","newData","prop","removeTooltip","$destroy","VBTooltip","$nextTick","_classCallCheck","instance","Constructor","TypeError","_defineProperties","descriptor","_createClass","protoProps","staticProps","prototype","ACTIVATE_EVENT","Default","element","method","throttle","DefaultType","ClassName","DROPDOWN_ITEM","ACTIVE","Selector","NAV_LIST_GROUP","NAV_LINKS","NAV_ITEMS","LIST_ITEMS","DROPDOWN","DROPDOWN_ITEMS","DROPDOWN_TOGGLE","OffsetMethod","OFFSET","POSITION","HREF_REGEX","TransitionEndEvents","match","componentName","configTypes","property","expectedTypes","valueType","_isVue","RegExp","warn","ScrollSpy","$root","this","$el","$scroller","$selector","$offsets","$targets","$activeTarget","$scrollHeight","$resizeTimeout","$scrollerObserver","$targetsObserver","$config","updateConfig","unlisten","cfg","constructor","Name","self","listen","clearTimeout","_this","scroller","getScroller","tagName","window","evtName","setObservers","handleEvent","_this2","_this3","disconnect","subtree","childList","attributes","attributeFilter","characterData","resizeThrottle","setTimeout","refresh","process","_this4","autoMethod","methodFn","offsetBase","getScrollTop","getScrollHeight","map","link","href","top","sort","a","b","reduce","memo","item","scrollTop","scrollHeight","maxScroll","getOffsetHeight","activate","clear","isActiveTarget","pageYOffset","math","document","body","documentElement","innerHeight","height","_this5","links","selector","dropdown","setActiveState","parentElement","sibling","previousElementSibling","$emit","_this6","active","get","BV_SCROLLSPY","onlyDigitsRE","k","removeScrollspy","dispose","inserted","update","oldValue","VBPopoverPlugin","VBPopover","ENTER","SPACE","CLASS_BV_TOGGLE_COLLAPSED","CLASS_BV_TOGGLE_NOT_COLLAPSED","BV_BASE","BV_TOGGLE_ROOT_HANDLER","BV_TOGGLE_CLICK_HANDLER","BV_TOGGLE_STATE","BV_TOGGLE_TARGETS","STRING_FALSE","STRING_TRUE","ATTR_ARIA_CONTROLS","ATTR_ARIA_EXPANDED","ATTR_ROLE","ATTR_TABINDEX","EVENT_TOGGLE","EVENT_STATE","EVENT_STATE_SYNC","EVENT_STATE_REQUEST","KEYDOWN_KEY_CODES","RX_HASH","RX_HASH_ID","RX_SPLIT_SEPARATOR","isNonStandardTag","getTargets","targets","t","index","arr","indexOf","removeClickListener","addClickListener","keyCode","removeRootListeners","$off","addRootListeners","state","setToggleState","resetProp","handleUpdate","binding","VBToggle","updated","OBSERVER_PROP_NAME","RX_ONLY_DIGITS","VisibilityObserver","options","callback","margin","once","observer","visible","doneOnce","createObserver","stop","IntersectionObserver","root","rootMargin","threshold","_unused","observe","entries","entry","isIntersecting","intersectionRatio","destroy","_prevModifiers","_ref2","commonIconProps","fontScale","Number","scale","rotate","flipH","flipV","shiftH","shiftV","baseAttrs","viewBox","width","focusable","role","alt","stackedAttrs","BVIconBase","content","_class","children","hasScale","hasTransforms","hasShift","transforms","isStacked","hasContent","$inner","transform","domProps","innerHTML","staticClass","class","style","fontSize","xmlns","fill","VBTooltipPlugin","BV_POPOVER","applyPopover","removePopover","VBHoverPlugin","VBModalPlugin","VBModal","EVENT_SHOW","PROPERTY","getTarget","_ref$modifiers","reverse","getTriggerElement","setRole","currentTarget","oldProp","VBTogglePlugin","directivesPlugin","plugins","makeIcon","iconNameClass","svgContent"],"mappings":"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","file":"js/chunk-vendors~f8ef863f.306761cc.js","sourcesContent":["import { VBScrollspy } from './scrollspy';\nimport { pluginFactory } from '../../utils/plugins';\nvar VBScrollspyPlugin = /*#__PURE__*/pluginFactory({\n directives: {\n VBScrollspy: VBScrollspy\n }\n});\nexport { VBScrollspyPlugin, VBScrollspy };","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 { mergeData } from 'vue-functional-data-merge';\nimport { pascalCase, trim } from '../utils/string';\nimport { BIconBlank } from './icons';\nimport { commonIconProps } from './helpers/icon-base';\nvar RX_ICON_PREFIX = /^BIcon/; // Helper BIcon component\n// Requires the requested icon component to be installed\n\nexport var BIcon = /*#__PURE__*/Vue.extend({\n name: 'BIcon',\n functional: true,\n props: _objectSpread(_objectSpread({\n icon: {\n type: String,\n default: null\n }\n }, commonIconProps), {}, {\n stacked: {\n type: Boolean,\n default: false\n }\n }),\n render: function render(h, _ref) {\n var data = _ref.data,\n props = _ref.props,\n parent = _ref.parent;\n var icon = pascalCase(trim(props.icon || '')).replace(RX_ICON_PREFIX, '');\n var iconName = \"BIcon\".concat(icon); // If parent context exists, we check to see if the icon has been registered\n // Either locally in the parent component, or globally at the `$root` level\n // If not registered, we render a blank icon\n\n var components = ((parent || {}).$options || {}).components;\n var componentRefOrName = icon && components ? components[iconName] || BIconBlank : icon ? iconName : BIconBlank;\n return h(componentRefOrName, mergeData(data, {\n props: _objectSpread(_objectSpread({}, props), {}, {\n icon: null\n })\n }));\n }\n});","// v-b-hover directive\nimport { isBrowser } from '../../utils/env';\nimport { EVENT_OPTIONS_NO_CAPTURE, eventOnOff } from '../../utils/events';\nimport { isFunction } from '../../utils/inspect'; // --- Constants ---\n\nvar PROP = '__BV_hover_handler__';\nvar MOUSEENTER = 'mouseenter';\nvar MOUSELEAVE = 'mouseleave'; // --- Utility methods ---\n\nvar createListener = function createListener(handler) {\n var listener = function listener(evt) {\n handler(evt.type === MOUSEENTER, evt);\n };\n\n listener.fn = handler;\n return listener;\n};\n\nvar updateListeners = function updateListeners(on, el, listener) {\n eventOnOff(on, el, MOUSEENTER, listener, EVENT_OPTIONS_NO_CAPTURE);\n eventOnOff(on, el, MOUSELEAVE, listener, EVENT_OPTIONS_NO_CAPTURE);\n}; // --- Directive bind/unbind/update handler ---\n\n\nvar directive = function directive(el, _ref) {\n var _ref$value = _ref.value,\n handler = _ref$value === void 0 ? null : _ref$value;\n\n if (isBrowser) {\n var listener = el[PROP];\n var hasListener = isFunction(listener);\n var handlerChanged = !(hasListener && listener.fn === handler);\n\n if (hasListener && handlerChanged) {\n updateListeners(false, el, listener);\n delete el[PROP];\n }\n\n if (isFunction(handler) && handlerChanged) {\n el[PROP] = createListener(handler);\n updateListeners(true, el, el[PROP]);\n }\n }\n}; // VBHover directive\n\n\nexport var VBHover = {\n bind: directive,\n componentUpdated: directive,\n unbind: function unbind(el) {\n directive(el, {\n value: null\n });\n }\n};","import { VBVisible } from './visible';\nimport { pluginFactory } from '../../utils/plugins';\nvar VBVisiblePlugin = /*#__PURE__*/pluginFactory({\n directives: {\n VBVisible: VBVisible\n }\n});\nexport { VBVisiblePlugin, VBVisible };","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 getScopId from '../../utils/get-scope-id';\nimport identity from '../../utils/identity';\nimport looseEqual from '../../utils/loose-equal';\nimport { concat } from '../../utils/array';\nimport { getComponentConfig } from '../../utils/config';\nimport { isBrowser } from '../../utils/env';\nimport { isFunction, isNumber, isPlainObject, isString, isUndefined, isUndefinedOrNull } from '../../utils/inspect';\nimport { toInteger } from '../../utils/number';\nimport { keys } from '../../utils/object';\nimport { BVTooltip } from '../../components/tooltip/helpers/bv-tooltip'; // Key which we use to store tooltip object on element\n\nvar BV_TOOLTIP = '__BV_Tooltip__'; // Default trigger\n\nvar DefaultTrigger = 'hover focus'; // Valid event triggers\n\nvar validTriggers = {\n focus: true,\n hover: true,\n click: true,\n blur: true,\n manual: true\n}; // Directive modifier test regular expressions. Pre-compile for performance\n\nvar htmlRE = /^html$/i;\nvar noninteractiveRE = /^noninteractive$/i;\nvar noFadeRE = /^nofade$/i;\nvar placementRE = /^(auto|top(left|right)?|bottom(left|right)?|left(top|bottom)?|right(top|bottom)?)$/i;\nvar boundaryRE = /^(window|viewport|scrollParent)$/i;\nvar delayRE = /^d\\d+$/i;\nvar delayShowRE = /^ds\\d+$/i;\nvar delayHideRE = /^dh\\d+$/i;\nvar offsetRE = /^o-?\\d+$/i;\nvar variantRE = /^v-.+$/i;\nvar spacesRE = /\\s+/; // Build a Tooltip config based on bindings (if any)\n// Arguments and modifiers take precedence over passed value config object\n\nvar parseBindings = function parseBindings(bindings, vnode)\n/* istanbul ignore next: not easy to test */\n{\n // We start out with a basic config\n var NAME = 'BTooltip'; // Default config\n\n var config = {\n title: undefined,\n trigger: '',\n // Default set below if needed\n placement: 'top',\n fallbackPlacement: 'flip',\n container: false,\n // Default of body\n animation: true,\n offset: 0,\n id: null,\n html: false,\n interactive: true,\n disabled: false,\n delay: getComponentConfig(NAME, 'delay'),\n boundary: String(getComponentConfig(NAME, 'boundary')),\n boundaryPadding: toInteger(getComponentConfig(NAME, 'boundaryPadding'), 0),\n variant: getComponentConfig(NAME, 'variant'),\n customClass: getComponentConfig(NAME, 'customClass')\n }; // Process `bindings.value`\n\n if (isString(bindings.value) || isNumber(bindings.value)) {\n // Value is tooltip content (HTML optionally supported)\n config.title = bindings.value;\n } else if (isFunction(bindings.value)) {\n // Title generator function\n config.title = bindings.value;\n } else if (isPlainObject(bindings.value)) {\n // Value is config object, so merge\n config = _objectSpread(_objectSpread({}, config), bindings.value);\n } // If title is not provided, try title attribute\n\n\n if (isUndefined(config.title)) {\n // Try attribute\n var data = vnode.data || {};\n config.title = data.attrs && !isUndefinedOrNull(data.attrs.title) ? data.attrs.title : undefined;\n } // Normalize delay\n\n\n if (!isPlainObject(config.delay)) {\n config.delay = {\n show: toInteger(config.delay, 0),\n hide: toInteger(config.delay, 0)\n };\n } // If argument, assume element ID of container element\n\n\n if (bindings.arg) {\n // Element ID specified as arg\n // We must prepend '#' to become a CSS selector\n config.container = \"#\".concat(bindings.arg);\n } // Process modifiers\n\n\n keys(bindings.modifiers).forEach(function (mod) {\n if (htmlRE.test(mod)) {\n // Title allows HTML\n config.html = true;\n } else if (noninteractiveRE.test(mod)) {\n // Noninteractive\n config.interactive = false;\n } else if (noFadeRE.test(mod)) {\n // No animation\n config.animation = false;\n } else if (placementRE.test(mod)) {\n // Placement of tooltip\n config.placement = mod;\n } else if (boundaryRE.test(mod)) {\n // Boundary of tooltip\n mod = mod === 'scrollparent' ? 'scrollParent' : mod;\n config.boundary = mod;\n } else if (delayRE.test(mod)) {\n // Delay value\n var delay = toInteger(mod.slice(1), 0);\n config.delay.show = delay;\n config.delay.hide = delay;\n } else if (delayShowRE.test(mod)) {\n // Delay show value\n config.delay.show = toInteger(mod.slice(2), 0);\n } else if (delayHideRE.test(mod)) {\n // Delay hide value\n config.delay.hide = toInteger(mod.slice(2), 0);\n } else if (offsetRE.test(mod)) {\n // Offset value, negative allowed\n config.offset = toInteger(mod.slice(1), 0);\n } else if (variantRE.test(mod)) {\n // Variant\n config.variant = mod.slice(2) || null;\n }\n }); // Special handling of event trigger modifiers trigger is\n // a space separated list\n\n var selectedTriggers = {}; // Parse current config object trigger\n\n concat(config.trigger || '').filter(identity).join(' ').trim().toLowerCase().split(spacesRE).forEach(function (trigger) {\n if (validTriggers[trigger]) {\n selectedTriggers[trigger] = true;\n }\n }); // Parse modifiers for triggers\n\n keys(bindings.modifiers).forEach(function (mod) {\n mod = mod.toLowerCase();\n\n if (validTriggers[mod]) {\n // If modifier is a valid trigger\n selectedTriggers[mod] = true;\n }\n }); // Sanitize triggers\n\n config.trigger = keys(selectedTriggers).join(' ');\n\n if (config.trigger === 'blur') {\n // Blur by itself is useless, so convert it to 'focus'\n config.trigger = 'focus';\n }\n\n if (!config.trigger) {\n // Use default trigger\n config.trigger = DefaultTrigger;\n } // Return the config\n\n\n return config;\n}; // Add/update Tooltip on our element\n\n\nvar applyTooltip = function applyTooltip(el, bindings, vnode) {\n if (!isBrowser) {\n /* istanbul ignore next */\n return;\n }\n\n var config = parseBindings(bindings, vnode);\n\n if (!el[BV_TOOLTIP]) {\n var $parent = vnode.context;\n el[BV_TOOLTIP] = new BVTooltip({\n parent: $parent,\n // Add the parent's scoped style attribute data\n _scopeId: getScopId($parent, undefined)\n });\n el[BV_TOOLTIP].__bv_prev_data__ = {};\n el[BV_TOOLTIP].$on('show', function ()\n /* istanbul ignore next: for now */\n {\n // Before showing the tooltip, we update the title if it is a function\n if (isFunction(config.title)) {\n el[BV_TOOLTIP].updateData({\n title: config.title(el)\n });\n }\n });\n }\n\n var data = {\n title: config.title,\n triggers: config.trigger,\n placement: config.placement,\n fallbackPlacement: config.fallbackPlacement,\n variant: config.variant,\n customClass: config.customClass,\n container: config.container,\n boundary: config.boundary,\n delay: config.delay,\n offset: config.offset,\n noFade: !config.animation,\n id: config.id,\n interactive: config.interactive,\n disabled: config.disabled,\n html: config.html\n };\n var oldData = el[BV_TOOLTIP].__bv_prev_data__;\n el[BV_TOOLTIP].__bv_prev_data__ = data;\n\n if (!looseEqual(data, oldData)) {\n // We only update the instance if data has changed\n var newData = {\n target: el\n };\n keys(data).forEach(function (prop) {\n // We only pass data properties that have changed\n if (data[prop] !== oldData[prop]) {\n // if title is a function, we execute it here\n newData[prop] = prop === 'title' && isFunction(data[prop]) ? data[prop](el) : data[prop];\n }\n });\n el[BV_TOOLTIP].updateData(newData);\n }\n}; // Remove Tooltip on our element\n\n\nvar removeTooltip = function removeTooltip(el) {\n if (el[BV_TOOLTIP]) {\n el[BV_TOOLTIP].$destroy();\n el[BV_TOOLTIP] = null;\n }\n\n delete el[BV_TOOLTIP];\n}; // Export our directive\n\n\nexport var VBTooltip = {\n bind: function bind(el, bindings, vnode) {\n applyTooltip(el, bindings, vnode);\n },\n // We use `componentUpdated` here instead of `update`, as the former\n // waits until the containing component and children have finished updating\n componentUpdated: function componentUpdated(el, bindings, vnode) {\n // Performed in a `$nextTick()` to prevent render update loops\n vnode.context.$nextTick(function () {\n applyTooltip(el, bindings, vnode);\n });\n },\n unbind: function unbind(el) {\n removeTooltip(el);\n }\n};","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\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n/*\n * ScrollSpy class definition\n */\nimport observeDom from '../../utils/observe-dom';\nimport { addClass, closest, getAttr, getBCR, hasClass, isElement, isVisible, matches, offset, position, removeClass, select, selectAll } from '../../utils/dom';\nimport { EVENT_OPTIONS_NO_CAPTURE, eventOn, eventOff } from '../../utils/events';\nimport { isString, isUndefined } from '../../utils/inspect';\nimport { mathMax } from '../../utils/math';\nimport { toInteger } from '../../utils/number';\nimport { hasOwnProperty, toString as objectToString } from '../../utils/object';\nimport { warn } from '../../utils/warn';\n/*\n * Constants / Defaults\n */\n\nvar NAME = 'v-b-scrollspy';\nvar ACTIVATE_EVENT = 'bv::scrollspy::activate';\nvar Default = {\n element: 'body',\n offset: 10,\n method: 'auto',\n throttle: 75\n};\nvar DefaultType = {\n element: '(string|element|component)',\n offset: 'number',\n method: 'string',\n throttle: 'number'\n};\nvar ClassName = {\n DROPDOWN_ITEM: 'dropdown-item',\n ACTIVE: 'active'\n};\nvar Selector = {\n ACTIVE: '.active',\n NAV_LIST_GROUP: '.nav, .list-group',\n NAV_LINKS: '.nav-link',\n NAV_ITEMS: '.nav-item',\n LIST_ITEMS: '.list-group-item',\n DROPDOWN: '.dropdown, .dropup',\n DROPDOWN_ITEMS: '.dropdown-item',\n DROPDOWN_TOGGLE: '.dropdown-toggle'\n};\nvar OffsetMethod = {\n OFFSET: 'offset',\n POSITION: 'position'\n}; // HREFs must end with a hash followed by at least one non-hash character.\n// HREFs in the links are assumed to point to non-external links.\n// Comparison to the current page base URL is not performed!\n\nvar HREF_REGEX = /^.*(#[^#]+)$/; // Transition Events\n\nvar TransitionEndEvents = ['webkitTransitionEnd', 'transitionend', 'otransitionend', 'oTransitionEnd'];\n/*\n * Utility Methods\n */\n// Better var type detection\n\nvar toType = function toType(obj)\n/* istanbul ignore next: not easy to test */\n{\n return objectToString(obj).match(/\\s([a-zA-Z]+)/)[1].toLowerCase();\n}; // Check config properties for expected types\n\n/* istanbul ignore next */\n\n\nvar typeCheckConfig = function typeCheckConfig(componentName, config, configTypes)\n/* istanbul ignore next: not easy to test */\n{\n for (var property in configTypes) {\n if (hasOwnProperty(configTypes, property)) {\n var expectedTypes = configTypes[property];\n var value = config[property];\n var valueType = value && isElement(value) ? 'element' : toType(value); // handle Vue instances\n\n valueType = value && value._isVue ? 'component' : valueType;\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n /* istanbul ignore next */\n warn(\"\".concat(componentName, \": Option \\\"\").concat(property, \"\\\" provided type \\\"\").concat(valueType, \"\\\" but expected type \\\"\").concat(expectedTypes, \"\\\"\"));\n }\n }\n }\n};\n/*\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n/* istanbul ignore next: not easy to test */\n\n\nvar ScrollSpy\n/* istanbul ignore next: not easy to test */\n= /*#__PURE__*/function () {\n function ScrollSpy(element, config, $root) {\n _classCallCheck(this, ScrollSpy);\n\n // The element we activate links in\n this.$el = element;\n this.$scroller = null;\n this.$selector = [Selector.NAV_LINKS, Selector.LIST_ITEMS, Selector.DROPDOWN_ITEMS].join(',');\n this.$offsets = [];\n this.$targets = [];\n this.$activeTarget = null;\n this.$scrollHeight = 0;\n this.$resizeTimeout = null;\n this.$scrollerObserver = null;\n this.$targetsObserver = null;\n this.$root = $root || null;\n this.$config = null;\n this.updateConfig(config);\n }\n\n _createClass(ScrollSpy, [{\n key: \"updateConfig\",\n value: function updateConfig(config, $root) {\n if (this.$scroller) {\n // Just in case out scroll element has changed\n this.unlisten();\n this.$scroller = null;\n }\n\n var cfg = _objectSpread(_objectSpread({}, this.constructor.Default), config);\n\n if ($root) {\n this.$root = $root;\n }\n\n typeCheckConfig(this.constructor.Name, cfg, this.constructor.DefaultType);\n this.$config = cfg;\n\n if (this.$root) {\n var self = this;\n this.$root.$nextTick(function () {\n self.listen();\n });\n } else {\n this.listen();\n }\n }\n }, {\n key: \"dispose\",\n value: function dispose() {\n this.unlisten();\n clearTimeout(this.$resizeTimeout);\n this.$resizeTimeout = null;\n this.$el = null;\n this.$config = null;\n this.$scroller = null;\n this.$selector = null;\n this.$offsets = null;\n this.$targets = null;\n this.$activeTarget = null;\n this.$scrollHeight = null;\n }\n }, {\n key: \"listen\",\n value: function listen() {\n var _this = this;\n\n var scroller = this.getScroller();\n\n if (scroller && scroller.tagName !== 'BODY') {\n eventOn(scroller, 'scroll', this, EVENT_OPTIONS_NO_CAPTURE);\n }\n\n eventOn(window, 'scroll', this, EVENT_OPTIONS_NO_CAPTURE);\n eventOn(window, 'resize', this, EVENT_OPTIONS_NO_CAPTURE);\n eventOn(window, 'orientationchange', this, EVENT_OPTIONS_NO_CAPTURE);\n TransitionEndEvents.forEach(function (evtName) {\n eventOn(window, evtName, _this, EVENT_OPTIONS_NO_CAPTURE);\n });\n this.setObservers(true); // Schedule a refresh\n\n this.handleEvent('refresh');\n }\n }, {\n key: \"unlisten\",\n value: function unlisten() {\n var _this2 = this;\n\n var scroller = this.getScroller();\n this.setObservers(false);\n\n if (scroller && scroller.tagName !== 'BODY') {\n eventOff(scroller, 'scroll', this, EVENT_OPTIONS_NO_CAPTURE);\n }\n\n eventOff(window, 'scroll', this, EVENT_OPTIONS_NO_CAPTURE);\n eventOff(window, 'resize', this, EVENT_OPTIONS_NO_CAPTURE);\n eventOff(window, 'orientationchange', this, EVENT_OPTIONS_NO_CAPTURE);\n TransitionEndEvents.forEach(function (evtName) {\n eventOff(window, evtName, _this2, EVENT_OPTIONS_NO_CAPTURE);\n });\n }\n }, {\n key: \"setObservers\",\n value: function setObservers(on) {\n var _this3 = this;\n\n // We observe both the scroller for content changes, and the target links\n this.$scrollerObserver && this.$scrollerObserver.disconnect();\n this.$targetsObserver && this.$targetsObserver.disconnect();\n this.$scrollerObserver = null;\n this.$targetsObserver = null;\n\n if (on) {\n this.$targetsObserver = observeDom(this.$el, function () {\n _this3.handleEvent('mutation');\n }, {\n subtree: true,\n childList: true,\n attributes: true,\n attributeFilter: ['href']\n });\n this.$scrollerObserver = observeDom(this.getScroller(), function () {\n _this3.handleEvent('mutation');\n }, {\n subtree: true,\n childList: true,\n characterData: true,\n attributes: true,\n attributeFilter: ['id', 'style', 'class']\n });\n }\n } // General event handler\n\n }, {\n key: \"handleEvent\",\n value: function handleEvent(evt) {\n var type = isString(evt) ? evt : evt.type;\n var self = this;\n\n var resizeThrottle = function resizeThrottle() {\n if (!self.$resizeTimeout) {\n self.$resizeTimeout = setTimeout(function () {\n self.refresh();\n self.process();\n self.$resizeTimeout = null;\n }, self.$config.throttle);\n }\n };\n\n if (type === 'scroll') {\n if (!this.$scrollerObserver) {\n // Just in case we are added to the DOM before the scroll target is\n // We re-instantiate our listeners, just in case\n this.listen();\n }\n\n this.process();\n } else if (/(resize|orientationchange|mutation|refresh)/.test(type)) {\n // Postpone these events by throttle time\n resizeThrottle();\n }\n } // Refresh the list of target links on the element we are applied to\n\n }, {\n key: \"refresh\",\n value: function refresh() {\n var _this4 = this;\n\n var scroller = this.getScroller();\n\n if (!scroller) {\n return;\n }\n\n var autoMethod = scroller !== scroller.window ? OffsetMethod.POSITION : OffsetMethod.OFFSET;\n var method = this.$config.method === 'auto' ? autoMethod : this.$config.method;\n var methodFn = method === OffsetMethod.POSITION ? position : offset;\n var offsetBase = method === OffsetMethod.POSITION ? this.getScrollTop() : 0;\n this.$offsets = [];\n this.$targets = [];\n this.$scrollHeight = this.getScrollHeight(); // Find all the unique link HREFs that we will control\n\n selectAll(this.$selector, this.$el) // Get HREF value\n .map(function (link) {\n return getAttr(link, 'href');\n }) // Filter out HREFs that do not match our RegExp\n .filter(function (href) {\n return href && HREF_REGEX.test(href || '');\n }) // Find all elements with ID that match HREF hash\n .map(function (href) {\n // Convert HREF into an ID (including # at beginning)\n var id = href.replace(HREF_REGEX, '$1').trim();\n\n if (!id) {\n return null;\n } // Find the element with the ID specified by id\n\n\n var el = select(id, scroller);\n\n if (el && isVisible(el)) {\n return {\n offset: toInteger(methodFn(el).top, 0) + offsetBase,\n target: id\n };\n }\n\n return null;\n }).filter(Boolean) // Sort them by their offsets (smallest first)\n .sort(function (a, b) {\n return a.offset - b.offset;\n }) // record only unique targets/offsets\n .reduce(function (memo, item) {\n if (!memo[item.target]) {\n _this4.$offsets.push(item.offset);\n\n _this4.$targets.push(item.target);\n\n memo[item.target] = true;\n }\n\n return memo;\n }, {}); // Return this for easy chaining\n\n return this;\n } // Handle activating/clearing\n\n }, {\n key: \"process\",\n value: function process() {\n var scrollTop = this.getScrollTop() + this.$config.offset;\n var scrollHeight = this.getScrollHeight();\n var maxScroll = this.$config.offset + scrollHeight - this.getOffsetHeight();\n\n if (this.$scrollHeight !== scrollHeight) {\n this.refresh();\n }\n\n if (scrollTop >= maxScroll) {\n var target = this.$targets[this.$targets.length - 1];\n\n if (this.$activeTarget !== target) {\n this.activate(target);\n }\n\n return;\n }\n\n if (this.$activeTarget && scrollTop < this.$offsets[0] && this.$offsets[0] > 0) {\n this.$activeTarget = null;\n this.clear();\n return;\n }\n\n for (var i = this.$offsets.length; i--;) {\n var isActiveTarget = this.$activeTarget !== this.$targets[i] && scrollTop >= this.$offsets[i] && (isUndefined(this.$offsets[i + 1]) || scrollTop < this.$offsets[i + 1]);\n\n if (isActiveTarget) {\n this.activate(this.$targets[i]);\n }\n }\n }\n }, {\n key: \"getScroller\",\n value: function getScroller() {\n if (this.$scroller) {\n return this.$scroller;\n }\n\n var scroller = this.$config.element;\n\n if (!scroller) {\n return null;\n } else if (isElement(scroller.$el)) {\n scroller = scroller.$el;\n } else if (isString(scroller)) {\n scroller = select(scroller);\n }\n\n if (!scroller) {\n return null;\n }\n\n this.$scroller = scroller.tagName === 'BODY' ? window : scroller;\n return this.$scroller;\n }\n }, {\n key: \"getScrollTop\",\n value: function getScrollTop() {\n var scroller = this.getScroller();\n return scroller === window ? scroller.pageYOffset : scroller.scrollTop;\n }\n }, {\n key: \"getScrollHeight\",\n value: function getScrollHeight() {\n return this.getScroller().scrollHeight || mathMax(document.body.scrollHeight, document.documentElement.scrollHeight);\n }\n }, {\n key: \"getOffsetHeight\",\n value: function getOffsetHeight() {\n var scroller = this.getScroller();\n return scroller === window ? window.innerHeight : getBCR(scroller).height;\n }\n }, {\n key: \"activate\",\n value: function activate(target) {\n var _this5 = this;\n\n this.$activeTarget = target;\n this.clear(); // Grab the list of target links ()\n\n var links = selectAll(this.$selector // Split out the base selectors\n .split(',') // Map to a selector that matches links with HREF ending in the ID (including '#')\n .map(function (selector) {\n return \"\".concat(selector, \"[href$=\\\"\").concat(target, \"\\\"]\");\n }) // Join back into a single selector string\n .join(','), this.$el);\n links.forEach(function (link) {\n if (hasClass(link, ClassName.DROPDOWN_ITEM)) {\n // This is a dropdown item, so find the .dropdown-toggle and set its state\n var dropdown = closest(Selector.DROPDOWN, link);\n\n if (dropdown) {\n _this5.setActiveState(select(Selector.DROPDOWN_TOGGLE, dropdown), true);\n } // Also set this link's state\n\n\n _this5.setActiveState(link, true);\n } else {\n // Set triggered link as active\n _this5.setActiveState(link, true);\n\n if (matches(link.parentElement, Selector.NAV_ITEMS)) {\n // Handle nav-link inside nav-item, and set nav-item active\n _this5.setActiveState(link.parentElement, true);\n } // Set triggered links parents as active\n // With both