@openeuropa/bcl-bootstrap 0.24.1 → 0.26.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.
- package/bootstrap-icons.svg +1 -1
- package/icons/apple.svg +2 -2
- package/icons/boombox-fill.svg +2 -2
- package/icons/cup-fill.svg +1 -1
- package/icons/cup.svg +1 -1
- package/js/dist/alert.js +3 -12
- package/js/dist/alert.js.map +1 -1
- package/js/dist/base-component.js +32 -18
- package/js/dist/base-component.js.map +1 -1
- package/js/dist/button.js +3 -12
- package/js/dist/button.js.map +1 -1
- package/js/dist/carousel.js +207 -307
- package/js/dist/carousel.js.map +1 -1
- package/js/dist/collapse.js +57 -88
- package/js/dist/collapse.js.map +1 -1
- package/js/dist/dom/data.js +1 -3
- package/js/dist/dom/data.js.map +1 -1
- package/js/dist/dom/event-handler.js +87 -106
- package/js/dist/dom/event-handler.js.map +1 -1
- package/js/dist/dom/manipulator.js +21 -25
- package/js/dist/dom/manipulator.js.map +1 -1
- package/js/dist/dom/selector-engine.js +11 -10
- package/js/dist/dom/selector-engine.js.map +1 -1
- package/js/dist/dropdown.js +83 -115
- package/js/dist/dropdown.js.map +1 -1
- package/js/dist/modal.js +95 -152
- package/js/dist/modal.js.map +1 -1
- package/js/dist/offcanvas.js +75 -58
- package/js/dist/offcanvas.js.map +1 -1
- package/js/dist/popover.js +29 -56
- package/js/dist/popover.js.map +1 -1
- package/js/dist/scrollspy.js +176 -125
- package/js/dist/scrollspy.js.map +1 -1
- package/js/dist/tab.js +207 -92
- package/js/dist/tab.js.map +1 -1
- package/js/dist/toast.js +23 -37
- package/js/dist/toast.js.map +1 -1
- package/js/dist/tooltip.js +259 -348
- package/js/dist/tooltip.js.map +1 -1
- package/js/dist/util/backdrop.js +62 -39
- package/js/dist/util/backdrop.js.map +1 -1
- package/js/dist/util/component-functions.js +1 -1
- package/js/dist/util/component-functions.js.map +1 -1
- package/js/dist/util/config.js +75 -0
- package/js/dist/util/config.js.map +1 -0
- package/js/dist/util/focustrap.js +41 -34
- package/js/dist/util/focustrap.js.map +1 -1
- package/js/dist/util/index.js +56 -52
- package/js/dist/util/index.js.map +1 -1
- package/js/dist/util/sanitizer.js +12 -19
- package/js/dist/util/sanitizer.js.map +1 -1
- package/js/dist/util/scrollbar.js +49 -34
- package/js/dist/util/scrollbar.js.map +1 -1
- package/js/dist/util/swipe.js +151 -0
- package/js/dist/util/swipe.js.map +1 -0
- package/js/dist/util/template-factory.js +173 -0
- package/js/dist/util/template-factory.js.map +1 -0
- package/js/src/alert.js +3 -15
- package/js/src/base-component.js +28 -18
- package/js/src/button.js +3 -17
- package/js/src/carousel.js +203 -319
- package/js/src/collapse.js +61 -94
- package/js/src/dom/data.js +1 -3
- package/js/src/dom/event-handler.js +80 -108
- package/js/src/dom/manipulator.js +22 -31
- package/js/src/dom/selector-engine.js +10 -19
- package/js/src/dropdown.js +84 -138
- package/js/src/modal.js +94 -158
- package/js/src/offcanvas.js +72 -61
- package/js/src/popover.js +31 -62
- package/js/src/scrollspy.js +166 -171
- package/js/src/tab.js +193 -110
- package/js/src/toast.js +19 -41
- package/js/src/tooltip.js +259 -371
- package/js/src/util/backdrop.js +55 -36
- package/js/src/util/component-functions.js +1 -1
- package/js/src/util/config.js +66 -0
- package/js/src/util/focustrap.js +38 -28
- package/js/src/util/index.js +67 -64
- package/js/src/util/sanitizer.js +11 -19
- package/js/src/util/scrollbar.js +47 -30
- package/js/src/util/swipe.js +146 -0
- package/js/src/util/template-factory.js +160 -0
- package/package.json +4 -4
- package/scss/_accordion.scss +52 -24
- package/scss/_alert.scss +18 -4
- package/scss/_badge.scss +14 -5
- package/scss/_breadcrumb.scss +22 -10
- package/scss/_button-group.scss +3 -0
- package/scss/_buttons.scss +97 -22
- package/scss/_card.scss +55 -37
- package/scss/_close.scss +1 -1
- package/scss/_containers.scss +1 -1
- package/scss/_dropdown.scss +83 -75
- package/scss/_functions.scss +7 -7
- package/scss/_grid.scss +3 -3
- package/scss/_helpers.scss +1 -0
- package/scss/_list-group.scss +44 -27
- package/scss/_maps.scss +54 -0
- package/scss/_modal.scss +71 -43
- package/scss/_nav.scss +53 -20
- package/scss/_navbar.scss +91 -150
- package/scss/_offcanvas.scss +119 -59
- package/scss/_pagination.scss +66 -21
- package/scss/_placeholders.scss +1 -1
- package/scss/_popover.scss +90 -52
- package/scss/_progress.scss +20 -9
- package/scss/_reboot.scss +25 -40
- package/scss/_root.scss +40 -21
- package/scss/_spinners.scss +38 -22
- package/scss/_tables.scss +32 -23
- package/scss/_toasts.scss +35 -16
- package/scss/_tooltip.scss +61 -56
- package/scss/_type.scss +2 -0
- package/scss/_utilities.scss +43 -26
- package/scss/_variables.scss +113 -121
- package/scss/bootstrap-grid.scss +3 -6
- package/scss/bootstrap-reboot.scss +3 -7
- package/scss/bootstrap-utilities.scss +3 -6
- package/scss/bootstrap.scss +4 -6
- package/scss/forms/_floating-labels.scss +14 -3
- package/scss/forms/_form-check.scss +28 -5
- package/scss/forms/_form-control.scss +12 -37
- package/scss/forms/_form-select.scss +0 -1
- package/scss/forms/_input-group.scss +15 -7
- package/scss/helpers/_color-bg.scss +10 -0
- package/scss/helpers/_colored-links.scss +2 -2
- package/scss/helpers/_position.scss +7 -1
- package/scss/helpers/_ratio.scss +2 -2
- package/scss/helpers/_vr.scss +1 -1
- package/scss/mixins/_alert.scss +7 -3
- package/scss/mixins/_banner.scss +9 -0
- package/scss/mixins/_breakpoints.scss +8 -8
- package/scss/mixins/_buttons.scss +32 -95
- package/scss/mixins/_container.scss +4 -2
- package/scss/mixins/_forms.scss +8 -0
- package/scss/mixins/_gradients.scss +1 -1
- package/scss/mixins/_grid.scss +12 -12
- package/scss/mixins/_pagination.scss +4 -25
- package/scss/mixins/_reset-text.scss +1 -1
- package/scss/mixins/_table-variants.scss +12 -9
- package/scss/mixins/_utilities.scss +12 -4
package/js/dist/tooltip.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.js","sources":["../src/tooltip.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.1.3): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport { DefaultAllowlist, sanitizeHtml } from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\nconst SELECTOR_MODAL = `.${CLASS_NAME_MODAL}`\n\nconst EVENT_MODAL_HIDE = 'hide.bs.modal'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n this._disposePopper()\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n // A trick to recreate a tooltip in case a new title is given by using the NOT documented `data-bs-original-title`\n // This will be removed later in favor of a `setContent` method\n if (this.constructor.NAME === 'tooltip' && this.tip && this.getTitle() !== this.tip.querySelector(SELECTOR_TOOLTIP_INNER).innerHTML) {\n this._disposePopper()\n this.tip.remove()\n this.tip = null\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.append(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = this._resolvePossibleFunction(this._config.customClass)\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n this._disposePopper()\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n const tip = element.children[0]\n this.setContent(tip)\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n\n this.tip = tip\n return this.tip\n }\n\n setContent(tip) {\n this._sanitizeAndSetContent(tip, this.getTitle(), SELECTOR_TOOLTIP_INNER)\n }\n\n _sanitizeAndSetContent(template, content, selector) {\n const templateElement = SelectorEngine.findOne(selector, template)\n\n if (!content && templateElement) {\n templateElement.remove()\n return\n }\n\n // we use append for html objects to maintain js events\n this.setElementContent(templateElement, content)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.append(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n const title = this._element.getAttribute('data-bs-original-title') || this._config.title\n\n return this._resolvePossibleFunction(title)\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n return context || this.constructor.getOrCreateInstance(event.delegateTarget, this._getDelegateConfig())\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _resolvePossibleFunction(content) {\n return typeof content === 'function' ? content.call(this._element) : content\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n\n // In the future can be replaced with:\n // const keysWithDifferentValues = Object.entries(this._config).filter(entry => this.constructor.Default[entry[0]] !== this._config[entry[0]])\n // `Object.fromEntries(keysWithDifferentValues)`\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const basicClassPrefixRegex = new RegExp(`(^|\\\\s)${this._getBasicClassPrefix()}\\\\S+`, 'g')\n const tabClass = tip.getAttribute('class').match(basicClassPrefixRegex)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _getBasicClassPrefix() {\n return CLASS_PREFIX\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n _disposePopper() {\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n"],"names":["NAME","DATA_KEY","EVENT_KEY","CLASS_PREFIX","DISALLOWED_ATTRIBUTES","Set","DefaultType","animation","template","title","trigger","delay","html","selector","placement","offset","container","fallbackPlacements","boundary","customClass","sanitize","sanitizeFn","allowList","popperConfig","AttachmentMap","AUTO","TOP","RIGHT","isRTL","BOTTOM","LEFT","Default","DefaultAllowlist","Event","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_FADE","CLASS_NAME_MODAL","CLASS_NAME_SHOW","HOVER_STATE_SHOW","HOVER_STATE_OUT","SELECTOR_TOOLTIP_INNER","SELECTOR_MODAL","EVENT_MODAL_HIDE","TRIGGER_HOVER","TRIGGER_FOCUS","TRIGGER_CLICK","TRIGGER_MANUAL","Tooltip","BaseComponent","constructor","element","config","Popper","TypeError","_isEnabled","_timeout","_hoverState","_activeTrigger","_popper","_config","_getConfig","tip","_setListeners","enable","disable","toggleEnabled","toggle","event","context","_initializeOnDelegatedTarget","click","_isWithActiveTrigger","_enter","_leave","getTipElement","classList","contains","dispose","clearTimeout","EventHandler","off","_element","closest","_hideModalHandler","remove","_disposePopper","show","style","display","Error","isWithContent","showEvent","shadowRoot","findShadowRoot","isInTheDom","ownerDocument","documentElement","defaultPrevented","getTitle","querySelector","innerHTML","tipId","getUID","setAttribute","add","call","attachment","_getAttachment","_addAttachmentClass","Data","set","append","update","createPopper","_getPopperConfig","_resolvePossibleFunction","split","document","concat","body","children","forEach","on","noop","complete","prevHoverState","isAnimated","_queueCallback","hide","_cleanTipClass","removeAttribute","hideEvent","Boolean","createElement","setContent","_sanitizeAndSetContent","content","templateElement","SelectorEngine","findOne","setElementContent","isElement","getElement","parentNode","textContent","sanitizeHtml","getAttribute","updateAttachment","getOrCreateInstance","delegateTarget","_getDelegateConfig","_getOffset","map","val","Number","parseInt","popperData","defaultBsPopperConfig","modifiers","name","options","enabled","phase","fn","data","_handlePopperPlacementChange","onFirstUpdate","_getBasicClassPrefix","toUpperCase","triggers","eventIn","eventOut","_fixTitle","originalTitleType","type","setTimeout","relatedTarget","dataAttributes","Manipulator","getDataAttributes","Object","keys","dataAttr","has","toString","typeCheckConfig","key","basicClassPrefixRegex","RegExp","tabClass","match","length","token","trim","tClass","state","elements","popper","destroy","jQueryInterface","each","defineJQueryPlugin"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tooltip.js","sources":["../src/tooltip.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.2.0): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\nimport { defineJQueryPlugin, findShadowRoot, getElement, getUID, isRTL, noop } from './util/index'\nimport { DefaultAllowlist } from './util/sanitizer'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\nimport TemplateFactory from './util/template-factory'\n\n/**\n * Constants\n */\n\nconst NAME = 'tooltip'\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\nconst SELECTOR_MODAL = `.${CLASS_NAME_MODAL}`\n\nconst EVENT_MODAL_HIDE = 'hide.bs.modal'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\nconst EVENT_HIDE = 'hide'\nconst EVENT_HIDDEN = 'hidden'\nconst EVENT_SHOW = 'show'\nconst EVENT_SHOWN = 'shown'\nconst EVENT_INSERTED = 'inserted'\nconst EVENT_CLICK = 'click'\nconst EVENT_FOCUSIN = 'focusin'\nconst EVENT_FOCUSOUT = 'focusout'\nconst EVENT_MOUSEENTER = 'mouseenter'\nconst EVENT_MOUSELEAVE = 'mouseleave'\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n allowList: DefaultAllowlist,\n animation: true,\n boundary: 'clippingParents',\n container: false,\n customClass: '',\n delay: 0,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n html: false,\n offset: [0, 0],\n placement: 'top',\n popperConfig: null,\n sanitize: true,\n sanitizeFn: null,\n selector: false,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n title: '',\n trigger: 'hover focus'\n}\n\nconst DefaultType = {\n allowList: 'object',\n animation: 'boolean',\n boundary: '(string|element)',\n container: '(string|element|boolean)',\n customClass: '(string|function)',\n delay: '(number|object)',\n fallbackPlacements: 'array',\n html: 'boolean',\n offset: '(array|string|function)',\n placement: '(string|function)',\n popperConfig: '(null|object|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n selector: '(string|boolean)',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string'\n}\n\n/**\n * Class definition\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element, config)\n\n // Private\n this._isEnabled = true\n this._timeout = 0\n this._isHovered = false\n this._activeTrigger = {}\n this._popper = null\n this._templateFactory = null\n this._newContent = null\n\n // Protected\n this.tip = null\n\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 enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter()\n } else {\n context._leave()\n }\n\n return\n }\n\n if (this._isShown()) {\n this._leave()\n return\n }\n\n this._enter()\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n this._disposePopper()\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this._isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOW))\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = (shadowRoot || this._element.ownerDocument.documentElement).contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n // todo v6 remove this OR make it optional\n if (this.tip) {\n this.tip.remove()\n this.tip = null\n }\n\n const tip = this._getTipElement()\n\n this._element.setAttribute('aria-describedby', tip.getAttribute('id'))\n\n const { container } = this._config\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.append(tip)\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_INSERTED))\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = this._createPopper(tip)\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.on(element, 'mouseover', noop)\n }\n }\n\n const complete = () => {\n const previousHoverState = this._isHovered\n\n this._isHovered = false\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOWN))\n\n if (previousHoverState) {\n this._leave()\n }\n }\n\n this._queueCallback(complete, this.tip, this._isAnimated())\n }\n\n hide() {\n if (!this._isShown()) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDE))\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const tip = this._getTipElement()\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.off(element, 'mouseover', noop)\n }\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n this._isHovered = false\n\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (!this._isHovered) {\n tip.remove()\n }\n\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDDEN))\n\n this._disposePopper()\n }\n\n this._queueCallback(complete, this.tip, this._isAnimated())\n }\n\n update() {\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Protected\n _isWithContent() {\n return Boolean(this._getTitle())\n }\n\n _getTipElement() {\n if (!this.tip) {\n this.tip = this._createTipElement(this._newContent || this._getContentForTemplate())\n }\n\n return this.tip\n }\n\n _createTipElement(content) {\n const tip = this._getTemplateFactory(content).toHtml()\n\n // todo: remove this check on v6\n if (!tip) {\n return null\n }\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n // todo: on v6 the following can be achieved with CSS only\n tip.classList.add(`bs-${this.constructor.NAME}-auto`)\n\n const tipId = getUID(this.constructor.NAME).toString()\n\n tip.setAttribute('id', tipId)\n\n if (this._isAnimated()) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n return tip\n }\n\n setContent(content) {\n this._newContent = content\n if (this._isShown()) {\n this._disposePopper()\n this.show()\n }\n }\n\n _getTemplateFactory(content) {\n if (this._templateFactory) {\n this._templateFactory.changeContent(content)\n } else {\n this._templateFactory = new TemplateFactory({\n ...this._config,\n // the `content` var has to be after `this._config`\n // to override config.content in case of popover\n content,\n extraClass: this._resolvePossibleFunction(this._config.customClass)\n })\n }\n\n return this._templateFactory\n }\n\n _getContentForTemplate() {\n return {\n [SELECTOR_TOOLTIP_INNER]: this._getTitle()\n }\n }\n\n _getTitle() {\n return this._resolvePossibleFunction(this._config.title) || this._config.originalTitle\n }\n\n // Private\n _initializeOnDelegatedTarget(event) {\n return this.constructor.getOrCreateInstance(event.delegateTarget, this._getDelegateConfig())\n }\n\n _isAnimated() {\n return this._config.animation || (this.tip && this.tip.classList.contains(CLASS_NAME_FADE))\n }\n\n _isShown() {\n return this.tip && this.tip.classList.contains(CLASS_NAME_SHOW)\n }\n\n _createPopper(tip) {\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n const attachment = AttachmentMap[placement.toUpperCase()]\n return Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(value => Number.parseInt(value, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _resolvePossibleFunction(arg) {\n return typeof arg === 'function' ? arg.call(this._element) : arg\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'preSetPlacement',\n enabled: true,\n phase: 'beforeMain',\n fn: data => {\n // Pre-set Popper's placement attribute in order to read the arrow sizes properly.\n // Otherwise, Popper mixes up the width and height dimensions since the initial arrow style is for top placement\n this._getTipElement().setAttribute('data-popper-placement', data.state.placement)\n }\n }\n ]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n for (const trigger of triggers) {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.eventName(EVENT_CLICK), this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.eventName(EVENT_MOUSEENTER) :\n this.constructor.eventName(EVENT_FOCUSIN)\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.eventName(EVENT_MOUSELEAVE) :\n this.constructor.eventName(EVENT_FOCUSOUT)\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event)\n context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true\n context._enter()\n })\n EventHandler.on(this._element, eventOut, this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event)\n context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] =\n context._element.contains(event.relatedTarget)\n\n context._leave()\n })\n }\n }\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._config.originalTitle\n\n if (!title) {\n return\n }\n\n if (!this._element.getAttribute('aria-label') && !this._element.textContent.trim()) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.removeAttribute('title')\n }\n\n _enter() {\n if (this._isShown() || this._isHovered) {\n this._isHovered = true\n return\n }\n\n this._isHovered = true\n\n this._setTimeout(() => {\n if (this._isHovered) {\n this.show()\n }\n }, this._config.delay.show)\n }\n\n _leave() {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n this._isHovered = false\n\n this._setTimeout(() => {\n if (!this._isHovered) {\n this.hide()\n }\n }, this._config.delay.hide)\n }\n\n _setTimeout(handler, timeout) {\n clearTimeout(this._timeout)\n this._timeout = setTimeout(handler, timeout)\n }\n\n _isWithActiveTrigger() {\n return Object.values(this._activeTrigger).includes(true)\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n for (const dataAttribute of Object.keys(dataAttributes)) {\n if (DISALLOWED_ATTRIBUTES.has(dataAttribute)) {\n delete dataAttributes[dataAttribute]\n }\n }\n\n config = {\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n config = this._mergeConfigObj(config)\n config = this._configAfterMerge(config)\n this._typeCheckConfig(config)\n return config\n }\n\n _configAfterMerge(config) {\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n config.originalTitle = this._element.getAttribute('title') || ''\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n\n // In the future can be replaced with:\n // const keysWithDifferentValues = Object.entries(this._config).filter(entry => this.constructor.Default[entry[0]] !== this._config[entry[0]])\n // `Object.fromEntries(keysWithDifferentValues)`\n return config\n }\n\n _disposePopper() {\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n"],"names":["NAME","DISALLOWED_ATTRIBUTES","Set","CLASS_NAME_FADE","CLASS_NAME_MODAL","CLASS_NAME_SHOW","SELECTOR_TOOLTIP_INNER","SELECTOR_MODAL","EVENT_MODAL_HIDE","TRIGGER_HOVER","TRIGGER_FOCUS","TRIGGER_CLICK","TRIGGER_MANUAL","EVENT_HIDE","EVENT_HIDDEN","EVENT_SHOW","EVENT_SHOWN","EVENT_INSERTED","EVENT_CLICK","EVENT_FOCUSIN","EVENT_FOCUSOUT","EVENT_MOUSEENTER","EVENT_MOUSELEAVE","AttachmentMap","AUTO","TOP","RIGHT","isRTL","BOTTOM","LEFT","Default","allowList","DefaultAllowlist","animation","boundary","container","customClass","delay","fallbackPlacements","html","offset","placement","popperConfig","sanitize","sanitizeFn","selector","template","title","trigger","DefaultType","Tooltip","BaseComponent","constructor","element","config","Popper","TypeError","_isEnabled","_timeout","_isHovered","_activeTrigger","_popper","_templateFactory","_newContent","tip","_setListeners","enable","disable","toggleEnabled","toggle","event","context","_initializeOnDelegatedTarget","click","_isWithActiveTrigger","_enter","_leave","_isShown","dispose","clearTimeout","EventHandler","off","_element","closest","_hideModalHandler","remove","_disposePopper","show","style","display","Error","_isWithContent","showEvent","eventName","shadowRoot","findShadowRoot","isInTheDom","ownerDocument","documentElement","contains","defaultPrevented","_getTipElement","setAttribute","getAttribute","_config","append","update","_createPopper","classList","add","document","concat","body","children","on","noop","complete","previousHoverState","_queueCallback","_isAnimated","hide","hideEvent","removeAttribute","Boolean","_getTitle","_createTipElement","_getContentForTemplate","content","_getTemplateFactory","toHtml","tipId","getUID","toString","setContent","changeContent","TemplateFactory","extraClass","_resolvePossibleFunction","originalTitle","getOrCreateInstance","delegateTarget","_getDelegateConfig","call","attachment","toUpperCase","createPopper","_getPopperConfig","_getOffset","split","map","value","Number","parseInt","popperData","arg","defaultBsPopperConfig","modifiers","name","options","enabled","phase","fn","data","state","triggers","eventIn","eventOut","type","relatedTarget","_fixTitle","textContent","trim","_setTimeout","handler","timeout","setTimeout","Object","values","includes","_getConfig","dataAttributes","Manipulator","getDataAttributes","dataAttribute","keys","has","_mergeConfigObj","_configAfterMerge","_typeCheckConfig","getElement","key","destroy","jQueryInterface","each","defineJQueryPlugin"],"mappings":"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"}
|
package/js/dist/util/backdrop.js
CHANGED
|
@@ -1,47 +1,70 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('../dom/event-handler'), require('./index')) :
|
|
3
|
-
typeof define === 'function' && define.amd ? define(['../dom/event-handler', './index'], factory) :
|
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Backdrop = factory(global.EventHandler, global.Index));
|
|
5
|
-
})(this, (function (EventHandler, index) { 'use strict';
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('../dom/event-handler'), require('./index'), require('./config')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define(['../dom/event-handler', './index', './config'], factory) :
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Backdrop = factory(global.EventHandler, global.Index, global.Config));
|
|
5
|
+
})(this, (function (EventHandler, index, Config) { 'use strict';
|
|
6
6
|
|
|
7
7
|
const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
|
|
8
8
|
|
|
9
9
|
const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
|
|
10
|
+
const Config__default = /*#__PURE__*/_interopDefaultLegacy(Config);
|
|
10
11
|
|
|
11
12
|
/**
|
|
12
13
|
* --------------------------------------------------------------------------
|
|
13
|
-
* Bootstrap (v5.
|
|
14
|
+
* Bootstrap (v5.2.0): util/backdrop.js
|
|
14
15
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
15
16
|
* --------------------------------------------------------------------------
|
|
16
17
|
*/
|
|
18
|
+
/**
|
|
19
|
+
* Constants
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
const NAME = 'backdrop';
|
|
23
|
+
const CLASS_NAME_FADE = 'fade';
|
|
24
|
+
const CLASS_NAME_SHOW = 'show';
|
|
25
|
+
const EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`;
|
|
17
26
|
const Default = {
|
|
18
27
|
className: 'modal-backdrop',
|
|
28
|
+
clickCallback: null,
|
|
29
|
+
isAnimated: false,
|
|
19
30
|
isVisible: true,
|
|
20
31
|
// if false, we use the backdrop helper without adding any element to the dom
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
// give the choice to place backdrop under different elements
|
|
24
|
-
clickCallback: null
|
|
32
|
+
rootElement: 'body' // give the choice to place backdrop under different elements
|
|
33
|
+
|
|
25
34
|
};
|
|
26
35
|
const DefaultType = {
|
|
27
36
|
className: 'string',
|
|
28
|
-
|
|
37
|
+
clickCallback: '(function|null)',
|
|
29
38
|
isAnimated: 'boolean',
|
|
30
|
-
|
|
31
|
-
|
|
39
|
+
isVisible: 'boolean',
|
|
40
|
+
rootElement: '(element|string)'
|
|
32
41
|
};
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
const EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`;
|
|
42
|
+
/**
|
|
43
|
+
* Class definition
|
|
44
|
+
*/
|
|
37
45
|
|
|
38
|
-
class Backdrop {
|
|
46
|
+
class Backdrop extends Config__default.default {
|
|
39
47
|
constructor(config) {
|
|
48
|
+
super();
|
|
40
49
|
this._config = this._getConfig(config);
|
|
41
50
|
this._isAppended = false;
|
|
42
51
|
this._element = null;
|
|
52
|
+
} // Getters
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
static get Default() {
|
|
56
|
+
return Default;
|
|
43
57
|
}
|
|
44
58
|
|
|
59
|
+
static get DefaultType() {
|
|
60
|
+
return DefaultType;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
static get NAME() {
|
|
64
|
+
return NAME;
|
|
65
|
+
} // Public
|
|
66
|
+
|
|
67
|
+
|
|
45
68
|
show(callback) {
|
|
46
69
|
if (!this._config.isVisible) {
|
|
47
70
|
index.execute(callback);
|
|
@@ -50,11 +73,13 @@
|
|
|
50
73
|
|
|
51
74
|
this._append();
|
|
52
75
|
|
|
76
|
+
const element = this._getElement();
|
|
77
|
+
|
|
53
78
|
if (this._config.isAnimated) {
|
|
54
|
-
index.reflow(
|
|
79
|
+
index.reflow(element);
|
|
55
80
|
}
|
|
56
81
|
|
|
57
|
-
|
|
82
|
+
element.classList.add(CLASS_NAME_SHOW);
|
|
58
83
|
|
|
59
84
|
this._emulateAnimation(() => {
|
|
60
85
|
index.execute(callback);
|
|
@@ -73,6 +98,18 @@
|
|
|
73
98
|
this.dispose();
|
|
74
99
|
index.execute(callback);
|
|
75
100
|
});
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
dispose() {
|
|
104
|
+
if (!this._isAppended) {
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
EventHandler__default.default.off(this._element, EVENT_MOUSEDOWN);
|
|
109
|
+
|
|
110
|
+
this._element.remove();
|
|
111
|
+
|
|
112
|
+
this._isAppended = false;
|
|
76
113
|
} // Private
|
|
77
114
|
|
|
78
115
|
|
|
@@ -91,13 +128,9 @@
|
|
|
91
128
|
return this._element;
|
|
92
129
|
}
|
|
93
130
|
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
...(typeof config === 'object' ? config : {})
|
|
97
|
-
}; // use getElement() with the default "body" to get a fresh Element on each instantiation
|
|
98
|
-
|
|
131
|
+
_configAfterMerge(config) {
|
|
132
|
+
// use getElement() with the default "body" to get a fresh Element on each instantiation
|
|
99
133
|
config.rootElement = index.getElement(config.rootElement);
|
|
100
|
-
index.typeCheckConfig(NAME, config, DefaultType);
|
|
101
134
|
return config;
|
|
102
135
|
}
|
|
103
136
|
|
|
@@ -106,26 +139,16 @@
|
|
|
106
139
|
return;
|
|
107
140
|
}
|
|
108
141
|
|
|
109
|
-
this.
|
|
142
|
+
const element = this._getElement();
|
|
143
|
+
|
|
144
|
+
this._config.rootElement.append(element);
|
|
110
145
|
|
|
111
|
-
EventHandler__default.default.on(
|
|
146
|
+
EventHandler__default.default.on(element, EVENT_MOUSEDOWN, () => {
|
|
112
147
|
index.execute(this._config.clickCallback);
|
|
113
148
|
});
|
|
114
149
|
this._isAppended = true;
|
|
115
150
|
}
|
|
116
151
|
|
|
117
|
-
dispose() {
|
|
118
|
-
if (!this._isAppended) {
|
|
119
|
-
return;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
EventHandler__default.default.off(this._element, EVENT_MOUSEDOWN);
|
|
123
|
-
|
|
124
|
-
this._element.remove();
|
|
125
|
-
|
|
126
|
-
this._isAppended = false;
|
|
127
|
-
}
|
|
128
|
-
|
|
129
152
|
_emulateAnimation(callback) {
|
|
130
153
|
index.executeAfterTransition(callback, this._getElement(), this._config.isAnimated);
|
|
131
154
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backdrop.js","sources":["../../src/util/backdrop.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.
|
|
1
|
+
{"version":3,"file":"backdrop.js","sources":["../../src/util/backdrop.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.2.0): 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 } from './index'\nimport Config from './config'\n\n/**\n * Constants\n */\n\nconst NAME = 'backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nconst Default = {\n className: 'modal-backdrop',\n clickCallback: null,\n isAnimated: false,\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n rootElement: 'body' // give the choice to place backdrop under different elements\n}\n\nconst DefaultType = {\n className: 'string',\n clickCallback: '(function|null)',\n isAnimated: 'boolean',\n isVisible: 'boolean',\n rootElement: '(element|string)'\n}\n\n/**\n * Class definition\n */\n\nclass Backdrop extends Config {\n constructor(config) {\n super()\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\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(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n const element = this._getElement()\n if (this._config.isAnimated) {\n reflow(element)\n }\n\n element.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 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 // Private\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 _configAfterMerge(config) {\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n const element = this._getElement()\n this._config.rootElement.append(element)\n\n EventHandler.on(element, EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n"],"names":["NAME","CLASS_NAME_FADE","CLASS_NAME_SHOW","EVENT_MOUSEDOWN","Default","className","clickCallback","isAnimated","isVisible","rootElement","DefaultType","Backdrop","Config","constructor","config","_config","_getConfig","_isAppended","_element","show","callback","execute","_append","element","_getElement","reflow","classList","add","_emulateAnimation","hide","remove","dispose","EventHandler","off","backdrop","document","createElement","_configAfterMerge","getElement","append","on","executeAfterTransition"],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* --------------------------------------------------------------------------
|
|
13
|
-
* Bootstrap (v5.
|
|
13
|
+
* Bootstrap (v5.2.0): util/component-functions.js
|
|
14
14
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
15
15
|
* --------------------------------------------------------------------------
|
|
16
16
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-functions.js","sources":["../../src/util/component-functions.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.
|
|
1
|
+
{"version":3,"file":"component-functions.js","sources":["../../src/util/component-functions.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.2.0): util/component-functions.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { getElementFromSelector, isDisabled } from './index'\n\nconst enableDismissTrigger = (component, method = 'hide') => {\n const clickEvent = `click.dismiss${component.EVENT_KEY}`\n const name = component.NAME\n\n EventHandler.on(document, clickEvent, `[data-bs-dismiss=\"${name}\"]`, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const target = getElementFromSelector(this) || this.closest(`.${name}`)\n const instance = component.getOrCreateInstance(target)\n\n // Method argument is left, for Alert and only, as it doesn't implement the 'hide' method\n instance[method]()\n })\n}\n\nexport {\n enableDismissTrigger\n}\n"],"names":["enableDismissTrigger","component","method","clickEvent","EVENT_KEY","name","NAME","EventHandler","on","document","event","includes","tagName","preventDefault","isDisabled","target","getElementFromSelector","closest","instance","getOrCreateInstance"],"mappings":";;;;;;;;;;EAAA;EACA;EACA;EACA;EACA;EACA;;AAKMA,QAAAA,oBAAoB,GAAG,CAACC,SAAD,EAAYC,MAAM,GAAG,MAArB,KAAgC;EAC3D,EAAA,MAAMC,UAAU,GAAI,CAAA,aAAA,EAAeF,SAAS,CAACG,SAAU,CAAvD,CAAA,CAAA;EACA,EAAA,MAAMC,IAAI,GAAGJ,SAAS,CAACK,IAAvB,CAAA;EAEAC,EAAAA,6BAAY,CAACC,EAAb,CAAgBC,QAAhB,EAA0BN,UAA1B,EAAuC,CAAA,kBAAA,EAAoBE,IAAK,CAAA,EAAA,CAAhE,EAAqE,UAAUK,KAAV,EAAiB;MACpF,IAAI,CAAC,GAAD,EAAM,MAAN,CAAA,CAAcC,QAAd,CAAuB,IAAA,CAAKC,OAA5B,CAAJ,EAA0C;EACxCF,MAAAA,KAAK,CAACG,cAAN,EAAA,CAAA;EACD,KAAA;;EAED,IAAA,IAAIC,gBAAU,CAAC,IAAD,CAAd,EAAsB;EACpB,MAAA,OAAA;EACD,KAAA;;EAED,IAAA,MAAMC,MAAM,GAAGC,4BAAsB,CAAC,IAAD,CAAtB,IAAgC,IAAA,CAAKC,OAAL,CAAc,CAAGZ,CAAAA,EAAAA,IAAK,EAAtB,CAA/C,CAAA;MACA,MAAMa,QAAQ,GAAGjB,SAAS,CAACkB,mBAAV,CAA8BJ,MAA9B,CAAjB,CAVoF;;MAapFG,QAAQ,CAAChB,MAAD,CAAR,EAAA,CAAA;KAbF,CAAA,CAAA;EAeD;;;;;;;;;;"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
(function (global, factory) {
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./index'), require('../dom/manipulator')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define(['./index', '../dom/manipulator'], factory) :
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Config = factory(global.Index, global.Manipulator));
|
|
5
|
+
})(this, (function (index, Manipulator) { 'use strict';
|
|
6
|
+
|
|
7
|
+
const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
|
|
8
|
+
|
|
9
|
+
const Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator);
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* --------------------------------------------------------------------------
|
|
13
|
+
* Bootstrap (v5.2.0): util/config.js
|
|
14
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
15
|
+
* --------------------------------------------------------------------------
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* Class definition
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
class Config {
|
|
22
|
+
// Getters
|
|
23
|
+
static get Default() {
|
|
24
|
+
return {};
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
static get DefaultType() {
|
|
28
|
+
return {};
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
static get NAME() {
|
|
32
|
+
throw new Error('You have to implement the static method "NAME", for each component!');
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
_getConfig(config) {
|
|
36
|
+
config = this._mergeConfigObj(config);
|
|
37
|
+
config = this._configAfterMerge(config);
|
|
38
|
+
|
|
39
|
+
this._typeCheckConfig(config);
|
|
40
|
+
|
|
41
|
+
return config;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
_configAfterMerge(config) {
|
|
45
|
+
return config;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
_mergeConfigObj(config, element) {
|
|
49
|
+
const jsonConfig = index.isElement(element) ? Manipulator__default.default.getDataAttribute(element, 'config') : {}; // try to parse
|
|
50
|
+
|
|
51
|
+
return { ...this.constructor.Default,
|
|
52
|
+
...(typeof jsonConfig === 'object' ? jsonConfig : {}),
|
|
53
|
+
...(index.isElement(element) ? Manipulator__default.default.getDataAttributes(element) : {}),
|
|
54
|
+
...(typeof config === 'object' ? config : {})
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
_typeCheckConfig(config, configTypes = this.constructor.DefaultType) {
|
|
59
|
+
for (const property of Object.keys(configTypes)) {
|
|
60
|
+
const expectedTypes = configTypes[property];
|
|
61
|
+
const value = config[property];
|
|
62
|
+
const valueType = index.isElement(value) ? 'element' : index.toType(value);
|
|
63
|
+
|
|
64
|
+
if (!new RegExp(expectedTypes).test(valueType)) {
|
|
65
|
+
throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${property}" provided type "${valueType}" but expected type "${expectedTypes}".`);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
return Config;
|
|
73
|
+
|
|
74
|
+
}));
|
|
75
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sources":["../../src/util/config.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.2.0): util/config.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { isElement, toType } from './index'\nimport Manipulator from '../dom/manipulator'\n\n/**\n * Class definition\n */\n\nclass Config {\n // Getters\n static get Default() {\n return {}\n }\n\n static get DefaultType() {\n return {}\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n _getConfig(config) {\n config = this._mergeConfigObj(config)\n config = this._configAfterMerge(config)\n this._typeCheckConfig(config)\n return config\n }\n\n _configAfterMerge(config) {\n return config\n }\n\n _mergeConfigObj(config, element) {\n const jsonConfig = isElement(element) ? Manipulator.getDataAttribute(element, 'config') : {} // try to parse\n\n return {\n ...this.constructor.Default,\n ...(typeof jsonConfig === 'object' ? jsonConfig : {}),\n ...(isElement(element) ? Manipulator.getDataAttributes(element) : {}),\n ...(typeof config === 'object' ? config : {})\n }\n }\n\n _typeCheckConfig(config, configTypes = this.constructor.DefaultType) {\n for (const property of Object.keys(configTypes)) {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${this.constructor.NAME.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n }\n }\n}\n\nexport default Config\n"],"names":["Config","Default","DefaultType","NAME","Error","_getConfig","config","_mergeConfigObj","_configAfterMerge","_typeCheckConfig","element","jsonConfig","isElement","Manipulator","getDataAttribute","constructor","getDataAttributes","configTypes","property","Object","keys","expectedTypes","value","valueType","toType","RegExp","test","TypeError","toUpperCase"],"mappings":";;;;;;;;;;EAAA;EACA;EACA;EACA;EACA;EACA;EAKA;EACA;EACA;;EAEA,MAAMA,MAAN,CAAa;EACX;EACkB,EAAA,WAAPC,OAAO,GAAG;EACnB,IAAA,OAAO,EAAP,CAAA;EACD,GAAA;;EAEqB,EAAA,WAAXC,WAAW,GAAG;EACvB,IAAA,OAAO,EAAP,CAAA;EACD,GAAA;;EAEc,EAAA,WAAJC,IAAI,GAAG;EAChB,IAAA,MAAM,IAAIC,KAAJ,CAAU,qEAAV,CAAN,CAAA;EACD,GAAA;;IAEDC,UAAU,CAACC,MAAD,EAAS;EACjBA,IAAAA,MAAM,GAAG,IAAA,CAAKC,eAAL,CAAqBD,MAArB,CAAT,CAAA;EACAA,IAAAA,MAAM,GAAG,IAAA,CAAKE,iBAAL,CAAuBF,MAAvB,CAAT,CAAA;;MACA,IAAKG,CAAAA,gBAAL,CAAsBH,MAAtB,CAAA,CAAA;;EACA,IAAA,OAAOA,MAAP,CAAA;EACD,GAAA;;IAEDE,iBAAiB,CAACF,MAAD,EAAS;EACxB,IAAA,OAAOA,MAAP,CAAA;EACD,GAAA;;EAEDC,EAAAA,eAAe,CAACD,MAAD,EAASI,OAAT,EAAkB;EAC/B,IAAA,MAAMC,UAAU,GAAGC,eAAS,CAACF,OAAD,CAAT,GAAqBG,4BAAW,CAACC,gBAAZ,CAA6BJ,OAA7B,EAAsC,QAAtC,CAArB,GAAuE,EAA1F,CAD+B;;EAG/B,IAAA,OAAO,EACL,GAAG,IAAKK,CAAAA,WAAL,CAAiBd,OADf;QAEL,IAAI,OAAOU,UAAP,KAAsB,QAAtB,GAAiCA,UAAjC,GAA8C,EAAlD,CAFK;EAGL,MAAA,IAAIC,eAAS,CAACF,OAAD,CAAT,GAAqBG,4BAAW,CAACG,iBAAZ,CAA8BN,OAA9B,CAArB,GAA8D,EAAlE,CAHK;EAIL,MAAA,IAAI,OAAOJ,MAAP,KAAkB,QAAlB,GAA6BA,MAA7B,GAAsC,EAA1C,CAAA;OAJF,CAAA;EAMD,GAAA;;IAEDG,gBAAgB,CAACH,MAAD,EAASW,WAAW,GAAG,IAAKF,CAAAA,WAAL,CAAiBb,WAAxC,EAAqD;MACnE,KAAK,MAAMgB,QAAX,IAAuBC,MAAM,CAACC,IAAP,CAAYH,WAAZ,CAAvB,EAAiD;EAC/C,MAAA,MAAMI,aAAa,GAAGJ,WAAW,CAACC,QAAD,CAAjC,CAAA;EACA,MAAA,MAAMI,KAAK,GAAGhB,MAAM,CAACY,QAAD,CAApB,CAAA;EACA,MAAA,MAAMK,SAAS,GAAGX,eAAS,CAACU,KAAD,CAAT,GAAmB,SAAnB,GAA+BE,YAAM,CAACF,KAAD,CAAvD,CAAA;;QAEA,IAAI,CAAC,IAAIG,MAAJ,CAAWJ,aAAX,EAA0BK,IAA1B,CAA+BH,SAA/B,CAAL,EAAgD;EAC9C,QAAA,MAAM,IAAII,SAAJ,CACH,GAAE,IAAKZ,CAAAA,WAAL,CAAiBZ,IAAjB,CAAsByB,WAAtB,EAAoC,aAAYV,QAAS,CAAA,iBAAA,EAAmBK,SAAU,CAAuBF,qBAAAA,EAAAA,aAAc,IAD1H,CAAN,CAAA;EAGD,OAAA;EACF,KAAA;EACF,GAAA;;EAhDU;;;;;;;;"}
|