1{"version":3,"sources":["../../src/bootstrap/carousel.js"],"names":["DATA_KEY","EVENT_KEY","DATA_API_KEY","JQUERY_NO_CONFLICT","$","fn","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","DIRECTION_NEXT","DIRECTION_PREV","EVENT_SLIDE","EVENT_SLID","EVENT_KEYDOWN","EVENT_MOUSEENTER","EVENT_MOUSELEAVE","EVENT_TOUCHSTART","EVENT_TOUCHMOVE","EVENT_TOUCHEND","EVENT_POINTERDOWN","EVENT_POINTERUP","EVENT_DRAG_START","EVENT_LOAD_DATA_API","EVENT_CLICK_DATA_API","CLASS_NAME_ACTIVE","SELECTOR_ACTIVE_ITEM","PointerType","TOUCH","PEN","Carousel","element","config","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_element","_indicatorsElement","querySelector","_touchSupported","document","documentElement","navigator","maxTouchPoints","_pointerEvent","window","PointerEvent","MSPointerEvent","_addEventListeners","_slide","hidden","is","css","next","event","Util","triggerTransitionEnd","cycle","clearInterval","setInterval","visibilityState","nextWhenVisible","bind","index","activeIndex","_getItemIndex","length","one","to","direction","off","removeData","typeCheckConfig","absDeltax","Math","abs","prev","on","_keydown","_addTouchEventListeners","start","originalEvent","pointerType","toUpperCase","clientX","touches","move","end","_handleSwipe","clearTimeout","setTimeout","querySelectorAll","e","preventDefault","classList","add","test","target","tagName","which","parentNode","slice","call","indexOf","activeElement","lastItemIndex","delta","itemIndex","relatedTarget","eventDirectionName","targetIndex","fromIndex","slideEvent","Event","from","trigger","indicators","removeClass","nextIndicator","children","addClass","activeElementIndex","nextElement","_getItemByDirection","nextElementIndex","isCycling","directionalClassName","orderClassName","hasClass","_triggerSlideEvent","isDefaultPrevented","_setActiveIndicatorElement","slidEvent","reflow","nextElementInterval","parseInt","getAttribute","defaultInterval","transitionDuration","getTransitionDurationFromElement","TRANSITION_END","emulateTransitionEnd","each","data","action","TypeError","ride","selector","getSelectorFromElement","slideIndex","_jQueryInterface","_dataApiClickHandler","carousels","i","len","$carousel","Constructor","noConflict"],"mappings":"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","sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.5.0): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME                   = 'carousel'\nconst VERSION                = '4.5.0'\nconst DATA_KEY               = 'bs.carousel'\nconst EVENT_KEY              = `.${DATA_KEY}`\nconst DATA_API_KEY           = '.data-api'\nconst JQUERY_NO_CONFLICT     = $.fn[NAME]\nconst ARROW_LEFT_KEYCODE     = 37 // KeyboardEvent.which value for left arrow key\nconst ARROW_RIGHT_KEYCODE    = 39 // KeyboardEvent.which value for right arrow key\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD        = 40\n\nconst Default = {\n  interval : 5000,\n  keyboard : true,\n  slide    : false,\n  pause    : 'hover',\n  wrap     : true,\n  touch    : true\n}\n\nconst DefaultType = {\n  interval : '(number|boolean)',\n  keyboard : 'boolean',\n  slide    : '(boolean|string)',\n  pause    : '(string|boolean)',\n  wrap     : 'boolean',\n  touch    : 'boolean'\n}\n\nconst DIRECTION_NEXT     = 'next'\nconst DIRECTION_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_TOUCHSTART     = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE      = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND       = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN    = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP      = `pointerup${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_RIGHT         = 'carousel-item-right'\nconst CLASS_NAME_LEFT          = 'carousel-item-left'\nconst CLASS_NAME_NEXT          = 'carousel-item-next'\nconst CLASS_NAME_PREV          = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE      = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM        = '.carousel-item'\nconst SELECTOR_ITEM_IMG    = '.carousel-item img'\nconst SELECTOR_NEXT_PREV   = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS  = '.carousel-indicators'\nconst SELECTOR_DATA_SLIDE  = '[data-slide], [data-slide-to]'\nconst SELECTOR_DATA_RIDE   = '[data-ride=\"carousel\"]'\n\nconst PointerType = {\n  TOUCH : 'touch',\n  PEN   : 'pen'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel {\n  constructor(element, config) {\n    this._items         = null\n    this._interval      = null\n    this._activeElement = null\n    this._isPaused      = false\n    this._isSliding     = false\n    this.touchTimeout   = null\n    this.touchStartX    = 0\n    this.touchDeltaX    = 0\n\n    this._config            = this._getConfig(config)\n    this._element           = element\n    this._indicatorsElement = this._element.querySelector(SELECTOR_INDICATORS)\n    this._touchSupported    = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n    this._pointerEvent      = Boolean(window.PointerEvent || window.MSPointerEvent)\n\n    this._addEventListeners()\n  }\n\n  // Getters\n\n  static get VERSION() {\n    return VERSION\n  }\n\n  static get Default() {\n    return Default\n  }\n\n  // Public\n\n  next() {\n    if (!this._isSliding) {\n      this._slide(DIRECTION_NEXT)\n    }\n  }\n\n  nextWhenVisible() {\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 &&\n      ($(this._element).is(':visible') && $(this._element).css('visibility') !== 'hidden')) {\n      this.next()\n    }\n  }\n\n  prev() {\n    if (!this._isSliding) {\n      this._slide(DIRECTION_PREV)\n    }\n  }\n\n  pause(event) {\n    if (!event) {\n      this._isPaused = true\n    }\n\n    if (this._element.querySelector(SELECTOR_NEXT_PREV)) {\n      Util.triggerTransitionEnd(this._element)\n      this.cycle(true)\n    }\n\n    clearInterval(this._interval)\n    this._interval = null\n  }\n\n  cycle(event) {\n    if (!event) {\n      this._isPaused = false\n    }\n\n    if (this._interval) {\n      clearInterval(this._interval)\n      this._interval = null\n    }\n\n    if (this._config.interval && !this._isPaused) {\n      this._interval = setInterval(\n        (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n        this._config.interval\n      )\n    }\n  }\n\n  to(index) {\n    this._activeElement = this._element.querySelector(SELECTOR_ACTIVE_ITEM)\n\n    const activeIndex = this._getItemIndex(this._activeElement)\n\n    if (index > this._items.length - 1 || index < 0) {\n      return\n    }\n\n    if (this._isSliding) {\n      $(this._element).one(EVENT_SLID, () => this.to(index))\n      return\n    }\n\n    if (activeIndex === index) {\n      this.pause()\n      this.cycle()\n      return\n    }\n\n    const direction = index > activeIndex\n      ? DIRECTION_NEXT\n      : DIRECTION_PREV\n\n    this._slide(direction, this._items[index])\n  }\n\n  dispose() {\n    $(this._element).off(EVENT_KEY)\n    $.removeData(this._element, DATA_KEY)\n\n    this._items             = null\n    this._config            = null\n    this._element           = null\n    this._interval          = null\n    this._isPaused          = null\n    this._isSliding         = null\n    this._activeElement     = null\n    this._indicatorsElement = null\n  }\n\n  // Private\n\n  _getConfig(config) {\n    config = {\n      ...Default,\n      ...config\n    }\n    Util.typeCheckConfig(NAME, config, DefaultType)\n    return config\n  }\n\n  _handleSwipe() {\n    const absDeltax = Math.abs(this.touchDeltaX)\n\n    if (absDeltax <= SWIPE_THRESHOLD) {\n      return\n    }\n\n    const direction = absDeltax / this.touchDeltaX\n\n    this.touchDeltaX = 0\n\n    // swipe left\n    if (direction > 0) {\n      this.prev()\n    }\n\n    // swipe right\n    if (direction < 0) {\n      this.next()\n    }\n  }\n\n  _addEventListeners() {\n    if (this._config.keyboard) {\n      $(this._element).on(EVENT_KEYDOWN, (event) => this._keydown(event))\n    }\n\n    if (this._config.pause === 'hover') {\n      $(this._element)\n        .on(EVENT_MOUSEENTER, (event) => this.pause(event))\n        .on(EVENT_MOUSELEAVE, (event) => this.cycle(event))\n    }\n\n    if (this._config.touch) {\n      this._addTouchEventListeners()\n    }\n  }\n\n  _addTouchEventListeners() {\n    if (!this._touchSupported) {\n      return\n    }\n\n    const start = (event) => {\n      if (this._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) {\n        this.touchStartX = event.originalEvent.clientX\n      } else if (!this._pointerEvent) {\n        this.touchStartX = event.originalEvent.touches[0].clientX\n      }\n    }\n\n    const move = (event) => {\n      // ensure swiping with one touch and not pinching\n      if (event.originalEvent.touches && event.originalEvent.touches.length > 1) {\n        this.touchDeltaX = 0\n      } else {\n        this.touchDeltaX = event.originalEvent.touches[0].clientX - this.touchStartX\n      }\n    }\n\n    const end = (event) => {\n      if (this._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) {\n        this.touchDeltaX = event.originalEvent.clientX - this.touchStartX\n      }\n\n      this._handleSwipe()\n      if (this._config.pause === 'hover') {\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        this.touchTimeout = setTimeout((event) => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n      }\n    }\n\n    $(this._element.querySelectorAll(SELECTOR_ITEM_IMG))\n      .on(EVENT_DRAG_START, (e) => e.preventDefault())\n\n    if (this._pointerEvent) {\n      $(this._element).on(EVENT_POINTERDOWN, (event) => start(event))\n      $(this._element).on(EVENT_POINTERUP, (event) => end(event))\n\n      this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n    } else {\n      $(this._element).on(EVENT_TOUCHSTART, (event) => start(event))\n      $(this._element).on(EVENT_TOUCHMOVE, (event) => move(event))\n      $(this._element).on(EVENT_TOUCHEND, (event) => end(event))\n    }\n  }\n\n  _keydown(event) {\n    if (/input|textarea/i.test(event.target.tagName)) {\n      return\n    }\n\n    switch (event.which) {\n      case ARROW_LEFT_KEYCODE:\n        event.preventDefault()\n        this.prev()\n        break\n      case ARROW_RIGHT_KEYCODE:\n        event.preventDefault()\n        this.next()\n        break\n      default:\n    }\n  }\n\n  _getItemIndex(element) {\n    this._items = element && element.parentNode\n      ? [].slice.call(element.parentNode.querySelectorAll(SELECTOR_ITEM))\n      : []\n    return this._items.indexOf(element)\n  }\n\n  _getItemByDirection(direction, activeElement) {\n    const isNextDirection = direction === DIRECTION_NEXT\n    const isPrevDirection = direction === DIRECTION_PREV\n    const activeIndex     = this._getItemIndex(activeElement)\n    const lastItemIndex   = this._items.length - 1\n    const isGoingToWrap   = isPrevDirection && activeIndex === 0 ||\n                            isNextDirection && activeIndex === lastItemIndex\n\n    if (isGoingToWrap && !this._config.wrap) {\n      return activeElement\n    }\n\n    const delta     = direction === DIRECTION_PREV ? -1 : 1\n    const itemIndex = (activeIndex + delta) % this._items.length\n\n    return itemIndex === -1\n      ? this._items[this._items.length - 1] : this._items[itemIndex]\n  }\n\n  _triggerSlideEvent(relatedTarget, eventDirectionName) {\n    const targetIndex = this._getItemIndex(relatedTarget)\n    const fromIndex = this._getItemIndex(this._element.querySelector(SELECTOR_ACTIVE_ITEM))\n    const slideEvent = $.Event(EVENT_SLIDE, {\n      relatedTarget,\n      direction: eventDirectionName,\n      from: fromIndex,\n      to: targetIndex\n    })\n\n    $(this._element).trigger(slideEvent)\n\n    return slideEvent\n  }\n\n  _setActiveIndicatorElement(element) {\n    if (this._indicatorsElement) {\n      const indicators = [].slice.call(this._indicatorsElement.querySelectorAll(SELECTOR_ACTIVE))\n      $(indicators).removeClass(CLASS_NAME_ACTIVE)\n\n      const nextIndicator = this._indicatorsElement.children[\n        this._getItemIndex(element)\n      ]\n\n      if (nextIndicator) {\n        $(nextIndicator).addClass(CLASS_NAME_ACTIVE)\n      }\n    }\n  }\n\n  _slide(direction, element) {\n    const activeElement = this._element.querySelector(SELECTOR_ACTIVE_ITEM)\n    const activeElementIndex = this._getItemIndex(activeElement)\n    const nextElement   = element || activeElement &&\n      this._getItemByDirection(direction, activeElement)\n    const nextElementIndex = this._getItemIndex(nextElement)\n    const isCycling = Boolean(this._interval)\n\n    let directionalClassName\n    let orderClassName\n    let eventDirectionName\n\n    if (direction === DIRECTION_NEXT) {\n      directionalClassName = CLASS_NAME_LEFT\n      orderClassName = CLASS_NAME_NEXT\n      eventDirectionName = DIRECTION_LEFT\n    } else {\n      directionalClassName = CLASS_NAME_RIGHT\n      orderClassName = CLASS_NAME_PREV\n      eventDirectionName = DIRECTION_RIGHT\n    }\n\n    if (nextElement && $(nextElement).hasClass(CLASS_NAME_ACTIVE)) {\n      this._isSliding = false\n      return\n    }\n\n    const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n    if (slideEvent.isDefaultPrevented()) {\n      return\n    }\n\n    if (!activeElement || !nextElement) {\n      // Some weirdness is happening, so we bail\n      return\n    }\n\n    this._isSliding = true\n\n    if (isCycling) {\n      this.pause()\n    }\n\n    this._setActiveIndicatorElement(nextElement)\n\n    const slidEvent = $.Event(EVENT_SLID, {\n      relatedTarget: nextElement,\n      direction: eventDirectionName,\n      from: activeElementIndex,\n      to: nextElementIndex\n    })\n\n    if ($(this._element).hasClass(CLASS_NAME_SLIDE)) {\n      $(nextElement).addClass(orderClassName)\n\n      Util.reflow(nextElement)\n\n      $(activeElement).addClass(directionalClassName)\n      $(nextElement).addClass(directionalClassName)\n\n      const nextElementInterval = parseInt(nextElement.getAttribute('data-interval'), 10)\n      if (nextElementInterval) {\n        this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n        this._config.interval = nextElementInterval\n      } else {\n        this._config.interval = this._config.defaultInterval || this._config.interval\n      }\n\n      const transitionDuration = Util.getTransitionDurationFromElement(activeElement)\n\n      $(activeElement)\n        .one(Util.TRANSITION_END, () => {\n          $(nextElement)\n            .removeClass(`${directionalClassName} ${orderClassName}`)\n            .addClass(CLASS_NAME_ACTIVE)\n\n          $(activeElement).removeClass(`${CLASS_NAME_ACTIVE} ${orderClassName} ${directionalClassName}`)\n\n          this._isSliding = false\n\n          setTimeout(() => $(this._element).trigger(slidEvent), 0)\n        })\n        .emulateTransitionEnd(transitionDuration)\n    } else {\n      $(activeElement).removeClass(CLASS_NAME_ACTIVE)\n      $(nextElement).addClass(CLASS_NAME_ACTIVE)\n\n      this._isSliding = false\n      $(this._element).trigger(slidEvent)\n    }\n\n    if (isCycling) {\n      this.cycle()\n    }\n  }\n\n  // Static\n\n  static _jQueryInterface(config) {\n    return this.each(function () {\n      let data = $(this).data(DATA_KEY)\n      let _config = {\n        ...Default,\n        ...$(this).data()\n      }\n\n      if (typeof config === 'object') {\n        _config = {\n          ..._config,\n          ...config\n        }\n      }\n\n      const action = typeof config === 'string' ? config : _config.slide\n\n      if (!data) {\n        data = new Carousel(this, _config)\n        $(this).data(DATA_KEY, data)\n      }\n\n      if (typeof config === 'number') {\n        data.to(config)\n      } else if (typeof action === 'string') {\n        if (typeof data[action] === 'undefined') {\n          throw new TypeError(`No method named \"${action}\"`)\n        }\n        data[action]()\n      } else if (_config.interval && _config.ride) {\n        data.pause()\n        data.cycle()\n      }\n    })\n  }\n\n  static _dataApiClickHandler(event) {\n    const selector = Util.getSelectorFromElement(this)\n\n    if (!selector) {\n      return\n    }\n\n    const target = $(selector)[0]\n\n    if (!target || !$(target).hasClass(CLASS_NAME_CAROUSEL)) {\n      return\n    }\n\n    const config = {\n      ...$(target).data(),\n      ...$(this).data()\n    }\n    const slideIndex = this.getAttribute('data-slide-to')\n\n    if (slideIndex) {\n      config.interval = false\n    }\n\n    Carousel._jQueryInterface.call($(target), config)\n\n    if (slideIndex) {\n      $(target).data(DATA_KEY).to(slideIndex)\n    }\n\n    event.preventDefault()\n  }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel._dataApiClickHandler)\n\n$(window).on(EVENT_LOAD_DATA_API, () => {\n  const carousels = [].slice.call(document.querySelectorAll(SELECTOR_DATA_RIDE))\n  for (let i = 0, len = carousels.length; i < len; i++) {\n    const $carousel = $(carousels[i])\n    Carousel._jQueryInterface.call($carousel, $carousel.data())\n  }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Carousel._jQueryInterface\n$.fn[NAME].Constructor = Carousel\n$.fn[NAME].noConflict = () => {\n  $.fn[NAME] = JQUERY_NO_CONFLICT\n  return Carousel._jQueryInterface\n}\n\nexport default Carousel\n"],"file":"carousel.min.js"}