{"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/helpers/bv-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","findIconComponent","ctx","iconName","components","$options","iconComponent","$parent","iconProps","props","icon","BIcon","extend","name","functional","render","h","_ref","data","parent","replace","concat","PROP","MOUSEENTER","MOUSELEAVE","createListener","handler","listener","event","type","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","config","title","undefined","trigger","placement","fallbackPlacement","container","animation","offset","id","html","interactive","disabled","delay","boundary","String","boundaryPadding","variant","customClass","attrs","show","hide","arg","modifiers","mod","test","slice","selectedTriggers","join","trim","toLowerCase","split","applyTooltip","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","NAME","CLASS_NAME_DROPDOWN_ITEM","CLASS_NAME_ACTIVE","SELECTOR_NAV_LIST_GROUP","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_DROPDOWN","SELECTOR_DROPDOWN_ITEMS","SELECTOR_DROPDOWN_TOGGLE","ROOT_EVENT_NAME_ACTIVATE","METHOD_OFFSET","METHOD_POSITION","Default","element","method","throttle","DefaultType","TransitionEndEvents","match","componentName","configTypes","property","expectedTypes","valueType","_isVue","RegExp","warn","BVScrollSpy","$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","eventName","setObservers","handleEvent","_this2","_this3","disconnect","subtree","childList","attributes","attributeFilter","characterData","resizeThrottle","setTimeout","refresh","process","_this4","autoMethod","methodFn","offsetBase","getScrollTop","getScrollHeight","map","link","href","top","identity","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","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","STYLE_OVERFLOW_ANCHOR","ROOT_ACTION_EVENT_NAME_TOGGLE","ROOT_EVENT_NAME_STATE","ROOT_EVENT_NAME_SYNC_STATE","ROOT_ACTION_EVENT_NAME_REQUEST_STATE","KEYDOWN_KEY_CODES","isNonStandardTag","getTargets","targets","t","index","arr","indexOf","removeClickListener","addClickListener","keyCode","removeRootListeners","$off","addRootListeners","state","setToggleState","resetProp","handleUpdate","binding","VBToggle","updated","OBSERVER_PROP_NAME","VisibilityObserver","options","callback","margin","once","observer","visible","doneOnce","createObserver","stop","IntersectionObserver","root","rootMargin","threshold","_unused","observe","entries","entry","isIntersecting","Boolean","intersectionRatio","destroy","_prevModifiers","_ref2","BASE_ATTRS","viewBox","width","focusable","role","STACKED_ATTRS","content","flipH","flipV","fontScale","rotate","scale","shiftH","shiftV","stacked","BVIconBase","_class","children","hasScale","hasTransforms","hasShift","hasContent","transforms","$inner","transform","domProps","innerHTML","$title","$content","staticClass","class","style","fontSize","xmlns","fill","VBTooltipPlugin","BV_POPOVER","applyPopover","removePopover","VBHoverPlugin","VBModalPlugin","VBModal","ROOT_ACTION_EVENT_NAME_SHOW","PROPERTY","getTarget","_ref$modifiers","reverse","getTriggerElement","setRole","currentTarget","oldProp","VBTogglePlugin","directivesPlugin","plugins","makeIcon","kebabName","iconNameClass","iconTitle","svgContent"],"mappings":"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","file":"js/chunk-vendors~f8ef863f.0f778212.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, mergeData } from '../vue';\nimport { NAME_ICON } from '../constants/components';\nimport { PROP_TYPE_STRING } from '../constants/props';\nimport { RX_ICON_PREFIX } from '../constants/regex';\nimport { omit, sortKeys } from '../utils/object';\nimport { makeProp, makePropsConfigurable, pluckProps } from '../utils/props';\nimport { pascalCase, trim } from '../utils/string';\nimport { BIconBlank } from './icons';\nimport { props as BVIconBaseProps } from './helpers/icon-base'; // --- Helper methods ---\n\nvar findIconComponent = function findIconComponent(ctx, iconName) {\n if (!ctx) {\n return null;\n }\n\n var components = (ctx.$options || {}).components;\n var iconComponent = components[iconName];\n return iconComponent || findIconComponent(ctx.$parent, iconName);\n}; // --- Props ---\n\n\nvar iconProps = omit(BVIconBaseProps, ['content']);\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, iconProps), {}, {\n icon: makeProp(PROP_TYPE_STRING)\n})), NAME_ICON); // --- Main component ---\n// Helper BIcon component\n// Requires the requested icon component to be installed\n// @vue/component\n\nexport var BIcon = /*#__PURE__*/Vue.extend({\n name: NAME_ICON,\n functional: true,\n props: props,\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, ''); // 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 return h(icon ? findIconComponent(parent, \"BIcon\".concat(icon)) || BIconBlank : BIconBlank, mergeData(data, {\n props: pluckProps(iconProps, props)\n }));\n }\n});","// v-b-hover directive\nimport { IS_BROWSER } from '../../constants/env';\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../../constants/events';\nimport { eventOnOff } from '../../utils/events';\nimport { isFunction } from '../../utils/inspect'; // --- Constants ---\n\nvar PROP = '__BV_hover_handler__';\nvar MOUSEENTER = 'mouseenter';\nvar MOUSELEAVE = 'mouseleave'; // --- Helper methods ---\n\nvar createListener = function createListener(handler) {\n var listener = function listener(event) {\n handler(event.type === MOUSEENTER, event);\n };\n\n listener.fn = handler;\n return listener;\n};\n\nvar updateListeners = function updateListeners(on, el, listener) {\n eventOnOff(on, el, MOUSEENTER, listener, EVENT_OPTIONS_NO_CAPTURE);\n eventOnOff(on, el, MOUSELEAVE, listener, EVENT_OPTIONS_NO_CAPTURE);\n}; // --- Directive bind/unbind/update handler ---\n\n\nvar directive = function directive(el, _ref) {\n var _ref$value = _ref.value,\n handler = _ref$value === void 0 ? null : _ref$value;\n\n if (IS_BROWSER) {\n var listener = el[PROP];\n var hasListener = isFunction(listener);\n var handlerChanged = !(hasListener && listener.fn === handler);\n\n if (hasListener && handlerChanged) {\n updateListeners(false, el, listener);\n delete el[PROP];\n }\n\n if (isFunction(handler) && handlerChanged) {\n el[PROP] = createListener(handler);\n updateListeners(true, el, el[PROP]);\n }\n }\n}; // VBHover directive\n\n\nexport var VBHover = {\n bind: directive,\n componentUpdated: directive,\n unbind: function unbind(el) {\n directive(el, {\n value: null\n });\n }\n};","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 { NAME_TOOLTIP } from '../../constants/components';\nimport { IS_BROWSER } from '../../constants/env';\nimport { EVENT_NAME_SHOW } from '../../constants/events';\nimport { concat } from '../../utils/array';\nimport { getComponentConfig } from '../../utils/config';\nimport { getScopeId } from '../../utils/get-scope-id';\nimport { identity } from '../../utils/identity';\nimport { isFunction, isNumber, isPlainObject, isString, isUndefined, isUndefinedOrNull } from '../../utils/inspect';\nimport { looseEqual } from '../../utils/loose-equal';\nimport { toInteger } from '../../utils/number';\nimport { keys } from '../../utils/object';\nimport { BVTooltip } from '../../components/tooltip/helpers/bv-tooltip'; // Key which we use to store tooltip object on element\n\nvar BV_TOOLTIP = '__BV_Tooltip__'; // Default trigger\n\nvar DefaultTrigger = 'hover focus'; // Valid event triggers\n\nvar validTriggers = {\n focus: true,\n hover: true,\n click: true,\n blur: true,\n manual: true\n}; // Directive modifier test regular expressions. Pre-compile for performance\n\nvar htmlRE = /^html$/i;\nvar noninteractiveRE = /^noninteractive$/i;\nvar noFadeRE = /^nofade$/i;\nvar placementRE = /^(auto|top(left|right)?|bottom(left|right)?|left(top|bottom)?|right(top|bottom)?)$/i;\nvar boundaryRE = /^(window|viewport|scrollParent)$/i;\nvar delayRE = /^d\\d+$/i;\nvar delayShowRE = /^ds\\d+$/i;\nvar delayHideRE = /^dh\\d+$/i;\nvar offsetRE = /^o-?\\d+$/i;\nvar variantRE = /^v-.+$/i;\nvar spacesRE = /\\s+/; // Build a Tooltip config based on bindings (if any)\n// Arguments and modifiers take precedence over passed value config object\n\nvar parseBindings = function parseBindings(bindings, vnode)\n/* istanbul ignore next: not easy to test */\n{\n // We start out with a basic config\n var config = {\n title: undefined,\n trigger: '',\n // Default set below if needed\n placement: 'top',\n fallbackPlacement: 'flip',\n container: false,\n // Default of body\n animation: true,\n offset: 0,\n id: null,\n html: false,\n interactive: true,\n disabled: false,\n delay: getComponentConfig(NAME_TOOLTIP, 'delay', 50),\n boundary: String(getComponentConfig(NAME_TOOLTIP, 'boundary', 'scrollParent')),\n boundaryPadding: toInteger(getComponentConfig(NAME_TOOLTIP, 'boundaryPadding', 5), 0),\n variant: getComponentConfig(NAME_TOOLTIP, 'variant'),\n customClass: getComponentConfig(NAME_TOOLTIP, 'customClass')\n }; // Process `bindings.value`\n\n if (isString(bindings.value) || isNumber(bindings.value)) {\n // Value is tooltip content (HTML optionally supported)\n config.title = bindings.value;\n } else if (isFunction(bindings.value)) {\n // Title generator function\n config.title = bindings.value;\n } else if (isPlainObject(bindings.value)) {\n // Value is config object, so merge\n config = _objectSpread(_objectSpread({}, config), bindings.value);\n } // If title is not provided, try title attribute\n\n\n if (isUndefined(config.title)) {\n // Try attribute\n var data = vnode.data || {};\n config.title = data.attrs && !isUndefinedOrNull(data.attrs.title) ? data.attrs.title : undefined;\n } // Normalize delay\n\n\n if (!isPlainObject(config.delay)) {\n config.delay = {\n show: toInteger(config.delay, 0),\n hide: toInteger(config.delay, 0)\n };\n } // If argument, assume element ID of container element\n\n\n if (bindings.arg) {\n // Element ID specified as arg\n // We must prepend '#' to become a CSS selector\n config.container = \"#\".concat(bindings.arg);\n } // Process modifiers\n\n\n keys(bindings.modifiers).forEach(function (mod) {\n if (htmlRE.test(mod)) {\n // Title allows HTML\n config.html = true;\n } else if (noninteractiveRE.test(mod)) {\n // Noninteractive\n config.interactive = false;\n } else if (noFadeRE.test(mod)) {\n // No animation\n config.animation = false;\n } else if (placementRE.test(mod)) {\n // Placement of tooltip\n config.placement = mod;\n } else if (boundaryRE.test(mod)) {\n // Boundary of tooltip\n mod = mod === 'scrollparent' ? 'scrollParent' : mod;\n config.boundary = mod;\n } else if (delayRE.test(mod)) {\n // Delay value\n var delay = toInteger(mod.slice(1), 0);\n config.delay.show = delay;\n config.delay.hide = delay;\n } else if (delayShowRE.test(mod)) {\n // Delay show value\n config.delay.show = toInteger(mod.slice(2), 0);\n } else if (delayHideRE.test(mod)) {\n // Delay hide value\n config.delay.hide = toInteger(mod.slice(2), 0);\n } else if (offsetRE.test(mod)) {\n // Offset value, negative allowed\n config.offset = toInteger(mod.slice(1), 0);\n } else if (variantRE.test(mod)) {\n // Variant\n config.variant = mod.slice(2) || null;\n }\n }); // Special handling of event trigger modifiers trigger is\n // a space separated list\n\n var selectedTriggers = {}; // Parse current config object trigger\n\n concat(config.trigger || '').filter(identity).join(' ').trim().toLowerCase().split(spacesRE).forEach(function (trigger) {\n if (validTriggers[trigger]) {\n selectedTriggers[trigger] = true;\n }\n }); // Parse modifiers for triggers\n\n keys(bindings.modifiers).forEach(function (mod) {\n mod = mod.toLowerCase();\n\n if (validTriggers[mod]) {\n // If modifier is a valid trigger\n selectedTriggers[mod] = true;\n }\n }); // Sanitize triggers\n\n config.trigger = keys(selectedTriggers).join(' ');\n\n if (config.trigger === 'blur') {\n // Blur by itself is useless, so convert it to 'focus'\n config.trigger = 'focus';\n }\n\n if (!config.trigger) {\n // Use default trigger\n config.trigger = DefaultTrigger;\n } // Return the config\n\n\n return config;\n}; // Add/update Tooltip on our element\n\n\nvar applyTooltip = function applyTooltip(el, bindings, vnode) {\n if (!IS_BROWSER) {\n /* istanbul ignore next */\n return;\n }\n\n var config = parseBindings(bindings, vnode);\n\n if (!el[BV_TOOLTIP]) {\n var $parent = vnode.context;\n el[BV_TOOLTIP] = new BVTooltip({\n parent: $parent,\n // Add the parent's scoped style attribute data\n _scopeId: getScopeId($parent, undefined)\n });\n el[BV_TOOLTIP].__bv_prev_data__ = {};\n el[BV_TOOLTIP].$on(EVENT_NAME_SHOW, function ()\n /* istanbul ignore next: for now */\n {\n // Before showing the tooltip, we update the title if it is a function\n if (isFunction(config.title)) {\n el[BV_TOOLTIP].updateData({\n title: config.title(el)\n });\n }\n });\n }\n\n var data = {\n title: config.title,\n triggers: config.trigger,\n placement: config.placement,\n fallbackPlacement: config.fallbackPlacement,\n variant: config.variant,\n customClass: config.customClass,\n container: config.container,\n boundary: config.boundary,\n delay: config.delay,\n offset: config.offset,\n noFade: !config.animation,\n id: config.id,\n interactive: config.interactive,\n disabled: config.disabled,\n html: config.html\n };\n var oldData = el[BV_TOOLTIP].__bv_prev_data__;\n el[BV_TOOLTIP].__bv_prev_data__ = data;\n\n if (!looseEqual(data, oldData)) {\n // We only update the instance if data has changed\n var newData = {\n target: el\n };\n keys(data).forEach(function (prop) {\n // We only pass data properties that have changed\n if (data[prop] !== oldData[prop]) {\n // if title is a function, we execute it here\n newData[prop] = prop === 'title' && isFunction(data[prop]) ? data[prop](el) : data[prop];\n }\n });\n el[BV_TOOLTIP].updateData(newData);\n }\n}; // Remove Tooltip on our element\n\n\nvar removeTooltip = function removeTooltip(el) {\n if (el[BV_TOOLTIP]) {\n el[BV_TOOLTIP].$destroy();\n el[BV_TOOLTIP] = null;\n }\n\n delete el[BV_TOOLTIP];\n}; // Export our directive\n\n\nexport var VBTooltip = {\n bind: function bind(el, bindings, vnode) {\n applyTooltip(el, bindings, vnode);\n },\n // We use `componentUpdated` here instead of `update`, as the former\n // waits until the containing component and children have finished updating\n componentUpdated: function componentUpdated(el, bindings, vnode) {\n // Performed in a `$nextTick()` to prevent render update loops\n vnode.context.$nextTick(function () {\n applyTooltip(el, bindings, vnode);\n });\n },\n unbind: function unbind(el) {\n removeTooltip(el);\n }\n};","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 { EVENT_OPTIONS_NO_CAPTURE } from '../../../constants/events';\nimport { RX_HREF } from '../../../constants/regex';\nimport { addClass, closest, getAttr, getBCR, hasClass, isElement, isVisible, matches, offset, position, removeClass, select, selectAll } from '../../../utils/dom';\nimport { getRootEventName, eventOn, eventOff } from '../../../utils/events';\nimport { identity } from '../../../utils/identity';\nimport { isString, isUndefined } from '../../../utils/inspect';\nimport { mathMax } from '../../../utils/math';\nimport { toInteger } from '../../../utils/number';\nimport { hasOwnProperty, toString as objectToString } from '../../../utils/object';\nimport { observeDom } from '../../../utils/observe-dom';\nimport { warn } from '../../../utils/warn';\n/*\n * Constants / Defaults\n */\n\nvar NAME = 'v-b-scrollspy';\nvar CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item';\nvar CLASS_NAME_ACTIVE = 'active';\nvar SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';\nvar SELECTOR_NAV_LINKS = '.nav-link';\nvar SELECTOR_NAV_ITEMS = '.nav-item';\nvar SELECTOR_LIST_ITEMS = '.list-group-item';\nvar SELECTOR_DROPDOWN = '.dropdown, .dropup';\nvar SELECTOR_DROPDOWN_ITEMS = '.dropdown-item';\nvar SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';\nvar ROOT_EVENT_NAME_ACTIVATE = getRootEventName('BVScrollspy', 'activate');\nvar METHOD_OFFSET = 'offset';\nvar METHOD_POSITION = 'position';\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}; // 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\nexport var BVScrollSpy\n/* istanbul ignore next: not easy to test */\n= /*#__PURE__*/function () {\n function BVScrollSpy(element, config, $root) {\n _classCallCheck(this, BVScrollSpy);\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(BVScrollSpy, [{\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 (eventName) {\n eventOn(window, eventName, _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 (eventName) {\n eventOff(window, eventName, _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(event) {\n var type = isString(event) ? event : event.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 ? METHOD_POSITION : METHOD_OFFSET;\n var method = this.$config.method === 'auto' ? autoMethod : this.$config.method;\n var methodFn = method === METHOD_POSITION ? position : offset;\n var offsetBase = method === METHOD_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 && RX_HREF.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(RX_HREF, '$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(identity) // 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, CLASS_NAME_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