{"ast":null,"code":"\"use strict\";\n\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nvar _excluded = [\"animating\"];\nimport React from \"react\";\nimport initialState from \"./initial-state\";\nimport { debounce } from \"throttle-debounce\";\nimport classnames from \"classnames\";\nimport { getOnDemandLazySlides, extractObject, initializedState, getHeight, canGoNext, slideHandler, changeSlide, keyHandler, swipeStart, swipeMove, swipeEnd, getPreClones, getPostClones, getTrackLeft, getTrackCSS } from \"./utils/innerSliderUtils\";\nimport { Track } from \"./track\";\nimport { Dots } from \"./dots\";\nimport { PrevArrow, NextArrow } from \"./arrows\";\nimport ResizeObserver from \"resize-observer-polyfill\";\nexport var InnerSlider = /*#__PURE__*/function (_React$Component) {\n  _inherits(InnerSlider, _React$Component);\n  var _super = _createSuper(InnerSlider);\n  function InnerSlider(props) {\n    var _this;\n    _classCallCheck(this, InnerSlider);\n    _this = _super.call(this, props);\n    _defineProperty(_assertThisInitialized(_this), \"listRefHandler\", function (ref) {\n      return _this.list = ref;\n    });\n    _defineProperty(_assertThisInitialized(_this), \"trackRefHandler\", function (ref) {\n      return _this.track = ref;\n    });\n    _defineProperty(_assertThisInitialized(_this), \"adaptHeight\", function () {\n      if (_this.props.adaptiveHeight && _this.list) {\n        var elem = _this.list.querySelector(\"[data-index=\\\"\".concat(_this.state.currentSlide, \"\\\"]\"));\n        _this.list.style.height = getHeight(elem) + \"px\";\n      }\n    });\n    _defineProperty(_assertThisInitialized(_this), \"componentDidMount\", function () {\n      _this.props.onInit && _this.props.onInit();\n      if (_this.props.lazyLoad) {\n        var slidesToLoad = getOnDemandLazySlides(_objectSpread(_objectSpread({}, _this.props), _this.state));\n        if (slidesToLoad.length > 0) {\n          _this.setState(function (prevState) {\n            return {\n              lazyLoadedList: prevState.lazyLoadedList.concat(slidesToLoad)\n            };\n          });\n          if (_this.props.onLazyLoad) {\n            _this.props.onLazyLoad(slidesToLoad);\n          }\n        }\n      }\n      var spec = _objectSpread({\n        listRef: _this.list,\n        trackRef: _this.track\n      }, _this.props);\n      _this.updateState(spec, true, function () {\n        _this.adaptHeight();\n        _this.props.autoplay && _this.autoPlay(\"playing\");\n      });\n      if (_this.props.lazyLoad === \"progressive\") {\n        _this.lazyLoadTimer = setInterval(_this.progressiveLazyLoad, 1000);\n      }\n      _this.ro = new ResizeObserver(function () {\n        if (_this.state.animating) {\n          _this.onWindowResized(false); // don't set trackStyle hence don't break animation\n          _this.callbackTimers.push(setTimeout(function () {\n            return _this.onWindowResized();\n          }, _this.props.speed));\n        } else {\n          _this.onWindowResized();\n        }\n      });\n      _this.ro.observe(_this.list);\n      document.querySelectorAll && Array.prototype.forEach.call(document.querySelectorAll(\".slick-slide\"), function (slide) {\n        slide.onfocus = _this.props.pauseOnFocus ? _this.onSlideFocus : null;\n        slide.onblur = _this.props.pauseOnFocus ? _this.onSlideBlur : null;\n      });\n      if (window.addEventListener) {\n        window.addEventListener(\"resize\", _this.onWindowResized);\n      } else {\n        window.attachEvent(\"onresize\", _this.onWindowResized);\n      }\n    });\n    _defineProperty(_assertThisInitialized(_this), \"componentWillUnmount\", function () {\n      if (_this.animationEndCallback) {\n        clearTimeout(_this.animationEndCallback);\n      }\n      if (_this.lazyLoadTimer) {\n        clearInterval(_this.lazyLoadTimer);\n      }\n      if (_this.callbackTimers.length) {\n        _this.callbackTimers.forEach(function (timer) {\n          return clearTimeout(timer);\n        });\n        _this.callbackTimers = [];\n      }\n      if (window.addEventListener) {\n        window.removeEventListener(\"resize\", _this.onWindowResized);\n      } else {\n        window.detachEvent(\"onresize\", _this.onWindowResized);\n      }\n      if (_this.autoplayTimer) {\n        clearInterval(_this.autoplayTimer);\n      }\n      _this.ro.disconnect();\n    });\n    _defineProperty(_assertThisInitialized(_this), \"componentDidUpdate\", function (prevProps) {\n      _this.checkImagesLoad();\n      _this.props.onReInit && _this.props.onReInit();\n      if (_this.props.lazyLoad) {\n        var slidesToLoad = getOnDemandLazySlides(_objectSpread(_objectSpread({}, _this.props), _this.state));\n        if (slidesToLoad.length > 0) {\n          _this.setState(function (prevState) {\n            return {\n              lazyLoadedList: prevState.lazyLoadedList.concat(slidesToLoad)\n            };\n          });\n          if (_this.props.onLazyLoad) {\n            _this.props.onLazyLoad(slidesToLoad);\n          }\n        }\n      }\n      // if (this.props.onLazyLoad) {\n      //   this.props.onLazyLoad([leftMostSlide])\n      // }\n      _this.adaptHeight();\n      var spec = _objectSpread(_objectSpread({\n        listRef: _this.list,\n        trackRef: _this.track\n      }, _this.props), _this.state);\n      var setTrackStyle = _this.didPropsChange(prevProps);\n      setTrackStyle && _this.updateState(spec, setTrackStyle, function () {\n        if (_this.state.currentSlide >= React.Children.count(_this.props.children)) {\n          _this.changeSlide({\n            message: \"index\",\n            index: React.Children.count(_this.props.children) - _this.props.slidesToShow,\n            currentSlide: _this.state.currentSlide\n          });\n        }\n        if (prevProps.autoplay !== _this.props.autoplay || prevProps.autoplaySpeed !== _this.props.autoplaySpeed) {\n          if (!prevProps.autoplay && _this.props.autoplay) {\n            _this.autoPlay(\"playing\");\n          } else if (_this.props.autoplay) {\n            _this.autoPlay(\"update\");\n          } else {\n            _this.pause(\"paused\");\n          }\n        }\n      });\n    });\n    _defineProperty(_assertThisInitialized(_this), \"onWindowResized\", function (setTrackStyle) {\n      if (_this.debouncedResize) _this.debouncedResize.cancel();\n      _this.debouncedResize = debounce(50, function () {\n        return _this.resizeWindow(setTrackStyle);\n      });\n      _this.debouncedResize();\n    });\n    _defineProperty(_assertThisInitialized(_this), \"resizeWindow\", function () {\n      var setTrackStyle = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n      var isTrackMounted = Boolean(_this.track && _this.track.node);\n      // prevent warning: setting state on unmounted component (server side rendering)\n      if (!isTrackMounted) return;\n      var spec = _objectSpread(_objectSpread({\n        listRef: _this.list,\n        trackRef: _this.track\n      }, _this.props), _this.state);\n      _this.updateState(spec, setTrackStyle, function () {\n        if (_this.props.autoplay) _this.autoPlay(\"update\");else _this.pause(\"paused\");\n      });\n      // animating state should be cleared while resizing, otherwise autoplay stops working\n      _this.setState({\n        animating: false\n      });\n      clearTimeout(_this.animationEndCallback);\n      delete _this.animationEndCallback;\n    });\n    _defineProperty(_assertThisInitialized(_this), \"updateState\", function (spec, setTrackStyle, callback) {\n      var updatedState = initializedState(spec);\n      spec = _objectSpread(_objectSpread(_objectSpread({}, spec), updatedState), {}, {\n        slideIndex: updatedState.currentSlide\n      });\n      var targetLeft = getTrackLeft(spec);\n      spec = _objectSpread(_objectSpread({}, spec), {}, {\n        left: targetLeft\n      });\n      var trackStyle = getTrackCSS(spec);\n      if (setTrackStyle || React.Children.count(_this.props.children) !== React.Children.count(spec.children)) {\n        updatedState[\"trackStyle\"] = trackStyle;\n      }\n      _this.setState(updatedState, callback);\n    });\n    _defineProperty(_assertThisInitialized(_this), \"ssrInit\", function () {\n      if (_this.props.variableWidth) {\n        var _trackWidth = 0,\n          _trackLeft = 0;\n        var childrenWidths = [];\n        var preClones = getPreClones(_objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n          slideCount: _this.props.children.length\n        }));\n        var postClones = getPostClones(_objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n          slideCount: _this.props.children.length\n        }));\n        _this.props.children.forEach(function (child) {\n          childrenWidths.push(child.props.style.width);\n          _trackWidth += child.props.style.width;\n        });\n        for (var i = 0; i < preClones; i++) {\n          _trackLeft += childrenWidths[childrenWidths.length - 1 - i];\n          _trackWidth += childrenWidths[childrenWidths.length - 1 - i];\n        }\n        for (var _i = 0; _i < postClones; _i++) {\n          _trackWidth += childrenWidths[_i];\n        }\n        for (var _i2 = 0; _i2 < _this.state.currentSlide; _i2++) {\n          _trackLeft += childrenWidths[_i2];\n        }\n        var _trackStyle = {\n          width: _trackWidth + \"px\",\n          left: -_trackLeft + \"px\"\n        };\n        if (_this.props.centerMode) {\n          var currentWidth = \"\".concat(childrenWidths[_this.state.currentSlide], \"px\");\n          _trackStyle.left = \"calc(\".concat(_trackStyle.left, \" + (100% - \").concat(currentWidth, \") / 2 ) \");\n        }\n        return {\n          trackStyle: _trackStyle\n        };\n      }\n      var childrenCount = React.Children.count(_this.props.children);\n      var spec = _objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n        slideCount: childrenCount\n      });\n      var slideCount = getPreClones(spec) + getPostClones(spec) + childrenCount;\n      var trackWidth = 100 / _this.props.slidesToShow * slideCount;\n      var slideWidth = 100 / slideCount;\n      var trackLeft = -slideWidth * (getPreClones(spec) + _this.state.currentSlide) * trackWidth / 100;\n      if (_this.props.centerMode) {\n        trackLeft += (100 - slideWidth * trackWidth / 100) / 2;\n      }\n      var trackStyle = {\n        width: trackWidth + \"%\",\n        left: trackLeft + \"%\"\n      };\n      return {\n        slideWidth: slideWidth + \"%\",\n        trackStyle: trackStyle\n      };\n    });\n    _defineProperty(_assertThisInitialized(_this), \"checkImagesLoad\", function () {\n      var images = _this.list && _this.list.querySelectorAll && _this.list.querySelectorAll(\".slick-slide img\") || [];\n      var imagesCount = images.length,\n        loadedCount = 0;\n      Array.prototype.forEach.call(images, function (image) {\n        var handler = function handler() {\n          return ++loadedCount && loadedCount >= imagesCount && _this.onWindowResized();\n        };\n        if (!image.onclick) {\n          image.onclick = function () {\n            return image.parentNode.focus();\n          };\n        } else {\n          var prevClickHandler = image.onclick;\n          image.onclick = function (e) {\n            prevClickHandler(e);\n            image.parentNode.focus();\n          };\n        }\n        if (!image.onload) {\n          if (_this.props.lazyLoad) {\n            image.onload = function () {\n              _this.adaptHeight();\n              _this.callbackTimers.push(setTimeout(_this.onWindowResized, _this.props.speed));\n            };\n          } else {\n            image.onload = handler;\n            image.onerror = function () {\n              handler();\n              _this.props.onLazyLoadError && _this.props.onLazyLoadError();\n            };\n          }\n        }\n      });\n    });\n    _defineProperty(_assertThisInitialized(_this), \"progressiveLazyLoad\", function () {\n      var slidesToLoad = [];\n      var spec = _objectSpread(_objectSpread({}, _this.props), _this.state);\n      for (var index = _this.state.currentSlide; index < _this.state.slideCount + getPostClones(spec); index++) {\n        if (_this.state.lazyLoadedList.indexOf(index) < 0) {\n          slidesToLoad.push(index);\n          break;\n        }\n      }\n      for (var _index = _this.state.currentSlide - 1; _index >= -getPreClones(spec); _index--) {\n        if (_this.state.lazyLoadedList.indexOf(_index) < 0) {\n          slidesToLoad.push(_index);\n          break;\n        }\n      }\n      if (slidesToLoad.length > 0) {\n        _this.setState(function (state) {\n          return {\n            lazyLoadedList: state.lazyLoadedList.concat(slidesToLoad)\n          };\n        });\n        if (_this.props.onLazyLoad) {\n          _this.props.onLazyLoad(slidesToLoad);\n        }\n      } else {\n        if (_this.lazyLoadTimer) {\n          clearInterval(_this.lazyLoadTimer);\n          delete _this.lazyLoadTimer;\n        }\n      }\n    });\n    _defineProperty(_assertThisInitialized(_this), \"slideHandler\", function (index) {\n      var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n      var _this$props = _this.props,\n        asNavFor = _this$props.asNavFor,\n        beforeChange = _this$props.beforeChange,\n        onLazyLoad = _this$props.onLazyLoad,\n        speed = _this$props.speed,\n        afterChange = _this$props.afterChange;\n      // capture currentslide before state is updated\n      var currentSlide = _this.state.currentSlide;\n      var _slideHandler = slideHandler(_objectSpread(_objectSpread(_objectSpread({\n          index: index\n        }, _this.props), _this.state), {}, {\n          trackRef: _this.track,\n          useCSS: _this.props.useCSS && !dontAnimate\n        })),\n        state = _slideHandler.state,\n        nextState = _slideHandler.nextState;\n      if (!state) return;\n      beforeChange && beforeChange(currentSlide, state.currentSlide);\n      var slidesToLoad = state.lazyLoadedList.filter(function (value) {\n        return _this.state.lazyLoadedList.indexOf(value) < 0;\n      });\n      onLazyLoad && slidesToLoad.length > 0 && onLazyLoad(slidesToLoad);\n      if (!_this.props.waitForAnimate && _this.animationEndCallback) {\n        clearTimeout(_this.animationEndCallback);\n        afterChange && afterChange(currentSlide);\n        delete _this.animationEndCallback;\n      }\n      _this.setState(state, function () {\n        // asNavForIndex check is to avoid recursive calls of slideHandler in waitForAnimate=false mode\n        if (asNavFor && _this.asNavForIndex !== index) {\n          _this.asNavForIndex = index;\n          asNavFor.innerSlider.slideHandler(index);\n        }\n        if (!nextState) return;\n        _this.animationEndCallback = setTimeout(function () {\n          var animating = nextState.animating,\n            firstBatch = _objectWithoutProperties(nextState, _excluded);\n          _this.setState(firstBatch, function () {\n            _this.callbackTimers.push(setTimeout(function () {\n              return _this.setState({\n                animating: animating\n              });\n            }, 10));\n            afterChange && afterChange(state.currentSlide);\n            delete _this.animationEndCallback;\n          });\n        }, speed);\n      });\n    });\n    _defineProperty(_assertThisInitialized(_this), \"changeSlide\", function (options) {\n      var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n      var spec = _objectSpread(_objectSpread({}, _this.props), _this.state);\n      var targetSlide = changeSlide(spec, options);\n      if (targetSlide !== 0 && !targetSlide) return;\n      if (dontAnimate === true) {\n        _this.slideHandler(targetSlide, dontAnimate);\n      } else {\n        _this.slideHandler(targetSlide);\n      }\n      _this.props.autoplay && _this.autoPlay(\"update\");\n      if (_this.props.focusOnSelect) {\n        var nodes = _this.list.querySelectorAll(\".slick-current\");\n        nodes[0] && nodes[0].focus();\n      }\n    });\n    _defineProperty(_assertThisInitialized(_this), \"clickHandler\", function (e) {\n      if (_this.clickable === false) {\n        e.stopPropagation();\n        e.preventDefault();\n      }\n      _this.clickable = true;\n    });\n    _defineProperty(_assertThisInitialized(_this), \"keyHandler\", function (e) {\n      var dir = keyHandler(e, _this.props.accessibility, _this.props.rtl);\n      dir !== \"\" && _this.changeSlide({\n        message: dir\n      });\n    });\n    _defineProperty(_assertThisInitialized(_this), \"selectHandler\", function (options) {\n      _this.changeSlide(options);\n    });\n    _defineProperty(_assertThisInitialized(_this), \"disableBodyScroll\", function () {\n      var preventDefault = function preventDefault(e) {\n        e = e || window.event;\n        if (e.preventDefault) e.preventDefault();\n        e.returnValue = false;\n      };\n      window.ontouchmove = preventDefault;\n    });\n    _defineProperty(_assertThisInitialized(_this), \"enableBodyScroll\", function () {\n      window.ontouchmove = null;\n    });\n    _defineProperty(_assertThisInitialized(_this), \"swipeStart\", function (e) {\n      if (_this.props.verticalSwiping) {\n        _this.disableBodyScroll();\n      }\n      var state = swipeStart(e, _this.props.swipe, _this.props.draggable);\n      state !== \"\" && _this.setState(state);\n    });\n    _defineProperty(_assertThisInitialized(_this), \"swipeMove\", function (e) {\n      var state = swipeMove(e, _objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n        trackRef: _this.track,\n        listRef: _this.list,\n        slideIndex: _this.state.currentSlide\n      }));\n      if (!state) return;\n      if (state[\"swiping\"]) {\n        _this.clickable = false;\n      }\n      _this.setState(state);\n    });\n    _defineProperty(_assertThisInitialized(_this), \"swipeEnd\", function (e) {\n      var state = swipeEnd(e, _objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n        trackRef: _this.track,\n        listRef: _this.list,\n        slideIndex: _this.state.currentSlide\n      }));\n      if (!state) return;\n      var triggerSlideHandler = state[\"triggerSlideHandler\"];\n      delete state[\"triggerSlideHandler\"];\n      _this.setState(state);\n      if (triggerSlideHandler === undefined) return;\n      _this.slideHandler(triggerSlideHandler);\n      if (_this.props.verticalSwiping) {\n        _this.enableBodyScroll();\n      }\n    });\n    _defineProperty(_assertThisInitialized(_this), \"touchEnd\", function (e) {\n      _this.swipeEnd(e);\n      _this.clickable = true;\n    });\n    _defineProperty(_assertThisInitialized(_this), \"slickPrev\", function () {\n      // this and fellow methods are wrapped in setTimeout\n      // to make sure initialize setState has happened before\n      // any of such methods are called\n      _this.callbackTimers.push(setTimeout(function () {\n        return _this.changeSlide({\n          message: \"previous\"\n        });\n      }, 0));\n    });\n    _defineProperty(_assertThisInitialized(_this), \"slickNext\", function () {\n      _this.callbackTimers.push(setTimeout(function () {\n        return _this.changeSlide({\n          message: \"next\"\n        });\n      }, 0));\n    });\n    _defineProperty(_assertThisInitialized(_this), \"slickGoTo\", function (slide) {\n      var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n      slide = Number(slide);\n      if (isNaN(slide)) return \"\";\n      _this.callbackTimers.push(setTimeout(function () {\n        return _this.changeSlide({\n          message: \"index\",\n          index: slide,\n          currentSlide: _this.state.currentSlide\n        }, dontAnimate);\n      }, 0));\n    });\n    _defineProperty(_assertThisInitialized(_this), \"play\", function () {\n      var nextIndex;\n      if (_this.props.rtl) {\n        nextIndex = _this.state.currentSlide - _this.props.slidesToScroll;\n      } else {\n        if (canGoNext(_objectSpread(_objectSpread({}, _this.props), _this.state))) {\n          nextIndex = _this.state.currentSlide + _this.props.slidesToScroll;\n        } else {\n          return false;\n        }\n      }\n      _this.slideHandler(nextIndex);\n    });\n    _defineProperty(_assertThisInitialized(_this), \"autoPlay\", function (playType) {\n      if (_this.autoplayTimer) {\n        clearInterval(_this.autoplayTimer);\n      }\n      var autoplaying = _this.state.autoplaying;\n      if (playType === \"update\") {\n        if (autoplaying === \"hovered\" || autoplaying === \"focused\" || autoplaying === \"paused\") {\n          return;\n        }\n      } else if (playType === \"leave\") {\n        if (autoplaying === \"paused\" || autoplaying === \"focused\") {\n          return;\n        }\n      } else if (playType === \"blur\") {\n        if (autoplaying === \"paused\" || autoplaying === \"hovered\") {\n          return;\n        }\n      }\n      _this.autoplayTimer = setInterval(_this.play, _this.props.autoplaySpeed + 50);\n      _this.setState({\n        autoplaying: \"playing\"\n      });\n    });\n    _defineProperty(_assertThisInitialized(_this), \"pause\", function (pauseType) {\n      if (_this.autoplayTimer) {\n        clearInterval(_this.autoplayTimer);\n        _this.autoplayTimer = null;\n      }\n      var autoplaying = _this.state.autoplaying;\n      if (pauseType === \"paused\") {\n        _this.setState({\n          autoplaying: \"paused\"\n        });\n      } else if (pauseType === \"focused\") {\n        if (autoplaying === \"hovered\" || autoplaying === \"playing\") {\n          _this.setState({\n            autoplaying: \"focused\"\n          });\n        }\n      } else {\n        // pauseType  is 'hovered'\n        if (autoplaying === \"playing\") {\n          _this.setState({\n            autoplaying: \"hovered\"\n          });\n        }\n      }\n    });\n    _defineProperty(_assertThisInitialized(_this), \"onDotsOver\", function () {\n      return _this.props.autoplay && _this.pause(\"hovered\");\n    });\n    _defineProperty(_assertThisInitialized(_this), \"onDotsLeave\", function () {\n      return _this.props.autoplay && _this.state.autoplaying === \"hovered\" && _this.autoPlay(\"leave\");\n    });\n    _defineProperty(_assertThisInitialized(_this), \"onTrackOver\", function () {\n      return _this.props.autoplay && _this.pause(\"hovered\");\n    });\n    _defineProperty(_assertThisInitialized(_this), \"onTrackLeave\", function () {\n      return _this.props.autoplay && _this.state.autoplaying === \"hovered\" && _this.autoPlay(\"leave\");\n    });\n    _defineProperty(_assertThisInitialized(_this), \"onSlideFocus\", function () {\n      return _this.props.autoplay && _this.pause(\"focused\");\n    });\n    _defineProperty(_assertThisInitialized(_this), \"onSlideBlur\", function () {\n      return _this.props.autoplay && _this.state.autoplaying === \"focused\" && _this.autoPlay(\"blur\");\n    });\n    _defineProperty(_assertThisInitialized(_this), \"render\", function () {\n      var className = classnames(\"slick-slider\", _this.props.className, {\n        \"slick-vertical\": _this.props.vertical,\n        \"slick-initialized\": true\n      });\n      var spec = _objectSpread(_objectSpread({}, _this.props), _this.state);\n      var trackProps = extractObject(spec, [\"fade\", \"cssEase\", \"speed\", \"infinite\", \"centerMode\", \"focusOnSelect\", \"currentSlide\", \"lazyLoad\", \"lazyLoadedList\", \"rtl\", \"slideWidth\", \"slideHeight\", \"listHeight\", \"vertical\", \"slidesToShow\", \"slidesToScroll\", \"slideCount\", \"trackStyle\", \"variableWidth\", \"unslick\", \"centerPadding\", \"targetSlide\", \"useCSS\"]);\n      var pauseOnHover = _this.props.pauseOnHover;\n      trackProps = _objectSpread(_objectSpread({}, trackProps), {}, {\n        onMouseEnter: pauseOnHover ? _this.onTrackOver : null,\n        onMouseLeave: pauseOnHover ? _this.onTrackLeave : null,\n        onMouseOver: pauseOnHover ? _this.onTrackOver : null,\n        focusOnSelect: _this.props.focusOnSelect && _this.clickable ? _this.selectHandler : null\n      });\n      var dots;\n      if (_this.props.dots === true && _this.state.slideCount >= _this.props.slidesToShow) {\n        var dotProps = extractObject(spec, [\"dotsClass\", \"slideCount\", \"slidesToShow\", \"currentSlide\", \"slidesToScroll\", \"clickHandler\", \"children\", \"customPaging\", \"infinite\", \"appendDots\"]);\n        var pauseOnDotsHover = _this.props.pauseOnDotsHover;\n        dotProps = _objectSpread(_objectSpread({}, dotProps), {}, {\n          clickHandler: _this.changeSlide,\n          onMouseEnter: pauseOnDotsHover ? _this.onDotsLeave : null,\n          onMouseOver: pauseOnDotsHover ? _this.onDotsOver : null,\n          onMouseLeave: pauseOnDotsHover ? _this.onDotsLeave : null\n        });\n        dots = /*#__PURE__*/React.createElement(Dots, dotProps);\n      }\n      var prevArrow, nextArrow;\n      var arrowProps = extractObject(spec, [\"infinite\", \"centerMode\", \"currentSlide\", \"slideCount\", \"slidesToShow\", \"prevArrow\", \"nextArrow\"]);\n      arrowProps.clickHandler = _this.changeSlide;\n      if (_this.props.arrows) {\n        prevArrow = /*#__PURE__*/React.createElement(PrevArrow, arrowProps);\n        nextArrow = /*#__PURE__*/React.createElement(NextArrow, arrowProps);\n      }\n      var verticalHeightStyle = null;\n      if (_this.props.vertical) {\n        verticalHeightStyle = {\n          height: _this.state.listHeight\n        };\n      }\n      var centerPaddingStyle = null;\n      if (_this.props.vertical === false) {\n        if (_this.props.centerMode === true) {\n          centerPaddingStyle = {\n            padding: \"0px \" + _this.props.centerPadding\n          };\n        }\n      } else {\n        if (_this.props.centerMode === true) {\n          centerPaddingStyle = {\n            padding: _this.props.centerPadding + \" 0px\"\n          };\n        }\n      }\n      var listStyle = _objectSpread(_objectSpread({}, verticalHeightStyle), centerPaddingStyle);\n      var touchMove = _this.props.touchMove;\n      var listProps = {\n        className: \"slick-list\",\n        style: listStyle,\n        onClick: _this.clickHandler,\n        onMouseDown: touchMove ? _this.swipeStart : null,\n        onMouseMove: _this.state.dragging && touchMove ? _this.swipeMove : null,\n        onMouseUp: touchMove ? _this.swipeEnd : null,\n        onMouseLeave: _this.state.dragging && touchMove ? _this.swipeEnd : null,\n        onTouchStart: touchMove ? _this.swipeStart : null,\n        onTouchMove: _this.state.dragging && touchMove ? _this.swipeMove : null,\n        onTouchEnd: touchMove ? _this.touchEnd : null,\n        onTouchCancel: _this.state.dragging && touchMove ? _this.swipeEnd : null,\n        onKeyDown: _this.props.accessibility ? _this.keyHandler : null\n      };\n      var innerSliderProps = {\n        className: className,\n        dir: \"ltr\",\n        style: _this.props.style\n      };\n      if (_this.props.unslick) {\n        listProps = {\n          className: \"slick-list\"\n        };\n        innerSliderProps = {\n          className: className,\n          style: _this.props.style\n        };\n      }\n      return /*#__PURE__*/React.createElement(\"div\", innerSliderProps, !_this.props.unslick ? prevArrow : \"\", /*#__PURE__*/React.createElement(\"div\", _extends({\n        ref: _this.listRefHandler\n      }, listProps), /*#__PURE__*/React.createElement(Track, _extends({\n        ref: _this.trackRefHandler\n      }, trackProps), _this.props.children)), !_this.props.unslick ? nextArrow : \"\", !_this.props.unslick ? dots : \"\");\n    });\n    _this.list = null;\n    _this.track = null;\n    _this.state = _objectSpread(_objectSpread({}, initialState), {}, {\n      currentSlide: _this.props.initialSlide,\n      slideCount: React.Children.count(_this.props.children)\n    });\n    _this.callbackTimers = [];\n    _this.clickable = true;\n    _this.debouncedResize = null;\n    var ssrState = _this.ssrInit();\n    _this.state = _objectSpread(_objectSpread({}, _this.state), ssrState);\n    return _this;\n  }\n  _createClass(InnerSlider, [{\n    key: \"didPropsChange\",\n    value: function didPropsChange(prevProps) {\n      var setTrackStyle = false;\n      for (var _i3 = 0, _Object$keys = Object.keys(this.props); _i3 < _Object$keys.length; _i3++) {\n        var key = _Object$keys[_i3];\n        // eslint-disable-next-line no-prototype-builtins\n        if (!prevProps.hasOwnProperty(key)) {\n          setTrackStyle = true;\n          break;\n        }\n        if (_typeof(prevProps[key]) === \"object\" || typeof prevProps[key] === \"function\") {\n          continue;\n        }\n        if (prevProps[key] !== this.props[key]) {\n          setTrackStyle = true;\n          break;\n        }\n      }\n      return setTrackStyle || React.Children.count(this.props.children) !== React.Children.count(prevProps.children);\n    }\n  }]);\n  return InnerSlider;\n}(React.Component);","map":{"version":3,"names":["_typeof","_extends","_objectWithoutProperties","_objectSpread","_classCallCheck","_createClass","_assertThisInitialized","_inherits","_createSuper","_defineProperty","_excluded","React","initialState","debounce","classnames","getOnDemandLazySlides","extractObject","initializedState","getHeight","canGoNext","slideHandler","changeSlide","keyHandler","swipeStart","swipeMove","swipeEnd","getPreClones","getPostClones","getTrackLeft","getTrackCSS","Track","Dots","PrevArrow","NextArrow","ResizeObserver","InnerSlider","_React$Component","_super","props","_this","call","ref","list","track","adaptiveHeight","elem","querySelector","concat","state","currentSlide","style","height","onInit","lazyLoad","slidesToLoad","length","setState","prevState","lazyLoadedList","onLazyLoad","spec","listRef","trackRef","updateState","adaptHeight","autoplay","autoPlay","lazyLoadTimer","setInterval","progressiveLazyLoad","ro","animating","onWindowResized","callbackTimers","push","setTimeout","speed","observe","document","querySelectorAll","Array","prototype","forEach","slide","onfocus","pauseOnFocus","onSlideFocus","onblur","onSlideBlur","window","addEventListener","attachEvent","animationEndCallback","clearTimeout","clearInterval","timer","removeEventListener","detachEvent","autoplayTimer","disconnect","prevProps","checkImagesLoad","onReInit","setTrackStyle","didPropsChange","Children","count","children","message","index","slidesToShow","autoplaySpeed","pause","debouncedResize","cancel","resizeWindow","arguments","undefined","isTrackMounted","Boolean","node","callback","updatedState","slideIndex","targetLeft","left","trackStyle","variableWidth","_trackWidth","_trackLeft","childrenWidths","preClones","slideCount","postClones","child","width","i","_i","_i2","_trackStyle","centerMode","currentWidth","childrenCount","trackWidth","slideWidth","trackLeft","images","imagesCount","loadedCount","image","handler","onclick","parentNode","focus","prevClickHandler","e","onload","onerror","onLazyLoadError","indexOf","_index","dontAnimate","_this$props","asNavFor","beforeChange","afterChange","_slideHandler","useCSS","nextState","filter","value","waitForAnimate","asNavForIndex","innerSlider","firstBatch","options","targetSlide","focusOnSelect","nodes","clickable","stopPropagation","preventDefault","dir","accessibility","rtl","event","returnValue","ontouchmove","verticalSwiping","disableBodyScroll","swipe","draggable","triggerSlideHandler","enableBodyScroll","Number","isNaN","nextIndex","slidesToScroll","playType","autoplaying","play","pauseType","className","vertical","trackProps","pauseOnHover","onMouseEnter","onTrackOver","onMouseLeave","onTrackLeave","onMouseOver","selectHandler","dots","dotProps","pauseOnDotsHover","clickHandler","onDotsLeave","onDotsOver","createElement","prevArrow","nextArrow","arrowProps","arrows","verticalHeightStyle","listHeight","centerPaddingStyle","padding","centerPadding","listStyle","touchMove","listProps","onClick","onMouseDown","onMouseMove","dragging","onMouseUp","onTouchStart","onTouchMove","onTouchEnd","touchEnd","onTouchCancel","onKeyDown","innerSliderProps","unslick","listRefHandler","trackRefHandler","initialSlide","ssrState","ssrInit","key","_i3","_Object$keys","Object","keys","hasOwnProperty","Component"],"sources":["/var/www/gavt/node_modules/@ant-design/react-slick/es/inner-slider.js"],"sourcesContent":["\"use strict\";\n\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nvar _excluded = [\"animating\"];\nimport React from \"react\";\nimport initialState from \"./initial-state\";\nimport { debounce } from \"throttle-debounce\";\nimport classnames from \"classnames\";\nimport { getOnDemandLazySlides, extractObject, initializedState, getHeight, canGoNext, slideHandler, changeSlide, keyHandler, swipeStart, swipeMove, swipeEnd, getPreClones, getPostClones, getTrackLeft, getTrackCSS } from \"./utils/innerSliderUtils\";\nimport { Track } from \"./track\";\nimport { Dots } from \"./dots\";\nimport { PrevArrow, NextArrow } from \"./arrows\";\nimport ResizeObserver from \"resize-observer-polyfill\";\nexport var InnerSlider = /*#__PURE__*/function (_React$Component) {\n  _inherits(InnerSlider, _React$Component);\n  var _super = _createSuper(InnerSlider);\n  function InnerSlider(props) {\n    var _this;\n    _classCallCheck(this, InnerSlider);\n    _this = _super.call(this, props);\n    _defineProperty(_assertThisInitialized(_this), \"listRefHandler\", function (ref) {\n      return _this.list = ref;\n    });\n    _defineProperty(_assertThisInitialized(_this), \"trackRefHandler\", function (ref) {\n      return _this.track = ref;\n    });\n    _defineProperty(_assertThisInitialized(_this), \"adaptHeight\", function () {\n      if (_this.props.adaptiveHeight && _this.list) {\n        var elem = _this.list.querySelector(\"[data-index=\\\"\".concat(_this.state.currentSlide, \"\\\"]\"));\n        _this.list.style.height = getHeight(elem) + \"px\";\n      }\n    });\n    _defineProperty(_assertThisInitialized(_this), \"componentDidMount\", function () {\n      _this.props.onInit && _this.props.onInit();\n      if (_this.props.lazyLoad) {\n        var slidesToLoad = getOnDemandLazySlides(_objectSpread(_objectSpread({}, _this.props), _this.state));\n        if (slidesToLoad.length > 0) {\n          _this.setState(function (prevState) {\n            return {\n              lazyLoadedList: prevState.lazyLoadedList.concat(slidesToLoad)\n            };\n          });\n          if (_this.props.onLazyLoad) {\n            _this.props.onLazyLoad(slidesToLoad);\n          }\n        }\n      }\n      var spec = _objectSpread({\n        listRef: _this.list,\n        trackRef: _this.track\n      }, _this.props);\n      _this.updateState(spec, true, function () {\n        _this.adaptHeight();\n        _this.props.autoplay && _this.autoPlay(\"playing\");\n      });\n      if (_this.props.lazyLoad === \"progressive\") {\n        _this.lazyLoadTimer = setInterval(_this.progressiveLazyLoad, 1000);\n      }\n      _this.ro = new ResizeObserver(function () {\n        if (_this.state.animating) {\n          _this.onWindowResized(false); // don't set trackStyle hence don't break animation\n          _this.callbackTimers.push(setTimeout(function () {\n            return _this.onWindowResized();\n          }, _this.props.speed));\n        } else {\n          _this.onWindowResized();\n        }\n      });\n      _this.ro.observe(_this.list);\n      document.querySelectorAll && Array.prototype.forEach.call(document.querySelectorAll(\".slick-slide\"), function (slide) {\n        slide.onfocus = _this.props.pauseOnFocus ? _this.onSlideFocus : null;\n        slide.onblur = _this.props.pauseOnFocus ? _this.onSlideBlur : null;\n      });\n      if (window.addEventListener) {\n        window.addEventListener(\"resize\", _this.onWindowResized);\n      } else {\n        window.attachEvent(\"onresize\", _this.onWindowResized);\n      }\n    });\n    _defineProperty(_assertThisInitialized(_this), \"componentWillUnmount\", function () {\n      if (_this.animationEndCallback) {\n        clearTimeout(_this.animationEndCallback);\n      }\n      if (_this.lazyLoadTimer) {\n        clearInterval(_this.lazyLoadTimer);\n      }\n      if (_this.callbackTimers.length) {\n        _this.callbackTimers.forEach(function (timer) {\n          return clearTimeout(timer);\n        });\n        _this.callbackTimers = [];\n      }\n      if (window.addEventListener) {\n        window.removeEventListener(\"resize\", _this.onWindowResized);\n      } else {\n        window.detachEvent(\"onresize\", _this.onWindowResized);\n      }\n      if (_this.autoplayTimer) {\n        clearInterval(_this.autoplayTimer);\n      }\n      _this.ro.disconnect();\n    });\n    _defineProperty(_assertThisInitialized(_this), \"componentDidUpdate\", function (prevProps) {\n      _this.checkImagesLoad();\n      _this.props.onReInit && _this.props.onReInit();\n      if (_this.props.lazyLoad) {\n        var slidesToLoad = getOnDemandLazySlides(_objectSpread(_objectSpread({}, _this.props), _this.state));\n        if (slidesToLoad.length > 0) {\n          _this.setState(function (prevState) {\n            return {\n              lazyLoadedList: prevState.lazyLoadedList.concat(slidesToLoad)\n            };\n          });\n          if (_this.props.onLazyLoad) {\n            _this.props.onLazyLoad(slidesToLoad);\n          }\n        }\n      }\n      // if (this.props.onLazyLoad) {\n      //   this.props.onLazyLoad([leftMostSlide])\n      // }\n      _this.adaptHeight();\n      var spec = _objectSpread(_objectSpread({\n        listRef: _this.list,\n        trackRef: _this.track\n      }, _this.props), _this.state);\n      var setTrackStyle = _this.didPropsChange(prevProps);\n      setTrackStyle && _this.updateState(spec, setTrackStyle, function () {\n        if (_this.state.currentSlide >= React.Children.count(_this.props.children)) {\n          _this.changeSlide({\n            message: \"index\",\n            index: React.Children.count(_this.props.children) - _this.props.slidesToShow,\n            currentSlide: _this.state.currentSlide\n          });\n        }\n        if (prevProps.autoplay !== _this.props.autoplay || prevProps.autoplaySpeed !== _this.props.autoplaySpeed) {\n          if (!prevProps.autoplay && _this.props.autoplay) {\n            _this.autoPlay(\"playing\");\n          } else if (_this.props.autoplay) {\n            _this.autoPlay(\"update\");\n          } else {\n            _this.pause(\"paused\");\n          }\n        }\n      });\n    });\n    _defineProperty(_assertThisInitialized(_this), \"onWindowResized\", function (setTrackStyle) {\n      if (_this.debouncedResize) _this.debouncedResize.cancel();\n      _this.debouncedResize = debounce(50, function () {\n        return _this.resizeWindow(setTrackStyle);\n      });\n      _this.debouncedResize();\n    });\n    _defineProperty(_assertThisInitialized(_this), \"resizeWindow\", function () {\n      var setTrackStyle = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n      var isTrackMounted = Boolean(_this.track && _this.track.node);\n      // prevent warning: setting state on unmounted component (server side rendering)\n      if (!isTrackMounted) return;\n      var spec = _objectSpread(_objectSpread({\n        listRef: _this.list,\n        trackRef: _this.track\n      }, _this.props), _this.state);\n      _this.updateState(spec, setTrackStyle, function () {\n        if (_this.props.autoplay) _this.autoPlay(\"update\");else _this.pause(\"paused\");\n      });\n      // animating state should be cleared while resizing, otherwise autoplay stops working\n      _this.setState({\n        animating: false\n      });\n      clearTimeout(_this.animationEndCallback);\n      delete _this.animationEndCallback;\n    });\n    _defineProperty(_assertThisInitialized(_this), \"updateState\", function (spec, setTrackStyle, callback) {\n      var updatedState = initializedState(spec);\n      spec = _objectSpread(_objectSpread(_objectSpread({}, spec), updatedState), {}, {\n        slideIndex: updatedState.currentSlide\n      });\n      var targetLeft = getTrackLeft(spec);\n      spec = _objectSpread(_objectSpread({}, spec), {}, {\n        left: targetLeft\n      });\n      var trackStyle = getTrackCSS(spec);\n      if (setTrackStyle || React.Children.count(_this.props.children) !== React.Children.count(spec.children)) {\n        updatedState[\"trackStyle\"] = trackStyle;\n      }\n      _this.setState(updatedState, callback);\n    });\n    _defineProperty(_assertThisInitialized(_this), \"ssrInit\", function () {\n      if (_this.props.variableWidth) {\n        var _trackWidth = 0,\n          _trackLeft = 0;\n        var childrenWidths = [];\n        var preClones = getPreClones(_objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n          slideCount: _this.props.children.length\n        }));\n        var postClones = getPostClones(_objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n          slideCount: _this.props.children.length\n        }));\n        _this.props.children.forEach(function (child) {\n          childrenWidths.push(child.props.style.width);\n          _trackWidth += child.props.style.width;\n        });\n        for (var i = 0; i < preClones; i++) {\n          _trackLeft += childrenWidths[childrenWidths.length - 1 - i];\n          _trackWidth += childrenWidths[childrenWidths.length - 1 - i];\n        }\n        for (var _i = 0; _i < postClones; _i++) {\n          _trackWidth += childrenWidths[_i];\n        }\n        for (var _i2 = 0; _i2 < _this.state.currentSlide; _i2++) {\n          _trackLeft += childrenWidths[_i2];\n        }\n        var _trackStyle = {\n          width: _trackWidth + \"px\",\n          left: -_trackLeft + \"px\"\n        };\n        if (_this.props.centerMode) {\n          var currentWidth = \"\".concat(childrenWidths[_this.state.currentSlide], \"px\");\n          _trackStyle.left = \"calc(\".concat(_trackStyle.left, \" + (100% - \").concat(currentWidth, \") / 2 ) \");\n        }\n        return {\n          trackStyle: _trackStyle\n        };\n      }\n      var childrenCount = React.Children.count(_this.props.children);\n      var spec = _objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n        slideCount: childrenCount\n      });\n      var slideCount = getPreClones(spec) + getPostClones(spec) + childrenCount;\n      var trackWidth = 100 / _this.props.slidesToShow * slideCount;\n      var slideWidth = 100 / slideCount;\n      var trackLeft = -slideWidth * (getPreClones(spec) + _this.state.currentSlide) * trackWidth / 100;\n      if (_this.props.centerMode) {\n        trackLeft += (100 - slideWidth * trackWidth / 100) / 2;\n      }\n      var trackStyle = {\n        width: trackWidth + \"%\",\n        left: trackLeft + \"%\"\n      };\n      return {\n        slideWidth: slideWidth + \"%\",\n        trackStyle: trackStyle\n      };\n    });\n    _defineProperty(_assertThisInitialized(_this), \"checkImagesLoad\", function () {\n      var images = _this.list && _this.list.querySelectorAll && _this.list.querySelectorAll(\".slick-slide img\") || [];\n      var imagesCount = images.length,\n        loadedCount = 0;\n      Array.prototype.forEach.call(images, function (image) {\n        var handler = function handler() {\n          return ++loadedCount && loadedCount >= imagesCount && _this.onWindowResized();\n        };\n        if (!image.onclick) {\n          image.onclick = function () {\n            return image.parentNode.focus();\n          };\n        } else {\n          var prevClickHandler = image.onclick;\n          image.onclick = function (e) {\n            prevClickHandler(e);\n            image.parentNode.focus();\n          };\n        }\n        if (!image.onload) {\n          if (_this.props.lazyLoad) {\n            image.onload = function () {\n              _this.adaptHeight();\n              _this.callbackTimers.push(setTimeout(_this.onWindowResized, _this.props.speed));\n            };\n          } else {\n            image.onload = handler;\n            image.onerror = function () {\n              handler();\n              _this.props.onLazyLoadError && _this.props.onLazyLoadError();\n            };\n          }\n        }\n      });\n    });\n    _defineProperty(_assertThisInitialized(_this), \"progressiveLazyLoad\", function () {\n      var slidesToLoad = [];\n      var spec = _objectSpread(_objectSpread({}, _this.props), _this.state);\n      for (var index = _this.state.currentSlide; index < _this.state.slideCount + getPostClones(spec); index++) {\n        if (_this.state.lazyLoadedList.indexOf(index) < 0) {\n          slidesToLoad.push(index);\n          break;\n        }\n      }\n      for (var _index = _this.state.currentSlide - 1; _index >= -getPreClones(spec); _index--) {\n        if (_this.state.lazyLoadedList.indexOf(_index) < 0) {\n          slidesToLoad.push(_index);\n          break;\n        }\n      }\n      if (slidesToLoad.length > 0) {\n        _this.setState(function (state) {\n          return {\n            lazyLoadedList: state.lazyLoadedList.concat(slidesToLoad)\n          };\n        });\n        if (_this.props.onLazyLoad) {\n          _this.props.onLazyLoad(slidesToLoad);\n        }\n      } else {\n        if (_this.lazyLoadTimer) {\n          clearInterval(_this.lazyLoadTimer);\n          delete _this.lazyLoadTimer;\n        }\n      }\n    });\n    _defineProperty(_assertThisInitialized(_this), \"slideHandler\", function (index) {\n      var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n      var _this$props = _this.props,\n        asNavFor = _this$props.asNavFor,\n        beforeChange = _this$props.beforeChange,\n        onLazyLoad = _this$props.onLazyLoad,\n        speed = _this$props.speed,\n        afterChange = _this$props.afterChange;\n      // capture currentslide before state is updated\n      var currentSlide = _this.state.currentSlide;\n      var _slideHandler = slideHandler(_objectSpread(_objectSpread(_objectSpread({\n          index: index\n        }, _this.props), _this.state), {}, {\n          trackRef: _this.track,\n          useCSS: _this.props.useCSS && !dontAnimate\n        })),\n        state = _slideHandler.state,\n        nextState = _slideHandler.nextState;\n      if (!state) return;\n      beforeChange && beforeChange(currentSlide, state.currentSlide);\n      var slidesToLoad = state.lazyLoadedList.filter(function (value) {\n        return _this.state.lazyLoadedList.indexOf(value) < 0;\n      });\n      onLazyLoad && slidesToLoad.length > 0 && onLazyLoad(slidesToLoad);\n      if (!_this.props.waitForAnimate && _this.animationEndCallback) {\n        clearTimeout(_this.animationEndCallback);\n        afterChange && afterChange(currentSlide);\n        delete _this.animationEndCallback;\n      }\n      _this.setState(state, function () {\n        // asNavForIndex check is to avoid recursive calls of slideHandler in waitForAnimate=false mode\n        if (asNavFor && _this.asNavForIndex !== index) {\n          _this.asNavForIndex = index;\n          asNavFor.innerSlider.slideHandler(index);\n        }\n        if (!nextState) return;\n        _this.animationEndCallback = setTimeout(function () {\n          var animating = nextState.animating,\n            firstBatch = _objectWithoutProperties(nextState, _excluded);\n          _this.setState(firstBatch, function () {\n            _this.callbackTimers.push(setTimeout(function () {\n              return _this.setState({\n                animating: animating\n              });\n            }, 10));\n            afterChange && afterChange(state.currentSlide);\n            delete _this.animationEndCallback;\n          });\n        }, speed);\n      });\n    });\n    _defineProperty(_assertThisInitialized(_this), \"changeSlide\", function (options) {\n      var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n      var spec = _objectSpread(_objectSpread({}, _this.props), _this.state);\n      var targetSlide = changeSlide(spec, options);\n      if (targetSlide !== 0 && !targetSlide) return;\n      if (dontAnimate === true) {\n        _this.slideHandler(targetSlide, dontAnimate);\n      } else {\n        _this.slideHandler(targetSlide);\n      }\n      _this.props.autoplay && _this.autoPlay(\"update\");\n      if (_this.props.focusOnSelect) {\n        var nodes = _this.list.querySelectorAll(\".slick-current\");\n        nodes[0] && nodes[0].focus();\n      }\n    });\n    _defineProperty(_assertThisInitialized(_this), \"clickHandler\", function (e) {\n      if (_this.clickable === false) {\n        e.stopPropagation();\n        e.preventDefault();\n      }\n      _this.clickable = true;\n    });\n    _defineProperty(_assertThisInitialized(_this), \"keyHandler\", function (e) {\n      var dir = keyHandler(e, _this.props.accessibility, _this.props.rtl);\n      dir !== \"\" && _this.changeSlide({\n        message: dir\n      });\n    });\n    _defineProperty(_assertThisInitialized(_this), \"selectHandler\", function (options) {\n      _this.changeSlide(options);\n    });\n    _defineProperty(_assertThisInitialized(_this), \"disableBodyScroll\", function () {\n      var preventDefault = function preventDefault(e) {\n        e = e || window.event;\n        if (e.preventDefault) e.preventDefault();\n        e.returnValue = false;\n      };\n      window.ontouchmove = preventDefault;\n    });\n    _defineProperty(_assertThisInitialized(_this), \"enableBodyScroll\", function () {\n      window.ontouchmove = null;\n    });\n    _defineProperty(_assertThisInitialized(_this), \"swipeStart\", function (e) {\n      if (_this.props.verticalSwiping) {\n        _this.disableBodyScroll();\n      }\n      var state = swipeStart(e, _this.props.swipe, _this.props.draggable);\n      state !== \"\" && _this.setState(state);\n    });\n    _defineProperty(_assertThisInitialized(_this), \"swipeMove\", function (e) {\n      var state = swipeMove(e, _objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n        trackRef: _this.track,\n        listRef: _this.list,\n        slideIndex: _this.state.currentSlide\n      }));\n      if (!state) return;\n      if (state[\"swiping\"]) {\n        _this.clickable = false;\n      }\n      _this.setState(state);\n    });\n    _defineProperty(_assertThisInitialized(_this), \"swipeEnd\", function (e) {\n      var state = swipeEnd(e, _objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n        trackRef: _this.track,\n        listRef: _this.list,\n        slideIndex: _this.state.currentSlide\n      }));\n      if (!state) return;\n      var triggerSlideHandler = state[\"triggerSlideHandler\"];\n      delete state[\"triggerSlideHandler\"];\n      _this.setState(state);\n      if (triggerSlideHandler === undefined) return;\n      _this.slideHandler(triggerSlideHandler);\n      if (_this.props.verticalSwiping) {\n        _this.enableBodyScroll();\n      }\n    });\n    _defineProperty(_assertThisInitialized(_this), \"touchEnd\", function (e) {\n      _this.swipeEnd(e);\n      _this.clickable = true;\n    });\n    _defineProperty(_assertThisInitialized(_this), \"slickPrev\", function () {\n      // this and fellow methods are wrapped in setTimeout\n      // to make sure initialize setState has happened before\n      // any of such methods are called\n      _this.callbackTimers.push(setTimeout(function () {\n        return _this.changeSlide({\n          message: \"previous\"\n        });\n      }, 0));\n    });\n    _defineProperty(_assertThisInitialized(_this), \"slickNext\", function () {\n      _this.callbackTimers.push(setTimeout(function () {\n        return _this.changeSlide({\n          message: \"next\"\n        });\n      }, 0));\n    });\n    _defineProperty(_assertThisInitialized(_this), \"slickGoTo\", function (slide) {\n      var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n      slide = Number(slide);\n      if (isNaN(slide)) return \"\";\n      _this.callbackTimers.push(setTimeout(function () {\n        return _this.changeSlide({\n          message: \"index\",\n          index: slide,\n          currentSlide: _this.state.currentSlide\n        }, dontAnimate);\n      }, 0));\n    });\n    _defineProperty(_assertThisInitialized(_this), \"play\", function () {\n      var nextIndex;\n      if (_this.props.rtl) {\n        nextIndex = _this.state.currentSlide - _this.props.slidesToScroll;\n      } else {\n        if (canGoNext(_objectSpread(_objectSpread({}, _this.props), _this.state))) {\n          nextIndex = _this.state.currentSlide + _this.props.slidesToScroll;\n        } else {\n          return false;\n        }\n      }\n      _this.slideHandler(nextIndex);\n    });\n    _defineProperty(_assertThisInitialized(_this), \"autoPlay\", function (playType) {\n      if (_this.autoplayTimer) {\n        clearInterval(_this.autoplayTimer);\n      }\n      var autoplaying = _this.state.autoplaying;\n      if (playType === \"update\") {\n        if (autoplaying === \"hovered\" || autoplaying === \"focused\" || autoplaying === \"paused\") {\n          return;\n        }\n      } else if (playType === \"leave\") {\n        if (autoplaying === \"paused\" || autoplaying === \"focused\") {\n          return;\n        }\n      } else if (playType === \"blur\") {\n        if (autoplaying === \"paused\" || autoplaying === \"hovered\") {\n          return;\n        }\n      }\n      _this.autoplayTimer = setInterval(_this.play, _this.props.autoplaySpeed + 50);\n      _this.setState({\n        autoplaying: \"playing\"\n      });\n    });\n    _defineProperty(_assertThisInitialized(_this), \"pause\", function (pauseType) {\n      if (_this.autoplayTimer) {\n        clearInterval(_this.autoplayTimer);\n        _this.autoplayTimer = null;\n      }\n      var autoplaying = _this.state.autoplaying;\n      if (pauseType === \"paused\") {\n        _this.setState({\n          autoplaying: \"paused\"\n        });\n      } else if (pauseType === \"focused\") {\n        if (autoplaying === \"hovered\" || autoplaying === \"playing\") {\n          _this.setState({\n            autoplaying: \"focused\"\n          });\n        }\n      } else {\n        // pauseType  is 'hovered'\n        if (autoplaying === \"playing\") {\n          _this.setState({\n            autoplaying: \"hovered\"\n          });\n        }\n      }\n    });\n    _defineProperty(_assertThisInitialized(_this), \"onDotsOver\", function () {\n      return _this.props.autoplay && _this.pause(\"hovered\");\n    });\n    _defineProperty(_assertThisInitialized(_this), \"onDotsLeave\", function () {\n      return _this.props.autoplay && _this.state.autoplaying === \"hovered\" && _this.autoPlay(\"leave\");\n    });\n    _defineProperty(_assertThisInitialized(_this), \"onTrackOver\", function () {\n      return _this.props.autoplay && _this.pause(\"hovered\");\n    });\n    _defineProperty(_assertThisInitialized(_this), \"onTrackLeave\", function () {\n      return _this.props.autoplay && _this.state.autoplaying === \"hovered\" && _this.autoPlay(\"leave\");\n    });\n    _defineProperty(_assertThisInitialized(_this), \"onSlideFocus\", function () {\n      return _this.props.autoplay && _this.pause(\"focused\");\n    });\n    _defineProperty(_assertThisInitialized(_this), \"onSlideBlur\", function () {\n      return _this.props.autoplay && _this.state.autoplaying === \"focused\" && _this.autoPlay(\"blur\");\n    });\n    _defineProperty(_assertThisInitialized(_this), \"render\", function () {\n      var className = classnames(\"slick-slider\", _this.props.className, {\n        \"slick-vertical\": _this.props.vertical,\n        \"slick-initialized\": true\n      });\n      var spec = _objectSpread(_objectSpread({}, _this.props), _this.state);\n      var trackProps = extractObject(spec, [\"fade\", \"cssEase\", \"speed\", \"infinite\", \"centerMode\", \"focusOnSelect\", \"currentSlide\", \"lazyLoad\", \"lazyLoadedList\", \"rtl\", \"slideWidth\", \"slideHeight\", \"listHeight\", \"vertical\", \"slidesToShow\", \"slidesToScroll\", \"slideCount\", \"trackStyle\", \"variableWidth\", \"unslick\", \"centerPadding\", \"targetSlide\", \"useCSS\"]);\n      var pauseOnHover = _this.props.pauseOnHover;\n      trackProps = _objectSpread(_objectSpread({}, trackProps), {}, {\n        onMouseEnter: pauseOnHover ? _this.onTrackOver : null,\n        onMouseLeave: pauseOnHover ? _this.onTrackLeave : null,\n        onMouseOver: pauseOnHover ? _this.onTrackOver : null,\n        focusOnSelect: _this.props.focusOnSelect && _this.clickable ? _this.selectHandler : null\n      });\n      var dots;\n      if (_this.props.dots === true && _this.state.slideCount >= _this.props.slidesToShow) {\n        var dotProps = extractObject(spec, [\"dotsClass\", \"slideCount\", \"slidesToShow\", \"currentSlide\", \"slidesToScroll\", \"clickHandler\", \"children\", \"customPaging\", \"infinite\", \"appendDots\"]);\n        var pauseOnDotsHover = _this.props.pauseOnDotsHover;\n        dotProps = _objectSpread(_objectSpread({}, dotProps), {}, {\n          clickHandler: _this.changeSlide,\n          onMouseEnter: pauseOnDotsHover ? _this.onDotsLeave : null,\n          onMouseOver: pauseOnDotsHover ? _this.onDotsOver : null,\n          onMouseLeave: pauseOnDotsHover ? _this.onDotsLeave : null\n        });\n        dots = /*#__PURE__*/React.createElement(Dots, dotProps);\n      }\n      var prevArrow, nextArrow;\n      var arrowProps = extractObject(spec, [\"infinite\", \"centerMode\", \"currentSlide\", \"slideCount\", \"slidesToShow\", \"prevArrow\", \"nextArrow\"]);\n      arrowProps.clickHandler = _this.changeSlide;\n      if (_this.props.arrows) {\n        prevArrow = /*#__PURE__*/React.createElement(PrevArrow, arrowProps);\n        nextArrow = /*#__PURE__*/React.createElement(NextArrow, arrowProps);\n      }\n      var verticalHeightStyle = null;\n      if (_this.props.vertical) {\n        verticalHeightStyle = {\n          height: _this.state.listHeight\n        };\n      }\n      var centerPaddingStyle = null;\n      if (_this.props.vertical === false) {\n        if (_this.props.centerMode === true) {\n          centerPaddingStyle = {\n            padding: \"0px \" + _this.props.centerPadding\n          };\n        }\n      } else {\n        if (_this.props.centerMode === true) {\n          centerPaddingStyle = {\n            padding: _this.props.centerPadding + \" 0px\"\n          };\n        }\n      }\n      var listStyle = _objectSpread(_objectSpread({}, verticalHeightStyle), centerPaddingStyle);\n      var touchMove = _this.props.touchMove;\n      var listProps = {\n        className: \"slick-list\",\n        style: listStyle,\n        onClick: _this.clickHandler,\n        onMouseDown: touchMove ? _this.swipeStart : null,\n        onMouseMove: _this.state.dragging && touchMove ? _this.swipeMove : null,\n        onMouseUp: touchMove ? _this.swipeEnd : null,\n        onMouseLeave: _this.state.dragging && touchMove ? _this.swipeEnd : null,\n        onTouchStart: touchMove ? _this.swipeStart : null,\n        onTouchMove: _this.state.dragging && touchMove ? _this.swipeMove : null,\n        onTouchEnd: touchMove ? _this.touchEnd : null,\n        onTouchCancel: _this.state.dragging && touchMove ? _this.swipeEnd : null,\n        onKeyDown: _this.props.accessibility ? _this.keyHandler : null\n      };\n      var innerSliderProps = {\n        className: className,\n        dir: \"ltr\",\n        style: _this.props.style\n      };\n      if (_this.props.unslick) {\n        listProps = {\n          className: \"slick-list\"\n        };\n        innerSliderProps = {\n          className: className,\n          style: _this.props.style\n        };\n      }\n      return /*#__PURE__*/React.createElement(\"div\", innerSliderProps, !_this.props.unslick ? prevArrow : \"\", /*#__PURE__*/React.createElement(\"div\", _extends({\n        ref: _this.listRefHandler\n      }, listProps), /*#__PURE__*/React.createElement(Track, _extends({\n        ref: _this.trackRefHandler\n      }, trackProps), _this.props.children)), !_this.props.unslick ? nextArrow : \"\", !_this.props.unslick ? dots : \"\");\n    });\n    _this.list = null;\n    _this.track = null;\n    _this.state = _objectSpread(_objectSpread({}, initialState), {}, {\n      currentSlide: _this.props.initialSlide,\n      slideCount: React.Children.count(_this.props.children)\n    });\n    _this.callbackTimers = [];\n    _this.clickable = true;\n    _this.debouncedResize = null;\n    var ssrState = _this.ssrInit();\n    _this.state = _objectSpread(_objectSpread({}, _this.state), ssrState);\n    return _this;\n  }\n  _createClass(InnerSlider, [{\n    key: \"didPropsChange\",\n    value: function didPropsChange(prevProps) {\n      var setTrackStyle = false;\n      for (var _i3 = 0, _Object$keys = Object.keys(this.props); _i3 < _Object$keys.length; _i3++) {\n        var key = _Object$keys[_i3];\n        // eslint-disable-next-line no-prototype-builtins\n        if (!prevProps.hasOwnProperty(key)) {\n          setTrackStyle = true;\n          break;\n        }\n        if (_typeof(prevProps[key]) === \"object\" || typeof prevProps[key] === \"function\") {\n          continue;\n        }\n        if (prevProps[key] !== this.props[key]) {\n          setTrackStyle = true;\n          break;\n        }\n      }\n      return setTrackStyle || React.Children.count(this.props.children) !== React.Children.count(prevProps.children);\n    }\n  }]);\n  return InnerSlider;\n}(React.Component);"],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]}