@coreui/coreui 4.1.6 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. package/LICENSE +2 -2
  2. package/README.md +62 -10
  3. package/dist/css/bootstrap-reboot.css +488 -0
  4. package/dist/css/bootstrap-reboot.css.map +1 -0
  5. package/dist/css/bootstrap-reboot.min.css +8 -0
  6. package/dist/css/bootstrap-reboot.min.css.map +1 -0
  7. package/dist/css/coreui-grid.css +22 -4
  8. package/dist/css/coreui-grid.css.map +1 -1
  9. package/dist/css/coreui-grid.min.css +2 -2
  10. package/dist/css/coreui-grid.min.css.map +1 -1
  11. package/dist/css/coreui-grid.rtl.css +23 -5
  12. package/dist/css/coreui-grid.rtl.css.map +1 -1
  13. package/dist/css/coreui-grid.rtl.min.css +3 -3
  14. package/dist/css/coreui-grid.rtl.min.css.map +1 -1
  15. package/dist/css/coreui-reboot.css +34 -41
  16. package/dist/css/coreui-reboot.css.map +1 -1
  17. package/dist/css/coreui-reboot.min.css +2 -2
  18. package/dist/css/coreui-reboot.min.css.map +1 -1
  19. package/dist/css/coreui-reboot.rtl.css +34 -42
  20. package/dist/css/coreui-reboot.rtl.css.map +1 -1
  21. package/dist/css/coreui-reboot.rtl.min.css +3 -3
  22. package/dist/css/coreui-reboot.rtl.min.css.map +1 -1
  23. package/dist/css/coreui-utilities.css +278 -163
  24. package/dist/css/coreui-utilities.css.map +1 -1
  25. package/dist/css/coreui-utilities.min.css +2 -2
  26. package/dist/css/coreui-utilities.min.css.map +1 -1
  27. package/dist/css/coreui-utilities.rtl.css +273 -164
  28. package/dist/css/coreui-utilities.rtl.css.map +1 -1
  29. package/dist/css/coreui-utilities.rtl.min.css +3 -3
  30. package/dist/css/coreui-utilities.rtl.min.css.map +1 -1
  31. package/dist/css/coreui.css +2168 -1240
  32. package/dist/css/coreui.css.map +1 -1
  33. package/dist/css/coreui.min.css +2 -2
  34. package/dist/css/coreui.min.css.map +1 -1
  35. package/dist/css/coreui.rtl.css +2150 -1228
  36. package/dist/css/coreui.rtl.css.map +1 -1
  37. package/dist/css/coreui.rtl.min.css +3 -3
  38. package/dist/css/coreui.rtl.min.css.map +1 -1
  39. package/dist/js/coreui.bundle.js +2095 -1906
  40. package/dist/js/coreui.bundle.js.map +1 -1
  41. package/dist/js/coreui.bundle.min.js +2 -2
  42. package/dist/js/coreui.bundle.min.js.map +1 -1
  43. package/dist/js/coreui.esm.js +2098 -1909
  44. package/dist/js/coreui.esm.js.map +1 -1
  45. package/dist/js/coreui.esm.min.js +2 -2
  46. package/dist/js/coreui.esm.min.js.map +1 -1
  47. package/dist/js/coreui.js +2099 -1910
  48. package/dist/js/coreui.js.map +1 -1
  49. package/dist/js/coreui.min.js +2 -2
  50. package/dist/js/coreui.min.js.map +1 -1
  51. package/js/dist/alert.js +10 -148
  52. package/js/dist/alert.js.map +1 -1
  53. package/js/dist/base-component.js +36 -122
  54. package/js/dist/base-component.js.map +1 -1
  55. package/js/dist/button.js +9 -76
  56. package/js/dist/button.js.map +1 -1
  57. package/js/dist/carousel.js +212 -507
  58. package/js/dist/carousel.js.map +1 -1
  59. package/js/dist/collapse.js +64 -251
  60. package/js/dist/collapse.js.map +1 -1
  61. package/js/dist/dom/data.js +2 -4
  62. package/js/dist/dom/data.js.map +1 -1
  63. package/js/dist/dom/event-handler.js +82 -133
  64. package/js/dist/dom/event-handler.js.map +1 -1
  65. package/js/dist/dom/manipulator.js +22 -26
  66. package/js/dist/dom/manipulator.js.map +1 -1
  67. package/js/dist/dom/selector-engine.js +16 -81
  68. package/js/dist/dom/selector-engine.js.map +1 -1
  69. package/js/dist/dropdown.js +99 -338
  70. package/js/dist/dropdown.js.map +1 -1
  71. package/js/dist/modal.js +106 -774
  72. package/js/dist/modal.js.map +1 -1
  73. package/js/dist/navigation.js +309 -0
  74. package/js/dist/navigation.js.map +1 -0
  75. package/js/dist/offcanvas.js +88 -680
  76. package/js/dist/offcanvas.js.map +1 -1
  77. package/js/dist/popover.js +35 -120
  78. package/js/dist/popover.js.map +1 -1
  79. package/js/dist/scrollspy.js +178 -264
  80. package/js/dist/scrollspy.js.map +1 -1
  81. package/js/dist/sidebar.js +347 -0
  82. package/js/dist/sidebar.js.map +1 -0
  83. package/js/dist/tab.js +226 -216
  84. package/js/dist/tab.js.map +1 -1
  85. package/js/dist/toast.js +27 -216
  86. package/js/dist/toast.js.map +1 -1
  87. package/js/dist/tooltip.js +271 -618
  88. package/js/dist/tooltip.js.map +1 -1
  89. package/js/dist/util/backdrop.js +166 -0
  90. package/js/dist/util/backdrop.js.map +1 -0
  91. package/js/dist/util/component-functions.js +47 -0
  92. package/js/dist/util/component-functions.js.map +1 -0
  93. package/js/dist/util/config.js +80 -0
  94. package/js/dist/util/config.js.map +1 -0
  95. package/js/dist/util/focustrap.js +130 -0
  96. package/js/dist/util/focustrap.js.map +1 -0
  97. package/js/dist/util/index.js +354 -0
  98. package/js/dist/util/index.js.map +1 -0
  99. package/js/dist/util/sanitizer.js +126 -0
  100. package/js/dist/util/sanitizer.js.map +1 -0
  101. package/js/dist/util/scrollbar.js +139 -0
  102. package/js/dist/util/scrollbar.js.map +1 -0
  103. package/js/dist/util/swipe.js +156 -0
  104. package/js/dist/util/swipe.js.map +1 -0
  105. package/js/dist/util/template-factory.js +178 -0
  106. package/js/dist/util/template-factory.js.map +1 -0
  107. package/js/src/alert.js +3 -15
  108. package/js/src/base-component.js +28 -18
  109. package/js/src/button.js +3 -15
  110. package/js/src/carousel.js +203 -320
  111. package/js/src/collapse.js +61 -94
  112. package/js/src/dom/data.js +1 -3
  113. package/js/src/dom/event-handler.js +74 -107
  114. package/js/src/dom/manipulator.js +22 -31
  115. package/js/src/dom/selector-engine.js +10 -19
  116. package/js/src/dropdown.js +84 -138
  117. package/js/src/modal.js +94 -158
  118. package/js/src/navigation.js +12 -13
  119. package/js/src/offcanvas.js +71 -60
  120. package/js/src/popover.js +31 -62
  121. package/js/src/scrollspy.js +166 -171
  122. package/js/src/sidebar.js +5 -8
  123. package/js/src/tab.js +201 -110
  124. package/js/src/toast.js +19 -41
  125. package/js/src/tooltip.js +264 -374
  126. package/js/src/util/backdrop.js +55 -36
  127. package/js/src/util/component-functions.js +1 -1
  128. package/js/src/util/config.js +66 -0
  129. package/js/src/util/focustrap.js +38 -28
  130. package/js/src/util/index.js +41 -57
  131. package/js/src/util/sanitizer.js +9 -17
  132. package/js/src/util/scrollbar.js +47 -30
  133. package/js/src/util/swipe.js +146 -0
  134. package/js/src/util/template-factory.js +160 -0
  135. package/package.json +36 -36
  136. package/scss/_accordion.scss +53 -25
  137. package/scss/_alert.scss +29 -9
  138. package/scss/_badge.scss +15 -6
  139. package/scss/_breadcrumb.scss +23 -11
  140. package/scss/_button-group.scss +3 -0
  141. package/scss/_buttons.scss +71 -50
  142. package/scss/_callout.scss +18 -6
  143. package/scss/_card.scss +55 -37
  144. package/scss/_carousel.scss +6 -6
  145. package/scss/_close.scss +4 -4
  146. package/scss/_containers.scss +1 -1
  147. package/scss/_dropdown.scss +86 -64
  148. package/scss/_footer.scss +15 -5
  149. package/scss/_functions.scss +11 -24
  150. package/scss/_grid.scss +3 -3
  151. package/scss/_header.scss +59 -34
  152. package/scss/_helpers.scss +1 -0
  153. package/scss/_images.scss +3 -3
  154. package/scss/_list-group.scss +47 -29
  155. package/scss/_maps.scss +54 -0
  156. package/scss/_modal.scss +70 -43
  157. package/scss/_nav.scss +53 -20
  158. package/scss/_navbar.scss +84 -94
  159. package/scss/_offcanvas.scss +120 -60
  160. package/scss/_pagination.scss +66 -21
  161. package/scss/_popover.scss +90 -52
  162. package/scss/_progress.scss +20 -9
  163. package/scss/_reboot.scss +31 -58
  164. package/scss/_root.scss +41 -19
  165. package/scss/_spinners.scss +37 -21
  166. package/scss/_subheader.scss +9 -9
  167. package/scss/_tables.scss +34 -36
  168. package/scss/_toasts.scss +35 -19
  169. package/scss/_tooltip.scss +61 -56
  170. package/scss/_utilities.scss +42 -25
  171. package/scss/_variables.scss +169 -148
  172. package/scss/bootstrap-reboot.scss +14 -0
  173. package/scss/coreui-grid.rtl.scss +1 -1
  174. package/scss/coreui-grid.scss +2 -1
  175. package/scss/coreui-reboot.rtl.scss +1 -1
  176. package/scss/coreui-reboot.scss +1 -1
  177. package/scss/coreui-utilities.rtl.scss +1 -1
  178. package/scss/coreui-utilities.scss +2 -1
  179. package/scss/coreui.rtl.scss +1 -1
  180. package/scss/coreui.scss +2 -1
  181. package/scss/forms/_floating-labels.scss +14 -3
  182. package/scss/forms/_form-check.scss +41 -18
  183. package/scss/forms/_form-control.scss +25 -50
  184. package/scss/forms/_form-range.scss +8 -8
  185. package/scss/forms/_form-select.scss +8 -8
  186. package/scss/forms/_form-text.scss +1 -1
  187. package/scss/forms/_input-group.scss +3 -3
  188. package/scss/forms/_labels.scss +2 -2
  189. package/scss/helpers/_color-bg.scss +10 -0
  190. package/scss/helpers/_colored-links.scss +2 -2
  191. package/scss/helpers/_position.scss +7 -1
  192. package/scss/helpers/_ratio.scss +2 -2
  193. package/scss/helpers/_vr.scss +1 -0
  194. package/scss/mixins/_alert.scss +10 -10
  195. package/scss/mixins/_breakpoints.scss +8 -8
  196. package/scss/mixins/_buttons.scss +45 -47
  197. package/scss/mixins/_container.scss +4 -2
  198. package/scss/mixins/_css-vars.scss +47 -47
  199. package/scss/mixins/_forms.scss +8 -0
  200. package/scss/mixins/_gradients.scss +1 -1
  201. package/scss/mixins/_grid.scss +11 -11
  202. package/scss/mixins/_list-group.scss +7 -9
  203. package/scss/mixins/_pagination.scss +4 -25
  204. package/scss/mixins/_table-variants.scss +20 -12
  205. package/scss/mixins/_utilities.scss +8 -3
  206. package/scss/sidebar/_sidebar-narrow.scss +10 -10
  207. package/scss/sidebar/_sidebar-nav.scss +33 -32
  208. package/scss/sidebar/_sidebar.scss +110 -56
