@coreui/coreui 5.1.1 → 5.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 (147) hide show
  1. package/README.md +51 -3
  2. package/dist/css/coreui-grid.css +7 -7
  3. package/dist/css/coreui-grid.css.map +1 -1
  4. package/dist/css/coreui-grid.min.css +2 -2
  5. package/dist/css/coreui-grid.min.css.map +1 -1
  6. package/dist/css/coreui-grid.rtl.css +7 -7
  7. package/dist/css/coreui-grid.rtl.css.map +1 -1
  8. package/dist/css/coreui-grid.rtl.min.css +2 -2
  9. package/dist/css/coreui-grid.rtl.min.css.map +1 -1
  10. package/dist/css/coreui-reboot.css +1 -1
  11. package/dist/css/coreui-reboot.css.map +1 -1
  12. package/dist/css/coreui-reboot.min.css +1 -1
  13. package/dist/css/coreui-reboot.min.css.map +1 -1
  14. package/dist/css/coreui-reboot.rtl.css +1 -1
  15. package/dist/css/coreui-reboot.rtl.css.map +1 -1
  16. package/dist/css/coreui-reboot.rtl.min.css +1 -1
  17. package/dist/css/coreui-reboot.rtl.min.css.map +1 -1
  18. package/dist/css/coreui-utilities.css +1 -1
  19. package/dist/css/coreui-utilities.css.map +1 -1
  20. package/dist/css/coreui-utilities.min.css +1 -1
  21. package/dist/css/coreui-utilities.min.css.map +1 -1
  22. package/dist/css/coreui-utilities.rtl.css +1 -1
  23. package/dist/css/coreui-utilities.rtl.css.map +1 -1
  24. package/dist/css/coreui-utilities.rtl.min.css +1 -1
  25. package/dist/css/coreui-utilities.rtl.min.css.map +1 -1
  26. package/dist/css/coreui.css +129 -215
  27. package/dist/css/coreui.css.map +1 -1
  28. package/dist/css/coreui.min.css +2 -2
  29. package/dist/css/coreui.min.css.map +1 -1
  30. package/dist/css/coreui.rtl.css +128 -212
  31. package/dist/css/coreui.rtl.css.map +1 -1
  32. package/dist/css/coreui.rtl.min.css +2 -2
  33. package/dist/css/coreui.rtl.min.css.map +1 -1
  34. package/dist/css/themes/bootstrap/bootstrap.css +2419 -2501
  35. package/dist/css/themes/bootstrap/bootstrap.css.map +1 -1
  36. package/dist/css/themes/bootstrap/bootstrap.min.css +2 -2
  37. package/dist/css/themes/bootstrap/bootstrap.min.css.map +1 -1
  38. package/dist/css/themes/bootstrap/bootstrap.rtl.css +2418 -2501
  39. package/dist/css/themes/bootstrap/bootstrap.rtl.css.map +1 -1
  40. package/dist/css/themes/bootstrap/bootstrap.rtl.min.css +2 -2
  41. package/dist/css/themes/bootstrap/bootstrap.rtl.min.css.map +1 -1
  42. package/dist/js/bootstrap.bundle.js +41 -41
  43. package/dist/js/bootstrap.bundle.js.map +1 -1
  44. package/dist/js/bootstrap.bundle.min.js +2 -2
  45. package/dist/js/bootstrap.bundle.min.js.map +1 -1
  46. package/dist/js/bootstrap.esm.js +57 -57
  47. package/dist/js/bootstrap.esm.js.map +1 -1
  48. package/dist/js/bootstrap.esm.min.js +2 -2
  49. package/dist/js/bootstrap.esm.min.js.map +1 -1
  50. package/dist/js/bootstrap.js +57 -57
  51. package/dist/js/bootstrap.js.map +1 -1
  52. package/dist/js/bootstrap.min.js +2 -2
  53. package/dist/js/bootstrap.min.js.map +1 -1
  54. package/dist/js/coreui.bundle.js +8 -8
  55. package/dist/js/coreui.bundle.js.map +1 -1
  56. package/dist/js/coreui.bundle.min.js +2 -2
  57. package/dist/js/coreui.bundle.min.js.map +1 -1
  58. package/dist/js/coreui.esm.js +8 -8
  59. package/dist/js/coreui.esm.js.map +1 -1
  60. package/dist/js/coreui.esm.min.js +2 -2
  61. package/dist/js/coreui.esm.min.js.map +1 -1
  62. package/dist/js/coreui.js +8 -8
  63. package/dist/js/coreui.js.map +1 -1
  64. package/dist/js/coreui.min.js +2 -2
  65. package/dist/js/coreui.min.js.map +1 -1
  66. package/js/dist/alert.js +1 -1
  67. package/js/dist/alert.js.map +1 -1
  68. package/js/dist/base-component.js +2 -2
  69. package/js/dist/base-component.js.map +1 -1
  70. package/js/dist/button.js +1 -1
  71. package/js/dist/button.js.map +1 -1
  72. package/js/dist/carousel.js +1 -1
  73. package/js/dist/carousel.js.map +1 -1
  74. package/js/dist/collapse.js +1 -1
  75. package/js/dist/collapse.js.map +1 -1
  76. package/js/dist/dom/data.js +1 -1
  77. package/js/dist/dom/data.js.map +1 -1
  78. package/js/dist/dom/event-handler.js +1 -1
  79. package/js/dist/dom/event-handler.js.map +1 -1
  80. package/js/dist/dom/manipulator.js +2 -2
  81. package/js/dist/dom/manipulator.js.map +1 -1
  82. package/js/dist/dom/selector-engine.js +1 -1
  83. package/js/dist/dom/selector-engine.js.map +1 -1
  84. package/js/dist/dropdown.js +2 -2
  85. package/js/dist/dropdown.js.map +1 -1
  86. package/js/dist/modal.js +1 -1
  87. package/js/dist/modal.js.map +1 -1
  88. package/js/dist/navigation.js +1 -1
  89. package/js/dist/navigation.js.map +1 -1
  90. package/js/dist/offcanvas.js +1 -1
  91. package/js/dist/offcanvas.js.map +1 -1
  92. package/js/dist/popover.js +1 -1
  93. package/js/dist/popover.js.map +1 -1
  94. package/js/dist/scrollspy.js +1 -1
  95. package/js/dist/scrollspy.js.map +1 -1
  96. package/js/dist/sidebar.js +1 -1
  97. package/js/dist/sidebar.js.map +1 -1
  98. package/js/dist/tab.js +1 -1
  99. package/js/dist/tab.js.map +1 -1
  100. package/js/dist/toast.js +1 -1
  101. package/js/dist/toast.js.map +1 -1
  102. package/js/dist/tooltip.js +3 -3
  103. package/js/dist/tooltip.js.map +1 -1
  104. package/js/dist/util/backdrop.js +1 -1
  105. package/js/dist/util/backdrop.js.map +1 -1
  106. package/js/dist/util/component-functions.js +1 -1
  107. package/js/dist/util/component-functions.js.map +1 -1
  108. package/js/dist/util/config.js +1 -1
  109. package/js/dist/util/config.js.map +1 -1
  110. package/js/dist/util/focustrap.js +1 -1
  111. package/js/dist/util/focustrap.js.map +1 -1
  112. package/js/dist/util/index.js +2 -2
  113. package/js/dist/util/index.js.map +1 -1
  114. package/js/dist/util/sanitizer.js +1 -1
  115. package/js/dist/util/sanitizer.js.map +1 -1
  116. package/js/dist/util/scrollbar.js +1 -1
  117. package/js/dist/util/scrollbar.js.map +1 -1
  118. package/js/dist/util/swipe.js +1 -1
  119. package/js/dist/util/swipe.js.map +1 -1
  120. package/js/dist/util/template-factory.js +2 -2
  121. package/js/dist/util/template-factory.js.map +1 -1
  122. package/js/src/base-component.js +1 -1
  123. package/js/src/dom/manipulator.js +1 -1
  124. package/js/src/dropdown.js +1 -1
  125. package/js/src/tooltip.js +2 -2
  126. package/js/src/util/index.js +1 -1
  127. package/js/src/util/template-factory.js +1 -1
  128. package/package.json +27 -25
  129. package/scss/_accordion.scss +4 -9
  130. package/scss/_button-group.scss +6 -1
  131. package/scss/_card.scss +1 -2
  132. package/scss/_functions.scss +1 -1
  133. package/scss/_nav.scss +1 -1
  134. package/scss/_navbar.scss +1 -1
  135. package/scss/_variables-dark.scss +2 -2
  136. package/scss/_variables.scss +11 -9
  137. package/scss/forms/_floating-labels.scss +17 -16
  138. package/scss/mixins/_banner.scss +1 -1
  139. package/scss/mixins/_grid.scss +1 -1
  140. package/scss/mixins/_visually-hidden.scss +1 -1
  141. package/scss/sidebar/_sidebar-narrow.scss +19 -45
  142. package/scss/sidebar/_sidebar-nav.scss +3 -2
  143. package/scss/sidebar/_sidebar.scss +66 -101
  144. package/scss/themes/bootstrap/bootstrap.rtl.scss +0 -2
  145. package/scss/themes/bootstrap/bootstrap.scss +0 -2
  146. package/scss/themes/bootstrap/mixins/_banner.scss +1 -1
  147. package/scss/themes/bootstrap/_variables.scss +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"scrollspy.js","sources":["../src/scrollspy.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI scrollspy.js\n * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)\n *\n * This component is a modified version of the Bootstrap's scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport {\n defineJQueryPlugin, getElement, isDisabled, isVisible\n} from './util/index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'coreui.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-coreui-spy=\"scroll\"]'\nconst SELECTOR_TARGET_LINKS = '[href]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_LINK_ITEMS = `${SELECTOR_NAV_LINKS}, ${SELECTOR_NAV_ITEMS} > ${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst Default = {\n offset: null, // TODO: v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: '0px 0px -25%',\n smoothScroll: false,\n target: null,\n threshold: [0.1, 0.5, 1]\n}\n\nconst DefaultType = {\n offset: '(number|null)', // TODO v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: 'string',\n smoothScroll: 'boolean',\n target: 'element',\n threshold: 'array'\n}\n\n/**\n * Class definition\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n // this._element is the observablesContainer and config.target the menu links wrapper\n this._targetLinks = new Map()\n this._observableSections = new Map()\n this._rootElement = getComputedStyle(this._element).overflowY === 'visible' ? null : this._element\n this._activeTarget = null\n this._observer = null\n this._previousScrollData = {\n visibleEntryTop: 0,\n parentScrollTop: 0\n }\n this.refresh() // initialize\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 refresh() {\n this._initializeTargetsAndObservables()\n this._maybeEnableSmoothScroll()\n\n if (this._observer) {\n this._observer.disconnect()\n } else {\n this._observer = this._getNewObserver()\n }\n\n for (const section of this._observableSections.values()) {\n this._observer.observe(section)\n }\n }\n\n dispose() {\n this._observer.disconnect()\n super.dispose()\n }\n\n // Private\n _configAfterMerge(config) {\n // TODO: on v6 target should be given explicitly & remove the {target: 'ss-target'} case\n config.target = getElement(config.target) || document.body\n\n // TODO: v6 Only for backwards compatibility reasons. Use rootMargin only\n config.rootMargin = config.offset ? `${config.offset}px 0px -30%` : config.rootMargin\n\n if (typeof config.threshold === 'string') {\n config.threshold = config.threshold.split(',').map(value => Number.parseFloat(value))\n }\n\n return config\n }\n\n _maybeEnableSmoothScroll() {\n if (!this._config.smoothScroll) {\n return\n }\n\n // unregister any previous listeners\n EventHandler.off(this._config.target, EVENT_CLICK)\n\n EventHandler.on(this._config.target, EVENT_CLICK, SELECTOR_TARGET_LINKS, event => {\n const observableSection = this._observableSections.get(event.target.hash)\n if (observableSection) {\n event.preventDefault()\n const root = this._rootElement || window\n const height = observableSection.offsetTop - this._element.offsetTop\n if (root.scrollTo) {\n root.scrollTo({ top: height, behavior: 'smooth' })\n return\n }\n\n // Chrome 60 doesn't support `scrollTo`\n root.scrollTop = height\n }\n })\n }\n\n _getNewObserver() {\n const options = {\n root: this._rootElement,\n threshold: this._config.threshold,\n rootMargin: this._config.rootMargin\n }\n\n return new IntersectionObserver(entries => this._observerCallback(entries), options)\n }\n\n // The logic of selection\n _observerCallback(entries) {\n const targetElement = entry => this._targetLinks.get(`#${entry.target.id}`)\n const activate = entry => {\n this._previousScrollData.visibleEntryTop = entry.target.offsetTop\n this._process(targetElement(entry))\n }\n\n const parentScrollTop = (this._rootElement || document.documentElement).scrollTop\n const userScrollsDown = parentScrollTop >= this._previousScrollData.parentScrollTop\n this._previousScrollData.parentScrollTop = parentScrollTop\n\n for (const entry of entries) {\n if (!entry.isIntersecting) {\n this._activeTarget = null\n this._clearActiveClass(targetElement(entry))\n\n continue\n }\n\n const entryIsLowerThanPrevious = entry.target.offsetTop >= this._previousScrollData.visibleEntryTop\n // if we are scrolling down, pick the bigger offsetTop\n if (userScrollsDown && entryIsLowerThanPrevious) {\n activate(entry)\n // if parent isn't scrolled, let's keep the first visible item, breaking the iteration\n if (!parentScrollTop) {\n return\n }\n\n continue\n }\n\n // if we are scrolling up, pick the smallest offsetTop\n if (!userScrollsDown && !entryIsLowerThanPrevious) {\n activate(entry)\n }\n }\n }\n\n _initializeTargetsAndObservables() {\n this._targetLinks = new Map()\n this._observableSections = new Map()\n\n const targetLinks = SelectorEngine.find(SELECTOR_TARGET_LINKS, this._config.target)\n\n for (const anchor of targetLinks) {\n // ensure that the anchor has an id and is not disabled\n if (!anchor.hash || isDisabled(anchor)) {\n continue\n }\n\n const observableSection = SelectorEngine.findOne(decodeURI(anchor.hash), this._element)\n\n // ensure that the observableSection exists & is visible\n if (isVisible(observableSection)) {\n this._targetLinks.set(decodeURI(anchor.hash), anchor)\n this._observableSections.set(anchor.hash, observableSection)\n }\n }\n }\n\n _process(target) {\n if (this._activeTarget === target) {\n return\n }\n\n this._clearActiveClass(this._config.target)\n this._activeTarget = target\n target.classList.add(CLASS_NAME_ACTIVE)\n this._activateParents(target)\n\n EventHandler.trigger(this._element, EVENT_ACTIVATE, { relatedTarget: target })\n }\n\n _activateParents(target) {\n // Activate dropdown parents\n if (target.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, target.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n return\n }\n\n for (const listGroup of SelectorEngine.parents(target, SELECTOR_NAV_LIST_GROUP)) {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n for (const item of SelectorEngine.prev(listGroup, SELECTOR_LINK_ITEMS)) {\n item.classList.add(CLASS_NAME_ACTIVE)\n }\n }\n }\n\n _clearActiveClass(parent) {\n parent.classList.remove(CLASS_NAME_ACTIVE)\n\n const activeNodes = SelectorEngine.find(`${SELECTOR_TARGET_LINKS}.${CLASS_NAME_ACTIVE}`, parent)\n for (const node of activeNodes) {\n node.classList.remove(CLASS_NAME_ACTIVE)\n }\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const spy of SelectorEngine.find(SELECTOR_DATA_SPY)) {\n ScrollSpy.getOrCreateInstance(spy)\n }\n})\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","EVENT_ACTIVATE","EVENT_CLICK","EVENT_LOAD_DATA_API","CLASS_NAME_DROPDOWN_ITEM","CLASS_NAME_ACTIVE","SELECTOR_DATA_SPY","SELECTOR_TARGET_LINKS","SELECTOR_NAV_LIST_GROUP","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_LINK_ITEMS","SELECTOR_DROPDOWN","SELECTOR_DROPDOWN_TOGGLE","Default","offset","rootMargin","smoothScroll","target","threshold","DefaultType","ScrollSpy","BaseComponent","constructor","element","config","_targetLinks","Map","_observableSections","_rootElement","getComputedStyle","_element","overflowY","_activeTarget","_observer","_previousScrollData","visibleEntryTop","parentScrollTop","refresh","_initializeTargetsAndObservables","_maybeEnableSmoothScroll","disconnect","_getNewObserver","section","values","observe","dispose","_configAfterMerge","getElement","document","body","split","map","value","Number","parseFloat","_config","EventHandler","off","on","event","observableSection","get","hash","preventDefault","root","window","height","offsetTop","scrollTo","top","behavior","scrollTop","options","IntersectionObserver","entries","_observerCallback","targetElement","entry","id","activate","_process","documentElement","userScrollsDown","isIntersecting","_clearActiveClass","entryIsLowerThanPrevious","targetLinks","SelectorEngine","find","anchor","isDisabled","findOne","decodeURI","isVisible","set","classList","add","_activateParents","trigger","relatedTarget","contains","closest","listGroup","parents","item","prev","parent","remove","activeNodes","node","jQueryInterface","each","data","getOrCreateInstance","undefined","startsWith","TypeError","spy","defineJQueryPlugin"],"mappings":";;;;;;;;;;;EAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;EASA;EACA;EACA;;EAEA,MAAMA,IAAI,GAAG,WAAW,CAAA;EACxB,MAAMC,QAAQ,GAAG,kBAAkB,CAAA;EACnC,MAAMC,SAAS,GAAG,CAAID,CAAAA,EAAAA,QAAQ,CAAE,CAAA,CAAA;EAChC,MAAME,YAAY,GAAG,WAAW,CAAA;EAEhC,MAAMC,cAAc,GAAG,CAAWF,QAAAA,EAAAA,SAAS,CAAE,CAAA,CAAA;EAC7C,MAAMG,WAAW,GAAG,CAAQH,KAAAA,EAAAA,SAAS,CAAE,CAAA,CAAA;EACvC,MAAMI,mBAAmB,GAAG,CAAA,IAAA,EAAOJ,SAAS,CAAA,EAAGC,YAAY,CAAE,CAAA,CAAA;EAE7D,MAAMI,wBAAwB,GAAG,eAAe,CAAA;EAChD,MAAMC,iBAAiB,GAAG,QAAQ,CAAA;EAElC,MAAMC,iBAAiB,GAAG,4BAA4B,CAAA;EACtD,MAAMC,qBAAqB,GAAG,QAAQ,CAAA;EACtC,MAAMC,uBAAuB,GAAG,mBAAmB,CAAA;EACnD,MAAMC,kBAAkB,GAAG,WAAW,CAAA;EACtC,MAAMC,kBAAkB,GAAG,WAAW,CAAA;EACtC,MAAMC,mBAAmB,GAAG,kBAAkB,CAAA;EAC9C,MAAMC,mBAAmB,GAAG,CAAA,EAAGH,kBAAkB,CAAA,EAAA,EAAKC,kBAAkB,CAAMD,GAAAA,EAAAA,kBAAkB,CAAKE,EAAAA,EAAAA,mBAAmB,CAAE,CAAA,CAAA;EAC1H,MAAME,iBAAiB,GAAG,WAAW,CAAA;EACrC,MAAMC,wBAAwB,GAAG,kBAAkB,CAAA;EAEnD,MAAMC,OAAO,GAAG;EACdC,EAAAA,MAAM,EAAE,IAAI;EAAE;EACdC,EAAAA,UAAU,EAAE,cAAc;EAC1BC,EAAAA,YAAY,EAAE,KAAK;EACnBC,EAAAA,MAAM,EAAE,IAAI;EACZC,EAAAA,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;EACzB,CAAC,CAAA;EAED,MAAMC,WAAW,GAAG;EAClBL,EAAAA,MAAM,EAAE,eAAe;EAAE;EACzBC,EAAAA,UAAU,EAAE,QAAQ;EACpBC,EAAAA,YAAY,EAAE,SAAS;EACvBC,EAAAA,MAAM,EAAE,SAAS;EACjBC,EAAAA,SAAS,EAAE,OAAA;EACb,CAAC,CAAA;;EAED;EACA;EACA;;EAEA,MAAME,SAAS,SAASC,aAAa,CAAC;EACpCC,EAAAA,WAAWA,CAACC,OAAO,EAAEC,MAAM,EAAE;EAC3B,IAAA,KAAK,CAACD,OAAO,EAAEC,MAAM,CAAC,CAAA;;EAEtB;EACA,IAAA,IAAI,CAACC,YAAY,GAAG,IAAIC,GAAG,EAAE,CAAA;EAC7B,IAAA,IAAI,CAACC,mBAAmB,GAAG,IAAID,GAAG,EAAE,CAAA;EACpC,IAAA,IAAI,CAACE,YAAY,GAAGC,gBAAgB,CAAC,IAAI,CAACC,QAAQ,CAAC,CAACC,SAAS,KAAK,SAAS,GAAG,IAAI,GAAG,IAAI,CAACD,QAAQ,CAAA;MAClG,IAAI,CAACE,aAAa,GAAG,IAAI,CAAA;MACzB,IAAI,CAACC,SAAS,GAAG,IAAI,CAAA;MACrB,IAAI,CAACC,mBAAmB,GAAG;EACzBC,MAAAA,eAAe,EAAE,CAAC;EAClBC,MAAAA,eAAe,EAAE,CAAA;OAClB,CAAA;EACD,IAAA,IAAI,CAACC,OAAO,EAAE,CAAC;EACjB,GAAA;;EAEA;IACA,WAAWxB,OAAOA,GAAG;EACnB,IAAA,OAAOA,OAAO,CAAA;EAChB,GAAA;IAEA,WAAWM,WAAWA,GAAG;EACvB,IAAA,OAAOA,WAAW,CAAA;EACpB,GAAA;IAEA,WAAWxB,IAAIA,GAAG;EAChB,IAAA,OAAOA,IAAI,CAAA;EACb,GAAA;;EAEA;EACA0C,EAAAA,OAAOA,GAAG;MACR,IAAI,CAACC,gCAAgC,EAAE,CAAA;MACvC,IAAI,CAACC,wBAAwB,EAAE,CAAA;MAE/B,IAAI,IAAI,CAACN,SAAS,EAAE;EAClB,MAAA,IAAI,CAACA,SAAS,CAACO,UAAU,EAAE,CAAA;EAC7B,KAAC,MAAM;EACL,MAAA,IAAI,CAACP,SAAS,GAAG,IAAI,CAACQ,eAAe,EAAE,CAAA;EACzC,KAAA;MAEA,KAAK,MAAMC,OAAO,IAAI,IAAI,CAACf,mBAAmB,CAACgB,MAAM,EAAE,EAAE;EACvD,MAAA,IAAI,CAACV,SAAS,CAACW,OAAO,CAACF,OAAO,CAAC,CAAA;EACjC,KAAA;EACF,GAAA;EAEAG,EAAAA,OAAOA,GAAG;EACR,IAAA,IAAI,CAACZ,SAAS,CAACO,UAAU,EAAE,CAAA;MAC3B,KAAK,CAACK,OAAO,EAAE,CAAA;EACjB,GAAA;;EAEA;IACAC,iBAAiBA,CAACtB,MAAM,EAAE;EACxB;EACAA,IAAAA,MAAM,CAACP,MAAM,GAAG8B,mBAAU,CAACvB,MAAM,CAACP,MAAM,CAAC,IAAI+B,QAAQ,CAACC,IAAI,CAAA;;EAE1D;EACAzB,IAAAA,MAAM,CAACT,UAAU,GAAGS,MAAM,CAACV,MAAM,GAAG,CAAGU,EAAAA,MAAM,CAACV,MAAM,CAAA,WAAA,CAAa,GAAGU,MAAM,CAACT,UAAU,CAAA;EAErF,IAAA,IAAI,OAAOS,MAAM,CAACN,SAAS,KAAK,QAAQ,EAAE;QACxCM,MAAM,CAACN,SAAS,GAAGM,MAAM,CAACN,SAAS,CAACgC,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,CAACC,KAAK,IAAIC,MAAM,CAACC,UAAU,CAACF,KAAK,CAAC,CAAC,CAAA;EACvF,KAAA;EAEA,IAAA,OAAO5B,MAAM,CAAA;EACf,GAAA;EAEAe,EAAAA,wBAAwBA,GAAG;EACzB,IAAA,IAAI,CAAC,IAAI,CAACgB,OAAO,CAACvC,YAAY,EAAE;EAC9B,MAAA,OAAA;EACF,KAAA;;EAEA;MACAwC,YAAY,CAACC,GAAG,CAAC,IAAI,CAACF,OAAO,CAACtC,MAAM,EAAEjB,WAAW,CAAC,CAAA;EAElDwD,IAAAA,YAAY,CAACE,EAAE,CAAC,IAAI,CAACH,OAAO,CAACtC,MAAM,EAAEjB,WAAW,EAAEK,qBAAqB,EAAEsD,KAAK,IAAI;EAChF,MAAA,MAAMC,iBAAiB,GAAG,IAAI,CAACjC,mBAAmB,CAACkC,GAAG,CAACF,KAAK,CAAC1C,MAAM,CAAC6C,IAAI,CAAC,CAAA;EACzE,MAAA,IAAIF,iBAAiB,EAAE;UACrBD,KAAK,CAACI,cAAc,EAAE,CAAA;EACtB,QAAA,MAAMC,IAAI,GAAG,IAAI,CAACpC,YAAY,IAAIqC,MAAM,CAAA;UACxC,MAAMC,MAAM,GAAGN,iBAAiB,CAACO,SAAS,GAAG,IAAI,CAACrC,QAAQ,CAACqC,SAAS,CAAA;UACpE,IAAIH,IAAI,CAACI,QAAQ,EAAE;YACjBJ,IAAI,CAACI,QAAQ,CAAC;EAAEC,YAAAA,GAAG,EAAEH,MAAM;EAAEI,YAAAA,QAAQ,EAAE,QAAA;EAAS,WAAC,CAAC,CAAA;EAClD,UAAA,OAAA;EACF,SAAA;;EAEA;UACAN,IAAI,CAACO,SAAS,GAAGL,MAAM,CAAA;EACzB,OAAA;EACF,KAAC,CAAC,CAAA;EACJ,GAAA;EAEAzB,EAAAA,eAAeA,GAAG;EAChB,IAAA,MAAM+B,OAAO,GAAG;QACdR,IAAI,EAAE,IAAI,CAACpC,YAAY;EACvBV,MAAAA,SAAS,EAAE,IAAI,CAACqC,OAAO,CAACrC,SAAS;EACjCH,MAAAA,UAAU,EAAE,IAAI,CAACwC,OAAO,CAACxC,UAAAA;OAC1B,CAAA;EAED,IAAA,OAAO,IAAI0D,oBAAoB,CAACC,OAAO,IAAI,IAAI,CAACC,iBAAiB,CAACD,OAAO,CAAC,EAAEF,OAAO,CAAC,CAAA;EACtF,GAAA;;EAEA;IACAG,iBAAiBA,CAACD,OAAO,EAAE;EACzB,IAAA,MAAME,aAAa,GAAGC,KAAK,IAAI,IAAI,CAACpD,YAAY,CAACoC,GAAG,CAAC,IAAIgB,KAAK,CAAC5D,MAAM,CAAC6D,EAAE,EAAE,CAAC,CAAA;MAC3E,MAAMC,QAAQ,GAAGF,KAAK,IAAI;QACxB,IAAI,CAAC3C,mBAAmB,CAACC,eAAe,GAAG0C,KAAK,CAAC5D,MAAM,CAACkD,SAAS,CAAA;EACjE,MAAA,IAAI,CAACa,QAAQ,CAACJ,aAAa,CAACC,KAAK,CAAC,CAAC,CAAA;OACpC,CAAA;MAED,MAAMzC,eAAe,GAAG,CAAC,IAAI,CAACR,YAAY,IAAIoB,QAAQ,CAACiC,eAAe,EAAEV,SAAS,CAAA;MACjF,MAAMW,eAAe,GAAG9C,eAAe,IAAI,IAAI,CAACF,mBAAmB,CAACE,eAAe,CAAA;EACnF,IAAA,IAAI,CAACF,mBAAmB,CAACE,eAAe,GAAGA,eAAe,CAAA;EAE1D,IAAA,KAAK,MAAMyC,KAAK,IAAIH,OAAO,EAAE;EAC3B,MAAA,IAAI,CAACG,KAAK,CAACM,cAAc,EAAE;UACzB,IAAI,CAACnD,aAAa,GAAG,IAAI,CAAA;EACzB,QAAA,IAAI,CAACoD,iBAAiB,CAACR,aAAa,CAACC,KAAK,CAAC,CAAC,CAAA;EAE5C,QAAA,SAAA;EACF,OAAA;EAEA,MAAA,MAAMQ,wBAAwB,GAAGR,KAAK,CAAC5D,MAAM,CAACkD,SAAS,IAAI,IAAI,CAACjC,mBAAmB,CAACC,eAAe,CAAA;EACnG;QACA,IAAI+C,eAAe,IAAIG,wBAAwB,EAAE;UAC/CN,QAAQ,CAACF,KAAK,CAAC,CAAA;EACf;UACA,IAAI,CAACzC,eAAe,EAAE;EACpB,UAAA,OAAA;EACF,SAAA;EAEA,QAAA,SAAA;EACF,OAAA;;EAEA;EACA,MAAA,IAAI,CAAC8C,eAAe,IAAI,CAACG,wBAAwB,EAAE;UACjDN,QAAQ,CAACF,KAAK,CAAC,CAAA;EACjB,OAAA;EACF,KAAA;EACF,GAAA;EAEAvC,EAAAA,gCAAgCA,GAAG;EACjC,IAAA,IAAI,CAACb,YAAY,GAAG,IAAIC,GAAG,EAAE,CAAA;EAC7B,IAAA,IAAI,CAACC,mBAAmB,GAAG,IAAID,GAAG,EAAE,CAAA;EAEpC,IAAA,MAAM4D,WAAW,GAAGC,cAAc,CAACC,IAAI,CAACnF,qBAAqB,EAAE,IAAI,CAACkD,OAAO,CAACtC,MAAM,CAAC,CAAA;EAEnF,IAAA,KAAK,MAAMwE,MAAM,IAAIH,WAAW,EAAE;EAChC;QACA,IAAI,CAACG,MAAM,CAAC3B,IAAI,IAAI4B,mBAAU,CAACD,MAAM,CAAC,EAAE;EACtC,QAAA,SAAA;EACF,OAAA;EAEA,MAAA,MAAM7B,iBAAiB,GAAG2B,cAAc,CAACI,OAAO,CAACC,SAAS,CAACH,MAAM,CAAC3B,IAAI,CAAC,EAAE,IAAI,CAAChC,QAAQ,CAAC,CAAA;;EAEvF;EACA,MAAA,IAAI+D,kBAAS,CAACjC,iBAAiB,CAAC,EAAE;EAChC,QAAA,IAAI,CAACnC,YAAY,CAACqE,GAAG,CAACF,SAAS,CAACH,MAAM,CAAC3B,IAAI,CAAC,EAAE2B,MAAM,CAAC,CAAA;UACrD,IAAI,CAAC9D,mBAAmB,CAACmE,GAAG,CAACL,MAAM,CAAC3B,IAAI,EAAEF,iBAAiB,CAAC,CAAA;EAC9D,OAAA;EACF,KAAA;EACF,GAAA;IAEAoB,QAAQA,CAAC/D,MAAM,EAAE;EACf,IAAA,IAAI,IAAI,CAACe,aAAa,KAAKf,MAAM,EAAE;EACjC,MAAA,OAAA;EACF,KAAA;MAEA,IAAI,CAACmE,iBAAiB,CAAC,IAAI,CAAC7B,OAAO,CAACtC,MAAM,CAAC,CAAA;MAC3C,IAAI,CAACe,aAAa,GAAGf,MAAM,CAAA;EAC3BA,IAAAA,MAAM,CAAC8E,SAAS,CAACC,GAAG,CAAC7F,iBAAiB,CAAC,CAAA;EACvC,IAAA,IAAI,CAAC8F,gBAAgB,CAAChF,MAAM,CAAC,CAAA;MAE7BuC,YAAY,CAAC0C,OAAO,CAAC,IAAI,CAACpE,QAAQ,EAAE/B,cAAc,EAAE;EAAEoG,MAAAA,aAAa,EAAElF,MAAAA;EAAO,KAAC,CAAC,CAAA;EAChF,GAAA;IAEAgF,gBAAgBA,CAAChF,MAAM,EAAE;EACvB;MACA,IAAIA,MAAM,CAAC8E,SAAS,CAACK,QAAQ,CAAClG,wBAAwB,CAAC,EAAE;EACvDqF,MAAAA,cAAc,CAACI,OAAO,CAAC/E,wBAAwB,EAAEK,MAAM,CAACoF,OAAO,CAAC1F,iBAAiB,CAAC,CAAC,CAChFoF,SAAS,CAACC,GAAG,CAAC7F,iBAAiB,CAAC,CAAA;EACnC,MAAA,OAAA;EACF,KAAA;MAEA,KAAK,MAAMmG,SAAS,IAAIf,cAAc,CAACgB,OAAO,CAACtF,MAAM,EAAEX,uBAAuB,CAAC,EAAE;EAC/E;EACA;QACA,KAAK,MAAMkG,IAAI,IAAIjB,cAAc,CAACkB,IAAI,CAACH,SAAS,EAAE5F,mBAAmB,CAAC,EAAE;EACtE8F,QAAAA,IAAI,CAACT,SAAS,CAACC,GAAG,CAAC7F,iBAAiB,CAAC,CAAA;EACvC,OAAA;EACF,KAAA;EACF,GAAA;IAEAiF,iBAAiBA,CAACsB,MAAM,EAAE;EACxBA,IAAAA,MAAM,CAACX,SAAS,CAACY,MAAM,CAACxG,iBAAiB,CAAC,CAAA;EAE1C,IAAA,MAAMyG,WAAW,GAAGrB,cAAc,CAACC,IAAI,CAAC,CAAGnF,EAAAA,qBAAqB,CAAIF,CAAAA,EAAAA,iBAAiB,CAAE,CAAA,EAAEuG,MAAM,CAAC,CAAA;EAChG,IAAA,KAAK,MAAMG,IAAI,IAAID,WAAW,EAAE;EAC9BC,MAAAA,IAAI,CAACd,SAAS,CAACY,MAAM,CAACxG,iBAAiB,CAAC,CAAA;EAC1C,KAAA;EACF,GAAA;;EAEA;IACA,OAAO2G,eAAeA,CAACtF,MAAM,EAAE;EAC7B,IAAA,OAAO,IAAI,CAACuF,IAAI,CAAC,YAAY;QAC3B,MAAMC,IAAI,GAAG5F,SAAS,CAAC6F,mBAAmB,CAAC,IAAI,EAAEzF,MAAM,CAAC,CAAA;EAExD,MAAA,IAAI,OAAOA,MAAM,KAAK,QAAQ,EAAE;EAC9B,QAAA,OAAA;EACF,OAAA;EAEA,MAAA,IAAIwF,IAAI,CAACxF,MAAM,CAAC,KAAK0F,SAAS,IAAI1F,MAAM,CAAC2F,UAAU,CAAC,GAAG,CAAC,IAAI3F,MAAM,KAAK,aAAa,EAAE;EACpF,QAAA,MAAM,IAAI4F,SAAS,CAAC,CAAoB5F,iBAAAA,EAAAA,MAAM,GAAG,CAAC,CAAA;EACpD,OAAA;EAEAwF,MAAAA,IAAI,CAACxF,MAAM,CAAC,EAAE,CAAA;EAChB,KAAC,CAAC,CAAA;EACJ,GAAA;EACF,CAAA;;EAEA;EACA;EACA;;EAEAgC,YAAY,CAACE,EAAE,CAACO,MAAM,EAAEhE,mBAAmB,EAAE,MAAM;IACjD,KAAK,MAAMoH,GAAG,IAAI9B,cAAc,CAACC,IAAI,CAACpF,iBAAiB,CAAC,EAAE;EACxDgB,IAAAA,SAAS,CAAC6F,mBAAmB,CAACI,GAAG,CAAC,CAAA;EACpC,GAAA;EACF,CAAC,CAAC,CAAA;;EAEF;EACA;EACA;;AAEAC,6BAAkB,CAAClG,SAAS,CAAC;;;;;;;;"}
