package.js.dist.carousel.js.map Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of boosted Show documentation
Show all versions of boosted Show documentation
Orange Boosted with Bootstrap is a Bootstrap based, Orange branded accessible and ergonomic components library.
The newest version!
{"version":3,"file":"carousel.js","sources":["../src/carousel.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap carousel.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 Manipulator from './dom/manipulator.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport {\n defineJQueryPlugin,\n getNextActiveElement,\n isRTL,\n isVisible,\n reflow,\n triggerTransitionEnd\n} from './util/index.js'\nimport Swipe from './util/swipe.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_PAUSED = 'is-paused' // Boosted mod: used for progress indicators\nconst CLASS_NAME_DONE = 'is-done' // Boosted mod: used for progress indicators\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ACTIVE_ITEM = SELECTOR_ACTIVE + SELECTOR_ITEM\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\nconst SELECTOR_CONTROL_PREV = '.carousel-control-prev' // Boosted mod\nconst SELECTOR_CONTROL_NEXT = '.carousel-control-next' // Boosted mod\nconst SELECTOR_CONTROL_PAUSE = '.carousel-control-play-pause' // Boosted mod\nconst SELECTOR_CAROUSEL_TO_PAUSE = 'data-bs-target' // Boosted mod\nconst SELECTOR_CAROUSEL_PLAY_TEXT = 'data-bs-play-text' // Boosted mod\nconst SELECTOR_CAROUSEL_PAUSE_TEXT = 'data-bs-pause-text' // Boosted mod\nconst SELECTOR_CAROUSEL_DEFAULT_PLAY_TEXT = 'Play Carousel' // Boosted mod\nconst SELECTOR_CAROUSEL_DEFAULT_PAUSE_TEXT = 'Pause Carousel' // Boosted mod\n\nconst PREFIX_CUSTOM_PROPS = 'bs-' // Boosted mod: should match `$prefix` in scss/_variables.scss\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n pause: 'hover',\n ride: false,\n touch: true,\n wrap: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)', // TODO:v6 remove boolean support\n keyboard: 'boolean',\n pause: '(string|boolean)',\n ride: '(boolean|string)',\n touch: 'boolean',\n wrap: 'boolean'\n}\n\n/**\n * Class definition\n */\n\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n this._interval = null\n this._activeElement = null\n this._isSliding = false\n this.touchTimeout = null\n this._swipeHelper = null\n\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n\n this._playPauseButton = SelectorEngine.findOne(`${SELECTOR_CONTROL_PAUSE}[${SELECTOR_CAROUSEL_TO_PAUSE}=\"#${this._element.id}\"]`) // Boosted mod\n\n this._addEventListeners()\n\n if (this._config.ride === CLASS_NAME_CAROUSEL) {\n this.cycle()\n } else if (this._indicatorsElement) { // Boosted mod: set the animation properly on progress indicator\n this._element.classList.add(CLASS_NAME_PAUSED)\n }\n // End mod\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 next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // FIXME TODO use `document.visibilityState`\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause() {\n // Boosted mod: reset the animation on progress indicator\n if (this._indicatorsElement) {\n this._element.classList.add(CLASS_NAME_PAUSED)\n }\n // End mod\n\n // Boosted mod: if a play-pause button is present, set the button to play\n if (this._playPauseButton !== null && this._playPauseButton.classList.contains('pause')) {\n this._playPauseButton.classList.remove('pause')\n this._playPauseButton.classList.add('play')\n\n if (this._playPauseButton.getAttribute(SELECTOR_CAROUSEL_PLAY_TEXT)) {\n this._playPauseButton.setAttribute('title', this._playPauseButton.getAttribute(SELECTOR_CAROUSEL_PLAY_TEXT))\n this._playPauseButton.querySelector('span.visually-hidden').innerHTML = this._playPauseButton.getAttribute(SELECTOR_CAROUSEL_PLAY_TEXT)\n } else {\n this._playPauseButton.setAttribute('title', SELECTOR_CAROUSEL_DEFAULT_PLAY_TEXT)\n this._playPauseButton.querySelector('span.visually-hidden').innerHTML = SELECTOR_CAROUSEL_DEFAULT_PLAY_TEXT\n }\n\n this._stayPaused = true\n }\n // End mod\n\n if (this._isSliding) {\n triggerTransitionEnd(this._element)\n }\n\n this._clearInterval()\n }\n\n cycle() {\n // Boosted mod: restart the animation on progress indicator\n if (this._indicatorsElement) {\n this._element.classList.remove(CLASS_NAME_PAUSED)\n }\n // End mod\n\n // Boosted mod: if a play-pause button is present, reset the button to pause\n if (this._playPauseButton !== null && this._playPauseButton.classList.contains('play')) {\n this._playPauseButton.classList.remove('play')\n this._playPauseButton.classList.add('pause')\n\n if (this._playPauseButton.getAttribute(SELECTOR_CAROUSEL_PAUSE_TEXT)) {\n this._playPauseButton.setAttribute('title', this._playPauseButton.getAttribute(SELECTOR_CAROUSEL_PAUSE_TEXT))\n this._playPauseButton.querySelector('span.visually-hidden').innerHTML = this._playPauseButton.getAttribute(SELECTOR_CAROUSEL_PAUSE_TEXT)\n } else {\n this._playPauseButton.setAttribute('title', SELECTOR_CAROUSEL_DEFAULT_PAUSE_TEXT)\n this._playPauseButton.querySelector('span.visually-hidden').innerHTML = SELECTOR_CAROUSEL_DEFAULT_PAUSE_TEXT\n }\n\n this._stayPaused = false\n }\n // End mod\n\n this._clearInterval()\n this._updateInterval()\n\n this._interval = setInterval(() => this.nextWhenVisible(), this._config.interval)\n }\n\n _maybeEnableCycle() {\n if (!this._config.ride) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.cycle())\n return\n }\n\n this.cycle()\n }\n\n to(index) {\n // Boosted mod: restart the animation on progress indicator\n if (this._indicatorsElement) {\n this._element.classList.remove(CLASS_NAME_DONE)\n }\n // End mod\n\n const items = this._getItems()\n if (index > items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n const activeIndex = this._getItemIndex(this._getActive())\n if (activeIndex === index) {\n return\n }\n\n const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV\n\n this._slide(order, items[index])\n }\n\n dispose() {\n if (this._swipeHelper) {\n this._swipeHelper.dispose()\n }\n\n super.dispose()\n }\n\n // Private\n _configAfterMerge(config) {\n config.defaultInterval = config.interval\n return config\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, () => this.pause())\n EventHandler.on(this._element, EVENT_MOUSELEAVE, () => this._maybeEnableCycle())\n }\n\n if (this._config.touch && Swipe.isSupported()) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n for (const img of SelectorEngine.find(SELECTOR_ITEM_IMG, this._element)) {\n EventHandler.on(img, EVENT_DRAG_START, event => event.preventDefault())\n }\n\n const endCallBack = () => {\n if (this._config.pause !== 'hover') {\n return\n }\n\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(() => this._maybeEnableCycle(), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n\n const swipeConfig = {\n leftCallback: () => this._slide(this._directionToOrder(DIRECTION_LEFT)),\n rightCallback: () => this._slide(this._directionToOrder(DIRECTION_RIGHT)),\n endCallback: endCallBack\n }\n\n this._swipeHelper = new Swipe(this._element, swipeConfig)\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(this._directionToOrder(direction))\n }\n }\n\n // Boosted mod: handle prev/next controls states\n _disableControl(element) {\n if (element.nodeName === 'BUTTON') {\n element.disabled = true\n } else {\n element.setAttribute('aria-disabled', true)\n element.setAttribute('tabindex', '-1')\n }\n }\n\n _enableControl(element) {\n if (element.nodeName === 'BUTTON') {\n element.disabled = false\n } else {\n element.removeAttribute('aria-disabled')\n element.removeAttribute('tabindex')\n }\n }\n // End mod\n\n _getItemIndex(element) {\n return this._getItems().indexOf(element)\n }\n\n _setActiveIndicatorElement(index) {\n if (!this._indicatorsElement) {\n return\n }\n\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const newActiveIndicator = SelectorEngine.findOne(`[data-bs-slide-to=\"${index}\"]`, this._indicatorsElement)\n\n if (newActiveIndicator) {\n newActiveIndicator.classList.add(CLASS_NAME_ACTIVE)\n newActiveIndicator.setAttribute('aria-current', 'true')\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || this._getActive()\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n this._config.interval = elementInterval || this._config.defaultInterval\n\n // Boosted mod: set progress indicator's interval as custom property\n if (this._indicatorsElement && this._config.interval !== Default.interval) {\n const currentIndex = this._getItemIndex(element)\n const currentIndicator = SelectorEngine.findOne(`:nth-child(${currentIndex + 1})`, this._indicatorsElement)\n currentIndicator.style.setProperty(`--${PREFIX_CUSTOM_PROPS}carousel-interval`, `${this._config.interval}ms`)\n }\n // End mod\n }\n\n _slide(order, element = null) {\n if (this._isSliding) {\n return\n }\n\n const activeElement = this._getActive()\n const isNext = order === ORDER_NEXT\n\n // Boosted mod: progress indicators animation when wrapping is disabled\n if (!this._config.wrap) {\n const isPrev = order === ORDER_PREV\n const activeIndex = this._getItemIndex(activeElement)\n const lastItemIndex = this._getItems().length - 1\n const isGoingToWrap = (isPrev && activeIndex === 0) || (isNext && activeIndex === lastItemIndex)\n\n if (isGoingToWrap) {\n // Reset the animation on last progress indicator when last slide is active\n if (isNext && this._indicatorsElement && !this._element.hasAttribute('data-bs-slide')) {\n this._element.classList.add(CLASS_NAME_DONE)\n }\n\n return activeElement\n }\n\n // Restart animation otherwise\n if (this._indicatorsElement) {\n this._element.classList.remove(CLASS_NAME_DONE)\n }\n }\n // End mod\n\n const nextElement = element || getNextActiveElement(this._getItems(), activeElement, isNext, this._config.wrap)\n\n if (nextElement === activeElement) {\n return\n }\n\n const nextElementIndex = this._getItemIndex(nextElement)\n\n const triggerEvent = eventName => {\n return EventHandler.trigger(this._element, eventName, {\n relatedTarget: nextElement,\n direction: this._orderToDirection(order),\n from: this._getItemIndex(activeElement),\n to: nextElementIndex\n })\n }\n\n const slideEvent = triggerEvent(EVENT_SLIDE)\n\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n // TODO: change tests that use empty divs to avoid this check\n return\n }\n\n const isCycling = Boolean(this._interval)\n this.pause()\n\n this._isSliding = true\n\n this._setActiveIndicatorElement(nextElementIndex)\n this._activeElement = nextElement\n\n // Boosted mod: enable/disable prev/next controls when wrap=false\n if (!this._config.wrap) {\n const prevControl = SelectorEngine.findOne(SELECTOR_CONTROL_PREV, this._element)\n const nextControl = SelectorEngine.findOne(SELECTOR_CONTROL_NEXT, this._element)\n\n this._enableControl(prevControl)\n this._enableControl(nextControl)\n\n if (nextElementIndex === 0) {\n this._disableControl(prevControl)\n } else if (nextElementIndex === (this._getItems().length - 1)) {\n this._disableControl(nextControl)\n }\n }\n // End mod\n\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n triggerEvent(EVENT_SLID)\n }\n\n this._queueCallback(completeCallBack, activeElement, this._isAnimated())\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_SLIDE)\n }\n\n _getActive() {\n return SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n }\n\n _getItems() {\n return SelectorEngine.find(SELECTOR_ITEM, this._element)\n }\n\n _clearInterval() {\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n }\n\n _directionToOrder(direction) {\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n // Boosted mod: add pause button\n static PauseCarousel(event) {\n const pauseButton = event.target\n const pauseButtonAttribute = pauseButton.getAttribute(SELECTOR_CAROUSEL_TO_PAUSE)\n const carouselToPause = Carousel.getOrCreateInstance(document.querySelector(pauseButtonAttribute))\n if (pauseButton.classList.contains('pause')) {\n carouselToPause.pause()\n } else {\n carouselToPause.cycle()\n }\n }\n // End mod\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Carousel.getOrCreateInstance(this, config)\n\n if (typeof config === 'number') {\n data.to(config)\n return\n }\n\n if (typeof config === 'string') {\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/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, function (event) {\n const target = SelectorEngine.getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n event.preventDefault()\n\n const carousel = Carousel.getOrCreateInstance(target)\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n carousel.to(slideIndex)\n carousel._maybeEnableCycle()\n return\n }\n\n if (Manipulator.getDataAttribute(this, 'slide') === 'next') {\n carousel.next()\n carousel._maybeEnableCycle()\n return\n }\n\n carousel.prev()\n carousel._maybeEnableCycle()\n})\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_CONTROL_PAUSE, Carousel.PauseCarousel) // Boosted mod\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (const carousel of carousels) {\n Carousel.getOrCreateInstance(carousel)\n }\n})\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","ARROW_LEFT_KEY","ARROW_RIGHT_KEY","TOUCHEVENT_COMPAT_WAIT","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","EVENT_SLIDE","EVENT_SLID","EVENT_KEYDOWN","EVENT_MOUSEENTER","EVENT_MOUSELEAVE","EVENT_DRAG_START","EVENT_LOAD_DATA_API","EVENT_CLICK_DATA_API","CLASS_NAME_CAROUSEL","CLASS_NAME_ACTIVE","CLASS_NAME_SLIDE","CLASS_NAME_END","CLASS_NAME_START","CLASS_NAME_NEXT","CLASS_NAME_PREV","CLASS_NAME_PAUSED","CLASS_NAME_DONE","SELECTOR_ACTIVE","SELECTOR_ITEM","SELECTOR_ACTIVE_ITEM","SELECTOR_ITEM_IMG","SELECTOR_INDICATORS","SELECTOR_DATA_SLIDE","SELECTOR_DATA_RIDE","SELECTOR_CONTROL_PREV","SELECTOR_CONTROL_NEXT","SELECTOR_CONTROL_PAUSE","SELECTOR_CAROUSEL_TO_PAUSE","SELECTOR_CAROUSEL_PLAY_TEXT","SELECTOR_CAROUSEL_PAUSE_TEXT","SELECTOR_CAROUSEL_DEFAULT_PLAY_TEXT","SELECTOR_CAROUSEL_DEFAULT_PAUSE_TEXT","PREFIX_CUSTOM_PROPS","KEY_TO_DIRECTION","Default","interval","keyboard","pause","ride","touch","wrap","DefaultType","Carousel","BaseComponent","constructor","element","config","_interval","_activeElement","_isSliding","touchTimeout","_swipeHelper","_indicatorsElement","SelectorEngine","findOne","_element","_playPauseButton","id","_addEventListeners","_config","cycle","classList","add","next","_slide","nextWhenVisible","document","hidden","isVisible","prev","contains","remove","getAttribute","setAttribute","querySelector","innerHTML","_stayPaused","triggerTransitionEnd","_clearInterval","_updateInterval","setInterval","_maybeEnableCycle","EventHandler","one","to","index","items","_getItems","length","activeIndex","_getItemIndex","_getActive","order","dispose","_configAfterMerge","defaultInterval","on","event","_keydown","Swipe","isSupported","_addTouchEventListeners","img","find","preventDefault","endCallBack","clearTimeout","setTimeout","swipeConfig","leftCallback","_directionToOrder","rightCallback","endCallback","test","target","tagName","direction","key","_disableControl","nodeName","disabled","_enableControl","removeAttribute","indexOf","_setActiveIndicatorElement","activeIndicator","newActiveIndicator","elementInterval","Number","parseInt","currentIndex","currentIndicator","style","setProperty","activeElement","isNext","isPrev","lastItemIndex","isGoingToWrap","hasAttribute","nextElement","getNextActiveElement","nextElementIndex","triggerEvent","eventName","trigger","relatedTarget","_orderToDirection","from","slideEvent","defaultPrevented","isCycling","Boolean","prevControl","nextControl","directionalClassName","orderClassName","reflow","completeCallBack","_queueCallback","_isAnimated","clearInterval","isRTL","PauseCarousel","pauseButton","pauseButtonAttribute","carouselToPause","getOrCreateInstance","jQueryInterface","each","data","undefined","startsWith","TypeError","getElementFromSelector","carousel","slideIndex","Manipulator","getDataAttribute","window","carousels","defineJQueryPlugin"],"mappings":"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"}