@@ -1 +1 @@
1
- {"version":3,"file":"modal.js","sources":["../src/util/index.js","../src/util/scrollbar.js","../src/util/backdrop.js","../src/util/focustrap.js","../src/util/component-functions.js","../src/modal.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI (v4.1.6): alert.js\n * Licensed under MIT (https://coreui.io/license)\n *\n * This component is a modified version of the Bootstrap's util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1_000_000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst 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/**\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-coreui-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 const elementIsVisible = getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n // Handle `details` element as its content may falsie appear visible when it is closed\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 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\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-coreui-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.3): 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.3): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/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.coreui.${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.3): util/focustrap.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/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 = 'coreui.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 (target === document || target === trapElement || trapElement.contains(target)) {\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.3): 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-coreui-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 * CoreUI (v4.1.6): modal.js\n * Licensed under MIT (https://coreui.io/license)\n *\n * This component is a modified version of the Bootstrap's 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 = 'coreui.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 OPEN_SELECTOR = '.modal.show'\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-coreui-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 // avoid conflict when clicking moddal toggler while another one is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen) {\n Modal.getInstance(allReadyOpen).hide()\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"],"names":["MILLISECONDS_MULTIPLIER","TRANSITION_END","toType","object","undefined","Object","prototype","toString","call","match","toLowerCase","getSelector","element","selector","getAttribute","hrefAttr","includes","startsWith","split","trim","getElementFromSelector","document","querySelector","getTransitionDurationFromElement","transitionDuration","transitionDelay","window","getComputedStyle","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","triggerTransitionEnd","dispatchEvent","Event","isElement","obj","jquery","nodeType","getElement","length","typeCheckConfig","componentName","config","configTypes","keys","forEach","property","expectedTypes","value","valueType","RegExp","test","TypeError","toUpperCase","isVisible","getClientRects","elementIsVisible","getPropertyValue","closedDetails","closest","summary","parentNode","isDisabled","Node","ELEMENT_NODE","classList","contains","disabled","hasAttribute","reflow","offsetHeight","getjQuery","jQuery","body","DOMContentLoadedCallbacks","onDOMContentLoaded","callback","readyState","addEventListener","push","isRTL","documentElement","dir","defineJQueryPlugin","plugin","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","execute","executeAfterTransition","transitionElement","waitForTransition","durationPadding","emulatedDuration","called","handler","target","removeEventListener","setTimeout","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","ScrollBarHelper","constructor","_element","getWidth","documentWidth","clientWidth","Math","abs","innerWidth","hide","width","_disableOverFlow","_setElementAttributes","calculatedValue","_saveInitialAttribute","style","overflow","styleProp","scrollbarWidth","manipulationCallBack","_applyManipulationCallback","reset","_resetElementAttributes","actualValue","Manipulator","setDataAttribute","getDataAttribute","removeProperty","removeDataAttribute","callBack","SelectorEngine","find","isOverflowing","Default","className","isAnimated","rootElement","clickCallback","DefaultType","CLASS_NAME_FADE","CLASS_NAME_SHOW","EVENT_MOUSEDOWN","Backdrop","_config","_getConfig","_isAppended","show","_append","_getElement","add","_emulateAnimation","remove","dispose","backdrop","createElement","append","EventHandler","on","off","trapElement","autofocus","DATA_KEY","EVENT_KEY","EVENT_FOCUSIN","EVENT_KEYDOWN_TAB","TAB_KEY","TAB_NAV_FORWARD","TAB_NAV_BACKWARD","FocusTrap","_isActive","_lastTabNavDirection","activate","focus","event","_handleFocusin","_handleKeydown","deactivate","elements","focusableChildren","key","shiftKey","enableDismissTrigger","component","method","clickEvent","tagName","preventDefault","instance","getOrCreateInstance","DATA_API_KEY","ESCAPE_KEY","keyboard","EVENT_HIDE","EVENT_HIDE_PREVENTED","EVENT_HIDDEN","EVENT_SHOW","EVENT_SHOWN","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_MOUSEUP_DISMISS","EVENT_MOUSEDOWN_DISMISS","EVENT_CLICK_DATA_API","CLASS_NAME_OPEN","CLASS_NAME_STATIC","OPEN_SELECTOR","SELECTOR_DIALOG","SELECTOR_MODAL_BODY","SELECTOR_DATA_TOGGLE","Modal","BaseComponent","_dialog","findOne","_backdrop","_initializeBackDrop","_focustrap","_initializeFocusTrap","_isShown","_ignoreBackdropClick","_isTransitioning","_scrollBar","toggle","relatedTarget","showEvent","trigger","defaultPrevented","_isAnimated","_adjustDialog","_setEscapeEvent","_setResizeEvent","one","_showBackdrop","_showElement","hideEvent","_queueCallback","_hideModal","htmlElement","handleUpdate","Boolean","getDataAttributes","modalBody","display","removeAttribute","setAttribute","scrollTop","transitionComplete","_triggerBackdropTransition","_resetAdjustments","currentTarget","scrollHeight","isModalOverflowing","clientHeight","overflowY","isBodyOverflowing","paddingLeft","paddingRight","each","data","allReadyOpen","getInstance"],"mappings":"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"}
1
+ {"version":3,"file":"modal.js","sources":["../src/modal.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI (v4.2.0): modal.js\n * Licensed under MIT (https://coreui.io/license)\n *\n * This component is a modified version of the Bootstrap's modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin, getElementFromSelector, isRTL, isVisible, reflow } from './util/index'\nimport EventHandler from './dom/event-handler'\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 * Constants\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'coreui.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\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_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.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 OPEN_SELECTOR = '.modal.show'\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-coreui-toggle=\"modal\"]'\n\nconst Default = {\n backdrop: true,\n focus: true,\n keyboard: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n focus: 'boolean',\n keyboard: 'boolean'\n}\n\n/**\n * Class definition\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\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._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n\n this._addEventListeners()\n }\n\n // Getters\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 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 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.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n this._isTransitioning = true\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.off(htmlElement, EVENT_KEY)\n }\n\n this._backdrop.dispose()\n this._focustrap.deactivate()\n super.dispose()\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\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 _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 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 const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n 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.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, this._isAnimated())\n }\n\n _addEventListeners() {\n EventHandler.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\n EventHandler.on(window, EVENT_RESIZE, () => {\n if (this._isShown && !this._isTransitioning) {\n this._adjustDialog()\n }\n })\n\n EventHandler.on(this._element, EVENT_MOUSEDOWN_DISMISS, event => {\n if (event.target !== event.currentTarget) { // click is inside modal-dialog\n return\n }\n\n if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n return\n }\n\n if (this._config.backdrop) {\n this.hide()\n }\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\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 _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 isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const initialOverflowY = this._element.style.overflowY\n // return if the following background transition hasn't yet completed\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 this._queueCallback(() => {\n this._element.classList.remove(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n this._element.style.overflowY = initialOverflowY\n }, this._dialog)\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) {\n const property = isRTL() ? 'paddingLeft' : 'paddingRight'\n this._element.style[property] = `${scrollbarWidth}px`\n }\n\n if (!isBodyOverflowing && isModalOverflowing) {\n const property = 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 }\n\n // Static\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\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 // avoid conflict when clicking modal toggler while another one is open\n const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (alreadyOpen) {\n Modal.getInstance(alreadyOpen).hide()\n }\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\nenableDismissTrigger(Modal)\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","ESCAPE_KEY","EVENT_HIDE","EVENT_HIDE_PREVENTED","EVENT_HIDDEN","EVENT_SHOW","EVENT_SHOWN","EVENT_RESIZE","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","BaseComponent","constructor","element","config","_dialog","SelectorEngine","findOne","_element","_backdrop","_initializeBackDrop","_focustrap","_initializeFocusTrap","_isShown","_isTransitioning","_scrollBar","ScrollBarHelper","_addEventListeners","toggle","relatedTarget","hide","show","showEvent","EventHandler","trigger","defaultPrevented","document","body","classList","add","_adjustDialog","_showElement","hideEvent","deactivate","remove","_queueCallback","_hideModal","_isAnimated","dispose","htmlElement","window","off","handleUpdate","Backdrop","isVisible","Boolean","_config","isAnimated","FocusTrap","trapElement","contains","append","style","display","removeAttribute","setAttribute","scrollTop","modalBody","reflow","transitionComplete","activate","on","event","key","preventDefault","_triggerBackdropTransition","target","currentTarget","_resetAdjustments","reset","isModalOverflowing","scrollHeight","documentElement","clientHeight","initialOverflowY","overflowY","scrollbarWidth","getWidth","isBodyOverflowing","property","isRTL","paddingLeft","paddingRight","jQueryInterface","each","data","getOrCreateInstance","TypeError","getElementFromSelector","includes","tagName","one","alreadyOpen","getInstance","enableDismissTrigger","defineJQueryPlugin"],"mappings":"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"}
@@ -0,0 +1,309 @@
1
+ /*!
2
+ * CoreUI navigation.js v4.2.0 (https://coreui.io)
3
+ * Copyright 2022 The CoreUI Team (https://github.com/orgs/coreui/people)
4
+ * Licensed under MIT (https://coreui.io)
5
+ */
6
+ (function (global, factory) {
7
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./util/index'), require('./dom/data'), require('./dom/event-handler'), require('./dom/manipulator'), require('./dom/selector-engine'), require('./base-component')) :
8
+ typeof define === 'function' && define.amd ? define(['./util/index', './dom/data', './dom/event-handler', './dom/manipulator', './dom/selector-engine', './base-component'], factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Navigation = factory(global.Index, global.Data, global.EventHandler, global.Manipulator, global.SelectorEngine, global.BaseComponent));
10
+ })(this, (function (index, Data, EventHandler, Manipulator, SelectorEngine, BaseComponent) { 'use strict';
11
+
12
+ const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
13
+
14
+ const Data__default = /*#__PURE__*/_interopDefaultLegacy(Data);
15
+ const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
16
+ const Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator);
17
+ const SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine);
18
+ const BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
19
+
20
+ /**
21
+ * --------------------------------------------------------------------------
22
+ * CoreUI (v4.2.0): navigation.js
23
+ * Licensed under MIT (https://coreui.io/license)
24
+ * --------------------------------------------------------------------------
25
+ */
26
+ /**
27
+ * ------------------------------------------------------------------------
28
+ * Constants
29
+ * ------------------------------------------------------------------------
30
+ */
31
+
32
+ const NAME = 'navigation';
33
+ const DATA_KEY = 'coreui.navigation';
34
+ const EVENT_KEY = `.${DATA_KEY}`;
35
+ const DATA_API_KEY = '.data-api';
36
+ const Default = {
37
+ activeLinksExact: true,
38
+ groupsAutoCollapse: true
39
+ };
40
+ const DefaultType = {
41
+ activeLinksExact: 'boolean',
42
+ groupsAutoCollapse: '(string|boolean)'
43
+ };
44
+ const CLASS_NAME_ACTIVE = 'active';
45
+ const CLASS_NAME_SHOW = 'show';
46
+ const CLASS_NAME_NAV_GROUP = 'nav-group';
47
+ const CLASS_NAME_NAV_GROUP_TOGGLE = 'nav-group-toggle';
48
+ const EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`;
49
+ const EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`;
50
+ const SELECTOR_NAV_GROUP = '.nav-group';
51
+ const SELECTOR_NAV_GROUP_ITEMS = '.nav-group-items';
52
+ const SELECTOR_NAV_GROUP_TOGGLE = '.nav-group-toggle';
53
+ const SELECTOR_NAV_LINK = '.nav-link';
54
+ const SELECTOR_DATA_NAVIGATION = '[data-coreui="navigation"]';
55
+ /**
56
+ * ------------------------------------------------------------------------
57
+ * Class Definition
58
+ * ------------------------------------------------------------------------
59
+ */
60
+
61
+ class Navigation extends BaseComponent__default.default {
62
+ constructor(element, config) {
63
+ super(element);
64
+ this._config = this._getConfig(config);
65
+
66
+ this._setActiveLink();
67
+
68
+ this._addEventListeners();
69
+
70
+ Data__default.default.set(element, DATA_KEY, this);
71
+ } // Getters
72
+
73
+
74
+ static get Default() {
75
+ return Default;
76
+ }
77
+
78
+ static get DATA_KEY() {
79
+ return DATA_KEY;
80
+ }
81
+
82
+ static get DefaultType() {
83
+ return DefaultType;
84
+ }
85
+
86
+ static get NAME() {
87
+ return NAME;
88
+ } // Private
89
+
90
+
91
+ _getConfig(config) {
92
+ config = { ...Default,
93
+ ...Manipulator__default.default.getDataAttributes(this._element),
94
+ ...(typeof config === 'object' ? config : {})
95
+ };
96
+ return config;
97
+ }
98
+
99
+ _setActiveLink() {
100
+ for (const element of Array.from(this._element.querySelectorAll(SELECTOR_NAV_LINK))) {
101
+ if (element.classList.contains(CLASS_NAME_NAV_GROUP_TOGGLE)) {
102
+ continue;
103
+ }
104
+
105
+ let currentUrl = String(window.location);
106
+ const urlHasParams = /\?.*=/;
107
+ const urlHasQueryString = /\?./;
108
+ const urlHasHash = /#./;
109
+
110
+ if (urlHasParams.test(currentUrl) || urlHasQueryString.test(currentUrl)) {
111
+ currentUrl = currentUrl.split('?')[0];
112
+ }
113
+
114
+ if (urlHasHash.test(currentUrl)) {
115
+ currentUrl = currentUrl.split('#')[0];
116
+ }
117
+
118
+ if (this._config.activeLinksExact && element.href === currentUrl) {
119
+ element.classList.add(CLASS_NAME_ACTIVE); // eslint-disable-next-line unicorn/no-array-for-each
120
+
121
+ Array.from(this._getParents(element, SELECTOR_NAV_GROUP)).forEach(element => {
122
+ element.classList.add(CLASS_NAME_SHOW);
123
+ element.setAttribute('aria-expanded', true);
124
+ });
125
+ }
126
+
127
+ if (!this._config.activeLinksExact && element.href.startsWith(currentUrl)) {
128
+ element.classList.add(CLASS_NAME_ACTIVE); // eslint-disable-next-line unicorn/no-array-for-each
129
+
130
+ Array.from(this._getParents(element, SELECTOR_NAV_GROUP)).forEach(element => {
131
+ element.classList.add(CLASS_NAME_SHOW);
132
+ element.setAttribute('aria-expanded', true);
133
+ });
134
+ }
135
+ }
136
+ }
137
+
138
+ _getParents(element, selector) {
139
+ // Setup parents array
140
+ const parents = []; // Get matching parent elements
141
+
142
+ for (; element && element !== document; element = element.parentNode) {
143
+ // Add matching parents to array
144
+ if (selector) {
145
+ if (element.matches(selector)) {
146
+ parents.push(element);
147
+ }
148
+ } else {
149
+ parents.push(element);
150
+ }
151
+ }
152
+
153
+ return parents;
154
+ }
155
+
156
+ _getAllSiblings(element, filter) {
157
+ const siblings = [];
158
+ element = element.parentNode.firstChild;
159
+
160
+ do {
161
+ if (element.nodeType === 3) {
162
+ continue; // text node
163
+ }
164
+
165
+ if (element.nodeType === 8) {
166
+ continue; // comment node
167
+ }
168
+
169
+ if (!filter || filter(element)) {
170
+ siblings.push(element);
171
+ } // eslint-disable-next-line no-cond-assign
172
+
173
+ } while (element = element.nextSibling);
174
+
175
+ return siblings;
176
+ }
177
+
178
+ _getChildren(n, skipMe) {
179
+ const children = [];
180
+
181
+ for (; n; n = n.nextSibling) {
182
+ if (n.nodeType === 1 && n !== skipMe) {
183
+ children.push(n);
184
+ }
185
+ }
186
+
187
+ return children;
188
+ }
189
+
190
+ _getSiblings(element, filter) {
191
+ const siblings = this._getChildren(element.parentNode.firstChild, element).filter(filter);
192
+
193
+ return siblings;
194
+ }
195
+
196
+ _slideDown(element) {
197
+ element.style.height = 'auto';
198
+ const height = element.clientHeight;
199
+ element.style.height = '0px';
200
+ setTimeout(() => {
201
+ element.style.height = `${height}px`;
202
+ }, 0);
203
+
204
+ this._queueCallback(() => {
205
+ element.style.height = 'auto';
206
+ }, element, true);
207
+ }
208
+
209
+ _slideUp(element, callback) {
210
+ const height = element.clientHeight;
211
+ element.style.height = `${height}px`;
212
+ setTimeout(() => {
213
+ element.style.height = '0px';
214
+ }, 0);
215
+
216
+ this._queueCallback(() => {
217
+ if (typeof callback === 'function') {
218
+ callback();
219
+ }
220
+ }, element, true);
221
+ }
222
+
223
+ _toggleGroupItems(event) {
224
+ let toggler = event.target;
225
+
226
+ if (!toggler.classList.contains(CLASS_NAME_NAV_GROUP_TOGGLE)) {
227
+ toggler = toggler.closest(SELECTOR_NAV_GROUP_TOGGLE);
228
+ }
229
+
230
+ const filter = element => Boolean(element.classList.contains(CLASS_NAME_NAV_GROUP) && element.classList.contains(CLASS_NAME_SHOW)); // Close other groups
231
+
232
+
233
+ if (this._config.groupsAutoCollapse === true) {
234
+ for (const element of this._getSiblings(toggler.parentNode, filter)) {
235
+ this._slideUp(SelectorEngine__default.default.findOne(SELECTOR_NAV_GROUP_ITEMS, element), () => {
236
+ element.classList.remove(CLASS_NAME_SHOW);
237
+ element.setAttribute('aria-expanded', false);
238
+ });
239
+ }
240
+ }
241
+
242
+ if (toggler.parentNode.classList.contains(CLASS_NAME_SHOW)) {
243
+ this._slideUp(SelectorEngine__default.default.findOne(SELECTOR_NAV_GROUP_ITEMS, toggler.parentNode), () => {
244
+ toggler.parentNode.classList.remove(CLASS_NAME_SHOW);
245
+ toggler.parentNode.setAttribute('aria-expanded', false);
246
+ });
247
+
248
+ return;
249
+ }
250
+
251
+ toggler.parentNode.classList.add(CLASS_NAME_SHOW);
252
+ toggler.parentNode.setAttribute('aria-expanded', true);
253
+
254
+ this._slideDown(SelectorEngine__default.default.findOne(SELECTOR_NAV_GROUP_ITEMS, toggler.parentNode));
255
+ }
256
+
257
+ _addEventListeners() {
258
+ EventHandler__default.default.on(this._element, EVENT_CLICK_DATA_API, SELECTOR_NAV_GROUP_TOGGLE, event => {
259
+ event.preventDefault();
260
+
261
+ this._toggleGroupItems(event, this);
262
+ });
263
+ } // Static
264
+
265
+
266
+ static navigationInterface(element, config) {
267
+ const data = Navigation.getOrCreateInstance(element, config);
268
+
269
+ if (typeof config === 'string') {
270
+ if (typeof data[config] === 'undefined') {
271
+ throw new TypeError(`No method named "${config}"`);
272
+ }
273
+
274
+ data[config]();
275
+ }
276
+ }
277
+
278
+ static jQueryInterface(config) {
279
+ return this.each(function () {
280
+ Navigation.navigationInterface(this, config);
281
+ });
282
+ }
283
+
284
+ }
285
+ /**
286
+ * ------------------------------------------------------------------------
287
+ * Data Api implementation
288
+ * ------------------------------------------------------------------------
289
+ */
290
+
291
+
292
+ EventHandler__default.default.on(window, EVENT_LOAD_DATA_API, () => {
293
+ for (const element of Array.from(document.querySelectorAll(SELECTOR_DATA_NAVIGATION))) {
294
+ Navigation.navigationInterface(element);
295
+ }
296
+ });
297
+ /**
298
+ * ------------------------------------------------------------------------
299
+ * jQuery
300
+ * ------------------------------------------------------------------------
301
+ * add .Navigation to jQuery only if jQuery is present
302
+ */
303
+
304
+ index.defineJQueryPlugin(Navigation);
305
+
306
+ return Navigation;
307
+
308
+ }));
309
+ //# sourceMappingURL=navigation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation.js","sources":["../src/navigation.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI (v4.2.0): navigation.js\n * Licensed under MIT (https://coreui.io/license)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } 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 = 'navigation'\nconst DATA_KEY = 'coreui.navigation'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n activeLinksExact: true,\n groupsAutoCollapse: true\n}\n\nconst DefaultType = {\n activeLinksExact: 'boolean',\n groupsAutoCollapse: '(string|boolean)'\n}\n\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SHOW = 'show'\n\nconst CLASS_NAME_NAV_GROUP = 'nav-group'\nconst CLASS_NAME_NAV_GROUP_TOGGLE = 'nav-group-toggle'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst SELECTOR_NAV_GROUP = '.nav-group'\nconst SELECTOR_NAV_GROUP_ITEMS = '.nav-group-items'\nconst SELECTOR_NAV_GROUP_TOGGLE = '.nav-group-toggle'\nconst SELECTOR_NAV_LINK = '.nav-link'\nconst SELECTOR_DATA_NAVIGATION = '[data-coreui=\"navigation\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Navigation extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._config = this._getConfig(config)\n this._setActiveLink()\n this._addEventListeners()\n\n Data.set(element, DATA_KEY, this)\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 static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n\n return config\n }\n\n _setActiveLink() {\n for (const element of Array.from(this._element.querySelectorAll(SELECTOR_NAV_LINK))) {\n if (element.classList.contains(CLASS_NAME_NAV_GROUP_TOGGLE)) {\n continue\n }\n\n let currentUrl = String(window.location)\n\n const urlHasParams = /\\?.*=/\n const urlHasQueryString = /\\?./\n const urlHasHash = /#./\n\n if (urlHasParams.test(currentUrl) || urlHasQueryString.test(currentUrl)) {\n currentUrl = currentUrl.split('?')[0]\n }\n\n if (urlHasHash.test(currentUrl)) {\n currentUrl = currentUrl.split('#')[0]\n }\n\n if (this._config.activeLinksExact && element.href === currentUrl) {\n element.classList.add(CLASS_NAME_ACTIVE)\n // eslint-disable-next-line unicorn/no-array-for-each\n Array.from(this._getParents(element, SELECTOR_NAV_GROUP)).forEach(element => {\n element.classList.add(CLASS_NAME_SHOW)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n if (!this._config.activeLinksExact && element.href.startsWith(currentUrl)) {\n element.classList.add(CLASS_NAME_ACTIVE)\n // eslint-disable-next-line unicorn/no-array-for-each\n Array.from(this._getParents(element, SELECTOR_NAV_GROUP)).forEach(element => {\n element.classList.add(CLASS_NAME_SHOW)\n element.setAttribute('aria-expanded', true)\n })\n }\n }\n }\n\n _getParents(element, selector) {\n // Setup parents array\n const parents = []\n\n // Get matching parent elements\n for (; element && element !== document; element = element.parentNode) {\n // Add matching parents to array\n if (selector) {\n if (element.matches(selector)) {\n parents.push(element)\n }\n } else {\n parents.push(element)\n }\n }\n\n return parents\n }\n\n _getAllSiblings(element, filter) {\n const siblings = []\n element = element.parentNode.firstChild\n do {\n if (element.nodeType === 3) {\n continue // text node\n }\n\n if (element.nodeType === 8) {\n continue // comment node\n }\n\n if (!filter || filter(element)) {\n siblings.push(element)\n }\n\n // eslint-disable-next-line no-cond-assign\n } while (element = element.nextSibling)\n\n return siblings\n }\n\n _getChildren(n, skipMe) {\n const children = []\n for (; n; n = n.nextSibling) {\n if (n.nodeType === 1 && n !== skipMe) {\n children.push(n)\n }\n }\n\n return children\n }\n\n _getSiblings(element, filter) {\n const siblings = this._getChildren(element.parentNode.firstChild, element).filter(filter)\n return siblings\n }\n\n _slideDown(element) {\n element.style.height = 'auto'\n const height = element.clientHeight\n element.style.height = '0px'\n setTimeout(() => {\n element.style.height = `${height}px`\n }, 0)\n\n this._queueCallback(() => {\n element.style.height = 'auto'\n }, element, true)\n }\n\n _slideUp(element, callback) {\n const height = element.clientHeight\n element.style.height = `${height}px`\n setTimeout(() => {\n element.style.height = '0px'\n }, 0)\n\n this._queueCallback(() => {\n if (typeof callback === 'function') {\n callback()\n }\n }, element, true)\n }\n\n _toggleGroupItems(event) {\n let toggler = event.target\n if (!toggler.classList.contains(CLASS_NAME_NAV_GROUP_TOGGLE)) {\n toggler = toggler.closest(SELECTOR_NAV_GROUP_TOGGLE)\n }\n\n const filter = element => Boolean(element.classList.contains(CLASS_NAME_NAV_GROUP) && element.classList.contains(CLASS_NAME_SHOW))\n\n // Close other groups\n if (this._config.groupsAutoCollapse === true) {\n for (const element of this._getSiblings(toggler.parentNode, filter)) {\n this._slideUp(SelectorEngine.findOne(SELECTOR_NAV_GROUP_ITEMS, element), () => {\n element.classList.remove(CLASS_NAME_SHOW)\n element.setAttribute('aria-expanded', false)\n })\n }\n }\n\n if (toggler.parentNode.classList.contains(CLASS_NAME_SHOW)) {\n this._slideUp(SelectorEngine.findOne(SELECTOR_NAV_GROUP_ITEMS, toggler.parentNode), () => {\n toggler.parentNode.classList.remove(CLASS_NAME_SHOW)\n toggler.parentNode.setAttribute('aria-expanded', false)\n })\n return\n }\n\n toggler.parentNode.classList.add(CLASS_NAME_SHOW)\n toggler.parentNode.setAttribute('aria-expanded', true)\n this._slideDown(SelectorEngine.findOne(SELECTOR_NAV_GROUP_ITEMS, toggler.parentNode))\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DATA_API, SELECTOR_NAV_GROUP_TOGGLE, event => {\n event.preventDefault()\n this._toggleGroupItems(event, this)\n })\n }\n\n // Static\n\n static navigationInterface(element, config) {\n const data = Navigation.getOrCreateInstance(element, 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 static jQueryInterface(config) {\n return this.each(function () {\n Navigation.navigationInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const element of Array.from(document.querySelectorAll(SELECTOR_DATA_NAVIGATION))) {\n Navigation.navigationInterface(element)\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Navigation to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Navigation)\n\nexport default Navigation\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","Default","activeLinksExact","groupsAutoCollapse","DefaultType","CLASS_NAME_ACTIVE","CLASS_NAME_SHOW","CLASS_NAME_NAV_GROUP","CLASS_NAME_NAV_GROUP_TOGGLE","EVENT_CLICK_DATA_API","EVENT_LOAD_DATA_API","SELECTOR_NAV_GROUP","SELECTOR_NAV_GROUP_ITEMS","SELECTOR_NAV_GROUP_TOGGLE","SELECTOR_NAV_LINK","SELECTOR_DATA_NAVIGATION","Navigation","BaseComponent","constructor","element","config","_config","_getConfig","_setActiveLink","_addEventListeners","Data","set","Manipulator","getDataAttributes","_element","Array","from","querySelectorAll","classList","contains","currentUrl","String","window","location","urlHasParams","urlHasQueryString","urlHasHash","test","split","href","add","_getParents","forEach","setAttribute","startsWith","selector","parents","document","parentNode","matches","push","_getAllSiblings","filter","siblings","firstChild","nodeType","nextSibling","_getChildren","n","skipMe","children","_getSiblings","_slideDown","style","height","clientHeight","setTimeout","_queueCallback","_slideUp","callback","_toggleGroupItems","event","toggler","target","closest","Boolean","SelectorEngine","findOne","remove","EventHandler","on","preventDefault","navigationInterface","data","getOrCreateInstance","TypeError","jQueryInterface","each","defineJQueryPlugin"],"mappings":"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"}