1
+ {"version":3,"file":"scrollspy.js","sources":["../src/scrollspy.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI scrollspy.js\n * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)\n *\n * This component is a modified version of the Bootstrap's scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport {\n defineJQueryPlugin, getElement, isDisabled, isVisible\n} from './util/index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'coreui.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-coreui-spy=\"scroll\"]'\nconst SELECTOR_TARGET_LINKS = '[href]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_LINK_ITEMS = `${SELECTOR_NAV_LINKS}, ${SELECTOR_NAV_ITEMS} > ${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst Default = {\n offset: null, // TODO: v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: '0px 0px -25%',\n smoothScroll: false,\n target: null,\n threshold: [0.1, 0.5, 1]\n}\n\nconst DefaultType = {\n offset: '(number|null)', // TODO v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: 'string',\n smoothScroll: 'boolean',\n target: 'element',\n threshold: 'array'\n}\n\n/**\n * Class definition\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n // this._element is the observablesContainer and config.target the menu links wrapper\n this._targetLinks = new Map()\n this._observableSections = new Map()\n this._rootElement = getComputedStyle(this._element).overflowY === 'visible' ? null : this._element\n this._activeTarget = null\n this._observer = null\n this._previousScrollData = {\n visibleEntryTop: 0,\n parentScrollTop: 0\n }\n this.refresh() // initialize\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 refresh() {\n this._initializeTargetsAndObservables()\n this._maybeEnableSmoothScroll()\n\n if (this._observer) {\n this._observer.disconnect()\n } else {\n this._observer = this._getNewObserver()\n }\n\n for (const section of this._observableSections.values()) {\n this._observer.observe(section)\n }\n }\n\n dispose() {\n this._observer.disconnect()\n super.dispose()\n }\n\n // Private\n _configAfterMerge(config) {\n // TODO: on v6 target should be given explicitly & remove the {target: 'ss-target'} case\n config.target = getElement(config.target) || document.body\n\n // TODO: v6 Only for backwards compatibility reasons. Use rootMargin only\n config.rootMargin = config.offset ? `${config.offset}px 0px -30%` : config.rootMargin\n\n if (typeof config.threshold === 'string') {\n config.threshold = config.threshold.split(',').map(value => Number.parseFloat(value))\n }\n\n return config\n }\n\n _maybeEnableSmoothScroll() {\n if (!this._config.smoothScroll) {\n return\n }\n\n // unregister any previous listeners\n EventHandler.off(this._config.target, EVENT_CLICK)\n\n EventHandler.on(this._config.target, EVENT_CLICK, SELECTOR_TARGET_LINKS, event => {\n const observableSection = this._observableSections.get(event.target.hash)\n if (observableSection) {\n event.preventDefault()\n const root = this._rootElement || window\n const height = observableSection.offsetTop - this._element.offsetTop\n if (root.scrollTo) {\n root.scrollTo({ top: height, behavior: 'smooth' })\n return\n }\n\n // Chrome 60 doesn't support `scrollTo`\n root.scrollTop = height\n }\n })\n }\n\n _getNewObserver() {\n const options = {\n root: this._rootElement,\n threshold: this._config.threshold,\n rootMargin: this._config.rootMargin\n }\n\n return new IntersectionObserver(entries => this._observerCallback(entries), options)\n }\n\n // The logic of selection\n _observerCallback(entries) {\n const targetElement = entry => this._targetLinks.get(`#${entry.target.id}`)\n const activate = entry => {\n this._previousScrollData.visibleEntryTop = entry.target.offsetTop\n this._process(targetElement(entry))\n }\n\n const parentScrollTop = (this._rootElement || document.documentElement).scrollTop\n const userScrollsDown = parentScrollTop >= this._previousScrollData.parentScrollTop\n this._previousScrollData.parentScrollTop = parentScrollTop\n\n for (const entry of entries) {\n if (!entry.isIntersecting) {\n this._activeTarget = null\n this._clearActiveClass(targetElement(entry))\n\n continue\n }\n\n const entryIsLowerThanPrevious = entry.target.offsetTop >= this._previousScrollData.visibleEntryTop\n // if we are scrolling down, pick the bigger offsetTop\n if (userScrollsDown && entryIsLowerThanPrevious) {\n activate(entry)\n // if parent isn't scrolled, let's keep the first visible item, breaking the iteration\n if (!parentScrollTop) {\n return\n }\n\n continue\n }\n\n // if we are scrolling up, pick the smallest offsetTop\n if (!userScrollsDown && !entryIsLowerThanPrevious) {\n activate(entry)\n }\n }\n }\n\n _initializeTargetsAndObservables() {\n this._targetLinks = new Map()\n this._observableSections = new Map()\n\n const targetLinks = SelectorEngine.find(SELECTOR_TARGET_LINKS, this._config.target)\n\n for (const anchor of targetLinks) {\n // ensure that the anchor has an id and is not disabled\n if (!anchor.hash || isDisabled(anchor)) {\n continue\n }\n\n const observableSection = SelectorEngine.findOne(decodeURI(anchor.hash), this._element)\n\n // ensure that the observableSection exists & is visible\n if (isVisible(observableSection)) {\n this._targetLinks.set(decodeURI(anchor.hash), anchor)\n this._observableSections.set(anchor.hash, observableSection)\n }\n }\n }\n\n _process(target) {\n if (this._activeTarget === target) {\n return\n }\n\n this._clearActiveClass(this._config.target)\n this._activeTarget = target\n target.classList.add(CLASS_NAME_ACTIVE)\n this._activateParents(target)\n\n EventHandler.trigger(this._element, EVENT_ACTIVATE, { relatedTarget: target })\n }\n\n _activateParents(target) {\n // Activate dropdown parents\n if (target.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, target.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n return\n }\n\n for (const listGroup of SelectorEngine.parents(target, SELECTOR_NAV_LIST_GROUP)) {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n for (const item of SelectorEngine.prev(listGroup, SELECTOR_LINK_ITEMS)) {\n item.classList.add(CLASS_NAME_ACTIVE)\n }\n }\n }\n\n _clearActiveClass(parent) {\n parent.classList.remove(CLASS_NAME_ACTIVE)\n\n const activeNodes = SelectorEngine.find(`${SELECTOR_TARGET_LINKS}.${CLASS_NAME_ACTIVE}`, parent)\n for (const node of activeNodes) {\n node.classList.remove(CLASS_NAME_ACTIVE)\n }\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const spy of SelectorEngine.find(SELECTOR_DATA_SPY)) {\n ScrollSpy.getOrCreateInstance(spy)\n }\n})\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","EVENT_ACTIVATE","EVENT_CLICK","EVENT_LOAD_DATA_API","CLASS_NAME_DROPDOWN_ITEM","CLASS_NAME_ACTIVE","SELECTOR_DATA_SPY","SELECTOR_TARGET_LINKS","SELECTOR_NAV_LIST_GROUP","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_LINK_ITEMS","SELECTOR_DROPDOWN","SELECTOR_DROPDOWN_TOGGLE","Default","offset","rootMargin","smoothScroll","target","threshold","DefaultType","ScrollSpy","BaseComponent","constructor","element","config","_targetLinks","Map","_observableSections","_rootElement","getComputedStyle","_element","overflowY","_activeTarget","_observer","_previousScrollData","visibleEntryTop","parentScrollTop","refresh","_initializeTargetsAndObservables","_maybeEnableSmoothScroll","disconnect","_getNewObserver","section","values","observe","dispose","_configAfterMerge","getElement","document","body","split","map","value","Number","parseFloat","_config","EventHandler","off","on","event","observableSection","get","hash","preventDefault","root","window","height","offsetTop","scrollTo","top","behavior","scrollTop","options","IntersectionObserver","entries","_observerCallback","targetElement","entry","id","activate","_process","documentElement","userScrollsDown","isIntersecting","_clearActiveClass","entryIsLowerThanPrevious","targetLinks","SelectorEngine","find","anchor","isDisabled","findOne","decodeURI","isVisible","set","classList","add","_activateParents","trigger","relatedTarget","contains","closest","listGroup","parents","item","prev","parent","remove","activeNodes","node","jQueryInterface","each","data","getOrCreateInstance","undefined","startsWith","TypeError","spy","defineJQueryPlugin"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * CoreUI sidebar.js v5.1.1 (https://coreui.io)
2
+ * CoreUI sidebar.js v5.2.0 (https://coreui.io)
3
3
  * Copyright 2024 The CoreUI Team (https://github.com/orgs/coreui/people)
4
4
  * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.js","sources":["../src/sidebar.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI sidebar.js\n * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport Manipulator from './dom/manipulator.js'\nimport { defineJQueryPlugin } from './util/index.js'\nimport Backdrop from './util/backdrop.js'\nimport ScrollBarHelper from './util/scrollbar.js'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'sidebar'\nconst DATA_KEY = 'coreui.sidebar'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {}\n\nconst DefaultType = {}\n\nconst CLASS_NAME_BACKDROP = 'sidebar-backdrop'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SIDEBAR_NARROW = 'sidebar-narrow'\nconst CLASS_NAME_SIDEBAR_OVERLAID = 'sidebar-overlaid'\nconst CLASS_NAME_SIDEBAR_NARROW_UNFOLDABLE = 'sidebar-narrow-unfoldable'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_RESIZE = 'resize'\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst SELECTOR_DATA_CLOSE = '[data-coreui-close=\"sidebar\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-coreui-toggle]'\n\nconst SELECTOR_SIDEBAR = '.sidebar'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Sidebar extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._show = this._isVisible()\n this._mobile = this._isMobile()\n this._overlaid = this._isOverlaid()\n this._narrow = this._isNarrow()\n this._unfoldable = this._isUnfoldable()\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (this._element.classList.contains(CLASS_NAME_HIDE)) {\n this._element.classList.remove(CLASS_NAME_HIDE)\n }\n\n if (this._overlaid) {\n this._element.classList.add(CLASS_NAME_SHOW)\n }\n\n if (this._isMobile()) {\n this._element.classList.add(CLASS_NAME_SHOW)\n this._backdrop.show()\n new ScrollBarHelper().hide()\n }\n\n const complete = () => {\n if (this._isVisible() === true) {\n this._show = true\n if (this._isMobile() || this._isOverlaid()) {\n this._addClickOutListener()\n }\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n }\n\n this._queueCallback(complete, this._element, true)\n }\n\n hide() {\n EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n if (this._isMobile()) {\n this._backdrop.hide()\n new ScrollBarHelper().reset()\n }\n\n if (!this._isMobile() && !this._overlaid) {\n this._element.classList.add(CLASS_NAME_HIDE)\n }\n\n const complete = () => {\n if (this._isVisible() === false) {\n this._show = false\n if (this._isMobile() || this._isOverlaid()) {\n this._removeClickOutListener()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n }\n\n this._queueCallback(complete, this._element, true)\n }\n\n toggle() {\n if (this._isVisible()) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n narrow() {\n if (!this._isMobile()) {\n this._addClassName(CLASS_NAME_SIDEBAR_NARROW)\n this._narrow = true\n }\n }\n\n unfoldable() {\n if (!this._isMobile()) {\n this._addClassName(CLASS_NAME_SIDEBAR_NARROW_UNFOLDABLE)\n this._unfoldable = true\n }\n }\n\n reset() {\n if (!this._isMobile()) {\n if (this._narrow) {\n this._element.classList.remove(CLASS_NAME_SIDEBAR_NARROW)\n this._narrow = false\n }\n\n if (this._unfoldable) {\n this._element.classList.remove(CLASS_NAME_SIDEBAR_NARROW_UNFOLDABLE)\n this._unfoldable = false\n }\n }\n }\n\n toggleNarrow() {\n if (this._narrow) {\n this.reset()\n return\n }\n\n this.narrow()\n }\n\n toggleUnfoldable() {\n if (this._unfoldable) {\n this.reset()\n return\n }\n\n this.unfoldable()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n className: CLASS_NAME_BACKDROP,\n isVisible: this._isMobile(),\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _isMobile() {\n return Boolean(window.getComputedStyle(this._element, null).getPropertyValue('--cui-is-mobile'))\n }\n\n _isNarrow() {\n return this._element.classList.contains(CLASS_NAME_SIDEBAR_NARROW)\n }\n\n _isOverlaid() {\n return this._element.classList.contains(CLASS_NAME_SIDEBAR_OVERLAID)\n }\n\n _isUnfoldable() {\n return this._element.classList.contains(CLASS_NAME_SIDEBAR_NARROW_UNFOLDABLE)\n }\n\n _isVisible() {\n const rect = this._element.getBoundingClientRect()\n return (\n rect.top >= 0 && rect.left >= 0 && Math.floor(rect.bottom) <= (window.innerHeight || document.documentElement.clientHeight) && Math.floor(rect.right) <= (window.innerWidth || document.documentElement.clientWidth)\n )\n }\n\n _addClassName(className) {\n this._element.classList.add(className)\n }\n\n _clickOutListener(event, sidebar) {\n if (event.target.closest(SELECTOR_SIDEBAR) === null) {\n event.preventDefault()\n event.stopPropagation()\n sidebar.hide()\n }\n }\n\n _addClickOutListener() {\n EventHandler.on(document, EVENT_CLICK_DATA_API, event => {\n this._clickOutListener(event, this)\n })\n }\n\n _removeClickOutListener() {\n EventHandler.off(document, EVENT_CLICK_DATA_API)\n }\n\n // Sidebar navigation\n _addEventListeners() {\n if (this._mobile && this._show) {\n this._addClickOutListener()\n }\n\n if (this._overlaid && this._show) {\n this._addClickOutListener()\n }\n\n EventHandler.on(this._element, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n const toggle = Manipulator.getDataAttribute(event.target, 'toggle')\n\n if (toggle === 'narrow') {\n this.toggleNarrow()\n }\n\n if (toggle === 'unfoldable') {\n this.toggleUnfoldable()\n }\n })\n\n EventHandler.on(this._element, EVENT_CLICK_DATA_API, SELECTOR_DATA_CLOSE, event => {\n event.preventDefault()\n this.hide()\n })\n\n EventHandler.on(window, EVENT_RESIZE, () => {\n if (this._isMobile() && this._isVisible()) {\n this.hide()\n this._backdrop = this._initializeBackDrop()\n }\n })\n }\n\n // Static\n\n static sidebarInterface(element, config) {\n const data = Sidebar.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 Sidebar.sidebarInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const element of Array.from(document.querySelectorAll(SELECTOR_SIDEBAR))) {\n Sidebar.sidebarInterface(element)\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Sidebar)\n\nexport default Sidebar\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","Default","DefaultType","CLASS_NAME_BACKDROP","CLASS_NAME_HIDE","CLASS_NAME_SHOW","CLASS_NAME_SIDEBAR_NARROW","CLASS_NAME_SIDEBAR_OVERLAID","CLASS_NAME_SIDEBAR_NARROW_UNFOLDABLE","EVENT_HIDE","EVENT_HIDDEN","EVENT_RESIZE","EVENT_SHOW","EVENT_SHOWN","EVENT_CLICK_DATA_API","EVENT_LOAD_DATA_API","SELECTOR_DATA_CLOSE","SELECTOR_DATA_TOGGLE","SELECTOR_SIDEBAR","Sidebar","BaseComponent","constructor","element","config","_config","_getConfig","_show","_isVisible","_mobile","_isMobile","_overlaid","_isOverlaid","_narrow","_isNarrow","_unfoldable","_isUnfoldable","_backdrop","_initializeBackDrop","_addEventListeners","show","EventHandler","trigger","_element","classList","contains","remove","add","ScrollBarHelper","hide","complete","_addClickOutListener","_queueCallback","reset","_removeClickOutListener","toggle","narrow","_addClassName","unfoldable","toggleNarrow","toggleUnfoldable","Backdrop","className","isVisible","isAnimated","rootElement","parentNode","clickCallback","Boolean","window","getComputedStyle","getPropertyValue","rect","getBoundingClientRect","top","left","Math","floor","bottom","innerHeight","document","documentElement","clientHeight","right","innerWidth","clientWidth","_clickOutListener","event","sidebar","target","closest","preventDefault","stopPropagation","on","off","Manipulator","getDataAttribute","sidebarInterface","data","getOrCreateInstance","TypeError","jQueryInterface","each","Array","from","querySelectorAll","defineJQueryPlugin"],"mappings":"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"}
1
+ {"version":3,"file":"sidebar.js","sources":["../src/sidebar.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI sidebar.js\n * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport Manipulator from './dom/manipulator.js'\nimport { defineJQueryPlugin } from './util/index.js'\nimport Backdrop from './util/backdrop.js'\nimport ScrollBarHelper from './util/scrollbar.js'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'sidebar'\nconst DATA_KEY = 'coreui.sidebar'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {}\n\nconst DefaultType = {}\n\nconst CLASS_NAME_BACKDROP = 'sidebar-backdrop'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SIDEBAR_NARROW = 'sidebar-narrow'\nconst CLASS_NAME_SIDEBAR_OVERLAID = 'sidebar-overlaid'\nconst CLASS_NAME_SIDEBAR_NARROW_UNFOLDABLE = 'sidebar-narrow-unfoldable'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_RESIZE = 'resize'\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst SELECTOR_DATA_CLOSE = '[data-coreui-close=\"sidebar\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-coreui-toggle]'\n\nconst SELECTOR_SIDEBAR = '.sidebar'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Sidebar extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._show = this._isVisible()\n this._mobile = this._isMobile()\n this._overlaid = this._isOverlaid()\n this._narrow = this._isNarrow()\n this._unfoldable = this._isUnfoldable()\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (this._element.classList.contains(CLASS_NAME_HIDE)) {\n this._element.classList.remove(CLASS_NAME_HIDE)\n }\n\n if (this._overlaid) {\n this._element.classList.add(CLASS_NAME_SHOW)\n }\n\n if (this._isMobile()) {\n this._element.classList.add(CLASS_NAME_SHOW)\n this._backdrop.show()\n new ScrollBarHelper().hide()\n }\n\n const complete = () => {\n if (this._isVisible() === true) {\n this._show = true\n if (this._isMobile() || this._isOverlaid()) {\n this._addClickOutListener()\n }\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n }\n\n this._queueCallback(complete, this._element, true)\n }\n\n hide() {\n EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n if (this._isMobile()) {\n this._backdrop.hide()\n new ScrollBarHelper().reset()\n }\n\n if (!this._isMobile() && !this._overlaid) {\n this._element.classList.add(CLASS_NAME_HIDE)\n }\n\n const complete = () => {\n if (this._isVisible() === false) {\n this._show = false\n if (this._isMobile() || this._isOverlaid()) {\n this._removeClickOutListener()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n }\n\n this._queueCallback(complete, this._element, true)\n }\n\n toggle() {\n if (this._isVisible()) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n narrow() {\n if (!this._isMobile()) {\n this._addClassName(CLASS_NAME_SIDEBAR_NARROW)\n this._narrow = true\n }\n }\n\n unfoldable() {\n if (!this._isMobile()) {\n this._addClassName(CLASS_NAME_SIDEBAR_NARROW_UNFOLDABLE)\n this._unfoldable = true\n }\n }\n\n reset() {\n if (!this._isMobile()) {\n if (this._narrow) {\n this._element.classList.remove(CLASS_NAME_SIDEBAR_NARROW)\n this._narrow = false\n }\n\n if (this._unfoldable) {\n this._element.classList.remove(CLASS_NAME_SIDEBAR_NARROW_UNFOLDABLE)\n this._unfoldable = false\n }\n }\n }\n\n toggleNarrow() {\n if (this._narrow) {\n this.reset()\n return\n }\n\n this.narrow()\n }\n\n toggleUnfoldable() {\n if (this._unfoldable) {\n this.reset()\n return\n }\n\n this.unfoldable()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n className: CLASS_NAME_BACKDROP,\n isVisible: this._isMobile(),\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _isMobile() {\n return Boolean(window.getComputedStyle(this._element, null).getPropertyValue('--cui-is-mobile'))\n }\n\n _isNarrow() {\n return this._element.classList.contains(CLASS_NAME_SIDEBAR_NARROW)\n }\n\n _isOverlaid() {\n return this._element.classList.contains(CLASS_NAME_SIDEBAR_OVERLAID)\n }\n\n _isUnfoldable() {\n return this._element.classList.contains(CLASS_NAME_SIDEBAR_NARROW_UNFOLDABLE)\n }\n\n _isVisible() {\n const rect = this._element.getBoundingClientRect()\n return (\n rect.top >= 0 && rect.left >= 0 && Math.floor(rect.bottom) <= (window.innerHeight || document.documentElement.clientHeight) && Math.floor(rect.right) <= (window.innerWidth || document.documentElement.clientWidth)\n )\n }\n\n _addClassName(className) {\n this._element.classList.add(className)\n }\n\n _clickOutListener(event, sidebar) {\n if (event.target.closest(SELECTOR_SIDEBAR) === null) {\n event.preventDefault()\n event.stopPropagation()\n sidebar.hide()\n }\n }\n\n _addClickOutListener() {\n EventHandler.on(document, EVENT_CLICK_DATA_API, event => {\n this._clickOutListener(event, this)\n })\n }\n\n _removeClickOutListener() {\n EventHandler.off(document, EVENT_CLICK_DATA_API)\n }\n\n // Sidebar navigation\n _addEventListeners() {\n if (this._mobile && this._show) {\n this._addClickOutListener()\n }\n\n if (this._overlaid && this._show) {\n this._addClickOutListener()\n }\n\n EventHandler.on(this._element, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n const toggle = Manipulator.getDataAttribute(event.target, 'toggle')\n\n if (toggle === 'narrow') {\n this.toggleNarrow()\n }\n\n if (toggle === 'unfoldable') {\n this.toggleUnfoldable()\n }\n })\n\n EventHandler.on(this._element, EVENT_CLICK_DATA_API, SELECTOR_DATA_CLOSE, event => {\n event.preventDefault()\n this.hide()\n })\n\n EventHandler.on(window, EVENT_RESIZE, () => {\n if (this._isMobile() && this._isVisible()) {\n this.hide()\n this._backdrop = this._initializeBackDrop()\n }\n })\n }\n\n // Static\n\n static sidebarInterface(element, config) {\n const data = Sidebar.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 Sidebar.sidebarInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const element of Array.from(document.querySelectorAll(SELECTOR_SIDEBAR))) {\n Sidebar.sidebarInterface(element)\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Sidebar)\n\nexport default Sidebar\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","Default","DefaultType","CLASS_NAME_BACKDROP","CLASS_NAME_HIDE","CLASS_NAME_SHOW","CLASS_NAME_SIDEBAR_NARROW","CLASS_NAME_SIDEBAR_OVERLAID","CLASS_NAME_SIDEBAR_NARROW_UNFOLDABLE","EVENT_HIDE","EVENT_HIDDEN","EVENT_RESIZE","EVENT_SHOW","EVENT_SHOWN","EVENT_CLICK_DATA_API","EVENT_LOAD_DATA_API","SELECTOR_DATA_CLOSE","SELECTOR_DATA_TOGGLE","SELECTOR_SIDEBAR","Sidebar","BaseComponent","constructor","element","config","_config","_getConfig","_show","_isVisible","_mobile","_isMobile","_overlaid","_isOverlaid","_narrow","_isNarrow","_unfoldable","_isUnfoldable","_backdrop","_initializeBackDrop","_addEventListeners","show","EventHandler","trigger","_element","classList","contains","remove","add","ScrollBarHelper","hide","complete","_addClickOutListener","_queueCallback","reset","_removeClickOutListener","toggle","narrow","_addClassName","unfoldable","toggleNarrow","toggleUnfoldable","Backdrop","className","isVisible","isAnimated","rootElement","parentNode","clickCallback","Boolean","window","getComputedStyle","getPropertyValue","rect","getBoundingClientRect","top","left","Math","floor","bottom","innerHeight","document","documentElement","clientHeight","right","innerWidth","clientWidth","_clickOutListener","event","sidebar","target","closest","preventDefault","stopPropagation","on","off","Manipulator","getDataAttribute","sidebarInterface","data","getOrCreateInstance","TypeError","jQueryInterface","each","Array","from","querySelectorAll","defineJQueryPlugin"],"mappings":"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"}
package/js/dist/tab.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * CoreUI tab.js v5.1.1 (https://coreui.io)
2
+ * CoreUI tab.js v5.2.0 (https://coreui.io)
3
3
  * Copyright 2024 The CoreUI Team (https://github.com/orgs/coreui/people)
4
4
  * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tab.js","sources":["../src/tab.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI tab.js\n * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)\n *\n * This component is a modified version of the Bootstrap's tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport { defineJQueryPlugin, getNextActiveElement, isDisabled } from './util/index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'coreui.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}`\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst HOME_KEY = 'Home'\nconst END_KEY = 'End'\n\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_DROPDOWN = 'dropdown'\n\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_MENU = '.dropdown-menu'\nconst NOT_SELECTOR_DROPDOWN_TOGGLE = `:not(${SELECTOR_DROPDOWN_TOGGLE})`\n\nconst SELECTOR_TAB_PANEL = '.list-group, .nav, [role=\"tablist\"]'\nconst SELECTOR_OUTER = '.nav-item, .list-group-item'\nconst SELECTOR_INNER = `.nav-link${NOT_SELECTOR_DROPDOWN_TOGGLE}, .list-group-item${NOT_SELECTOR_DROPDOWN_TOGGLE}, [role=\"tab\"]${NOT_SELECTOR_DROPDOWN_TOGGLE}`\nconst SELECTOR_DATA_TOGGLE = '[data-coreui-toggle=\"tab\"], [data-coreui-toggle=\"pill\"], [data-coreui-toggle=\"list\"]' // TODO: could only be `tab` in v6\nconst SELECTOR_INNER_ELEM = `${SELECTOR_INNER}, ${SELECTOR_DATA_TOGGLE}`\n\nconst SELECTOR_DATA_TOGGLE_ACTIVE = `.${CLASS_NAME_ACTIVE}[data-coreui-toggle=\"tab\"], .${CLASS_NAME_ACTIVE}[data-coreui-toggle=\"pill\"], .${CLASS_NAME_ACTIVE}[data-coreui-toggle=\"list\"]`\n\n/**\n * Class definition\n */\n\nclass Tab extends BaseComponent {\n constructor(element) {\n super(element)\n this._parent = this._element.closest(SELECTOR_TAB_PANEL)\n\n if (!this._parent) {\n return\n // TODO: should throw exception in v6\n // throw new TypeError(`${element.outerHTML} has not a valid parent ${SELECTOR_INNER_ELEM}`)\n }\n\n // Set up initial aria attributes\n this._setInitialAttributes(this._parent, this._getChildren())\n\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n // Getters\n static get NAME() {\n return NAME\n }\n\n // Public\n show() { // Shows this elem and deactivate the active sibling if exists\n const innerElem = this._element\n if (this._elemIsActive(innerElem)) {\n return\n }\n\n // Search for active tab on same parent to deactivate it\n const active = this._getActiveElem()\n\n const hideEvent = active ?\n EventHandler.trigger(active, EVENT_HIDE, { relatedTarget: innerElem }) :\n null\n\n const showEvent = EventHandler.trigger(innerElem, EVENT_SHOW, { relatedTarget: active })\n\n if (showEvent.defaultPrevented || (hideEvent && hideEvent.defaultPrevented)) {\n return\n }\n\n this._deactivate(active, innerElem)\n this._activate(innerElem, active)\n }\n\n // Private\n _activate(element, relatedElem) {\n if (!element) {\n return\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n\n this._activate(SelectorEngine.getElementFromSelector(element)) // Search and activate/show the proper section\n\n const complete = () => {\n if (element.getAttribute('role') !== 'tab') {\n element.classList.add(CLASS_NAME_SHOW)\n return\n }\n\n element.removeAttribute('tabindex')\n element.setAttribute('aria-selected', true)\n this._toggleDropDown(element, true)\n EventHandler.trigger(element, EVENT_SHOWN, {\n relatedTarget: relatedElem\n })\n }\n\n this._queueCallback(complete, element, element.classList.contains(CLASS_NAME_FADE))\n }\n\n _deactivate(element, relatedElem) {\n if (!element) {\n return\n }\n\n element.classList.remove(CLASS_NAME_ACTIVE)\n element.blur()\n\n this._deactivate(SelectorEngine.getElementFromSelector(element)) // Search and deactivate the shown section too\n\n const complete = () => {\n if (element.getAttribute('role') !== 'tab') {\n element.classList.remove(CLASS_NAME_SHOW)\n return\n }\n\n element.setAttribute('aria-selected', false)\n element.setAttribute('tabindex', '-1')\n this._toggleDropDown(element, false)\n EventHandler.trigger(element, EVENT_HIDDEN, { relatedTarget: relatedElem })\n }\n\n this._queueCallback(complete, element, element.classList.contains(CLASS_NAME_FADE))\n }\n\n _keydown(event) {\n if (!([ARROW_LEFT_KEY, ARROW_RIGHT_KEY, ARROW_UP_KEY, ARROW_DOWN_KEY, HOME_KEY, END_KEY].includes(event.key))) {\n return\n }\n\n event.stopPropagation()// stopPropagation/preventDefault both added to support up/down keys without scrolling the page\n event.preventDefault()\n\n const children = this._getChildren().filter(element => !isDisabled(element))\n let nextActiveElement\n\n if ([HOME_KEY, END_KEY].includes(event.key)) {\n nextActiveElement = children[event.key === HOME_KEY ? 0 : children.length - 1]\n } else {\n const isNext = [ARROW_RIGHT_KEY, ARROW_DOWN_KEY].includes(event.key)\n nextActiveElement = getNextActiveElement(children, event.target, isNext, true)\n }\n\n if (nextActiveElement) {\n nextActiveElement.focus({ preventScroll: true })\n Tab.getOrCreateInstance(nextActiveElement).show()\n }\n }\n\n _getChildren() { // collection of inner elements\n return SelectorEngine.find(SELECTOR_INNER_ELEM, this._parent)\n }\n\n _getActiveElem() {\n return this._getChildren().find(child => this._elemIsActive(child)) || null\n }\n\n _setInitialAttributes(parent, children) {\n this._setAttributeIfNotExists(parent, 'role', 'tablist')\n\n for (const child of children) {\n this._setInitialAttributesOnChild(child)\n }\n }\n\n _setInitialAttributesOnChild(child) {\n child = this._getInnerElement(child)\n const isActive = this._elemIsActive(child)\n const outerElem = this._getOuterElement(child)\n child.setAttribute('aria-selected', isActive)\n\n if (outerElem !== child) {\n this._setAttributeIfNotExists(outerElem, 'role', 'presentation')\n }\n\n if (!isActive) {\n child.setAttribute('tabindex', '-1')\n }\n\n this._setAttributeIfNotExists(child, 'role', 'tab')\n\n // set attributes to the related panel too\n this._setInitialAttributesOnTargetPanel(child)\n }\n\n _setInitialAttributesOnTargetPanel(child) {\n const target = SelectorEngine.getElementFromSelector(child)\n\n if (!target) {\n return\n }\n\n this._setAttributeIfNotExists(target, 'role', 'tabpanel')\n\n if (child.id) {\n this._setAttributeIfNotExists(target, 'aria-labelledby', `${child.id}`)\n }\n }\n\n _toggleDropDown(element, open) {\n const outerElem = this._getOuterElement(element)\n if (!outerElem.classList.contains(CLASS_DROPDOWN)) {\n return\n }\n\n const toggle = (selector, className) => {\n const element = SelectorEngine.findOne(selector, outerElem)\n if (element) {\n element.classList.toggle(className, open)\n }\n }\n\n toggle(SELECTOR_DROPDOWN_TOGGLE, CLASS_NAME_ACTIVE)\n toggle(SELECTOR_DROPDOWN_MENU, CLASS_NAME_SHOW)\n outerElem.setAttribute('aria-expanded', open)\n }\n\n _setAttributeIfNotExists(element, attribute, value) {\n if (!element.hasAttribute(attribute)) {\n element.setAttribute(attribute, value)\n }\n }\n\n _elemIsActive(elem) {\n return elem.classList.contains(CLASS_NAME_ACTIVE)\n }\n\n // Try to get the inner element (usually the .nav-link)\n _getInnerElement(elem) {\n return elem.matches(SELECTOR_INNER_ELEM) ? elem : SelectorEngine.findOne(SELECTOR_INNER_ELEM, elem)\n }\n\n // Try to get the outer element (usually the .nav-item)\n _getOuterElement(elem) {\n return elem.closest(SELECTOR_OUTER) || elem\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n Tab.getOrCreateInstance(this).show()\n})\n\n/**\n * Initialize on focus\n */\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const element of SelectorEngine.find(SELECTOR_DATA_TOGGLE_ACTIVE)) {\n Tab.getOrCreateInstance(element)\n }\n})\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n"],"names":["NAME","DATA_KEY","EVENT_KEY","EVENT_HIDE","EVENT_HIDDEN","EVENT_SHOW","EVENT_SHOWN","EVENT_CLICK_DATA_API","EVENT_KEYDOWN","EVENT_LOAD_DATA_API","ARROW_LEFT_KEY","ARROW_RIGHT_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","HOME_KEY","END_KEY","CLASS_NAME_ACTIVE","CLASS_NAME_FADE","CLASS_NAME_SHOW","CLASS_DROPDOWN","SELECTOR_DROPDOWN_TOGGLE","SELECTOR_DROPDOWN_MENU","NOT_SELECTOR_DROPDOWN_TOGGLE","SELECTOR_TAB_PANEL","SELECTOR_OUTER","SELECTOR_INNER","SELECTOR_DATA_TOGGLE","SELECTOR_INNER_ELEM","SELECTOR_DATA_TOGGLE_ACTIVE","Tab","BaseComponent","constructor","element","_parent","_element","closest","_setInitialAttributes","_getChildren","EventHandler","on","event","_keydown","show","innerElem","_elemIsActive","active","_getActiveElem","hideEvent","trigger","relatedTarget","showEvent","defaultPrevented","_deactivate","_activate","relatedElem","classList","add","SelectorEngine","getElementFromSelector","complete","getAttribute","removeAttribute","setAttribute","_toggleDropDown","_queueCallback","contains","remove","blur","includes","key","stopPropagation","preventDefault","children","filter","isDisabled","nextActiveElement","length","isNext","getNextActiveElement","target","focus","preventScroll","getOrCreateInstance","find","child","parent","_setAttributeIfNotExists","_setInitialAttributesOnChild","_getInnerElement","isActive","outerElem","_getOuterElement","_setInitialAttributesOnTargetPanel","id","open","toggle","selector","className","findOne","attribute","value","hasAttribute","elem","matches","jQueryInterface","config","each","data","undefined","startsWith","TypeError","document","tagName","window","defineJQueryPlugin"],"mappings":"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"}
1
+ {"version":3,"file":"tab.js","sources":["../src/tab.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI tab.js\n * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)\n *\n * This component is a modified version of the Bootstrap's tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport { defineJQueryPlugin, getNextActiveElement, isDisabled } from './util/index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'coreui.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}`\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst HOME_KEY = 'Home'\nconst END_KEY = 'End'\n\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_DROPDOWN = 'dropdown'\n\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_MENU = '.dropdown-menu'\nconst NOT_SELECTOR_DROPDOWN_TOGGLE = `:not(${SELECTOR_DROPDOWN_TOGGLE})`\n\nconst SELECTOR_TAB_PANEL = '.list-group, .nav, [role=\"tablist\"]'\nconst SELECTOR_OUTER = '.nav-item, .list-group-item'\nconst SELECTOR_INNER = `.nav-link${NOT_SELECTOR_DROPDOWN_TOGGLE}, .list-group-item${NOT_SELECTOR_DROPDOWN_TOGGLE}, [role=\"tab\"]${NOT_SELECTOR_DROPDOWN_TOGGLE}`\nconst SELECTOR_DATA_TOGGLE = '[data-coreui-toggle=\"tab\"], [data-coreui-toggle=\"pill\"], [data-coreui-toggle=\"list\"]' // TODO: could only be `tab` in v6\nconst SELECTOR_INNER_ELEM = `${SELECTOR_INNER}, ${SELECTOR_DATA_TOGGLE}`\n\nconst SELECTOR_DATA_TOGGLE_ACTIVE = `.${CLASS_NAME_ACTIVE}[data-coreui-toggle=\"tab\"], .${CLASS_NAME_ACTIVE}[data-coreui-toggle=\"pill\"], .${CLASS_NAME_ACTIVE}[data-coreui-toggle=\"list\"]`\n\n/**\n * Class definition\n */\n\nclass Tab extends BaseComponent {\n constructor(element) {\n super(element)\n this._parent = this._element.closest(SELECTOR_TAB_PANEL)\n\n if (!this._parent) {\n return\n // TODO: should throw exception in v6\n // throw new TypeError(`${element.outerHTML} has not a valid parent ${SELECTOR_INNER_ELEM}`)\n }\n\n // Set up initial aria attributes\n this._setInitialAttributes(this._parent, this._getChildren())\n\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n // Getters\n static get NAME() {\n return NAME\n }\n\n // Public\n show() { // Shows this elem and deactivate the active sibling if exists\n const innerElem = this._element\n if (this._elemIsActive(innerElem)) {\n return\n }\n\n // Search for active tab on same parent to deactivate it\n const active = this._getActiveElem()\n\n const hideEvent = active ?\n EventHandler.trigger(active, EVENT_HIDE, { relatedTarget: innerElem }) :\n null\n\n const showEvent = EventHandler.trigger(innerElem, EVENT_SHOW, { relatedTarget: active })\n\n if (showEvent.defaultPrevented || (hideEvent && hideEvent.defaultPrevented)) {\n return\n }\n\n this._deactivate(active, innerElem)\n this._activate(innerElem, active)\n }\n\n // Private\n _activate(element, relatedElem) {\n if (!element) {\n return\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n\n this._activate(SelectorEngine.getElementFromSelector(element)) // Search and activate/show the proper section\n\n const complete = () => {\n if (element.getAttribute('role') !== 'tab') {\n element.classList.add(CLASS_NAME_SHOW)\n return\n }\n\n element.removeAttribute('tabindex')\n element.setAttribute('aria-selected', true)\n this._toggleDropDown(element, true)\n EventHandler.trigger(element, EVENT_SHOWN, {\n relatedTarget: relatedElem\n })\n }\n\n this._queueCallback(complete, element, element.classList.contains(CLASS_NAME_FADE))\n }\n\n _deactivate(element, relatedElem) {\n if (!element) {\n return\n }\n\n element.classList.remove(CLASS_NAME_ACTIVE)\n element.blur()\n\n this._deactivate(SelectorEngine.getElementFromSelector(element)) // Search and deactivate the shown section too\n\n const complete = () => {\n if (element.getAttribute('role') !== 'tab') {\n element.classList.remove(CLASS_NAME_SHOW)\n return\n }\n\n element.setAttribute('aria-selected', false)\n element.setAttribute('tabindex', '-1')\n this._toggleDropDown(element, false)\n EventHandler.trigger(element, EVENT_HIDDEN, { relatedTarget: relatedElem })\n }\n\n this._queueCallback(complete, element, element.classList.contains(CLASS_NAME_FADE))\n }\n\n _keydown(event) {\n if (!([ARROW_LEFT_KEY, ARROW_RIGHT_KEY, ARROW_UP_KEY, ARROW_DOWN_KEY, HOME_KEY, END_KEY].includes(event.key))) {\n return\n }\n\n event.stopPropagation()// stopPropagation/preventDefault both added to support up/down keys without scrolling the page\n event.preventDefault()\n\n const children = this._getChildren().filter(element => !isDisabled(element))\n let nextActiveElement\n\n if ([HOME_KEY, END_KEY].includes(event.key)) {\n nextActiveElement = children[event.key === HOME_KEY ? 0 : children.length - 1]\n } else {\n const isNext = [ARROW_RIGHT_KEY, ARROW_DOWN_KEY].includes(event.key)\n nextActiveElement = getNextActiveElement(children, event.target, isNext, true)\n }\n\n if (nextActiveElement) {\n nextActiveElement.focus({ preventScroll: true })\n Tab.getOrCreateInstance(nextActiveElement).show()\n }\n }\n\n _getChildren() { // collection of inner elements\n return SelectorEngine.find(SELECTOR_INNER_ELEM, this._parent)\n }\n\n _getActiveElem() {\n return this._getChildren().find(child => this._elemIsActive(child)) || null\n }\n\n _setInitialAttributes(parent, children) {\n this._setAttributeIfNotExists(parent, 'role', 'tablist')\n\n for (const child of children) {\n this._setInitialAttributesOnChild(child)\n }\n }\n\n _setInitialAttributesOnChild(child) {\n child = this._getInnerElement(child)\n const isActive = this._elemIsActive(child)\n const outerElem = this._getOuterElement(child)\n child.setAttribute('aria-selected', isActive)\n\n if (outerElem !== child) {\n this._setAttributeIfNotExists(outerElem, 'role', 'presentation')\n }\n\n if (!isActive) {\n child.setAttribute('tabindex', '-1')\n }\n\n this._setAttributeIfNotExists(child, 'role', 'tab')\n\n // set attributes to the related panel too\n this._setInitialAttributesOnTargetPanel(child)\n }\n\n _setInitialAttributesOnTargetPanel(child) {\n const target = SelectorEngine.getElementFromSelector(child)\n\n if (!target) {\n return\n }\n\n this._setAttributeIfNotExists(target, 'role', 'tabpanel')\n\n if (child.id) {\n this._setAttributeIfNotExists(target, 'aria-labelledby', `${child.id}`)\n }\n }\n\n _toggleDropDown(element, open) {\n const outerElem = this._getOuterElement(element)\n if (!outerElem.classList.contains(CLASS_DROPDOWN)) {\n return\n }\n\n const toggle = (selector, className) => {\n const element = SelectorEngine.findOne(selector, outerElem)\n if (element) {\n element.classList.toggle(className, open)\n }\n }\n\n toggle(SELECTOR_DROPDOWN_TOGGLE, CLASS_NAME_ACTIVE)\n toggle(SELECTOR_DROPDOWN_MENU, CLASS_NAME_SHOW)\n outerElem.setAttribute('aria-expanded', open)\n }\n\n _setAttributeIfNotExists(element, attribute, value) {\n if (!element.hasAttribute(attribute)) {\n element.setAttribute(attribute, value)\n }\n }\n\n _elemIsActive(elem) {\n return elem.classList.contains(CLASS_NAME_ACTIVE)\n }\n\n // Try to get the inner element (usually the .nav-link)\n _getInnerElement(elem) {\n return elem.matches(SELECTOR_INNER_ELEM) ? elem : SelectorEngine.findOne(SELECTOR_INNER_ELEM, elem)\n }\n\n // Try to get the outer element (usually the .nav-item)\n _getOuterElement(elem) {\n return elem.closest(SELECTOR_OUTER) || elem\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n Tab.getOrCreateInstance(this).show()\n})\n\n/**\n * Initialize on focus\n */\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const element of SelectorEngine.find(SELECTOR_DATA_TOGGLE_ACTIVE)) {\n Tab.getOrCreateInstance(element)\n }\n})\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n"],"names":["NAME","DATA_KEY","EVENT_KEY","EVENT_HIDE","EVENT_HIDDEN","EVENT_SHOW","EVENT_SHOWN","EVENT_CLICK_DATA_API","EVENT_KEYDOWN","EVENT_LOAD_DATA_API","ARROW_LEFT_KEY","ARROW_RIGHT_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","HOME_KEY","END_KEY","CLASS_NAME_ACTIVE","CLASS_NAME_FADE","CLASS_NAME_SHOW","CLASS_DROPDOWN","SELECTOR_DROPDOWN_TOGGLE","SELECTOR_DROPDOWN_MENU","NOT_SELECTOR_DROPDOWN_TOGGLE","SELECTOR_TAB_PANEL","SELECTOR_OUTER","SELECTOR_INNER","SELECTOR_DATA_TOGGLE","SELECTOR_INNER_ELEM","SELECTOR_DATA_TOGGLE_ACTIVE","Tab","BaseComponent","constructor","element","_parent","_element","closest","_setInitialAttributes","_getChildren","EventHandler","on","event","_keydown","show","innerElem","_elemIsActive","active","_getActiveElem","hideEvent","trigger","relatedTarget","showEvent","defaultPrevented","_deactivate","_activate","relatedElem","classList","add","SelectorEngine","getElementFromSelector","complete","getAttribute","removeAttribute","setAttribute","_toggleDropDown","_queueCallback","contains","remove","blur","includes","key","stopPropagation","preventDefault","children","filter","isDisabled","nextActiveElement","length","isNext","getNextActiveElement","target","focus","preventScroll","getOrCreateInstance","find","child","parent","_setAttributeIfNotExists","_setInitialAttributesOnChild","_getInnerElement","isActive","outerElem","_getOuterElement","_setInitialAttributesOnTargetPanel","id","open","toggle","selector","className","findOne","attribute","value","hasAttribute","elem","matches","jQueryInterface","config","each","data","undefined","startsWith","TypeError","document","tagName","window","defineJQueryPlugin"],"mappings":"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"}
package/js/dist/toast.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * CoreUI toast.js v5.1.1 (https://coreui.io)
2
+ * CoreUI toast.js v5.2.0 (https://coreui.io)
3
3
  * Copyright 2024 The CoreUI Team (https://github.com/orgs/coreui/people)
4
4
  * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"toast.js","sources":["../src/toast.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI toast.js\n * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)\n *\n * This component is a modified version of the Bootstrap's toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport { enableDismissTrigger } from './util/component-functions.js'\nimport { defineJQueryPlugin, reflow } from './util/index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'coreui.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide' // @deprecated - kept here only for backwards compatibility\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\n/**\n * Class definition\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\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 show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE) // @deprecated\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOW, CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this.isShown()) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE) // @deprecated\n this._element.classList.remove(CLASS_NAME_SHOWING, CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.add(CLASS_NAME_SHOWING)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this.isShown()) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n isShown() {\n return this._element.classList.contains(CLASS_NAME_SHOW)\n }\n\n // Private\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout': {\n this._hasMouseInteraction = isInteracting\n break\n }\n\n case 'focusin':\n case 'focusout': {\n this._hasKeyboardInteraction = isInteracting\n break\n }\n\n default: {\n break\n }\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nenableDismissTrigger(Toast)\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n"],"names":["NAME","DATA_KEY","EVENT_KEY","EVENT_MOUSEOVER","EVENT_MOUSEOUT","EVENT_FOCUSIN","EVENT_FOCUSOUT","EVENT_HIDE","EVENT_HIDDEN","EVENT_SHOW","EVENT_SHOWN","CLASS_NAME_FADE","CLASS_NAME_HIDE","CLASS_NAME_SHOW","CLASS_NAME_SHOWING","DefaultType","animation","autohide","delay","Default","Toast","BaseComponent","constructor","element","config","_timeout","_hasMouseInteraction","_hasKeyboardInteraction","_setListeners","show","showEvent","EventHandler","trigger","_element","defaultPrevented","_clearTimeout","_config","classList","add","complete","remove","_maybeScheduleHide","reflow","_queueCallback","hide","isShown","hideEvent","dispose","contains","setTimeout","_onInteraction","event","isInteracting","type","nextElement","relatedTarget","on","clearTimeout","jQueryInterface","each","data","getOrCreateInstance","TypeError","enableDismissTrigger","defineJQueryPlugin"],"mappings":"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"}
1
+ {"version":3,"file":"toast.js","sources":["../src/toast.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI toast.js\n * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)\n *\n * This component is a modified version of the Bootstrap's toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport { enableDismissTrigger } from './util/component-functions.js'\nimport { defineJQueryPlugin, reflow } from './util/index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'coreui.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide' // @deprecated - kept here only for backwards compatibility\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\n/**\n * Class definition\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\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 show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE) // @deprecated\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOW, CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this.isShown()) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE) // @deprecated\n this._element.classList.remove(CLASS_NAME_SHOWING, CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.add(CLASS_NAME_SHOWING)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this.isShown()) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n isShown() {\n return this._element.classList.contains(CLASS_NAME_SHOW)\n }\n\n // Private\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout': {\n this._hasMouseInteraction = isInteracting\n break\n }\n\n case 'focusin':\n case 'focusout': {\n this._hasKeyboardInteraction = isInteracting\n break\n }\n\n default: {\n break\n }\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nenableDismissTrigger(Toast)\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n"],"names":["NAME","DATA_KEY","EVENT_KEY","EVENT_MOUSEOVER","EVENT_MOUSEOUT","EVENT_FOCUSIN","EVENT_FOCUSOUT","EVENT_HIDE","EVENT_HIDDEN","EVENT_SHOW","EVENT_SHOWN","CLASS_NAME_FADE","CLASS_NAME_HIDE","CLASS_NAME_SHOW","CLASS_NAME_SHOWING","DefaultType","animation","autohide","delay","Default","Toast","BaseComponent","constructor","element","config","_timeout","_hasMouseInteraction","_hasKeyboardInteraction","_setListeners","show","showEvent","EventHandler","trigger","_element","defaultPrevented","_clearTimeout","_config","classList","add","complete","remove","_maybeScheduleHide","reflow","_queueCallback","hide","isShown","hideEvent","dispose","contains","setTimeout","_onInteraction","event","isInteracting","type","nextElement","relatedTarget","on","clearTimeout","jQueryInterface","each","data","getOrCreateInstance","TypeError","enableDismissTrigger","defineJQueryPlugin"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * CoreUI tooltip.js v5.1.1 (https://coreui.io)
2
+ * CoreUI tooltip.js v5.2.0 (https://coreui.io)
3
3
  * Copyright 2024 The CoreUI Team (https://github.com/orgs/coreui/people)
4
4
  * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)
5
5
  */
@@ -352,7 +352,7 @@
352
352
  return offset;
353
353
  }
354
354
  _resolvePossibleFunction(arg) {
355
- return index_js.execute(arg, [this._element]);
355
+ return index_js.execute(arg, [this._element, this._element]);
356
356
  }
357
357
  _getPopperConfig(attachment) {
358
358
  const defaultBsPopperConfig = {
@@ -390,7 +390,7 @@
390
390
  };
391
391
  return {
392
392
  ...defaultBsPopperConfig,
393
- ...index_js.execute(this._config.popperConfig, [defaultBsPopperConfig])
393
+ ...index_js.execute(this._config.popperConfig, [undefined, defaultBsPopperConfig])
394
394
  };
395
395
  }
396
396
  _setListeners() {