{"version":3,"file":"embed.js","mappings":"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","sources":["webpack://a4-meinberlin/./node_modules/bootstrap/js/dist/util/component-functions.js","webpack://a4-meinberlin/./node_modules/bootstrap/js/dist/modal.js","webpack://a4-meinberlin/./meinberlin/apps/embed/assets/embed.js","webpack://a4-meinberlin/./node_modules/bootstrap/js/dist/util/backdrop.js","webpack://a4-meinberlin/./node_modules/bootstrap/js/dist/util/index.js","webpack://a4-meinberlin/./node_modules/bootstrap/js/dist/dom/data.js","webpack://a4-meinberlin/./node_modules/bootstrap/js/dist/base-component.js","webpack://a4-meinberlin/./node_modules/bootstrap/js/dist/util/config.js","webpack://a4-meinberlin/./node_modules/bootstrap/js/dist/util/focustrap.js","webpack://a4-meinberlin/./node_modules/bootstrap/js/dist/util/scrollbar.js","webpack://a4-meinberlin/./node_modules/bootstrap/js/dist/dom/event-handler.js","webpack://a4-meinberlin/./node_modules/bootstrap/js/dist/dom/manipulator.js","webpack://a4-meinberlin/./node_modules/bootstrap/js/dist/dom/selector-engine.js"],"sourcesContent":["/*!\n  * Bootstrap component-functions.js v5.2.3 (https://getbootstrap.com/)\n  * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n  */\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('../dom/event-handler'), require('./index')) :\n  typeof define === 'function' && define.amd ? define(['exports', '../dom/event-handler', './index'], factory) :\n  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.ComponentFunctions = {}, global.EventHandler, global.Index));\n})(this, (function (exports, EventHandler, index) { 'use strict';\n\n  const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };\n\n  const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);\n\n  /**\n   * --------------------------------------------------------------------------\n   * Bootstrap (v5.2.3): util/component-functions.js\n   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n   * --------------------------------------------------------------------------\n   */\n\n  const enableDismissTrigger = (component, method = 'hide') => {\n    const clickEvent = `click.dismiss${component.EVENT_KEY}`;\n    const name = component.NAME;\n    EventHandler__default.default.on(document, clickEvent, `[data-bs-dismiss=\"${name}\"]`, function (event) {\n      if (['A', 'AREA'].includes(this.tagName)) {\n        event.preventDefault();\n      }\n\n      if (index.isDisabled(this)) {\n        return;\n      }\n\n      const target = index.getElementFromSelector(this) || this.closest(`.${name}`);\n      const instance = component.getOrCreateInstance(target); // Method argument is left, for Alert and only, as it doesn't implement the 'hide' method\n\n      instance[method]();\n    });\n  };\n\n  exports.enableDismissTrigger = enableDismissTrigger;\n\n  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });\n\n}));\n//# sourceMappingURL=component-functions.js.map\n","/*!\n  * Bootstrap modal.js v5.2.3 (https://getbootstrap.com/)\n  * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n  */\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./util/index'), require('./dom/event-handler'), require('./dom/selector-engine'), require('./util/scrollbar'), require('./base-component'), require('./util/backdrop'), require('./util/focustrap'), require('./util/component-functions')) :\n  typeof define === 'function' && define.amd ? define(['./util/index', './dom/event-handler', './dom/selector-engine', './util/scrollbar', './base-component', './util/backdrop', './util/focustrap', './util/component-functions'], factory) :\n  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Modal = factory(global.Index, global.EventHandler, global.SelectorEngine, global.Scrollbar, global.BaseComponent, global.Backdrop, global.Focustrap, global.ComponentFunctions));\n})(this, (function (index, EventHandler, SelectorEngine, ScrollBarHelper, BaseComponent, Backdrop, FocusTrap, componentFunctions) { 'use strict';\n\n  const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };\n\n  const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);\n  const SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine);\n  const ScrollBarHelper__default = /*#__PURE__*/_interopDefaultLegacy(ScrollBarHelper);\n  const BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);\n  const Backdrop__default = /*#__PURE__*/_interopDefaultLegacy(Backdrop);\n  const FocusTrap__default = /*#__PURE__*/_interopDefaultLegacy(FocusTrap);\n\n  /**\n   * --------------------------------------------------------------------------\n   * Bootstrap (v5.2.3): modal.js\n   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n   * --------------------------------------------------------------------------\n   */\n  /**\n   * Constants\n   */\n\n  const NAME = 'modal';\n  const DATA_KEY = 'bs.modal';\n  const EVENT_KEY = `.${DATA_KEY}`;\n  const DATA_API_KEY = '.data-api';\n  const ESCAPE_KEY = 'Escape';\n  const EVENT_HIDE = `hide${EVENT_KEY}`;\n  const EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`;\n  const EVENT_HIDDEN = `hidden${EVENT_KEY}`;\n  const EVENT_SHOW = `show${EVENT_KEY}`;\n  const EVENT_SHOWN = `shown${EVENT_KEY}`;\n  const EVENT_RESIZE = `resize${EVENT_KEY}`;\n  const EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`;\n  const EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`;\n  const EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`;\n  const EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`;\n  const CLASS_NAME_OPEN = 'modal-open';\n  const CLASS_NAME_FADE = 'fade';\n  const CLASS_NAME_SHOW = 'show';\n  const CLASS_NAME_STATIC = 'modal-static';\n  const OPEN_SELECTOR = '.modal.show';\n  const SELECTOR_DIALOG = '.modal-dialog';\n  const SELECTOR_MODAL_BODY = '.modal-body';\n  const SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]';\n  const Default = {\n    backdrop: true,\n    focus: true,\n    keyboard: true\n  };\n  const DefaultType = {\n    backdrop: '(boolean|string)',\n    focus: 'boolean',\n    keyboard: 'boolean'\n  };\n  /**\n   * Class definition\n   */\n\n  class Modal extends BaseComponent__default.default {\n    constructor(element, config) {\n      super(element, config);\n      this._dialog = SelectorEngine__default.default.findOne(SELECTOR_DIALOG, this._element);\n      this._backdrop = this._initializeBackDrop();\n      this._focustrap = this._initializeFocusTrap();\n      this._isShown = false;\n      this._isTransitioning = false;\n      this._scrollBar = new ScrollBarHelper__default.default();\n\n      this._addEventListeners();\n    } // Getters\n\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    } // Public\n\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__default.default.trigger(this._element, EVENT_SHOW, {\n        relatedTarget\n      });\n\n      if (showEvent.defaultPrevented) {\n        return;\n      }\n\n      this._isShown = true;\n      this._isTransitioning = true;\n\n      this._scrollBar.hide();\n\n      document.body.classList.add(CLASS_NAME_OPEN);\n\n      this._adjustDialog();\n\n      this._backdrop.show(() => this._showElement(relatedTarget));\n    }\n\n    hide() {\n      if (!this._isShown || this._isTransitioning) {\n        return;\n      }\n\n      const hideEvent = EventHandler__default.default.trigger(this._element, EVENT_HIDE);\n\n      if (hideEvent.defaultPrevented) {\n        return;\n      }\n\n      this._isShown = false;\n      this._isTransitioning = true;\n\n      this._focustrap.deactivate();\n\n      this._element.classList.remove(CLASS_NAME_SHOW);\n\n      this._queueCallback(() => this._hideModal(), this._element, this._isAnimated());\n    }\n\n    dispose() {\n      for (const htmlElement of [window, this._dialog]) {\n        EventHandler__default.default.off(htmlElement, EVENT_KEY);\n      }\n\n      this._backdrop.dispose();\n\n      this._focustrap.deactivate();\n\n      super.dispose();\n    }\n\n    handleUpdate() {\n      this._adjustDialog();\n    } // Private\n\n\n    _initializeBackDrop() {\n      return new Backdrop__default.default({\n        isVisible: Boolean(this._config.backdrop),\n        // '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__default.default({\n        trapElement: this._element\n      });\n    }\n\n    _showElement(relatedTarget) {\n      // try to append dynamic modal\n      if (!document.body.contains(this._element)) {\n        document.body.append(this._element);\n      }\n\n      this._element.style.display = 'block';\n\n      this._element.removeAttribute('aria-hidden');\n\n      this._element.setAttribute('aria-modal', true);\n\n      this._element.setAttribute('role', 'dialog');\n\n      this._element.scrollTop = 0;\n      const modalBody = SelectorEngine__default.default.findOne(SELECTOR_MODAL_BODY, this._dialog);\n\n      if (modalBody) {\n        modalBody.scrollTop = 0;\n      }\n\n      index.reflow(this._element);\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__default.default.trigger(this._element, EVENT_SHOWN, {\n          relatedTarget\n        });\n      };\n\n      this._queueCallback(transitionComplete, this._dialog, this._isAnimated());\n    }\n\n    _addEventListeners() {\n      EventHandler__default.default.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n        if (event.key !== ESCAPE_KEY) {\n          return;\n        }\n\n        if (this._config.keyboard) {\n          event.preventDefault();\n          this.hide();\n          return;\n        }\n\n        this._triggerBackdropTransition();\n      });\n      EventHandler__default.default.on(window, EVENT_RESIZE, () => {\n        if (this._isShown && !this._isTransitioning) {\n          this._adjustDialog();\n        }\n      });\n      EventHandler__default.default.on(this._element, EVENT_MOUSEDOWN_DISMISS, event => {\n        // a bad trick to segregate clicks that may start inside dialog but end outside, and avoid listen to scrollbar clicks\n        EventHandler__default.default.one(this._element, EVENT_CLICK_DISMISS, event2 => {\n          if (this._element !== event.target || this._element !== event2.target) {\n            return;\n          }\n\n          if (this._config.backdrop === 'static') {\n            this._triggerBackdropTransition();\n\n            return;\n          }\n\n          if (this._config.backdrop) {\n            this.hide();\n          }\n        });\n      });\n    }\n\n    _hideModal() {\n      this._element.style.display = 'none';\n\n      this._element.setAttribute('aria-hidden', true);\n\n      this._element.removeAttribute('aria-modal');\n\n      this._element.removeAttribute('role');\n\n      this._isTransitioning = false;\n\n      this._backdrop.hide(() => {\n        document.body.classList.remove(CLASS_NAME_OPEN);\n\n        this._resetAdjustments();\n\n        this._scrollBar.reset();\n\n        EventHandler__default.default.trigger(this._element, EVENT_HIDDEN);\n      });\n    }\n\n    _isAnimated() {\n      return this._element.classList.contains(CLASS_NAME_FADE);\n    }\n\n    _triggerBackdropTransition() {\n      const hideEvent = EventHandler__default.default.trigger(this._element, EVENT_HIDE_PREVENTED);\n\n      if (hideEvent.defaultPrevented) {\n        return;\n      }\n\n      const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;\n      const initialOverflowY = this._element.style.overflowY; // return if the following background transition hasn't yet completed\n\n      if (initialOverflowY === 'hidden' || this._element.classList.contains(CLASS_NAME_STATIC)) {\n        return;\n      }\n\n      if (!isModalOverflowing) {\n        this._element.style.overflowY = 'hidden';\n      }\n\n      this._element.classList.add(CLASS_NAME_STATIC);\n\n      this._queueCallback(() => {\n        this._element.classList.remove(CLASS_NAME_STATIC);\n\n        this._queueCallback(() => {\n          this._element.style.overflowY = initialOverflowY;\n        }, this._dialog);\n      }, this._dialog);\n\n      this._element.focus();\n    }\n    /**\n     * The following methods are used to handle overflowing modals\n     */\n\n\n    _adjustDialog() {\n      const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;\n\n      const scrollbarWidth = this._scrollBar.getWidth();\n\n      const isBodyOverflowing = scrollbarWidth > 0;\n\n      if (isBodyOverflowing && !isModalOverflowing) {\n        const property = index.isRTL() ? 'paddingLeft' : 'paddingRight';\n        this._element.style[property] = `${scrollbarWidth}px`;\n      }\n\n      if (!isBodyOverflowing && isModalOverflowing) {\n        const property = index.isRTL() ? 'paddingRight' : 'paddingLeft';\n        this._element.style[property] = `${scrollbarWidth}px`;\n      }\n    }\n\n    _resetAdjustments() {\n      this._element.style.paddingLeft = '';\n      this._element.style.paddingRight = '';\n    } // Static\n\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   * Data API implementation\n   */\n\n\n  EventHandler__default.default.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n    const target = index.getElementFromSelector(this);\n\n    if (['A', 'AREA'].includes(this.tagName)) {\n      event.preventDefault();\n    }\n\n    EventHandler__default.default.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__default.default.one(target, EVENT_HIDDEN, () => {\n        if (index.isVisible(this)) {\n          this.focus();\n        }\n      });\n    }); // avoid conflict when clicking modal toggler while another one is open\n\n    const alreadyOpen = SelectorEngine__default.default.findOne(OPEN_SELECTOR);\n\n    if (alreadyOpen) {\n      Modal.getInstance(alreadyOpen).hide();\n    }\n\n    const data = Modal.getOrCreateInstance(target);\n    data.toggle(this);\n  });\n  componentFunctions.enableDismissTrigger(Modal);\n  /**\n   * jQuery\n   */\n\n  index.defineJQueryPlugin(Modal);\n\n  return Modal;\n\n}));\n//# sourceMappingURL=modal.js.map\n","/* This code is used to replace the html from a\ndifferent page with the html from the current page.\nThis is how it works:\n1) embed.html is delivered to client\n2) js reads the url from the body-tag attribute 'data-url'\n3) js loads the data from the url in step 2\n4) js retrieves all elements from inside the main tags from the loaded html from step3\n5) js puts the data from step 4 into the dom from step 1\n\nIf a link is clicked, it is also handled by js\n6) js checks if the achor tag has an embedTarget-attribute\n7) if not the restart from step 2\n6) if attribute is set to external, redirect to platform\n7) if login is required for next step, login opens in popover\n*/\n\n/* global django */\n\n// if this was opened from an embed for login, notify it about success\nif (window.opener) {\n  window.opener.postMessage(\n    JSON.stringify({ name: 'popup-close' }),\n    location.origin\n  )\n}\n\n$(document).ready(function () {\n  const $main = $('main')\n  let currentPath\n  let popup\n  const patternsForPopup = /\\/accounts\\b/\n  const $top = $('<div tabindex=\"-1\">')\n\n  window.adhocracy4.getCurrentPath = function () {\n    // currentPath is currently broken - it will result in not closing\n    // the login popup. Using login_success will make us close the popup\n    // and return to the initial page. This is not correct, but better\n    // and consistent with the login button on the embed frame.\n    // return currentPath\n    return '/embed/login_success'\n  }\n\n  const headers = {\n    'X-Embed': ''\n  }\n\n  const testCanSetCookie = function () {\n    const cookie = 'can-set-cookie=true;'\n    const regExp = new RegExp(cookie)\n    document.cookie = cookie\n    return regExp.test(document.cookie)\n  }\n\n  const createAlert = function (text, state, timeout) {\n    const $alert = $('<p class=\"alert alert--' + state + ' alert--small\" role=\"alert\">' + text + '</p>')\n    const $close = $('<button class=\"alert__close\"><i class=\"fa fa-times\"></i></button>')\n\n    $alert.append($close)\n    $close.attr('title', django.gettext('Close'))\n    $close.find('i').attr('aria-label', django.gettext('Close'))\n\n    const removeMessage = function () {\n      $alert.remove()\n    }\n    $alert.on('click', removeMessage)\n    if (typeof timeout === 'number') {\n      setTimeout(removeMessage, timeout)\n    }\n    $alert.prependTo($('#embed-status'))\n  }\n\n  const extractScripts = function ($root, selector, attr) {\n    const $existingValues = $('head').find(selector).map((i, e) => $(e).attr(attr))\n\n    $root.find(selector).each(function (i, script) {\n      const $script = $(script)\n      if ($existingValues.filter((i, v) => v === $script.attr(attr)).length) {\n        $script.remove()\n      } else {\n        $('head').append($script)\n      }\n    })\n  }\n\n  const loadHtml = function (html, textStatus, xhr) {\n    const $root = $('<div>').html(html)\n    const nextPath = xhr.getResponseHeader('x-ajax-path')\n    const isInitial = !currentPath\n\n    if (patternsForPopup.test(nextPath)) {\n      $('#embed-confirm').modal('show')\n      return false\n    }\n    // only update the currentPath if there was no modal opened\n    currentPath = nextPath\n\n    extractScripts($root, 'script[src]', 'src')\n    extractScripts($root, 'link[rel=\"stylesheet\"]', 'href')\n\n    $main.empty()\n    $main.append($top)\n    $main.append($root.find('main').children())\n\n    let event\n    if (typeof (Event) === 'function') {\n      event = new Event('a4.embed.ready')\n    } else {\n      event = document.createEvent('Event')\n      event.initEvent('a4.embed.ready', false, true)\n    }\n    document.dispatchEvent(event)\n\n    // jump to top after navigation, but not on inital load\n    if (!isInitial) {\n      $top.focus()\n    }\n  }\n\n  const onAjaxError = function (jqxhr) {\n    let text\n    switch (jqxhr.status) {\n      case 404:\n        text = django.gettext('We couldn\\'t find what you were looking for.')\n        break\n      case 401:\n      case 403:\n        text = django.gettext('You don\\'t have the permission to view this page.')\n        break\n      default:\n        text = django.gettext('Something went wrong!')\n        break\n    }\n\n    createAlert(text, 'danger', 6000)\n  }\n\n  const getEmbedTarget = function ($element, href) {\n    const embedTarget = $element.data('embedTarget')\n\n    if (embedTarget) {\n      return embedTarget\n    } else if (!href || href[0] === '#' || $element.attr('target')) {\n      return 'ignore'\n    } else if ($element.is('.rich-text a')) {\n      return 'external'\n    } else if (patternsForPopup.test(href)) {\n      return 'popup'\n    } else {\n      return 'internal'\n    }\n  }\n\n  $(document).on('click', 'a[href]', function (event) {\n    // NOTE: event.target.href is resolved against /embed/\n\n    let href = event.currentTarget.getAttribute('href')\n    const $link = $(event.target)\n    const embedTarget = getEmbedTarget($link, href)\n\n    if (embedTarget === 'internal') {\n      event.preventDefault()\n\n      if (href[0] === '?') {\n        href = currentPath + href\n      }\n\n      $.ajax({\n        url: href,\n        headers,\n        success: loadHtml,\n        error: onAjaxError\n      })\n    } else if (embedTarget === 'popup') {\n      event.preventDefault()\n      popup = window.open(\n        href,\n        'embed_popup',\n        'height=650,width=500,location=yes,menubar=no,toolbar=no,status=no'\n      )\n    }\n  })\n\n  $(document).on('submit', 'form[action]', function (event) {\n    const form = event.target\n    const $form = $(form)\n    const embedTarget = getEmbedTarget($form, form.method)\n\n    if (embedTarget === 'internal') {\n      event.preventDefault()\n\n      $.ajax({\n        url: form.action,\n        method: form.method,\n        headers,\n        data: $form.serialize(),\n        success: loadHtml,\n        error: onAjaxError\n      })\n    }\n  })\n\n  $('.js-embed-logout').on('click', function (e) {\n    e.preventDefault()\n    $.post(\n      '/accounts/logout/',\n      { csrfmiddlewaretoken: $('[name=csrfmiddlewaretoken]').val() },\n      function () {\n        location.reload()\n      }\n    )\n  })\n\n  // The popup will send a message when the user is logged in. Only after\n  // this message the Popup will close.\n  window.addEventListener('message', function (e) {\n    if (e.origin === location.origin) {\n      // Browser extensions might use onmessage too, so catch any exceptions\n      try {\n        const data = JSON.parse(e.data)\n\n        if (data.name === 'popup-close' && popup) {\n          popup.close()\n          location.reload()\n        }\n      } catch (e) {\n      }\n    }\n  }, false)\n\n  if (testCanSetCookie() === false) {\n    const text = django.gettext('You have third party cookies disabled. You can still view the content of this project but won\\'t be able to login.')\n    createAlert(text, 'info')\n  }\n\n  $.ajax({\n    url: $('body').data('url'),\n    headers,\n    success: loadHtml,\n    error: onAjaxError\n  })\n})\n","/*!\n  * Bootstrap backdrop.js v5.2.3 (https://getbootstrap.com/)\n  * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n  */\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('../dom/event-handler'), require('./index'), require('./config')) :\n  typeof define === 'function' && define.amd ? define(['../dom/event-handler', './index', './config'], factory) :\n  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Backdrop = factory(global.EventHandler, global.Index, global.Config));\n})(this, (function (EventHandler, index, Config) { 'use strict';\n\n  const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };\n\n  const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);\n  const Config__default = /*#__PURE__*/_interopDefaultLegacy(Config);\n\n  /**\n   * --------------------------------------------------------------------------\n   * Bootstrap (v5.2.3): util/backdrop.js\n   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n   * --------------------------------------------------------------------------\n   */\n  /**\n   * Constants\n   */\n\n  const NAME = 'backdrop';\n  const CLASS_NAME_FADE = 'fade';\n  const CLASS_NAME_SHOW = 'show';\n  const EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`;\n  const Default = {\n    className: 'modal-backdrop',\n    clickCallback: null,\n    isAnimated: false,\n    isVisible: true,\n    // if false, we use the backdrop helper without adding any element to the dom\n    rootElement: 'body' // give the choice to place backdrop under different elements\n\n  };\n  const DefaultType = {\n    className: 'string',\n    clickCallback: '(function|null)',\n    isAnimated: 'boolean',\n    isVisible: 'boolean',\n    rootElement: '(element|string)'\n  };\n  /**\n   * Class definition\n   */\n\n  class Backdrop extends Config__default.default {\n    constructor(config) {\n      super();\n      this._config = this._getConfig(config);\n      this._isAppended = false;\n      this._element = null;\n    } // Getters\n\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    } // Public\n\n\n    show(callback) {\n      if (!this._config.isVisible) {\n        index.execute(callback);\n        return;\n      }\n\n      this._append();\n\n      const element = this._getElement();\n\n      if (this._config.isAnimated) {\n        index.reflow(element);\n      }\n\n      element.classList.add(CLASS_NAME_SHOW);\n\n      this._emulateAnimation(() => {\n        index.execute(callback);\n      });\n    }\n\n    hide(callback) {\n      if (!this._config.isVisible) {\n        index.execute(callback);\n        return;\n      }\n\n      this._getElement().classList.remove(CLASS_NAME_SHOW);\n\n      this._emulateAnimation(() => {\n        this.dispose();\n        index.execute(callback);\n      });\n    }\n\n    dispose() {\n      if (!this._isAppended) {\n        return;\n      }\n\n      EventHandler__default.default.off(this._element, EVENT_MOUSEDOWN);\n\n      this._element.remove();\n\n      this._isAppended = false;\n    } // Private\n\n\n    _getElement() {\n      if (!this._element) {\n        const backdrop = document.createElement('div');\n        backdrop.className = this._config.className;\n\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    _configAfterMerge(config) {\n      // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n      config.rootElement = index.getElement(config.rootElement);\n      return config;\n    }\n\n    _append() {\n      if (this._isAppended) {\n        return;\n      }\n\n      const element = this._getElement();\n\n      this._config.rootElement.append(element);\n\n      EventHandler__default.default.on(element, EVENT_MOUSEDOWN, () => {\n        index.execute(this._config.clickCallback);\n      });\n      this._isAppended = true;\n    }\n\n    _emulateAnimation(callback) {\n      index.executeAfterTransition(callback, this._getElement(), this._config.isAnimated);\n    }\n\n  }\n\n  return Backdrop;\n\n}));\n//# sourceMappingURL=backdrop.js.map\n","/*!\n  * Bootstrap index.js v5.2.3 (https://getbootstrap.com/)\n  * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n  */\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :\n  typeof define === 'function' && define.amd ? define(['exports'], factory) :\n  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.Index = {}));\n})(this, (function (exports) { 'use strict';\n\n  /**\n   * --------------------------------------------------------------------------\n   * Bootstrap (v5.2.3): util/index.js\n   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n   * --------------------------------------------------------------------------\n   */\n  const MAX_UID = 1000000;\n  const MILLISECONDS_MULTIPLIER = 1000;\n  const TRANSITION_END = 'transitionend'; // Shout-out Angus Croll (https://goo.gl/pxwQGp)\n\n  const toType = object => {\n    if (object === null || object === undefined) {\n      return `${object}`;\n    }\n\n    return Object.prototype.toString.call(object).match(/\\s([a-z]+)/i)[1].toLowerCase();\n  };\n  /**\n   * Public Util API\n   */\n\n\n  const getUID = prefix => {\n    do {\n      prefix += Math.floor(Math.random() * MAX_UID);\n    } while (document.getElementById(prefix));\n\n    return prefix;\n  };\n\n  const getSelector = element => {\n    let selector = element.getAttribute('data-bs-target');\n\n    if (!selector || selector === '#') {\n      let hrefAttribute = element.getAttribute('href'); // 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\n      if (!hrefAttribute || !hrefAttribute.includes('#') && !hrefAttribute.startsWith('.')) {\n        return null;\n      } // Just in case some CMS puts out a full URL with the anchor appended\n\n\n      if (hrefAttribute.includes('#') && !hrefAttribute.startsWith('#')) {\n        hrefAttribute = `#${hrefAttribute.split('#')[1]}`;\n      }\n\n      selector = hrefAttribute && hrefAttribute !== '#' ? hrefAttribute.trim() : null;\n    }\n\n    return selector;\n  };\n\n  const 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\n  const getElementFromSelector = element => {\n    const selector = getSelector(element);\n    return selector ? document.querySelector(selector) : null;\n  };\n\n  const getTransitionDurationFromElement = element => {\n    if (!element) {\n      return 0;\n    } // Get transition-duration of the element\n\n\n    let {\n      transitionDuration,\n      transitionDelay\n    } = window.getComputedStyle(element);\n    const floatTransitionDuration = Number.parseFloat(transitionDuration);\n    const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found\n\n    if (!floatTransitionDuration && !floatTransitionDelay) {\n      return 0;\n    } // If multiple durations are defined, take the first\n\n\n    transitionDuration = transitionDuration.split(',')[0];\n    transitionDelay = transitionDelay.split(',')[0];\n    return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;\n  };\n\n  const triggerTransitionEnd = element => {\n    element.dispatchEvent(new Event(TRANSITION_END));\n  };\n\n  const isElement = object => {\n    if (!object || typeof object !== 'object') {\n      return false;\n    }\n\n    if (typeof object.jquery !== 'undefined') {\n      object = object[0];\n    }\n\n    return typeof object.nodeType !== 'undefined';\n  };\n\n  const getElement = object => {\n    // it's a jQuery object or a node element\n    if (isElement(object)) {\n      return object.jquery ? object[0] : object;\n    }\n\n    if (typeof object === 'string' && object.length > 0) {\n      return document.querySelector(object);\n    }\n\n    return null;\n  };\n\n  const isVisible = element => {\n    if (!isElement(element) || element.getClientRects().length === 0) {\n      return false;\n    }\n\n    const elementIsVisible = getComputedStyle(element).getPropertyValue('visibility') === 'visible'; // Handle `details` element as its content may falsie appear visible when it is closed\n\n    const closedDetails = element.closest('details:not([open])');\n\n    if (!closedDetails) {\n      return elementIsVisible;\n    }\n\n    if (closedDetails !== element) {\n      const summary = element.closest('summary');\n\n      if (summary && summary.parentNode !== closedDetails) {\n        return false;\n      }\n\n      if (summary === null) {\n        return false;\n      }\n    }\n\n    return elementIsVisible;\n  };\n\n  const 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\n  const findShadowRoot = element => {\n    if (!document.documentElement.attachShadow) {\n      return null;\n    } // Can find the shadow root otherwise it'll return the document\n\n\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    } // when we don't find a shadow root\n\n\n    if (!element.parentNode) {\n      return null;\n    }\n\n    return findShadowRoot(element.parentNode);\n  };\n\n  const noop = () => {};\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   */\n\n\n  const reflow = element => {\n    element.offsetHeight; // eslint-disable-line no-unused-expressions\n  };\n\n  const getjQuery = () => {\n    if (window.jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n      return window.jQuery;\n    }\n\n    return null;\n  };\n\n  const DOMContentLoadedCallbacks = [];\n\n  const 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          for (const callback of DOMContentLoadedCallbacks) {\n            callback();\n          }\n        });\n      }\n\n      DOMContentLoadedCallbacks.push(callback);\n    } else {\n      callback();\n    }\n  };\n\n  const isRTL = () => document.documentElement.dir === 'rtl';\n\n  const defineJQueryPlugin = plugin => {\n    onDOMContentLoaded(() => {\n      const $ = getjQuery();\n      /* istanbul ignore if */\n\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\n        $.fn[name].noConflict = () => {\n          $.fn[name] = JQUERY_NO_CONFLICT;\n          return plugin.jQueryInterface;\n        };\n      }\n    });\n  };\n\n  const execute = callback => {\n    if (typeof callback === 'function') {\n      callback();\n    }\n  };\n\n  const 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    let called = false;\n\n    const handler = ({\n      target\n    }) => {\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   * 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   */\n\n\n  const getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n    const listLength = list.length;\n    let index = list.indexOf(activeElement); // if the element does not exist in the list return an element\n    // depending on the direction and if cycle is allowed\n\n    if (index === -1) {\n      return !shouldGetNext && isCycleAllowed ? list[listLength - 1] : list[0];\n    }\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\n  exports.defineJQueryPlugin = defineJQueryPlugin;\n  exports.execute = execute;\n  exports.executeAfterTransition = executeAfterTransition;\n  exports.findShadowRoot = findShadowRoot;\n  exports.getElement = getElement;\n  exports.getElementFromSelector = getElementFromSelector;\n  exports.getNextActiveElement = getNextActiveElement;\n  exports.getSelectorFromElement = getSelectorFromElement;\n  exports.getTransitionDurationFromElement = getTransitionDurationFromElement;\n  exports.getUID = getUID;\n  exports.getjQuery = getjQuery;\n  exports.isDisabled = isDisabled;\n  exports.isElement = isElement;\n  exports.isRTL = isRTL;\n  exports.isVisible = isVisible;\n  exports.noop = noop;\n  exports.onDOMContentLoaded = onDOMContentLoaded;\n  exports.reflow = reflow;\n  exports.toType = toType;\n  exports.triggerTransitionEnd = triggerTransitionEnd;\n\n  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });\n\n}));\n//# sourceMappingURL=index.js.map\n","/*!\n  * Bootstrap data.js v5.2.3 (https://getbootstrap.com/)\n  * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n  */\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n  typeof define === 'function' && define.amd ? define(factory) :\n  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Data = factory());\n})(this, (function () { 'use strict';\n\n  /**\n   * --------------------------------------------------------------------------\n   * Bootstrap (v5.2.3): dom/data.js\n   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n   * --------------------------------------------------------------------------\n   */\n\n  /**\n   * Constants\n   */\n  const elementMap = new Map();\n  const data = {\n    set(element, key, instance) {\n      if (!elementMap.has(element)) {\n        elementMap.set(element, new Map());\n      }\n\n      const instanceMap = elementMap.get(element); // 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\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      instanceMap.delete(key); // free up element references if there are no instances left for an element\n\n      if (instanceMap.size === 0) {\n        elementMap.delete(element);\n      }\n    }\n\n  };\n\n  return data;\n\n}));\n//# sourceMappingURL=data.js.map\n","/*!\n  * Bootstrap base-component.js v5.2.3 (https://getbootstrap.com/)\n  * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n  */\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data'), require('./util/index'), require('./dom/event-handler'), require('./util/config')) :\n  typeof define === 'function' && define.amd ? define(['./dom/data', './util/index', './dom/event-handler', './util/config'], factory) :\n  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.BaseComponent = factory(global.Data, global.Index, global.EventHandler, global.Config));\n})(this, (function (Data, index, EventHandler, Config) { 'use strict';\n\n  const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };\n\n  const Data__default = /*#__PURE__*/_interopDefaultLegacy(Data);\n  const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);\n  const Config__default = /*#__PURE__*/_interopDefaultLegacy(Config);\n\n  /**\n   * --------------------------------------------------------------------------\n   * Bootstrap (v5.2.3): base-component.js\n   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n   * --------------------------------------------------------------------------\n   */\n  /**\n   * Constants\n   */\n\n  const VERSION = '5.2.3';\n  /**\n   * Class definition\n   */\n\n  class BaseComponent extends Config__default.default {\n    constructor(element, config) {\n      super();\n      element = index.getElement(element);\n\n      if (!element) {\n        return;\n      }\n\n      this._element = element;\n      this._config = this._getConfig(config);\n      Data__default.default.set(this._element, this.constructor.DATA_KEY, this);\n    } // Public\n\n\n    dispose() {\n      Data__default.default.remove(this._element, this.constructor.DATA_KEY);\n      EventHandler__default.default.off(this._element, this.constructor.EVENT_KEY);\n\n      for (const propertyName of Object.getOwnPropertyNames(this)) {\n        this[propertyName] = null;\n      }\n    }\n\n    _queueCallback(callback, element, isAnimated = true) {\n      index.executeAfterTransition(callback, element, isAnimated);\n    }\n\n    _getConfig(config) {\n      config = this._mergeConfigObj(config, this._element);\n      config = this._configAfterMerge(config);\n\n      this._typeCheckConfig(config);\n\n      return config;\n    } // Static\n\n\n    static getInstance(element) {\n      return Data__default.default.get(index.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 DATA_KEY() {\n      return `bs.${this.NAME}`;\n    }\n\n    static get EVENT_KEY() {\n      return `.${this.DATA_KEY}`;\n    }\n\n    static eventName(name) {\n      return `${name}${this.EVENT_KEY}`;\n    }\n\n  }\n\n  return BaseComponent;\n\n}));\n//# sourceMappingURL=base-component.js.map\n","/*!\n  * Bootstrap config.js v5.2.3 (https://getbootstrap.com/)\n  * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n  */\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./index'), require('../dom/manipulator')) :\n  typeof define === 'function' && define.amd ? define(['./index', '../dom/manipulator'], factory) :\n  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Config = factory(global.Index, global.Manipulator));\n})(this, (function (index, Manipulator) { 'use strict';\n\n  const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };\n\n  const Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator);\n\n  /**\n   * --------------------------------------------------------------------------\n   * Bootstrap (v5.2.3): util/config.js\n   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n   * --------------------------------------------------------------------------\n   */\n  /**\n   * Class definition\n   */\n\n  class Config {\n    // Getters\n    static get Default() {\n      return {};\n    }\n\n    static get DefaultType() {\n      return {};\n    }\n\n    static get NAME() {\n      throw new Error('You have to implement the static method \"NAME\", for each component!');\n    }\n\n    _getConfig(config) {\n      config = this._mergeConfigObj(config);\n      config = this._configAfterMerge(config);\n\n      this._typeCheckConfig(config);\n\n      return config;\n    }\n\n    _configAfterMerge(config) {\n      return config;\n    }\n\n    _mergeConfigObj(config, element) {\n      const jsonConfig = index.isElement(element) ? Manipulator__default.default.getDataAttribute(element, 'config') : {}; // try to parse\n\n      return { ...this.constructor.Default,\n        ...(typeof jsonConfig === 'object' ? jsonConfig : {}),\n        ...(index.isElement(element) ? Manipulator__default.default.getDataAttributes(element) : {}),\n        ...(typeof config === 'object' ? config : {})\n      };\n    }\n\n    _typeCheckConfig(config, configTypes = this.constructor.DefaultType) {\n      for (const property of Object.keys(configTypes)) {\n        const expectedTypes = configTypes[property];\n        const value = config[property];\n        const valueType = index.isElement(value) ? 'element' : index.toType(value);\n\n        if (!new RegExp(expectedTypes).test(valueType)) {\n          throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`);\n        }\n      }\n    }\n\n  }\n\n  return Config;\n\n}));\n//# sourceMappingURL=config.js.map\n","/*!\n  * Bootstrap focustrap.js v5.2.3 (https://getbootstrap.com/)\n  * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n  */\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('../dom/event-handler'), require('../dom/selector-engine'), require('./config')) :\n  typeof define === 'function' && define.amd ? define(['../dom/event-handler', '../dom/selector-engine', './config'], factory) :\n  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Focustrap = factory(global.EventHandler, global.SelectorEngine, global.Config));\n})(this, (function (EventHandler, SelectorEngine, Config) { 'use strict';\n\n  const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };\n\n  const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);\n  const SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine);\n  const Config__default = /*#__PURE__*/_interopDefaultLegacy(Config);\n\n  /**\n   * --------------------------------------------------------------------------\n   * Bootstrap (v5.2.3): util/focustrap.js\n   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n   * --------------------------------------------------------------------------\n   */\n  /**\n   * Constants\n   */\n\n  const NAME = 'focustrap';\n  const DATA_KEY = 'bs.focustrap';\n  const EVENT_KEY = `.${DATA_KEY}`;\n  const EVENT_FOCUSIN = `focusin${EVENT_KEY}`;\n  const EVENT_KEYDOWN_TAB = `keydown.tab${EVENT_KEY}`;\n  const TAB_KEY = 'Tab';\n  const TAB_NAV_FORWARD = 'forward';\n  const TAB_NAV_BACKWARD = 'backward';\n  const Default = {\n    autofocus: true,\n    trapElement: null // The element to trap focus inside of\n\n  };\n  const DefaultType = {\n    autofocus: 'boolean',\n    trapElement: 'element'\n  };\n  /**\n   * Class definition\n   */\n\n  class FocusTrap extends Config__default.default {\n    constructor(config) {\n      super();\n      this._config = this._getConfig(config);\n      this._isActive = false;\n      this._lastTabNavDirection = null;\n    } // Getters\n\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    } // Public\n\n\n    activate() {\n      if (this._isActive) {\n        return;\n      }\n\n      if (this._config.autofocus) {\n        this._config.trapElement.focus();\n      }\n\n      EventHandler__default.default.off(document, EVENT_KEY); // guard against infinite focus loop\n\n      EventHandler__default.default.on(document, EVENT_FOCUSIN, event => this._handleFocusin(event));\n      EventHandler__default.default.on(document, EVENT_KEYDOWN_TAB, event => this._handleKeydown(event));\n      this._isActive = true;\n    }\n\n    deactivate() {\n      if (!this._isActive) {\n        return;\n      }\n\n      this._isActive = false;\n      EventHandler__default.default.off(document, EVENT_KEY);\n    } // Private\n\n\n    _handleFocusin(event) {\n      const {\n        trapElement\n      } = this._config;\n\n      if (event.target === document || event.target === trapElement || trapElement.contains(event.target)) {\n        return;\n      }\n\n      const elements = SelectorEngine__default.default.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  }\n\n  return FocusTrap;\n\n}));\n//# sourceMappingURL=focustrap.js.map\n","/*!\n  * Bootstrap scrollbar.js v5.2.3 (https://getbootstrap.com/)\n  * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n  */\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('../dom/selector-engine'), require('../dom/manipulator'), require('./index')) :\n  typeof define === 'function' && define.amd ? define(['../dom/selector-engine', '../dom/manipulator', './index'], factory) :\n  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Scrollbar = factory(global.SelectorEngine, global.Manipulator, global.Index));\n})(this, (function (SelectorEngine, Manipulator, index) { 'use strict';\n\n  const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };\n\n  const SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine);\n  const Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator);\n\n  /**\n   * --------------------------------------------------------------------------\n   * Bootstrap (v5.2.3): util/scrollBar.js\n   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n   * --------------------------------------------------------------------------\n   */\n  /**\n   * Constants\n   */\n\n  const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top';\n  const SELECTOR_STICKY_CONTENT = '.sticky-top';\n  const PROPERTY_PADDING = 'padding-right';\n  const PROPERTY_MARGIN = 'margin-right';\n  /**\n   * Class definition\n   */\n\n  class ScrollBarHelper {\n    constructor() {\n      this._element = document.body;\n    } // Public\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\n      this._disableOverFlow(); // give padding to element to balance the hidden scrollbar width\n\n\n      this._setElementAttributes(this._element, PROPERTY_PADDING, calculatedValue => calculatedValue + width); // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n\n\n      this._setElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING, calculatedValue => calculatedValue + width);\n\n      this._setElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN, calculatedValue => calculatedValue - width);\n    }\n\n    reset() {\n      this._resetElementAttributes(this._element, 'overflow');\n\n      this._resetElementAttributes(this._element, PROPERTY_PADDING);\n\n      this._resetElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING);\n\n      this._resetElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN);\n    }\n\n    isOverflowing() {\n      return this.getWidth() > 0;\n    } // Private\n\n\n    _disableOverFlow() {\n      this._saveInitialAttribute(this._element, 'overflow');\n\n      this._element.style.overflow = 'hidden';\n    }\n\n    _setElementAttributes(selector, styleProperty, callback) {\n      const scrollbarWidth = this.getWidth();\n\n      const manipulationCallBack = element => {\n        if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n          return;\n        }\n\n        this._saveInitialAttribute(element, styleProperty);\n\n        const calculatedValue = window.getComputedStyle(element).getPropertyValue(styleProperty);\n        element.style.setProperty(styleProperty, `${callback(Number.parseFloat(calculatedValue))}px`);\n      };\n\n      this._applyManipulationCallback(selector, manipulationCallBack);\n    }\n\n    _saveInitialAttribute(element, styleProperty) {\n      const actualValue = element.style.getPropertyValue(styleProperty);\n\n      if (actualValue) {\n        Manipulator__default.default.setDataAttribute(element, styleProperty, actualValue);\n      }\n    }\n\n    _resetElementAttributes(selector, styleProperty) {\n      const manipulationCallBack = element => {\n        const value = Manipulator__default.default.getDataAttribute(element, styleProperty); // We only want to remove the property if the value is `null`; the value can also be zero\n\n        if (value === null) {\n          element.style.removeProperty(styleProperty);\n          return;\n        }\n\n        Manipulator__default.default.removeDataAttribute(element, styleProperty);\n        element.style.setProperty(styleProperty, value);\n      };\n\n      this._applyManipulationCallback(selector, manipulationCallBack);\n    }\n\n    _applyManipulationCallback(selector, callBack) {\n      if (index.isElement(selector)) {\n        callBack(selector);\n        return;\n      }\n\n      for (const sel of SelectorEngine__default.default.find(selector, this._element)) {\n        callBack(sel);\n      }\n    }\n\n  }\n\n  return ScrollBarHelper;\n\n}));\n//# sourceMappingURL=scrollbar.js.map\n","/*!\n  * Bootstrap event-handler.js v5.2.3 (https://getbootstrap.com/)\n  * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n  */\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('../util/index')) :\n  typeof define === 'function' && define.amd ? define(['../util/index'], factory) :\n  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.EventHandler = factory(global.Index));\n})(this, (function (index) { 'use strict';\n\n  /**\n   * --------------------------------------------------------------------------\n   * Bootstrap (v5.2.3): dom/event-handler.js\n   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n   * --------------------------------------------------------------------------\n   */\n  /**\n   * Constants\n   */\n\n  const namespaceRegex = /[^.]*(?=\\..*)\\.|.*/;\n  const stripNameRegex = /\\..*/;\n  const stripUidRegex = /::\\d+$/;\n  const eventRegistry = {}; // Events storage\n\n  let uidEvent = 1;\n  const customEvents = {\n    mouseenter: 'mouseover',\n    mouseleave: 'mouseout'\n  };\n  const nativeEvents = new Set(['click', 'dblclick', 'mouseup', 'mousedown', 'contextmenu', 'mousewheel', 'DOMMouseScroll', 'mouseover', 'mouseout', 'mousemove', 'selectstart', 'selectend', 'keydown', 'keypress', 'keyup', 'orientationchange', 'touchstart', 'touchmove', 'touchend', 'touchcancel', 'pointerdown', 'pointermove', 'pointerup', 'pointerleave', 'pointercancel', 'gesturestart', 'gesturechange', 'gestureend', 'focus', 'blur', 'change', 'reset', 'select', 'submit', 'focusin', 'focusout', 'load', 'unload', 'beforeunload', 'resize', 'move', 'DOMContentLoaded', 'readystatechange', 'error', 'abort', 'scroll']);\n  /**\n   * Private methods\n   */\n\n  function makeEventUid(element, uid) {\n    return uid && `${uid}::${uidEvent++}` || element.uidEvent || uidEvent++;\n  }\n\n  function getElementEvents(element) {\n    const uid = makeEventUid(element);\n    element.uidEvent = uid;\n    eventRegistry[uid] = eventRegistry[uid] || {};\n    return eventRegistry[uid];\n  }\n\n  function bootstrapHandler(element, fn) {\n    return function handler(event) {\n      hydrateObj(event, {\n        delegateTarget: element\n      });\n\n      if (handler.oneOff) {\n        EventHandler.off(element, event.type, fn);\n      }\n\n      return fn.apply(element, [event]);\n    };\n  }\n\n  function bootstrapDelegationHandler(element, selector, fn) {\n    return function handler(event) {\n      const domElements = element.querySelectorAll(selector);\n\n      for (let {\n        target\n      } = event; target && target !== this; target = target.parentNode) {\n        for (const domElement of domElements) {\n          if (domElement !== target) {\n            continue;\n          }\n\n          hydrateObj(event, {\n            delegateTarget: target\n          });\n\n          if (handler.oneOff) {\n            EventHandler.off(element, event.type, selector, fn);\n          }\n\n          return fn.apply(target, [event]);\n        }\n      }\n    };\n  }\n\n  function findHandler(events, callable, delegationSelector = null) {\n    return Object.values(events).find(event => event.callable === callable && event.delegationSelector === delegationSelector);\n  }\n\n  function normalizeParameters(originalTypeEvent, handler, delegationFunction) {\n    const isDelegated = typeof handler === 'string'; // todo: tooltip passes `false` instead of selector, so we need to check\n\n    const callable = isDelegated ? delegationFunction : handler || delegationFunction;\n    let typeEvent = getTypeEvent(originalTypeEvent);\n\n    if (!nativeEvents.has(typeEvent)) {\n      typeEvent = originalTypeEvent;\n    }\n\n    return [isDelegated, callable, typeEvent];\n  }\n\n  function addHandler(element, originalTypeEvent, handler, delegationFunction, oneOff) {\n    if (typeof originalTypeEvent !== 'string' || !element) {\n      return;\n    }\n\n    let [isDelegated, callable, typeEvent] = normalizeParameters(originalTypeEvent, handler, delegationFunction); // 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\n    if (originalTypeEvent in customEvents) {\n      const wrapFunction = 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      callable = wrapFunction(callable);\n    }\n\n    const events = getElementEvents(element);\n    const handlers = events[typeEvent] || (events[typeEvent] = {});\n    const previousFunction = findHandler(handlers, callable, isDelegated ? handler : null);\n\n    if (previousFunction) {\n      previousFunction.oneOff = previousFunction.oneOff && oneOff;\n      return;\n    }\n\n    const uid = makeEventUid(callable, originalTypeEvent.replace(namespaceRegex, ''));\n    const fn = isDelegated ? bootstrapDelegationHandler(element, handler, callable) : bootstrapHandler(element, callable);\n    fn.delegationSelector = isDelegated ? handler : null;\n    fn.callable = callable;\n    fn.oneOff = oneOff;\n    fn.uidEvent = uid;\n    handlers[uid] = fn;\n    element.addEventListener(typeEvent, fn, isDelegated);\n  }\n\n  function 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\n  function removeNamespacedHandlers(element, events, typeEvent, namespace) {\n    const storeElementEvent = events[typeEvent] || {};\n\n    for (const handlerKey of Object.keys(storeElementEvent)) {\n      if (handlerKey.includes(namespace)) {\n        const event = storeElementEvent[handlerKey];\n        removeHandler(element, events, typeEvent, event.callable, event.delegationSelector);\n      }\n    }\n  }\n\n  function 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\n  const EventHandler = {\n    on(element, event, handler, delegationFunction) {\n      addHandler(element, event, handler, delegationFunction, false);\n    },\n\n    one(element, event, handler, delegationFunction) {\n      addHandler(element, event, handler, delegationFunction, true);\n    },\n\n    off(element, originalTypeEvent, handler, delegationFunction) {\n      if (typeof originalTypeEvent !== 'string' || !element) {\n        return;\n      }\n\n      const [isDelegated, callable, typeEvent] = normalizeParameters(originalTypeEvent, handler, delegationFunction);\n      const inNamespace = typeEvent !== originalTypeEvent;\n      const events = getElementEvents(element);\n      const storeElementEvent = events[typeEvent] || {};\n      const isNamespace = originalTypeEvent.startsWith('.');\n\n      if (typeof callable !== 'undefined') {\n        // Simplest case: handler is passed, remove that listener ONLY.\n        if (!Object.keys(storeElementEvent).length) {\n          return;\n        }\n\n        removeHandler(element, events, typeEvent, callable, isDelegated ? handler : null);\n        return;\n      }\n\n      if (isNamespace) {\n        for (const elementEvent of Object.keys(events)) {\n          removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1));\n        }\n      }\n\n      for (const keyHandlers of Object.keys(storeElementEvent)) {\n        const handlerKey = keyHandlers.replace(stripUidRegex, '');\n\n        if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n          const event = storeElementEvent[keyHandlers];\n          removeHandler(element, events, typeEvent, event.callable, event.delegationSelector);\n        }\n      }\n    },\n\n    trigger(element, event, args) {\n      if (typeof event !== 'string' || !element) {\n        return null;\n      }\n\n      const $ = index.getjQuery();\n      const typeEvent = getTypeEvent(event);\n      const inNamespace = event !== typeEvent;\n      let jQueryEvent = null;\n      let bubbles = true;\n      let nativeDispatch = true;\n      let defaultPrevented = false;\n\n      if (inNamespace && $) {\n        jQueryEvent = $.Event(event, args);\n        $(element).trigger(jQueryEvent);\n        bubbles = !jQueryEvent.isPropagationStopped();\n        nativeDispatch = !jQueryEvent.isImmediatePropagationStopped();\n        defaultPrevented = jQueryEvent.isDefaultPrevented();\n      }\n\n      let evt = new Event(event, {\n        bubbles,\n        cancelable: true\n      });\n      evt = hydrateObj(evt, args);\n\n      if (defaultPrevented) {\n        evt.preventDefault();\n      }\n\n      if (nativeDispatch) {\n        element.dispatchEvent(evt);\n      }\n\n      if (evt.defaultPrevented && jQueryEvent) {\n        jQueryEvent.preventDefault();\n      }\n\n      return evt;\n    }\n\n  };\n\n  function hydrateObj(obj, meta) {\n    for (const [key, value] of Object.entries(meta || {})) {\n      try {\n        obj[key] = value;\n      } catch (_unused) {\n        Object.defineProperty(obj, key, {\n          configurable: true,\n\n          get() {\n            return value;\n          }\n\n        });\n      }\n    }\n\n    return obj;\n  }\n\n  return EventHandler;\n\n}));\n//# sourceMappingURL=event-handler.js.map\n","/*!\n  * Bootstrap manipulator.js v5.2.3 (https://getbootstrap.com/)\n  * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n  */\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n  typeof define === 'function' && define.amd ? define(factory) :\n  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Manipulator = factory());\n})(this, (function () { 'use strict';\n\n  /**\n   * --------------------------------------------------------------------------\n   * Bootstrap (v5.2.3): dom/manipulator.js\n   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n   * --------------------------------------------------------------------------\n   */\n  function normalizeData(value) {\n    if (value === 'true') {\n      return true;\n    }\n\n    if (value === 'false') {\n      return false;\n    }\n\n    if (value === Number(value).toString()) {\n      return Number(value);\n    }\n\n    if (value === '' || value === 'null') {\n      return null;\n    }\n\n    if (typeof value !== 'string') {\n      return value;\n    }\n\n    try {\n      return JSON.parse(decodeURIComponent(value));\n    } catch (_unused) {\n      return value;\n    }\n  }\n\n  function normalizeDataKey(key) {\n    return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`);\n  }\n\n  const 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      const bsKeys = Object.keys(element.dataset).filter(key => key.startsWith('bs') && !key.startsWith('bsConfig'));\n\n      for (const key of bsKeys) {\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  };\n\n  return Manipulator;\n\n}));\n//# sourceMappingURL=manipulator.js.map\n","/*!\n  * Bootstrap selector-engine.js v5.2.3 (https://getbootstrap.com/)\n  * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n  */\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('../util/index')) :\n  typeof define === 'function' && define.amd ? define(['../util/index'], factory) :\n  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.SelectorEngine = factory(global.Index));\n})(this, (function (index) { 'use strict';\n\n  /**\n   * --------------------------------------------------------------------------\n   * Bootstrap (v5.2.3): dom/selector-engine.js\n   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n   * --------------------------------------------------------------------------\n   */\n  /**\n   * Constants\n   */\n\n  const 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).filter(child => child.matches(selector));\n    },\n\n    parents(element, selector) {\n      const parents = [];\n      let ancestor = element.parentNode.closest(selector);\n\n      while (ancestor) {\n        parents.push(ancestor);\n        ancestor = ancestor.parentNode.closest(selector);\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    // TODO: this is now unused; remove later along with prev()\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 = ['a', 'button', 'input', 'textarea', 'select', 'details', '[tabindex]', '[contenteditable=\"true\"]'].map(selector => `${selector}:not([tabindex^=\"-\"])`).join(',');\n      return this.find(focusables, element).filter(el => !index.isDisabled(el) && index.isVisible(el));\n    }\n\n  };\n\n  return SelectorEngine;\n\n}));\n//# sourceMappingURL=selector-engine.js.map\n"],"names":["exports","EventHandler","index","EventHandler__default","e","default","_interopDefaultLegacy","enableDismissTrigger","component","method","clickEvent","EVENT_KEY","name","NAME","on","document","event","includes","this","tagName","preventDefault","isDisabled","target","getElementFromSelector","closest","getOrCreateInstance","Object","defineProperties","__esModule","value","Symbol","toStringTag","factory","module","SelectorEngine","ScrollBarHelper","BaseComponent","Backdrop","FocusTrap","componentFunctions","SelectorEngine__default","ScrollBarHelper__default","BaseComponent__default","Backdrop__default","FocusTrap__default","ESCAPE_KEY","EVENT_HIDE","EVENT_HIDE_PREVENTED","EVENT_HIDDEN","EVENT_SHOW","EVENT_SHOWN","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_MOUSEDOWN_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_CLICK_DATA_API","CLASS_NAME_OPEN","CLASS_NAME_FADE","CLASS_NAME_SHOW","CLASS_NAME_STATIC","OPEN_SELECTOR","SELECTOR_DIALOG","SELECTOR_MODAL_BODY","SELECTOR_DATA_TOGGLE","Default","backdrop","focus","keyboard","DefaultType","Modal","constructor","element","config","super","_dialog","findOne","_element","_backdrop","_initializeBackDrop","_focustrap","_initializeFocusTrap","_isShown","_isTransitioning","_scrollBar","_addEventListeners","toggle","relatedTarget","hide","show","trigger","defaultPrevented","body","classList","add","_adjustDialog","_showElement","deactivate","remove","_queueCallback","_hideModal","_isAnimated","dispose","htmlElement","window","off","handleUpdate","isVisible","Boolean","_config","isAnimated","trapElement","contains","append","style","display","removeAttribute","setAttribute","scrollTop","modalBody","reflow","transitionComplete","activate","key","_triggerBackdropTransition","one","event2","_resetAdjustments","reset","isModalOverflowing","scrollHeight","documentElement","clientHeight","initialOverflowY","overflowY","scrollbarWidth","getWidth","isBodyOverflowing","property","isRTL","paddingLeft","paddingRight","jQueryInterface","each","data","TypeError","showEvent","alreadyOpen","getInstance","defineJQueryPlugin","opener","postMessage","JSON","stringify","location","origin","$","ready","currentPath","popup","$main","patternsForPopup","$top","adhocracy4","getCurrentPath","cookie","regExp","headers","createAlert","text","state","timeout","$alert","$close","attr","django","gettext","find","removeMessage","setTimeout","prependTo","extractScripts","$root","selector","$existingValues","map","i","script","$script","filter","v","length","loadHtml","html","textStatus","xhr","nextPath","getResponseHeader","isInitial","test","modal","empty","children","Event","createEvent","initEvent","dispatchEvent","onAjaxError","jqxhr","status","getEmbedTarget","$element","href","embedTarget","is","currentTarget","getAttribute","$link","ajax","url","success","error","open","form","$form","action","serialize","post","csrfmiddlewaretoken","val","reload","addEventListener","parse","close","RegExp","Config","Config__default","EVENT_MOUSEDOWN","className","clickCallback","rootElement","_getConfig","_isAppended","callback","execute","_append","_getElement","_emulateAnimation","createElement","_configAfterMerge","getElement","executeAfterTransition","MAX_UID","MILLISECONDS_MULTIPLIER","TRANSITION_END","toType","object","prototype","toString","call","match","toLowerCase","getUID","prefix","Math","floor","random","getElementById","getSelector","hrefAttribute","startsWith","split","trim","getSelectorFromElement","querySelector","getTransitionDurationFromElement","transitionDuration","transitionDelay","getComputedStyle","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","triggerTransitionEnd","isElement","jquery","nodeType","getClientRects","elementIsVisible","getPropertyValue","closedDetails","summary","parentNode","Node","ELEMENT_NODE","disabled","hasAttribute","findShadowRoot","attachShadow","getRootNode","root","ShadowRoot","noop","offsetHeight","getjQuery","jQuery","DOMContentLoadedCallbacks","onDOMContentLoaded","readyState","push","dir","plugin","JQUERY_NO_CONFLICT","fn","Constructor","noConflict","transitionElement","waitForTransition","durationPadding","emulatedDuration","called","handler","removeEventListener","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","listLength","indexOf","max","min","elementMap","Map","set","instance","has","instanceMap","get","size","console","Array","from","keys","delete","Data","Data__default","VERSION","DATA_KEY","propertyName","getOwnPropertyNames","_mergeConfigObj","_typeCheckConfig","eventName","Manipulator","Manipulator__default","Error","jsonConfig","getDataAttribute","getDataAttributes","configTypes","expectedTypes","valueType","toUpperCase","EVENT_FOCUSIN","EVENT_KEYDOWN_TAB","TAB_KEY","TAB_NAV_FORWARD","TAB_NAV_BACKWARD","autofocus","_isActive","_lastTabNavDirection","_handleFocusin","_handleKeydown","elements","focusableChildren","shiftKey","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","PROPERTY_PADDING","PROPERTY_MARGIN","documentWidth","clientWidth","abs","innerWidth","width","_disableOverFlow","_setElementAttributes","calculatedValue","_resetElementAttributes","isOverflowing","_saveInitialAttribute","overflow","styleProperty","manipulationCallBack","setProperty","_applyManipulationCallback","actualValue","setDataAttribute","removeDataAttribute","removeProperty","callBack","sel","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","nativeEvents","Set","makeEventUid","uid","getElementEvents","bootstrapHandler","hydrateObj","delegateTarget","oneOff","type","apply","bootstrapDelegationHandler","domElements","querySelectorAll","domElement","findHandler","events","callable","delegationSelector","values","normalizeParameters","originalTypeEvent","delegationFunction","isDelegated","typeEvent","getTypeEvent","addHandler","wrapFunction","handlers","previousFunction","replace","removeHandler","removeNamespacedHandlers","namespace","storeElementEvent","handlerKey","inNamespace","isNamespace","elementEvent","slice","keyHandlers","args","jQueryEvent","bubbles","nativeDispatch","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","evt","cancelable","obj","meta","entries","_unused","defineProperty","configurable","normalizeData","decodeURIComponent","normalizeDataKey","chr","attributes","bsKeys","dataset","pureKey","charAt","concat","Element","child","matches","parents","ancestor","prev","previous","previousElementSibling","next","nextElementSibling","focusables","join","el"],"ignoreList":[],"sourceRoot":""}