aboutsummaryrefslogtreecommitdiff
path: root/dist/js/bootstrap.js.map
diff options
context:
space:
mode:
authorXhmikosR <[email protected]>2021-08-18 07:29:56 +0300
committerGitHub <[email protected]>2021-08-18 07:29:56 +0300
commit433a148c9e61aa942801fd8101dfa5c4045fdaed (patch)
treef41db59fd06019169df5ea0338213ec0e298f226 /dist/js/bootstrap.js.map
parentb97cfa163b5098db70e03b27c91fca5dde9c267e (diff)
parent18b3e1ac71f73d006756684a285c5a818e2d1454 (diff)
downloadbootstrap-global-focus-vars.tar.xz
bootstrap-global-focus-vars.zip
Merge branch 'main' into global-focus-varsglobal-focus-vars
Diffstat (limited to 'dist/js/bootstrap.js.map')
-rw-r--r--dist/js/bootstrap.js.map2
1 files changed, 1 insertions, 1 deletions
diff --git a/dist/js/bootstrap.js.map b/dist/js/bootstrap.js.map
index d667e1399..dff3dc468 100644
--- a/dist/js/bootstrap.js.map
+++ b/dist/js/bootstrap.js.map
@@ -1 +1 @@
-{"version":3,"file":"bootstrap.js","sources":["../../js/src/util/index.js","../../js/src/dom/data.js","../../js/src/dom/event-handler.js","../../js/src/base-component.js","../../js/src/alert.js","../../js/src/button.js","../../js/src/dom/manipulator.js","../../js/src/dom/selector-engine.js","../../js/src/carousel.js","../../js/src/collapse.js","../../js/src/dropdown.js","../../js/src/modal.js","../../js/src/util/sanitizer.js","../../js/src/tooltip.js","../../js/src/popover.js","../../js/src/scrollspy.js","../../js/src/tab.js","../../js/src/toast.js","../../js/index.umd.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = '#' + hrefAttr.split('#')[1]\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => (obj[0] || obj).nodeType\n\nconst emulateTransitionEnd = (element, duration) => {\n let called = false\n const durationPadding = 5\n const emulatedDuration = duration + durationPadding\n\n function listener() {\n called = true\n element.removeEventListener(TRANSITION_END, listener)\n }\n\n element.addEventListener(TRANSITION_END, listener)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(element)\n }\n }, emulatedDuration)\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: ` +\n `Option \"${property}\" provided type \"${valueType}\" ` +\n `but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!element) {\n return false\n }\n\n if (element.style && element.parentNode && element.parentNode.style) {\n const elementStyle = getComputedStyle(element)\n const parentNodeStyle = getComputedStyle(element.parentNode)\n\n return elementStyle.display !== 'none' &&\n parentNodeStyle.display !== 'none' &&\n elementStyle.visibility !== 'hidden'\n }\n\n return false\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => function () {}\n\nconst reflow = element => element.offsetHeight\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n document.addEventListener('DOMContentLoaded', callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = (name, plugin) => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nexport {\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n emulateTransitionEnd,\n typeCheckConfig,\n isVisible,\n findShadowRoot,\n noop,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst mapData = (() => {\n const storeData = {}\n let id = 1\n return {\n set(element, key, data) {\n if (typeof element.bsKey === 'undefined') {\n element.bsKey = {\n key,\n id\n }\n id++\n }\n\n storeData[element.bsKey.id] = data\n },\n get(element, key) {\n if (!element || typeof element.bsKey === 'undefined') {\n return null\n }\n\n const keyProperties = element.bsKey\n if (keyProperties.key === key) {\n return storeData[keyProperties.id]\n }\n\n return null\n },\n delete(element, key) {\n if (typeof element.bsKey === 'undefined') {\n return\n }\n\n const keyProperties = element.bsKey\n if (keyProperties.key === key) {\n delete storeData[keyProperties.id]\n delete element.bsKey\n }\n }\n }\n})()\n\nconst Data = {\n setData(instance, key, data) {\n mapData.set(instance, key, data)\n },\n getData(instance, key) {\n return mapData.get(instance, key)\n },\n removeData(instance, key) {\n mapData.delete(instance, key)\n }\n}\n\nexport default Data\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n let typeEvent = originalTypeEvent.replace(stripNameRegex, '')\n const custom = customEvents[typeEvent]\n\n if (custom) {\n typeEvent = custom\n }\n\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = event.replace(stripNameRegex, '')\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.0.0-beta2'\n\nclass BaseComponent {\n constructor(element) {\n if (!element) {\n return\n }\n\n this._element = element\n Data.setData(element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.removeData(this._element, this.constructor.DATA_KEY)\n this._element = null\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.getData(element, this.DATA_KEY)\n }\n\n static get VERSION() {\n return VERSION\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n emulateTransitionEnd,\n getElementFromSelector,\n getTransitionDurationFromElement\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DISMISS = '[data-bs-dismiss=\"alert\"]'\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_ALERT = 'alert'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n // Public\n\n close(element) {\n const rootElement = element ? this._getRootElement(element) : this._element\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent === null || customEvent.defaultPrevented) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n // Private\n\n _getRootElement(element) {\n return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`)\n }\n\n _triggerCloseEvent(element) {\n return EventHandler.trigger(element, EVENT_CLOSE)\n }\n\n _removeElement(element) {\n element.classList.remove(CLASS_NAME_SHOW)\n\n if (!element.classList.contains(CLASS_NAME_FADE)) {\n this._destroyElement(element)\n return\n }\n\n const transitionDuration = getTransitionDurationFromElement(element)\n\n EventHandler.one(element, 'transitionend', () => this._destroyElement(element))\n emulateTransitionEnd(element, transitionDuration)\n }\n\n _destroyElement(element) {\n if (element.parentNode) {\n element.parentNode.removeChild(element)\n }\n\n EventHandler.trigger(element, EVENT_CLOSED)\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n let data = Data.getData(this, DATA_KEY)\n\n if (!data) {\n data = new Alert(this)\n }\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert.handleDismiss(new Alert()))\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(NAME, Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n let data = Data.getData(this, DATA_KEY)\n\n if (!data) {\n data = new Button(this)\n }\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n\n let data = Data.getData(button, DATA_KEY)\n if (!data) {\n data = new Button(button)\n }\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(NAME, Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n }\n}\n\nexport default SelectorEngine\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n emulateTransitionEnd,\n getElementFromSelector,\n getTransitionDurationFromElement,\n isVisible,\n isRTL,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst DIRECTION_NEXT = 'next'\nconst DIRECTION_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n // Public\n\n next() {\n if (!this._isSliding) {\n this._slide(DIRECTION_NEXT)\n }\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n if (!this._isSliding) {\n this._slide(DIRECTION_PREV)\n }\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const direction = index > activeIndex ?\n DIRECTION_NEXT :\n DIRECTION_PREV\n\n this._slide(direction, this._items[index])\n }\n\n dispose() {\n super.dispose()\n EventHandler.off(this._element, EVENT_KEY)\n\n this._items = null\n this._config = null\n this._interval = null\n this._isPaused = null\n this._isSliding = null\n this._activeElement = null\n this._indicatorsElement = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n // swipe left\n if (direction > 0) {\n if (isRTL) {\n this.next()\n } else {\n this.prev()\n }\n }\n\n // swipe right\n if (direction < 0) {\n if (isRTL) {\n this.prev()\n } else {\n this.next()\n }\n }\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n if (event.touches && event.touches.length > 1) {\n this.touchDeltaX = 0\n } else {\n this.touchDeltaX = event.touches[0].clientX - this.touchStartX\n }\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n if (event.key === ARROW_LEFT_KEY) {\n event.preventDefault()\n if (isRTL) {\n this.next()\n } else {\n this.prev()\n }\n } else if (event.key === ARROW_RIGHT_KEY) {\n event.preventDefault()\n if (isRTL) {\n this.prev()\n } else {\n this.next()\n }\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByDirection(direction, activeElement) {\n const isNextDirection = direction === DIRECTION_NEXT\n const isPrevDirection = direction === DIRECTION_PREV\n const activeIndex = this._getItemIndex(activeElement)\n const lastItemIndex = this._items.length - 1\n const isGoingToWrap = (isPrevDirection && activeIndex === 0) ||\n (isNextDirection && activeIndex === lastItemIndex)\n\n if (isGoingToWrap && !this._config.wrap) {\n return activeElement\n }\n\n const delta = direction === DIRECTION_PREV ? -1 : 1\n const itemIndex = (activeIndex + delta) % this._items.length\n\n return itemIndex === -1 ?\n this._items[this._items.length - 1] :\n this._items[itemIndex]\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(direction, element) {\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || (activeElement && this._getItemByDirection(direction, activeElement))\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const directionalClassName = direction === DIRECTION_NEXT ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = direction === DIRECTION_NEXT ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = direction === DIRECTION_NEXT ? DIRECTION_LEFT : DIRECTION_RIGHT\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const transitionDuration = getTransitionDurationFromElement(activeElement)\n\n EventHandler.one(activeElement, 'transitionend', () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(() => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }, 0)\n })\n\n emulateTransitionEnd(activeElement, transitionDuration)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n // Static\n\n static carouselInterface(element, config) {\n let data = Data.getData(element, DATA_KEY)\n let _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element)\n }\n\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (!data) {\n data = new Carousel(element, _config)\n }\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Data.getData(target, DATA_KEY).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Data.getData(carousels[i], DATA_KEY))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(NAME, Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n emulateTransitionEnd,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n isElement,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: ''\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(string|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = SelectorEngine.find(\n `${SELECTOR_DATA_TOGGLE}[href=\"#${element.id}\"],` +\n `${SELECTOR_DATA_TOGGLE}[data-bs-target=\"#${element.id}\"]`\n )\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n // Public\n\n toggle() {\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent)\n .filter(elem => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-bs-parent') === this._config.parent\n }\n\n return elem.classList.contains(CLASS_NAME_COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Data.getData(tempActiveData, DATA_KEY) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n if (actives) {\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.collapseInterface(elemActive, 'hide')\n }\n\n if (!activesData) {\n Data.setData(elemActive, DATA_KEY, null)\n }\n })\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n this._triggerArray.forEach(element => {\n element.classList.remove(CLASS_NAME_COLLAPSED)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n const transitionDuration = getTransitionDurationFromElement(this._element)\n\n EventHandler.one(this._element, 'transitionend', complete)\n\n emulateTransitionEnd(this._element, transitionDuration)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) {\n trigger.classList.add(CLASS_NAME_COLLAPSED)\n trigger.setAttribute('aria-expanded', false)\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n const transitionDuration = getTransitionDurationFromElement(this._element)\n\n EventHandler.one(this._element, 'transitionend', complete)\n emulateTransitionEnd(this._element, transitionDuration)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n dispose() {\n super.dispose()\n this._config = null\n this._parent = null\n this._triggerArray = null\n this._isTransitioning = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT\n }\n\n _getParent() {\n let { parent } = this._config\n\n if (isElement(parent)) {\n // it's a jQuery object\n if (typeof parent.jquery !== 'undefined' || typeof parent[0] !== 'undefined') {\n parent = parent[0]\n }\n } else {\n parent = SelectorEngine.findOne(parent)\n }\n\n const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent=\"${parent}\"]`\n\n SelectorEngine.find(selector, parent)\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n this._addAriaAndCollapsedClass(\n selected,\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (!element || !triggerArray.length) {\n return\n }\n\n const isOpen = element.classList.contains(CLASS_NAME_SHOW)\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static collapseInterface(element, config) {\n let data = Data.getData(element, DATA_KEY)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Collapse.collapseInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const triggerData = Manipulator.getDataAttributes(this)\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n const data = Data.getData(element, DATA_KEY)\n let config\n if (data) {\n // update parent attribute\n if (data._parent === null && typeof triggerData.parent === 'string') {\n data._config.parent = triggerData.parent\n data._parent = data._getParent()\n }\n\n config = 'toggle'\n } else {\n config = triggerData\n }\n\n Collapse.collapseInterface(element, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(NAME, Collapse)\n\nexport default Collapse\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isElement,\n isVisible,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DISABLED = 'disabled'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_FORM_CHILD = '.dropdown form'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n flip: true,\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n flip: 'boolean',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n // Public\n\n toggle() {\n if (this._element.disabled || this._element.classList.contains(CLASS_NAME_DISABLED)) {\n return\n }\n\n const isActive = this._element.classList.contains(CLASS_NAME_SHOW)\n\n Dropdown.clearMenus()\n\n if (isActive) {\n return\n }\n\n this.show()\n }\n\n show() {\n if (this._element.disabled || this._element.classList.contains(CLASS_NAME_DISABLED) || this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = this._config.reference\n\n // Check if it's jQuery element\n if (typeof this._config.reference.jquery !== 'undefined') {\n referenceElement = this._config.reference[0]\n }\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', null, noop()))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (this._element.disabled || this._element.classList.contains(CLASS_NAME_DISABLED) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n dispose() {\n super.dispose()\n EventHandler.off(this._element, EVENT_KEY)\n this._menu = null\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK, event => {\n event.preventDefault()\n event.stopPropagation()\n this.toggle()\n })\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n altBoundary: this._config.flip,\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n // Static\n\n static dropdownInterface(element, config) {\n let data = Data.getData(element, DATA_KEY)\n const _config = typeof config === 'object' ? config : null\n\n if (!data) {\n data = new Dropdown(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Dropdown.dropdownInterface(this, config)\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Data.getData(toggles[i], DATA_KEY)\n const relatedTarget = {\n relatedTarget: toggles[i]\n }\n\n if (event && event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n\n if (!context) {\n continue\n }\n\n const dropdownMenu = context._menu\n if (!toggles[i].classList.contains(CLASS_NAME_SHOW)) {\n continue\n }\n\n if (event && ((event.type === 'click' &&\n /input|textarea/i.test(event.target.tagName)) ||\n (event.type === 'keyup' && event.key === TAB_KEY)) &&\n dropdownMenu.contains(event.target)) {\n continue\n }\n\n const hideEvent = EventHandler.trigger(toggles[i], EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n continue\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', null, noop()))\n }\n\n toggles[i].setAttribute('aria-expanded', 'false')\n\n if (context._popper) {\n context._popper.destroy()\n }\n\n dropdownMenu.classList.remove(CLASS_NAME_SHOW)\n toggles[i].classList.remove(CLASS_NAME_SHOW)\n Manipulator.removeDataAttribute(dropdownMenu, 'popper')\n EventHandler.trigger(toggles[i], EVENT_HIDDEN, relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (this.disabled || this.classList.contains(CLASS_NAME_DISABLED)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this)\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (event.key === ESCAPE_KEY) {\n const button = this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n button.focus()\n Dropdown.clearMenus()\n return\n }\n\n if (!isActive && (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY)) {\n const button = this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n button.click()\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n return\n }\n\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, parent).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n let index = items.indexOf(event.target)\n\n // Up\n if (event.key === ARROW_UP_KEY && index > 0) {\n index--\n }\n\n // Down\n if (event.key === ARROW_DOWN_KEY && index < items.length - 1) {\n index++\n }\n\n // index is -1 if the first keydown is an ArrowUp\n index = index === -1 ? 0 : index\n\n items[index].focus()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n event.stopPropagation()\n Dropdown.dropdownInterface(this, 'toggle')\n})\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_FORM_CHILD, e => e.stopPropagation())\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(NAME, Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n emulateTransitionEnd,\n getElementFromSelector,\n getTransitionDurationFromElement,\n isVisible,\n isRTL,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SCROLLBAR_MEASURER = 'modal-scrollbar-measure'\nconst CLASS_NAME_BACKDROP = 'modal-backdrop'\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"modal\"]'\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, element)\n this._backdrop = null\n this._isShown = false\n this._isBodyOverflowing = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollbarWidth = 0\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n if (this._element.classList.contains(CLASS_NAME_FADE)) {\n this._isTransitioning = true\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (this._isShown || showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n this._checkScrollbar()\n this._setScrollbar()\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, event => this.hide(event))\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const transition = this._element.classList.contains(CLASS_NAME_FADE)\n\n if (transition) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n if (transition) {\n const transitionDuration = getTransitionDurationFromElement(this._element)\n\n EventHandler.one(this._element, 'transitionend', event => this._hideModal(event))\n emulateTransitionEnd(this._element, transitionDuration)\n } else {\n this._hideModal()\n }\n }\n\n dispose() {\n [window, this._element, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n super.dispose()\n\n /**\n * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `EVENT_CLICK_DATA_API` event that should remain\n */\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._config = null\n this._dialog = null\n this._backdrop = null\n this._isShown = null\n this._isBodyOverflowing = null\n this._ignoreBackdropClick = null\n this._isTransitioning = null\n this._scrollbarWidth = null\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const transition = this._element.classList.contains(CLASS_NAME_FADE)\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (transition) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n if (transition) {\n const transitionDuration = getTransitionDurationFromElement(this._dialog)\n\n EventHandler.one(this._dialog, 'transitionend', transitionComplete)\n emulateTransitionEnd(this._dialog, transitionDuration)\n } else {\n transitionComplete()\n }\n }\n\n _enforceFocus() {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n this._element !== event.target &&\n !this._element.contains(event.target)) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._showBackdrop(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._resetScrollbar()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _removeBackdrop() {\n this._backdrop.parentNode.removeChild(this._backdrop)\n this._backdrop = null\n }\n\n _showBackdrop(callback) {\n const animate = this._element.classList.contains(CLASS_NAME_FADE) ?\n CLASS_NAME_FADE :\n ''\n\n if (this._isShown && this._config.backdrop) {\n this._backdrop = document.createElement('div')\n this._backdrop.className = CLASS_NAME_BACKDROP\n\n if (animate) {\n this._backdrop.classList.add(animate)\n }\n\n document.body.appendChild(this._backdrop)\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n } else {\n this.hide()\n }\n })\n\n if (animate) {\n reflow(this._backdrop)\n }\n\n this._backdrop.classList.add(CLASS_NAME_SHOW)\n\n if (!animate) {\n callback()\n return\n }\n\n const backdropTransitionDuration = getTransitionDurationFromElement(this._backdrop)\n\n EventHandler.one(this._backdrop, 'transitionend', callback)\n emulateTransitionEnd(this._backdrop, backdropTransitionDuration)\n } else if (!this._isShown && this._backdrop) {\n this._backdrop.classList.remove(CLASS_NAME_SHOW)\n\n const callbackRemove = () => {\n this._removeBackdrop()\n callback()\n }\n\n if (this._element.classList.contains(CLASS_NAME_FADE)) {\n const backdropTransitionDuration = getTransitionDurationFromElement(this._backdrop)\n EventHandler.one(this._backdrop, 'transitionend', callbackRemove)\n emulateTransitionEnd(this._backdrop, backdropTransitionDuration)\n } else {\n callbackRemove()\n }\n } else {\n callback()\n }\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n\n if (!isModalOverflowing) {\n this._element.style.overflowY = 'hidden'\n }\n\n this._element.classList.add(CLASS_NAME_STATIC)\n const modalTransitionDuration = getTransitionDurationFromElement(this._dialog)\n EventHandler.off(this._element, 'transitionend')\n EventHandler.one(this._element, 'transitionend', () => {\n this._element.classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n EventHandler.one(this._element, 'transitionend', () => {\n this._element.style.overflowY = ''\n })\n emulateTransitionEnd(this._element, modalTransitionDuration)\n }\n })\n emulateTransitionEnd(this._element, modalTransitionDuration)\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing =\n this._element.scrollHeight > document.documentElement.clientHeight\n\n if ((!this._isBodyOverflowing && isModalOverflowing && !isRTL) || (this._isBodyOverflowing && !isModalOverflowing && isRTL)) {\n this._element.style.paddingLeft = `${this._scrollbarWidth}px`\n }\n\n if ((this._isBodyOverflowing && !isModalOverflowing && !isRTL) || (!this._isBodyOverflowing && isModalOverflowing && isRTL)) {\n this._element.style.paddingRight = `${this._scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n _checkScrollbar() {\n const rect = document.body.getBoundingClientRect()\n this._isBodyOverflowing = Math.round(rect.left + rect.right) < window.innerWidth\n this._scrollbarWidth = this._getScrollbarWidth()\n }\n\n _setScrollbar() {\n if (this._isBodyOverflowing) {\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + this._scrollbarWidth)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - this._scrollbarWidth)\n this._setElementAttributes('body', 'paddingRight', calculatedValue => calculatedValue + this._scrollbarWidth)\n }\n\n document.body.classList.add(CLASS_NAME_OPEN)\n }\n\n _setElementAttributes(selector, styleProp, callback) {\n SelectorEngine.find(selector)\n .forEach(element => {\n const actualValue = element.style[styleProp]\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n element.style[styleProp] = callback(Number.parseFloat(calculatedValue)) + 'px'\n })\n }\n\n _resetScrollbar() {\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n this._resetElementAttributes('body', 'paddingRight')\n }\n\n _resetElementAttributes(selector, styleProp) {\n SelectorEngine.find(selector).forEach(element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined' && element === document.body) {\n element.style[styleProp] = ''\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n })\n }\n\n _getScrollbarWidth() { // thx d.walsh\n const scrollDiv = document.createElement('div')\n scrollDiv.className = CLASS_NAME_SCROLLBAR_MEASURER\n document.body.appendChild(scrollDiv)\n const scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth\n document.body.removeChild(scrollDiv)\n return scrollbarWidth\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n let data = Data.getData(this, DATA_KEY)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(this),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data) {\n data = new Modal(this, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (this.tagName === 'A' || this.tagName === 'AREA') {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n let data = Data.getData(target, DATA_KEY)\n if (!data) {\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n\n data = new Modal(target, config)\n }\n\n data.toggle(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(NAME, Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/gi\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.parentNode.removeChild(el)\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n emulateTransitionEnd,\n findShadowRoot,\n getTransitionDurationFromElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport {\n DefaultAllowlist,\n sanitizeHtml\n} from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this.config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n static get Event() {\n return Event\n }\n\n static get EVENT_KEY() {\n return EVENT_KEY\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.tip && this.tip.parentNode) {\n this.tip.parentNode.removeChild(this.tip)\n }\n\n this._isEnabled = null\n this._timeout = null\n this._hoverState = null\n this._activeTrigger = null\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._popper = null\n this.config = null\n this.tip = null\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this.config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this.config.placement === 'function' ?\n this.config.placement.call(this, tip, this._element) :\n this.config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const container = this._getContainer()\n Data.setData(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.appendChild(tip)\n }\n\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = typeof this.config.customClass === 'function' ? this.config.customClass() : this.config.customClass\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop())\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n if (this.tip.classList.contains(CLASS_NAME_FADE)) {\n const transitionDuration = getTransitionDurationFromElement(this.tip)\n EventHandler.one(this.tip, 'transitionend', complete)\n emulateTransitionEnd(this.tip, transitionDuration)\n } else {\n complete()\n }\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._hoverState !== HOVER_STATE_SHOW && tip.parentNode) {\n tip.parentNode.removeChild(tip)\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n if (this.tip.classList.contains(CLASS_NAME_FADE)) {\n const transitionDuration = getTransitionDurationFromElement(tip)\n\n EventHandler.one(tip, 'transitionend', complete)\n emulateTransitionEnd(tip, transitionDuration)\n } else {\n complete()\n }\n\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this.config.template\n\n this.tip = element.children[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle())\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (typeof content === 'object' && isElement(content)) {\n if (content.jquery) {\n content = content[0]\n }\n\n // content is a DOM node or a jQuery\n if (this.config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.appendChild(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this.config.html) {\n if (this.config.sanitize) {\n content = sanitizeHtml(content, this.config.allowList, this.config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n let title = this._element.getAttribute('data-bs-original-title')\n\n if (!title) {\n title = typeof this.config.title === 'function' ?\n this.config.title.call(this._element) :\n this.config.title\n }\n\n return title\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || Data.getData(event.delegateTarget, dataKey)\n\n if (!context) {\n context = new this.constructor(event.delegateTarget, this._getDelegateConfig())\n Data.setData(event.delegateTarget, dataKey, context)\n }\n\n return context\n }\n\n _getOffset() {\n const { offset } = this.config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n altBoundary: true,\n fallbackPlacements: this.config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this.config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this.config.popperConfig === 'function' ? this.config.popperConfig(defaultBsPopperConfig) : this.config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContainer() {\n if (this.config.container === false) {\n return document.body\n }\n\n if (isElement(this.config.container)) {\n return this.config.container\n }\n\n return SelectorEngine.findOne(this.config.container)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this.config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this.config.selector, event => this.toggle(event)\n )\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this.config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this.config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.config.selector) {\n this.config = {\n ...this.config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context.config.delay || !context.config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context.config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = false\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context.config.delay || !context.config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context.config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n if (config && typeof config.container === 'object' && config.container.jquery) {\n config.container = config.container[0]\n }\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this.config) {\n for (const key in this.config) {\n if (this.constructor.Default[key] !== this.config[key]) {\n config[key] = this.config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n let data = Data.getData(this, DATA_KEY)\n const _config = typeof config === 'object' && config\n\n if (!data && /dispose|hide/.test(config)) {\n return\n }\n\n if (!data) {\n data = new Tooltip(this, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(NAME, Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport Data from './dom/data'\nimport SelectorEngine from './dom/selector-engine'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n static get Event() {\n return Event\n }\n\n static get EVENT_KEY() {\n return EVENT_KEY\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n setContent() {\n const tip = this.getTipElement()\n\n // we use append for html objects to maintain js events\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this._element)\n }\n\n this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n // Private\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContent() {\n return this._element.getAttribute('data-bs-content') || this.config.content\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n let data = Data.getData(this, DATA_KEY)\n const _config = typeof config === 'object' ? config : null\n\n if (!data && /dispose|hide/.test(config)) {\n return\n }\n\n if (!data) {\n data = new Popover(this, _config)\n Data.setData(this, DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(NAME, Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getSelectorFromElement,\n getUID,\n isElement,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._scrollElement = element.tagName === 'BODY' ? window : element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process())\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window ?\n METHOD_OFFSET :\n METHOD_POSITION\n\n const offsetMethod = this._config.method === 'auto' ?\n autoMethod :\n this._config.method\n\n const offsetBase = offsetMethod === METHOD_POSITION ?\n this._getScrollTop() :\n 0\n\n this._offsets = []\n this._targets = []\n this._scrollHeight = this._getScrollHeight()\n\n const targets = SelectorEngine.find(this._selector)\n\n targets.map(element => {\n const targetSelector = getSelectorFromElement(element)\n const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n return [\n Manipulator[offsetMethod](target).top + offsetBase,\n targetSelector\n ]\n }\n }\n\n return null\n })\n .filter(item => item)\n .sort((a, b) => a[0] - b[0])\n .forEach(item => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n super.dispose()\n EventHandler.off(this._scrollElement, EVENT_KEY)\n\n this._scrollElement = null\n this._config = null\n this._selector = null\n this._offsets = null\n this._targets = null\n this._activeTarget = null\n this._scrollHeight = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (typeof config.target !== 'string' && isElement(config.target)) {\n let { id } = config.target\n if (!id) {\n id = getUID(NAME)\n config.target.id = id\n }\n\n config.target = `#${id}`\n }\n\n typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window ?\n this._scrollElement.pageYOffset :\n this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window ?\n window.innerHeight :\n this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const 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 (let i = this._offsets.length; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector.split(',')\n .map(selector => `${selector}[data-bs-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const link = SelectorEngine.findOne(queries.join(','))\n\n if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n\n link.classList.add(CLASS_NAME_ACTIVE)\n } else {\n // Set triggered link as active\n link.classList.add(CLASS_NAME_ACTIVE)\n\n SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP)\n .forEach(listGroup => {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n\n // Handle special case when .nav-link is inside .nav-item\n SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS)\n .forEach(navItem => {\n SelectorEngine.children(navItem, SELECTOR_NAV_LINKS)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n })\n })\n }\n\n EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n SelectorEngine.find(this._selector)\n .filter(node => node.classList.contains(CLASS_NAME_ACTIVE))\n .forEach(node => node.classList.remove(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n let data = Data.getData(this, DATA_KEY)\n const _config = typeof config === 'object' && config\n\n if (!data) {\n data = new ScrollSpy(this, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(SELECTOR_DATA_SPY)\n .forEach(spy => new ScrollSpy(spy, Manipulator.getDataAttributes(spy)))\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .ScrollSpy to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(NAME, ScrollSpy)\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n emulateTransitionEnd,\n getElementFromSelector,\n getTransitionDurationFromElement,\n reflow\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_DISABLED = 'disabled'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_UL = ':scope > li > .active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab extends BaseComponent {\n // Getters\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n // Public\n\n show() {\n if ((this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n this._element.classList.contains(CLASS_NAME_ACTIVE)) ||\n this._element.classList.contains(CLASS_NAME_DISABLED)) {\n return\n }\n\n let previous\n const target = getElementFromSelector(this._element)\n const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE\n previous = SelectorEngine.find(itemSelector, listElement)\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = previous ?\n EventHandler.trigger(previous, EVENT_HIDE, {\n relatedTarget: this._element\n }) :\n null\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget: previous\n })\n\n if (showEvent.defaultPrevented || (hideEvent !== null && hideEvent.defaultPrevented)) {\n return\n }\n\n this._activate(this._element, listElement)\n\n const complete = () => {\n EventHandler.trigger(previous, EVENT_HIDDEN, {\n relatedTarget: this._element\n })\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget: previous\n })\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ?\n SelectorEngine.find(SELECTOR_ACTIVE_UL, container) :\n SelectorEngine.children(container, SELECTOR_ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && active.classList.contains(CLASS_NAME_FADE))\n\n const complete = () => this._transitionComplete(element, active, callback)\n\n if (active && isTransitioning) {\n const transitionDuration = getTransitionDurationFromElement(active)\n active.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.one(active, 'transitionend', complete)\n emulateTransitionEnd(active, transitionDuration)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n active.classList.remove(CLASS_NAME_ACTIVE)\n\n const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode)\n\n if (dropdownChild) {\n dropdownChild.classList.remove(CLASS_NAME_ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n reflow(element)\n\n if (element.classList.contains(CLASS_NAME_FADE)) {\n element.classList.add(CLASS_NAME_SHOW)\n }\n\n if (element.parentNode && element.parentNode.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {\n const dropdownElement = element.closest(SELECTOR_DROPDOWN)\n\n if (dropdownElement) {\n SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE)\n .forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE))\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Data.getData(this, DATA_KEY) || new Tab(this)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n\n const data = Data.getData(this, DATA_KEY) || new Tab(this)\n data.show()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tab to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(NAME, Tab)\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n emulateTransitionEnd,\n getTransitionDurationFromElement,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"toast\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._timeout = null\n this._setListeners()\n }\n\n // Getters\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n // Public\n\n show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n this._element.classList.add(CLASS_NAME_SHOW)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n if (this._config.autohide) {\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE)\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOWING)\n if (this._config.animation) {\n const transitionDuration = getTransitionDurationFromElement(this._element)\n\n EventHandler.one(this._element, 'transitionend', complete)\n emulateTransitionEnd(this._element, transitionDuration)\n } else {\n complete()\n }\n }\n\n hide() {\n if (!this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n if (this._config.animation) {\n const transitionDuration = getTransitionDurationFromElement(this._element)\n\n EventHandler.one(this._element, 'transitionend', complete)\n emulateTransitionEnd(this._element, transitionDuration)\n } else {\n complete()\n }\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n\n super.dispose()\n this._config = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n return config\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n let data = Data.getData(this, DATA_KEY)\n const _config = typeof config === 'object' && config\n\n if (!data) {\n data = new Toast(this, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Toast to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(NAME, Toast)\n\nexport default Toast\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.0-beta2): index.umd.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Alert from './src/alert'\nimport Button from './src/button'\nimport Carousel from './src/carousel'\nimport Collapse from './src/collapse'\nimport Dropdown from './src/dropdown'\nimport Modal from './src/modal'\nimport Popover from './src/popover'\nimport ScrollSpy from './src/scrollspy'\nimport Tab from './src/tab'\nimport Toast from './src/toast'\nimport Tooltip from './src/tooltip'\n\nexport default {\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip\n}\n"],"names":["MAX_UID","MILLISECONDS_MULTIPLIER","TRANSITION_END","toType","obj","undefined","toString","call","match","toLowerCase","getUID","prefix","Math","floor","random","document","getElementById","getSelector","element","selector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","querySelector","getElementFromSelector","getTransitionDurationFromElement","window","getComputedStyle","transitionDuration","transitionDelay","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","triggerTransitionEnd","dispatchEvent","Event","isElement","nodeType","emulateTransitionEnd","duration","called","durationPadding","emulatedDuration","listener","removeEventListener","addEventListener","setTimeout","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","RegExp","test","TypeError","toUpperCase","isVisible","style","parentNode","elementStyle","parentNodeStyle","display","visibility","findShadowRoot","documentElement","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","body","hasAttribute","onDOMContentLoaded","callback","readyState","isRTL","dir","defineJQueryPlugin","name","plugin","$","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","mapData","storeData","id","set","key","data","bsKey","get","keyProperties","delete","Data","setData","instance","getData","removeData","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","nativeEvents","Set","getUidEvent","uid","getEvent","bootstrapHandler","handler","event","delegateTarget","oneOff","EventHandler","off","type","apply","bootstrapDelegationHandler","domElements","querySelectorAll","target","i","length","findHandler","events","delegationSelector","uidEventList","len","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","replace","custom","isNative","has","addHandler","handlers","previousFn","removeHandler","Boolean","removeNamespacedHandlers","namespace","storeElementEvent","handlerKey","on","one","inNamespace","isNamespace","elementEvent","slice","keyHandlers","trigger","args","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","defineProperty","preventDefault","VERSION","BaseComponent","_element","constructor","DATA_KEY","dispose","getInstance","NAME","EVENT_KEY","DATA_API_KEY","SELECTOR_DISMISS","EVENT_CLOSE","EVENT_CLOSED","EVENT_CLICK_DATA_API","CLASS_NAME_ALERT","CLASS_NAME_FADE","CLASS_NAME_SHOW","Alert","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","closest","classList","remove","contains","_destroyElement","removeChild","each","handleDismiss","alertInstance","CLASS_NAME_ACTIVE","SELECTOR_DATA_TOGGLE","Button","toggle","setAttribute","button","normalizeData","val","normalizeDataKey","chr","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","filter","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","scrollTop","left","scrollLeft","position","offsetTop","offsetLeft","NODE_TEXT","SelectorEngine","find","concat","Element","prototype","findOne","children","child","matches","parents","ancestor","Node","ELEMENT_NODE","push","prev","previous","previousElementSibling","next","nextElementSibling","ARROW_LEFT_KEY","ARROW_RIGHT_KEY","TOUCHEVENT_COMPAT_WAIT","SWIPE_THRESHOLD","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","DIRECTION_NEXT","DIRECTION_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","EVENT_SLIDE","EVENT_SLID","EVENT_KEYDOWN","EVENT_MOUSEENTER","EVENT_MOUSELEAVE","EVENT_TOUCHSTART","EVENT_TOUCHMOVE","EVENT_TOUCHEND","EVENT_POINTERDOWN","EVENT_POINTERUP","EVENT_DRAG_START","EVENT_LOAD_DATA_API","CLASS_NAME_CAROUSEL","CLASS_NAME_SLIDE","CLASS_NAME_END","CLASS_NAME_START","CLASS_NAME_NEXT","CLASS_NAME_PREV","CLASS_NAME_POINTER_EVENT","SELECTOR_ACTIVE","SELECTOR_ACTIVE_ITEM","SELECTOR_ITEM","SELECTOR_ITEM_IMG","SELECTOR_NEXT_PREV","SELECTOR_INDICATORS","SELECTOR_INDICATOR","SELECTOR_DATA_SLIDE","SELECTOR_DATA_RIDE","POINTER_TYPE_TOUCH","POINTER_TYPE_PEN","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","index","activeIndex","_getItemIndex","direction","_handleSwipe","absDeltax","abs","_keydown","_addTouchEventListeners","start","pointerType","clientX","touches","move","end","clearTimeout","itemImg","e","add","tagName","indexOf","_getItemByDirection","activeElement","isNextDirection","isPrevDirection","lastItemIndex","isGoingToWrap","delta","itemIndex","_triggerSlideEvent","relatedTarget","eventDirectionName","targetIndex","fromIndex","from","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","slideEvent","carouselInterface","action","ride","dataApiClickHandler","slideIndex","carousels","parent","EVENT_SHOW","EVENT_SHOWN","EVENT_HIDE","EVENT_HIDDEN","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_COLLAPSED","WIDTH","HEIGHT","SELECTOR_ACTIVES","Collapse","_isTransitioning","_triggerArray","toggleList","elem","filterElement","foundElem","_selector","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","container","tempActiveData","startEvent","elemActive","collapseInterface","dimension","_getDimension","setTransitioning","complete","capitalizedDimension","scrollSize","triggerArrayLength","isTransitioning","jquery","selected","triggerArray","isOpen","triggerData","selectorElements","ESCAPE_KEY","SPACE_KEY","TAB_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","RIGHT_MOUSE_BUTTON","REGEXP_KEYDOWN","EVENT_CLICK","EVENT_KEYDOWN_DATA_API","EVENT_KEYUP_DATA_API","CLASS_NAME_DISABLED","CLASS_NAME_DROPUP","CLASS_NAME_DROPEND","CLASS_NAME_DROPSTART","CLASS_NAME_NAVBAR","SELECTOR_FORM_CHILD","SELECTOR_MENU","SELECTOR_NAVBAR_NAV","SELECTOR_VISIBLE_ITEMS","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","flip","boundary","reference","popperConfig","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","disabled","isActive","clearMenus","getParentFromElement","showEvent","Popper","referenceElement","_getPopperConfig","isDisplayStatic","modifiers","modifier","enabled","focus","hideEvent","destroy","update","stopPropagation","_getPlacement","parentDropdown","isEnd","getPropertyValue","_getOffset","map","popperData","defaultBsPopperConfig","placement","options","altBoundary","dropdownInterface","toggles","context","clickEvent","dropdownMenu","dataApiKeydownHandler","click","items","backdrop","EVENT_HIDE_PREVENTED","EVENT_FOCUSIN","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_MOUSEUP_DISMISS","EVENT_MOUSEDOWN_DISMISS","CLASS_NAME_SCROLLBAR_MEASURER","CLASS_NAME_BACKDROP","CLASS_NAME_OPEN","CLASS_NAME_STATIC","SELECTOR_DIALOG","SELECTOR_MODAL_BODY","SELECTOR_DATA_DISMISS","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","Modal","_dialog","_backdrop","_isShown","_isBodyOverflowing","_ignoreBackdropClick","_scrollbarWidth","_checkScrollbar","_setScrollbar","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","transition","_hideModal","htmlElement","handleUpdate","modalBody","appendChild","_enforceFocus","transitionComplete","_triggerBackdropTransition","_resetAdjustments","_resetScrollbar","_removeBackdrop","animate","createElement","className","currentTarget","backdropTransitionDuration","callbackRemove","isModalOverflowing","scrollHeight","clientHeight","overflowY","modalTransitionDuration","paddingLeft","paddingRight","round","right","innerWidth","_getScrollbarWidth","_setElementAttributes","calculatedValue","styleProp","actualValue","_resetElementAttributes","scrollDiv","scrollbarWidth","width","clientWidth","uriAttrs","ARIA_ATTRIBUTE_PATTERN","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeName","nodeValue","regExp","attrRegex","DefaultAllowlist","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","domParser","DOMParser","createdDocument","parseFromString","allowlistKeys","elements","el","elName","attributeList","allowedAttributes","innerHTML","CLASS_PREFIX","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","html","fallbackPlacements","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_MODAL","HOVER_STATE_SHOW","HOVER_STATE_OUT","SELECTOR_TOOLTIP_INNER","TRIGGER_HOVER","TRIGGER_FOCUS","TRIGGER_CLICK","TRIGGER_MANUAL","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","Error","isWithContent","shadowRoot","isInTheDom","ownerDocument","tipId","setContent","attachment","_getAttachment","_addAttachmentClass","_getContainer","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","textContent","updateAttachment","dataKey","_getDelegateConfig","phase","_handlePopperPlacementChange","onFirstUpdate","triggers","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","tabClass","token","tClass","state","popper","SELECTOR_TITLE","SELECTOR_CONTENT","Popover","_getContent","method","EVENT_ACTIVATE","EVENT_SCROLL","CLASS_NAME_DROPDOWN_ITEM","SELECTOR_DATA_SPY","SELECTOR_NAV_LIST_GROUP","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_DROPDOWN","SELECTOR_DROPDOWN_TOGGLE","METHOD_OFFSET","METHOD_POSITION","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targets","targetSelector","targetBCR","height","item","sort","pageYOffset","max","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","isActiveTarget","queries","link","join","listGroup","navItem","node","spy","CLASS_NAME_DROPDOWN_MENU","SELECTOR_ACTIVE_UL","SELECTOR_DROPDOWN_ACTIVE_CHILD","Tab","listElement","itemSelector","activeElements","active","_transitionComplete","dropdownChild","dropdownElement","dropdown","CLASS_NAME_HIDE","CLASS_NAME_SHOWING","autohide","Toast","_clearTimeout"],"mappings":"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"} \ No newline at end of file
+{"version":3,"file":"bootstrap.js","sources":["../../js/src/util/index.js","../../js/src/dom/event-handler.js","../../js/src/dom/data.js","../../js/src/base-component.js","../../js/src/util/component-functions.js","../../js/src/alert.js","../../js/src/button.js","../../js/src/dom/manipulator.js","../../js/src/dom/selector-engine.js","../../js/src/carousel.js","../../js/src/collapse.js","../../js/src/dropdown.js","../../js/src/util/scrollbar.js","../../js/src/util/backdrop.js","../../js/src/util/focustrap.js","../../js/src/modal.js","../../js/src/offcanvas.js","../../js/src/util/sanitizer.js","../../js/src/tooltip.js","../../js/src/popover.js","../../js/src/scrollspy.js","../../js/src/tab.js","../../js/src/toast.js","../../js/index.umd.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return document.querySelector(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n return getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\n/**\n * Trick to restart an element's animation\n *\n * @param {HTMLElement} element\n * @return void\n *\n * @see https://www.charistheo.io/blog/2021/02/restart-a-css-animation-with-javascript/#restarting-a-css-animation\n */\nconst reflow = element => {\n // eslint-disable-next-line no-unused-expressions\n element.offsetHeight\n}\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst customEventsRegex = /^(mouseenter|mouseleave)/i\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n let typeEvent = getTypeEvent(originalTypeEvent)\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (customEventsRegex.test(originalTypeEvent)) {\n const wrapFn = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n if (delegationFn) {\n delegationFn = wrapFn(delegationFn)\n } else {\n handler = wrapFn(handler)\n }\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport {\n executeAfterTransition,\n getElement\n} from './util/index'\nimport EventHandler from './dom/event-handler'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.1.0'\n\nclass BaseComponent {\n constructor(element) {\n element = getElement(element)\n\n if (!element) {\n return\n }\n\n this._element = element\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n Object.getOwnPropertyNames(this).forEach(propertyName => {\n this[propertyName] = null\n })\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.get(getElement(element), this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): util/component-functions.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { getElementFromSelector, isDisabled } from './index'\n\nconst enableDismissTrigger = (component, method = 'hide') => {\n const clickEvent = `click.dismiss${component.EVENT_KEY}`\n const name = component.NAME\n\n EventHandler.on(document, clickEvent, `[data-bs-dismiss=\"${name}\"]`, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const target = getElementFromSelector(this) || this.closest(`.${name}`)\n const instance = component.getOrCreateInstance(target)\n\n // Method argument is left, for Alert and only, as it doesn't implement the 'hide' method\n instance[method]()\n })\n}\n\nexport {\n enableDismissTrigger\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport { enableDismissTrigger } from './util/component-functions'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n close() {\n const closeEvent = EventHandler.trigger(this._element, EVENT_CLOSE)\n\n if (closeEvent.defaultPrevented) {\n return\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = this._element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(), this._element, isAnimated)\n }\n\n // Private\n _destroyElement() {\n this._element.remove()\n EventHandler.trigger(this._element, EVENT_CLOSED)\n this.dispose()\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nenableDismissTrigger(Alert, 'close')\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + window.pageYOffset,\n left: rect.left + window.pageXOffset\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nimport { isDisabled, isVisible } from '../util/index'\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n },\n\n focusableChildren(element) {\n const focusables = [\n 'a',\n 'button',\n 'input',\n 'textarea',\n 'select',\n 'details',\n '[tabindex]',\n '[contenteditable=\"true\"]'\n ].map(selector => `${selector}:not([tabindex^=\"-\"])`).join(', ')\n\n return this.find(focusables, element).filter(el => !isDisabled(el) && isVisible(el))\n }\n}\n\nexport default SelectorEngine\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n getNextActiveElement,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const order = index > activeIndex ?\n ORDER_NEXT :\n ORDER_PREV\n\n this._slide(order, this._items[index])\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n if (!direction) {\n return\n }\n\n this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT)\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n this.touchDeltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this.touchStartX\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(direction)\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByOrder(order, activeElement) {\n const isNext = order === ORDER_NEXT\n return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap)\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(directionOrOrder, element) {\n const order = this._directionToOrder(directionOrOrder)\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || this._getItemByOrder(order, activeElement)\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const isNext = order === ORDER_NEXT\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = this._orderToDirection(order)\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n if (this._isSliding) {\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n const triggerSlidEvent = () => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(triggerSlidEvent, 0)\n }\n\n this._queueCallback(completeCallBack, activeElement, true)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n triggerSlidEvent()\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _directionToOrder(direction) {\n if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) {\n return direction\n }\n\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (![ORDER_NEXT, ORDER_PREV].includes(order)) {\n return order\n }\n\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n\n static carouselInterface(element, config) {\n const data = Carousel.getOrCreateInstance(element, config)\n\n let { _config } = data\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Carousel.getInstance(target).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i]))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n getElementFromSelector,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: null\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(null|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\nconst CLASS_NAME_HORIZONTAL = 'collapse-horizontal'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = []\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === this._element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._initializeChildren()\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._triggerArray, this._isShown())\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (this._isShown()) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._isShown()) {\n return\n }\n\n let actives = []\n let activesData\n\n if (this._config.parent) {\n const children = SelectorEngine.find(`.${CLASS_NAME_COLLAPSE} .${CLASS_NAME_COLLAPSE}`, this._config.parent)\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._config.parent).filter(elem => !children.includes(elem)) // remove children if greater depth\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives.length) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.getOrCreateInstance(elemActive, { toggle: false }).hide()\n }\n\n if (!activesData) {\n Data.set(elemActive, DATA_KEY, null)\n }\n })\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n this._addAriaAndCollapsedClass(this._triggerArray, true)\n this._isTransitioning = true\n\n const complete = () => {\n this._isTransitioning = false\n\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._isShown()) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !this._isShown(elem)) {\n this._addAriaAndCollapsedClass([trigger], false)\n }\n }\n\n this._isTransitioning = true\n\n const complete = () => {\n this._isTransitioning = false\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n _isShown(element = this._element) {\n return element.classList.contains(CLASS_NAME_SHOW)\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n config.parent = getElement(config.parent)\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(CLASS_NAME_HORIZONTAL) ? WIDTH : HEIGHT\n }\n\n _initializeChildren() {\n if (!this._config.parent) {\n return\n }\n\n const children = SelectorEngine.find(`.${CLASS_NAME_COLLAPSE} .${CLASS_NAME_COLLAPSE}`, this._config.parent)\n SelectorEngine.find(SELECTOR_DATA_TOGGLE, this._config.parent).filter(elem => !children.includes(elem))\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n if (selected) {\n this._addAriaAndCollapsedClass([element], this._isShown(selected))\n }\n })\n }\n\n _addAriaAndCollapsedClass(triggerArray, isOpen) {\n if (!triggerArray.length) {\n return\n }\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const _config = {}\n if (typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n const data = Collapse.getOrCreateInstance(this, _config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n Collapse.getOrCreateInstance(element, { toggle: false }).toggle()\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElement,\n getElementFromSelector,\n getNextActiveElement,\n isDisabled,\n isElement,\n isRTL,\n isVisible,\n noop,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null,\n autoClose: true\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)',\n autoClose: '(boolean|string)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n return this._isShown() ? this.hide() : this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._isShown(this._menu)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n this._createPopper(parent)\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', noop))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.add(CLASS_NAME_SHOW)\n this._element.classList.add(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._isShown(this._menu)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', noop))\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _createPopper(parent) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n _isShown(element = this._element) {\n return element.classList.contains(CLASS_NAME_SHOW)\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _selectMenuItem({ key, target }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus()\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Dropdown.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Dropdown.getInstance(toggles[i])\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n if (!context._isShown()) {\n continue\n }\n\n const relatedTarget = {\n relatedTarget: context._element\n }\n\n if (event) {\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (!isActive && event.key === ESCAPE_KEY) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (isDisabled(this)) {\n return\n }\n\n const getToggleButton = this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n const instance = Dropdown.getOrCreateInstance(getToggleButton)\n\n if (event.key === ESCAPE_KEY) {\n instance.hide()\n return\n }\n\n if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) {\n if (!isActive) {\n instance.show()\n }\n\n instance._selectMenuItem(event)\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.getOrCreateInstance(this).toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine'\nimport Manipulator from '../dom/manipulator'\nimport { isElement } from './index'\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body\n }\n\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n }\n\n hide() {\n const width = this.getWidth()\n this._disableOverFlow()\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width)\n }\n\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow')\n this._element.style.overflow = 'hidden'\n }\n\n _setElementAttributes(selector, styleProp, callback) {\n const scrollbarWidth = this.getWidth()\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n this._saveInitialAttribute(element, styleProp)\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n reset() {\n this._resetElementAttributes(this._element, 'overflow')\n this._resetElementAttributes(this._element, 'paddingRight')\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n }\n\n _saveInitialAttribute(element, styleProp) {\n const actualValue = element.style[styleProp]\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n }\n }\n\n _resetElementAttributes(selector, styleProp) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined') {\n element.style.removeProperty(styleProp)\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector)\n } else {\n SelectorEngine.find(selector, this._element).forEach(callBack)\n }\n }\n\n isOverflowing() {\n return this.getWidth() > 0\n }\n}\n\nexport default ScrollBarHelper\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { execute, executeAfterTransition, getElement, reflow, typeCheckConfig } from './index'\n\nconst Default = {\n className: 'modal-backdrop',\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n isAnimated: false,\n rootElement: 'body', // give the choice to place backdrop under different elements\n clickCallback: null\n}\n\nconst DefaultType = {\n className: 'string',\n isVisible: 'boolean',\n isAnimated: 'boolean',\n rootElement: '(element|string)',\n clickCallback: '(function|null)'\n}\nconst NAME = 'backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nclass Backdrop {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n if (this._config.isAnimated) {\n reflow(this._getElement())\n }\n\n this._getElement().classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n // Private\n\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = this._config.className\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n this._config.rootElement.append(this._getElement())\n\n EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._element.remove()\n this._isAppended = false\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): util/focustrap.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport SelectorEngine from '../dom/selector-engine'\nimport { typeCheckConfig } from './index'\n\nconst Default = {\n trapElement: null, // The element to trap focus inside of\n autofocus: true\n}\n\nconst DefaultType = {\n trapElement: 'element',\n autofocus: 'boolean'\n}\n\nconst NAME = 'focustrap'\nconst DATA_KEY = 'bs.focustrap'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_KEYDOWN_TAB = `keydown.tab${EVENT_KEY}`\n\nconst TAB_KEY = 'Tab'\nconst TAB_NAV_FORWARD = 'forward'\nconst TAB_NAV_BACKWARD = 'backward'\n\nclass FocusTrap {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isActive = false\n this._lastTabNavDirection = null\n }\n\n activate() {\n const { trapElement, autofocus } = this._config\n\n if (this._isActive) {\n return\n }\n\n if (autofocus) {\n trapElement.focus()\n }\n\n EventHandler.off(document, EVENT_KEY) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => this._handleFocusin(event))\n EventHandler.on(document, EVENT_KEYDOWN_TAB, event => this._handleKeydown(event))\n\n this._isActive = true\n }\n\n deactivate() {\n if (!this._isActive) {\n return\n }\n\n this._isActive = false\n EventHandler.off(document, EVENT_KEY)\n }\n\n // Private\n\n _handleFocusin(event) {\n const { target } = event\n const { trapElement } = this._config\n\n if (\n target === document ||\n target === trapElement ||\n trapElement.contains(target)\n ) {\n return\n }\n\n const elements = SelectorEngine.focusableChildren(trapElement)\n\n if (elements.length === 0) {\n trapElement.focus()\n } else if (this._lastTabNavDirection === TAB_NAV_BACKWARD) {\n elements[elements.length - 1].focus()\n } else {\n elements[0].focus()\n }\n }\n\n _handleKeydown(event) {\n if (event.key !== TAB_KEY) {\n return\n }\n\n this._lastTabNavDirection = event.shiftKey ? TAB_NAV_BACKWARD : TAB_NAV_FORWARD\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n}\n\nexport default FocusTrap\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport ScrollBarHelper from './util/scrollbar'\nimport BaseComponent from './base-component'\nimport Backdrop from './util/backdrop'\nimport FocusTrap from './util/focustrap'\nimport { enableDismissTrigger } from './util/component-functions'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._focustrap = this._initializeFocusTrap()\n this._isShown = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n if (this._isAnimated()) {\n this._isTransitioning = true\n }\n\n this._scrollBar.hide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide() {\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const isAnimated = this._isAnimated()\n\n if (isAnimated) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n this._focustrap.deactivate()\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated)\n }\n\n dispose() {\n [window, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n this._backdrop.dispose()\n this._focustrap.deactivate()\n super.dispose()\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated()\n })\n }\n\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element\n })\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated()\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.append(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (isAnimated) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._focustrap.activate()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated)\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._scrollBar.reset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === true) {\n this.hide()\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n }\n })\n\n this._backdrop.show(callback)\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const { classList, scrollHeight, style } = this._element\n const isModalOverflowing = scrollHeight > document.documentElement.clientHeight\n\n // return if the following background transition hasn't yet completed\n if ((!isModalOverflowing && style.overflowY === 'hidden') || classList.contains(CLASS_NAME_STATIC)) {\n return\n }\n\n if (!isModalOverflowing) {\n style.overflowY = 'hidden'\n }\n\n classList.add(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n this._queueCallback(() => {\n style.overflowY = ''\n }, this._dialog)\n }\n }, this._dialog)\n\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = this._scrollBar.getWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if ((!isBodyOverflowing && isModalOverflowing && !isRTL()) || (isBodyOverflowing && !isModalOverflowing && isRTL())) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`\n }\n\n if ((isBodyOverflowing && !isModalOverflowing && !isRTL()) || (!isBodyOverflowing && isModalOverflowing && isRTL())) {\n this._element.style.paddingRight = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\nenableDismissTrigger(Modal)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible,\n typeCheckConfig\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Manipulator from './dom/manipulator'\nimport Backdrop from './util/backdrop'\nimport FocusTrap from './util/focustrap'\nimport { enableDismissTrigger } from './util/component-functions'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: 'boolean',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_BACKDROP = 'offcanvas-backdrop'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._focustrap = this._initializeFocusTrap()\n this._addEventListeners()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._element.style.visibility = 'visible'\n\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n }\n\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const completeCallBack = () => {\n if (!this._config.scroll) {\n this._focustrap.activate()\n }\n\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._focustrap.deactivate()\n this._element.blur()\n this._isShown = false\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._element.style.visibility = 'hidden'\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n this._focustrap.deactivate()\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _initializeBackDrop() {\n return new Backdrop({\n className: CLASS_NAME_BACKDROP,\n isVisible: this._config.backdrop,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element\n })\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n this.hide()\n }\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen && allReadyOpen !== target) {\n Offcanvas.getInstance(allReadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () =>\n SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())\n)\n\nenableDismissTrigger(Offcanvas)\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.remove()\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport { DefaultAllowlist, sanitizeHtml } from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\nconst SELECTOR_MODAL = `.${CLASS_NAME_MODAL}`\n\nconst EVENT_MODAL_HIDE = 'hide.bs.modal'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.append(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = this._resolvePossibleFunction(this._config.customClass)\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n const tip = element.children[0]\n this.setContent(tip)\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n\n this.tip = tip\n return this.tip\n }\n\n setContent(tip) {\n this._sanitizeAndSetContent(tip, this.getTitle(), SELECTOR_TOOLTIP_INNER)\n }\n\n _sanitizeAndSetContent(template, content, selector) {\n const templateElement = SelectorEngine.findOne(selector, template)\n\n if (!content && templateElement) {\n templateElement.remove()\n return\n }\n\n // we use append for html objects to maintain js events\n this.setElementContent(templateElement, content)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.append(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n const title = this._element.getAttribute('data-bs-original-title') || this._config.title\n\n return this._resolvePossibleFunction(title)\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n return context || this.constructor.getOrCreateInstance(event.delegateTarget, this._getDelegateConfig())\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _resolvePossibleFunction(content) {\n return typeof content === 'function' ? content.call(this._element) : content\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n\n // In the future can be replaced with:\n // const keysWithDifferentValues = Object.entries(this._config).filter(entry => this.constructor.Default[entry[0]] !== this._config[entry[0]])\n // `Object.fromEntries(keysWithDifferentValues)`\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const basicClassPrefixRegex = new RegExp(`(^|\\\\s)${this._getBasicClassPrefix()}\\\\S+`, 'g')\n const tabClass = tip.getAttribute('class').match(basicClassPrefixRegex)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _getBasicClassPrefix() {\n return CLASS_PREFIX\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n setContent(tip) {\n this._sanitizeAndSetContent(tip, this.getTitle(), SELECTOR_TITLE)\n this._sanitizeAndSetContent(tip, this._getContent(), SELECTOR_CONTENT)\n }\n\n // Private\n\n _getContent() {\n return this._resolvePossibleFunction(this._config.content)\n }\n\n _getBasicClassPrefix() {\n return CLASS_PREFIX\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_LINK_ITEMS = `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}, .${CLASS_NAME_DROPDOWN_ITEM}`\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._scrollElement = this._element.tagName === 'BODY' ? window : this._element\n this._config = this._getConfig(config)\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process())\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window ?\n METHOD_OFFSET :\n METHOD_POSITION\n\n const offsetMethod = this._config.method === 'auto' ?\n autoMethod :\n this._config.method\n\n const offsetBase = offsetMethod === METHOD_POSITION ?\n this._getScrollTop() :\n 0\n\n this._offsets = []\n this._targets = []\n this._scrollHeight = this._getScrollHeight()\n\n const targets = SelectorEngine.find(SELECTOR_LINK_ITEMS, this._config.target)\n\n targets.map(element => {\n const targetSelector = getSelectorFromElement(element)\n const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n return [\n Manipulator[offsetMethod](target).top + offsetBase,\n targetSelector\n ]\n }\n }\n\n return null\n })\n .filter(item => item)\n .sort((a, b) => a[0] - b[0])\n .forEach(item => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n EventHandler.off(this._scrollElement, EVENT_KEY)\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.target = getElement(config.target) || document.documentElement\n\n typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window ?\n this._scrollElement.pageYOffset :\n this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window ?\n window.innerHeight :\n this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const 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 (let i = this._offsets.length; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = SELECTOR_LINK_ITEMS.split(',')\n .map(selector => `${selector}[data-bs-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const link = SelectorEngine.findOne(queries.join(','), this._config.target)\n\n link.classList.add(CLASS_NAME_ACTIVE)\n if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n } else {\n SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP)\n .forEach(listGroup => {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n\n // Handle special case when .nav-link is inside .nav-item\n SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS)\n .forEach(navItem => {\n SelectorEngine.children(navItem, SELECTOR_NAV_LINKS)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n })\n })\n }\n\n EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n SelectorEngine.find(SELECTOR_LINK_ITEMS, this._config.target)\n .filter(node => node.classList.contains(CLASS_NAME_ACTIVE))\n .forEach(node => node.classList.remove(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(SELECTOR_DATA_SPY)\n .forEach(spy => new ScrollSpy(spy))\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .ScrollSpy to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n reflow\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_UL = ':scope > li > .active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n if ((this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n this._element.classList.contains(CLASS_NAME_ACTIVE))) {\n return\n }\n\n let previous\n const target = getElementFromSelector(this._element)\n const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE\n previous = SelectorEngine.find(itemSelector, listElement)\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = previous ?\n EventHandler.trigger(previous, EVENT_HIDE, {\n relatedTarget: this._element\n }) :\n null\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget: previous\n })\n\n if (showEvent.defaultPrevented || (hideEvent !== null && hideEvent.defaultPrevented)) {\n return\n }\n\n this._activate(this._element, listElement)\n\n const complete = () => {\n EventHandler.trigger(previous, EVENT_HIDDEN, {\n relatedTarget: this._element\n })\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget: previous\n })\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ?\n SelectorEngine.find(SELECTOR_ACTIVE_UL, container) :\n SelectorEngine.children(container, SELECTOR_ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && active.classList.contains(CLASS_NAME_FADE))\n\n const complete = () => this._transitionComplete(element, active, callback)\n\n if (active && isTransitioning) {\n active.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, element, true)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n active.classList.remove(CLASS_NAME_ACTIVE)\n\n const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode)\n\n if (dropdownChild) {\n dropdownChild.classList.remove(CLASS_NAME_ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n reflow(element)\n\n if (element.classList.contains(CLASS_NAME_FADE)) {\n element.classList.add(CLASS_NAME_SHOW)\n }\n\n let parent = element.parentNode\n if (parent && parent.nodeName === 'LI') {\n parent = parent.parentNode\n }\n\n if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {\n const dropdownElement = element.closest(SELECTOR_DROPDOWN)\n\n if (dropdownElement) {\n SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement)\n .forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE))\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const data = Tab.getOrCreateInstance(this)\n data.show()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tab to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\nimport { enableDismissTrigger } from './util/component-functions'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide' // @deprecated - kept here only for backwards compatibility\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\n }\n\n // Getters\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE) // @deprecated\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOW)\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE) // @deprecated\n this._element.classList.remove(CLASS_NAME_SHOWING)\n this._element.classList.remove(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.add(CLASS_NAME_SHOWING)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n return config\n }\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout':\n this._hasMouseInteraction = isInteracting\n break\n case 'focusin':\n case 'focusout':\n this._hasKeyboardInteraction = isInteracting\n break\n default:\n break\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\nenableDismissTrigger(Toast)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Toast to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.0): index.umd.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Alert from './src/alert'\nimport Button from './src/button'\nimport Carousel from './src/carousel'\nimport Collapse from './src/collapse'\nimport Dropdown from './src/dropdown'\nimport Modal from './src/modal'\nimport Offcanvas from './src/offcanvas'\nimport Popover from './src/popover'\nimport ScrollSpy from './src/scrollspy'\nimport Tab from './src/tab'\nimport Toast from './src/toast'\nimport Tooltip from './src/tooltip'\n\nexport default {\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip\n}\n"],"names":["MAX_UID","MILLISECONDS_MULTIPLIER","TRANSITION_END","toType","obj","undefined","toString","call","match","toLowerCase","getUID","prefix","Math","floor","random","document","getElementById","getSelector","element","selector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","querySelector","getElementFromSelector","getTransitionDurationFromElement","transitionDuration","transitionDelay","window","getComputedStyle","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","triggerTransitionEnd","dispatchEvent","Event","isElement","jquery","nodeType","getElement","length","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","RegExp","test","TypeError","toUpperCase","isVisible","getClientRects","getPropertyValue","isDisabled","Node","ELEMENT_NODE","classList","contains","disabled","hasAttribute","findShadowRoot","documentElement","attachShadow","getRootNode","root","ShadowRoot","parentNode","noop","reflow","offsetHeight","getjQuery","jQuery","body","DOMContentLoadedCallbacks","onDOMContentLoaded","callback","readyState","addEventListener","push","isRTL","dir","defineJQueryPlugin","plugin","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","execute","executeAfterTransition","transitionElement","waitForTransition","durationPadding","emulatedDuration","called","handler","target","removeEventListener","setTimeout","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","index","indexOf","listLength","max","min","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","customEventsRegex","nativeEvents","Set","getUidEvent","uid","getEvent","bootstrapHandler","event","delegateTarget","oneOff","EventHandler","off","type","apply","bootstrapDelegationHandler","domElements","querySelectorAll","i","findHandler","events","delegationSelector","uidEventList","len","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","getTypeEvent","isNative","has","addHandler","wrapFn","relatedTarget","handlers","previousFn","replace","removeHandler","Boolean","removeNamespacedHandlers","namespace","storeElementEvent","handlerKey","on","one","inNamespace","isNamespace","elementEvent","slice","keyHandlers","trigger","args","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","key","defineProperty","get","preventDefault","elementMap","Map","set","instance","instanceMap","size","console","error","Array","from","remove","delete","VERSION","BaseComponent","constructor","_element","Data","DATA_KEY","dispose","EVENT_KEY","getOwnPropertyNames","propertyName","_queueCallback","isAnimated","getInstance","getOrCreateInstance","Error","enableDismissTrigger","component","method","clickEvent","tagName","closest","EVENT_CLOSE","EVENT_CLOSED","CLASS_NAME_FADE","CLASS_NAME_SHOW","Alert","close","closeEvent","_destroyElement","each","data","DATA_API_KEY","CLASS_NAME_ACTIVE","SELECTOR_DATA_TOGGLE","EVENT_CLICK_DATA_API","Button","toggle","setAttribute","button","normalizeData","val","normalizeDataKey","chr","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","filter","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","pageYOffset","left","pageXOffset","position","offsetTop","offsetLeft","NODE_TEXT","SelectorEngine","find","concat","Element","prototype","findOne","children","child","matches","parents","ancestor","prev","previous","previousElementSibling","next","nextElementSibling","focusableChildren","focusables","map","join","el","ARROW_LEFT_KEY","ARROW_RIGHT_KEY","TOUCHEVENT_COMPAT_WAIT","SWIPE_THRESHOLD","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","KEY_TO_DIRECTION","EVENT_SLIDE","EVENT_SLID","EVENT_KEYDOWN","EVENT_MOUSEENTER","EVENT_MOUSELEAVE","EVENT_TOUCHSTART","EVENT_TOUCHMOVE","EVENT_TOUCHEND","EVENT_POINTERDOWN","EVENT_POINTERUP","EVENT_DRAG_START","EVENT_LOAD_DATA_API","CLASS_NAME_CAROUSEL","CLASS_NAME_SLIDE","CLASS_NAME_END","CLASS_NAME_START","CLASS_NAME_NEXT","CLASS_NAME_PREV","CLASS_NAME_POINTER_EVENT","SELECTOR_ACTIVE","SELECTOR_ACTIVE_ITEM","SELECTOR_ITEM","SELECTOR_ITEM_IMG","SELECTOR_NEXT_PREV","SELECTOR_INDICATORS","SELECTOR_INDICATOR","SELECTOR_DATA_SLIDE","SELECTOR_DATA_RIDE","POINTER_TYPE_TOUCH","POINTER_TYPE_PEN","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","activeIndex","_getItemIndex","order","_handleSwipe","absDeltax","abs","direction","_keydown","_addTouchEventListeners","start","pointerType","clientX","touches","move","end","clearTimeout","itemImg","e","add","_getItemByOrder","isNext","_triggerSlideEvent","eventDirectionName","targetIndex","fromIndex","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","directionOrOrder","_directionToOrder","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","_orderToDirection","slideEvent","triggerSlidEvent","completeCallBack","carouselInterface","action","ride","dataApiClickHandler","slideIndex","carousels","parent","EVENT_SHOW","EVENT_SHOWN","EVENT_HIDE","EVENT_HIDDEN","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_COLLAPSED","CLASS_NAME_HORIZONTAL","WIDTH","HEIGHT","SELECTOR_ACTIVES","Collapse","_isTransitioning","_triggerArray","toggleList","elem","filterElement","foundElem","_selector","_initializeChildren","_addAriaAndCollapsedClass","_isShown","hide","show","actives","activesData","container","tempActiveData","startEvent","elemActive","dimension","_getDimension","style","complete","capitalizedDimension","scrollSize","triggerArrayLength","selected","triggerArray","isOpen","selectorElements","ESCAPE_KEY","SPACE_KEY","TAB_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","RIGHT_MOUSE_BUTTON","REGEXP_KEYDOWN","EVENT_KEYDOWN_DATA_API","EVENT_KEYUP_DATA_API","CLASS_NAME_DROPUP","CLASS_NAME_DROPEND","CLASS_NAME_DROPSTART","CLASS_NAME_NAVBAR","SELECTOR_MENU","SELECTOR_NAVBAR_NAV","SELECTOR_VISIBLE_ITEMS","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","boundary","reference","display","popperConfig","autoClose","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","showEvent","getParentFromElement","_createPopper","focus","_completeHide","destroy","update","hideEvent","Popper","referenceElement","_getPopperConfig","isDisplayStatic","modifiers","modifier","enabled","createPopper","_getPlacement","parentDropdown","isEnd","_getOffset","popperData","defaultBsPopperConfig","placement","options","_selectMenuItem","items","clearMenus","toggles","context","composedPath","isMenuTarget","dataApiKeydownHandler","isActive","stopPropagation","getToggleButton","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","ScrollBarHelper","getWidth","documentWidth","clientWidth","innerWidth","width","_disableOverFlow","_setElementAttributes","calculatedValue","_saveInitialAttribute","overflow","styleProp","scrollbarWidth","manipulationCallBack","_applyManipulationCallback","reset","_resetElementAttributes","actualValue","removeProperty","callBack","isOverflowing","className","rootElement","clickCallback","EVENT_MOUSEDOWN","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","append","trapElement","autofocus","EVENT_FOCUSIN","EVENT_KEYDOWN_TAB","TAB_NAV_FORWARD","TAB_NAV_BACKWARD","FocusTrap","_isActive","_lastTabNavDirection","activate","_handleFocusin","_handleKeydown","deactivate","elements","shiftKey","EVENT_HIDE_PREVENTED","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_MOUSEUP_DISMISS","EVENT_MOUSEDOWN_DISMISS","CLASS_NAME_OPEN","CLASS_NAME_STATIC","SELECTOR_DIALOG","SELECTOR_MODAL_BODY","Modal","_dialog","_backdrop","_initializeBackDrop","_focustrap","_initializeFocusTrap","_ignoreBackdropClick","_scrollBar","_isAnimated","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_hideModal","htmlElement","handleUpdate","modalBody","scrollTop","transitionComplete","_triggerBackdropTransition","_resetAdjustments","currentTarget","scrollHeight","isModalOverflowing","clientHeight","overflowY","isBodyOverflowing","paddingLeft","paddingRight","scroll","CLASS_NAME_BACKDROP","OPEN_SELECTOR","Offcanvas","visibility","blur","completeCallback","allReadyOpen","uriAttrs","ARIA_ATTRIBUTE_PATTERN","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeName","nodeValue","regExp","attrRegex","DefaultAllowlist","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","domParser","DOMParser","createdDocument","parseFromString","allowlistKeys","elName","attributeList","allowedAttributes","innerHTML","CLASS_PREFIX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","html","fallbackPlacements","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_MODAL","HOVER_STATE_SHOW","HOVER_STATE_OUT","SELECTOR_TOOLTIP_INNER","SELECTOR_MODAL","EVENT_MODAL_HIDE","TRIGGER_HOVER","TRIGGER_FOCUS","TRIGGER_CLICK","TRIGGER_MANUAL","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","click","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","isWithContent","shadowRoot","isInTheDom","ownerDocument","tipId","attachment","_getAttachment","_addAttachmentClass","_resolvePossibleFunction","prevHoverState","_cleanTipClass","getTitle","setContent","_sanitizeAndSetContent","content","templateElement","setElementContent","textContent","updateAttachment","_getDelegateConfig","phase","_handlePopperPlacementChange","onFirstUpdate","_getBasicClassPrefix","triggers","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","basicClassPrefixRegex","tabClass","token","tClass","state","popper","SELECTOR_TITLE","SELECTOR_CONTENT","Popover","_getContent","EVENT_ACTIVATE","EVENT_SCROLL","CLASS_NAME_DROPDOWN_ITEM","SELECTOR_DATA_SPY","SELECTOR_NAV_LIST_GROUP","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_LINK_ITEMS","SELECTOR_DROPDOWN","SELECTOR_DROPDOWN_TOGGLE","METHOD_OFFSET","METHOD_POSITION","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targets","targetSelector","targetBCR","height","item","sort","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","isActiveTarget","queries","link","listGroup","navItem","node","spy","CLASS_NAME_DROPDOWN_MENU","SELECTOR_ACTIVE_UL","SELECTOR_DROPDOWN_ACTIVE_CHILD","Tab","listElement","itemSelector","activeElements","active","isTransitioning","_transitionComplete","dropdownChild","dropdownElement","dropdown","EVENT_MOUSEOVER","EVENT_MOUSEOUT","EVENT_FOCUSOUT","CLASS_NAME_HIDE","CLASS_NAME_SHOWING","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","_onInteraction","isInteracting"],"mappings":"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"} \ No newline at end of file