{"version":3,"sources":["../node_modules/react-responsive-carousel/lib/js/index.js","../node_modules/react-easy-swipe/lib/index.js","../node_modules/react-responsive-carousel/lib/js/cssClasses.js","../node_modules/react-responsive-carousel/lib/js/CSSTranslate.js","../node_modules/react-responsive-carousel/lib/js/components/Thumbs.js","../node_modules/react-responsive-carousel/lib/js/shims/window.js","../node_modules/react-responsive-carousel/lib/js/components/Carousel.js","../node_modules/react-easy-swipe/lib/react-swipe.js","../node_modules/react-responsive-carousel/lib/js/dimensions.js","../node_modules/react-responsive-carousel/lib/js/shims/document.js"],"names":["Object","defineProperty","exports","value","enumerable","get","_Carousel","default","_types","CarouselProps","_Thumbs","_interopRequireDefault","require","obj","__esModule","define","_reactSwipe","_reactSwipe2","_classnames","_default","ROOT","customClassName","key","configurable","writable","_defineProperty","CAROUSEL","isSlider","carousel","WRAPPER","axis","SLIDER","isSwiping","thumbs","slider","animated","ITEM","selected","previous","thumb","slide","ARROW_PREV","disabled","ARROW_NEXT","DOT","dot","position","metric","positionPercent","join","_react","_typeof","cache","_getRequireWildcardCache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","prototype","hasOwnProperty","call","desc","set","_interopRequireWildcard","_cssClasses","_dimensions","_CSSTranslate","_reactEasySwipe","_window","WeakMap","Symbol","iterator","constructor","_extends","assign","target","i","arguments","length","source","apply","this","_defineProperties","props","descriptor","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Date","toString","e","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","getPrototypeOf","Thumbs","_Component","subClass","superClass","TypeError","create","_inherits","Constructor","protoProps","staticProps","_super","_props","_this","instance","_classCallCheck","node","itemsWrapperRef","itemsListRef","index","thumbsRef","children","total","Children","count","wrapperSize","clientWidth","itemSize","thumbWidth","outerWidth","visibleItems","Math","floor","showArrows","lastPosition","setState","_state","firstItem","getFirstItem","selectedItem","item","isKeyboardEvent","handler","onSelectItem","swiping","delta","deltaX","x","state","childrenLength","currentPosition","max","forEach","prop","style","positions","moveTo","setupThumbs","prevProps","updateSizes","destroyThumbs","addEventListener","removeEventListener","_this2","map","img","itemClass","thumbProps","ref","setThumbsRef","className","onClick","handleClickItem","bind","onKeyDown","concat","labels","width","createElement","role","tabIndex","_this3","itemListStyles","isSwipeable","hasPrev","hasNext","transformProp","transitionTime","WebkitTransform","MozTransform","MsTransform","OTransform","transform","msTransform","WebkitTransitionDuration","MozTransitionDuration","MsTransitionDuration","OTransitionDuration","transitionDuration","msTransitionDuration","setItemsWrapperRef","type","slideRight","leftArrow","tagName","onSwipeLeft","slideLeft","onSwipeRight","onSwipeMove","onSwipeStart","onSwipeEnd","innerRef","setItemsListRef","allowMouseEvents","emulateTouch","renderItems","rightArrow","Component","window","_reactDom","_document","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","push","_objectSpread","getOwnPropertyDescriptors","defineProperties","noop","Carousel","_React$Component","carouselWrapperRef","listRef","itemsRef","clearAutoPlay","timer","setTimeout","increment","interval","clearTimeout","autoPlay","isMouseEntered","activeElement","contains","isFocusWithinTheCarousel","isHorizontal","prevKey","keyCode","decrement","initialized","clientHeight","hasMount","cancelClick","onClickItem","onChange","onClickThumb","event","swipeMovementStarted","getPosition","finalBoundry","infiniteLoop","axisDelta","y","handledDelta","hasMoved","abs","swipeScrollTolerance","preventMovementUntilSwipeScrollTolerance","setPosition","forceReflow","list","findDOMNode","HTMLElement","offsetLeft","undefined","fromSwipe","needClonedSlide","oldPosition","centerMode","centerSlidePercentage","selectItem","resetAutoPlay","newIndex","cb","handleOnChange","toArray","getElementsByTagName","slideImages","image","complete","onImageLoad","forceUpdate","height","setupCarousel","prevState","autoFocus","forceFocus","resetPosition","setupAutoPlay","destroyAutoPlay","destroyCarousel","bindEvents","initialImage","getInitialImage","setMountState","unbindEvents","carouselWrapper","stopOnHover","startOnLeave","useKeyboardArrows","navigateWithKeyboard","_this$carouselWrapper","focus","isClone","slideProps","setItemsRef","extraProps","minWidth","renderItem","isSelected","_this4","_this$props","showIndicators","renderIndicator","_","changeItem","showStatus","statusFormatter","showThumbs","handleClickThumb","renderThumbs","_this5","swipeable","canShowArrows","itemsClone","firstClone","shift","lastClone","pop","swiperProps","tolerance","containerStyles","onSwipeForward","onSwipeBackwards","dynamicHeight","itemHeight","getVariableItemHeight","onSwipeUp","verticalSwipe","onSwipeDown","setCarouselWrapperRef","renderControls","renderArrowPrev","onClickPrev","setListRef","renderArrowNext","onClickNext","renderStatus","onClickHandler","label","images","find","console","warn","current","_propTypes","setHasSupportToCaptureOption","_react2","_propTypes2","_createClass","supportsCaptureOption","hasSupport","getSafeEventHandlerOpts","options","capture","_event$touches$","touches","pageX","pageY","screenX","screenY","ReactSwipe","_ref","_len","args","Array","_key","_handleSwipeStart","_handleSwipeMove","_handleSwipeEnd","_onMouseDown","_onMouseMove","_onMouseUp","_setSwiperRef","swiper","passive","mouseDown","document","_getPosition","moveStart","_getPosition2","deltaY","moving","cancelable","preventDefault","movePosition","indexOf","_objectWithoutProperties","onMouseDown","onTouchStart","onTouchEnd","displayName","propTypes","string","bool","func","number","isRequired","defaultProps","el","offsetWidth","getComputedStyle","parseInt","marginLeft","marginRight"],"mappings":"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","file":"static/js/3.81799a46.chunk.js","sourcesContent":["\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"Carousel\", {\n enumerable: true,\n get: function get() {\n return _Carousel.default;\n }\n});\nObject.defineProperty(exports, \"CarouselProps\", {\n enumerable: true,\n get: function get() {\n return _types.CarouselProps;\n }\n});\nObject.defineProperty(exports, \"Thumbs\", {\n enumerable: true,\n get: function get() {\n return _Thumbs.default;\n }\n});\n\nvar _Carousel = _interopRequireDefault(require(\"./components/Carousel\"));\n\nvar _types = require(\"./components/Carousel/types\");\n\nvar _Thumbs = _interopRequireDefault(require(\"./components/Thumbs\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports', './react-swipe'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports, require('./react-swipe'));\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports, global.reactSwipe);\n global.index = mod.exports;\n }\n})(this, function (exports, _reactSwipe) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n\n var _reactSwipe2 = _interopRequireDefault(_reactSwipe);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n exports.default = _reactSwipe2.default;\n});","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _classnames = _interopRequireDefault(require(\"classnames\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n ROOT: function ROOT(customClassName) {\n return (0, _classnames.default)(_defineProperty({\n 'carousel-root': true\n }, customClassName || '', !!customClassName));\n },\n CAROUSEL: function CAROUSEL(isSlider) {\n return (0, _classnames.default)({\n carousel: true,\n 'carousel-slider': isSlider\n });\n },\n WRAPPER: function WRAPPER(isSlider, axis) {\n return (0, _classnames.default)({\n 'thumbs-wrapper': !isSlider,\n 'slider-wrapper': isSlider,\n 'axis-horizontal': axis === 'horizontal',\n 'axis-vertical': axis !== 'horizontal'\n });\n },\n SLIDER: function SLIDER(isSlider, isSwiping) {\n return (0, _classnames.default)({\n thumbs: !isSlider,\n slider: isSlider,\n animated: !isSwiping\n });\n },\n ITEM: function ITEM(isSlider, selected, previous) {\n return (0, _classnames.default)({\n thumb: !isSlider,\n slide: isSlider,\n selected: selected,\n previous: previous\n });\n },\n ARROW_PREV: function ARROW_PREV(disabled) {\n return (0, _classnames.default)({\n 'control-arrow control-prev': true,\n 'control-disabled': disabled\n });\n },\n ARROW_NEXT: function ARROW_NEXT(disabled) {\n return (0, _classnames.default)({\n 'control-arrow control-next': true,\n 'control-disabled': disabled\n });\n },\n DOT: function DOT(selected) {\n return (0, _classnames.default)({\n dot: true,\n selected: selected\n });\n }\n};\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _default = function _default(position, metric, axis) {\n var positionPercent = position === 0 ? position : position + metric;\n var positionCss = axis === 'horizontal' ? [positionPercent, 0, 0] : [0, positionPercent, 0];\n var transitionProp = 'translate3d';\n var translatedPosition = '(' + positionCss.join(',') + ')';\n return transitionProp + translatedPosition;\n};\n\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _cssClasses = _interopRequireDefault(require(\"../cssClasses\"));\n\nvar _dimensions = require(\"../dimensions\");\n\nvar _CSSTranslate = _interopRequireDefault(require(\"../CSSTranslate\"));\n\nvar _reactEasySwipe = _interopRequireDefault(require(\"react-easy-swipe\"));\n\nvar _window = _interopRequireDefault(require(\"../shims/window\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar isKeyboardEvent = function isKeyboardEvent(e) {\n return e.hasOwnProperty('key');\n};\n\nvar Thumbs = /*#__PURE__*/function (_Component) {\n _inherits(Thumbs, _Component);\n\n var _super = _createSuper(Thumbs);\n\n function Thumbs(_props) {\n var _this;\n\n _classCallCheck(this, Thumbs);\n\n _this = _super.call(this, _props);\n\n _defineProperty(_assertThisInitialized(_this), \"itemsWrapperRef\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"itemsListRef\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"thumbsRef\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"setItemsWrapperRef\", function (node) {\n _this.itemsWrapperRef = node;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"setItemsListRef\", function (node) {\n _this.itemsListRef = node;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"setThumbsRef\", function (node, index) {\n if (!_this.thumbsRef) {\n _this.thumbsRef = [];\n }\n\n _this.thumbsRef[index] = node;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"updateSizes\", function () {\n if (!_this.props.children || !_this.itemsWrapperRef || !_this.thumbsRef) {\n return;\n }\n\n var total = _react.Children.count(_this.props.children);\n\n var wrapperSize = _this.itemsWrapperRef.clientWidth;\n var itemSize = _this.props.thumbWidth ? _this.props.thumbWidth : (0, _dimensions.outerWidth)(_this.thumbsRef[0]);\n var visibleItems = Math.floor(wrapperSize / itemSize);\n var showArrows = visibleItems < total;\n var lastPosition = showArrows ? total - visibleItems : 0;\n\n _this.setState(function (_state, props) {\n return {\n itemSize: itemSize,\n visibleItems: visibleItems,\n firstItem: showArrows ? _this.getFirstItem(props.selectedItem) : 0,\n lastPosition: lastPosition,\n showArrows: showArrows\n };\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleClickItem\", function (index, item, e) {\n if (!isKeyboardEvent(e) || e.key === 'Enter') {\n var handler = _this.props.onSelectItem;\n\n if (typeof handler === 'function') {\n handler(index, item);\n }\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onSwipeStart\", function () {\n _this.setState({\n swiping: true\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onSwipeEnd\", function () {\n _this.setState({\n swiping: false\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onSwipeMove\", function (delta) {\n var deltaX = delta.x;\n\n if (!_this.state.itemSize || !_this.itemsWrapperRef || !_this.state.visibleItems) {\n return false;\n }\n\n var leftBoundary = 0;\n\n var childrenLength = _react.Children.count(_this.props.children);\n\n var currentPosition = -(_this.state.firstItem * 100) / _this.state.visibleItems;\n var lastLeftItem = Math.max(childrenLength - _this.state.visibleItems, 0);\n var lastLeftBoundary = -lastLeftItem * 100 / _this.state.visibleItems; // prevent user from swiping left out of boundaries\n\n if (currentPosition === leftBoundary && deltaX > 0) {\n deltaX = 0;\n } // prevent user from swiping right out of boundaries\n\n\n if (currentPosition === lastLeftBoundary && deltaX < 0) {\n deltaX = 0;\n }\n\n var wrapperSize = _this.itemsWrapperRef.clientWidth;\n var position = currentPosition + 100 / (wrapperSize / deltaX); // if 3d isn't available we will use left to move\n\n if (_this.itemsListRef) {\n ['WebkitTransform', 'MozTransform', 'MsTransform', 'OTransform', 'transform', 'msTransform'].forEach(function (prop) {\n _this.itemsListRef.style[prop] = (0, _CSSTranslate.default)(position, '%', _this.props.axis);\n });\n }\n\n return true;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"slideRight\", function (positions) {\n _this.moveTo(_this.state.firstItem - (typeof positions === 'number' ? positions : 1));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"slideLeft\", function (positions) {\n _this.moveTo(_this.state.firstItem + (typeof positions === 'number' ? positions : 1));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"moveTo\", function (position) {\n // position can't be lower than 0\n position = position < 0 ? 0 : position; // position can't be higher than last postion\n\n position = position >= _this.state.lastPosition ? _this.state.lastPosition : position;\n\n _this.setState({\n firstItem: position\n });\n });\n\n _this.state = {\n selectedItem: _props.selectedItem,\n swiping: false,\n showArrows: false,\n firstItem: 0,\n visibleItems: 0,\n lastPosition: 0\n };\n return _this;\n }\n\n _createClass(Thumbs, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.setupThumbs();\n }\n }, {\n key: \"UNSAFE_componentWillReceiveProps\",\n value: function UNSAFE_componentWillReceiveProps(props) {\n if (props.selectedItem !== this.state.selectedItem) {\n this.setState({\n selectedItem: props.selectedItem,\n firstItem: this.getFirstItem(props.selectedItem)\n });\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps) {\n if (this.props.children === prevProps.children) {\n return;\n } // This will capture any size changes for arrow adjustments etc.\n // usually in the same render cycle so we don't see any flickers\n\n\n this.updateSizes();\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.destroyThumbs();\n }\n }, {\n key: \"setupThumbs\",\n value: function setupThumbs() {\n // as the widths are calculated, we need to resize\n // the carousel when the window is resized\n (0, _window.default)().addEventListener('resize', this.updateSizes); // issue #2 - image loading smaller\n\n (0, _window.default)().addEventListener('DOMContentLoaded', this.updateSizes); // when the component is rendered we need to calculate\n // the container size to adjust the responsive behaviour\n\n this.updateSizes();\n }\n }, {\n key: \"destroyThumbs\",\n value: function destroyThumbs() {\n // removing listeners\n (0, _window.default)().removeEventListener('resize', this.updateSizes);\n (0, _window.default)().removeEventListener('DOMContentLoaded', this.updateSizes);\n }\n }, {\n key: \"getFirstItem\",\n value: function getFirstItem(selectedItem) {\n var firstItem = selectedItem;\n\n if (selectedItem >= this.state.lastPosition) {\n firstItem = this.state.lastPosition;\n }\n\n if (selectedItem < this.state.firstItem + this.state.visibleItems) {\n firstItem = this.state.firstItem;\n }\n\n if (selectedItem < this.state.firstItem) {\n firstItem = selectedItem;\n }\n\n return firstItem;\n }\n }, {\n key: \"renderItems\",\n value: function renderItems() {\n var _this2 = this;\n\n return this.props.children.map(function (img, index) {\n var itemClass = _cssClasses.default.ITEM(false, index === _this2.state.selectedItem);\n\n var thumbProps = {\n key: index,\n ref: function ref(e) {\n return _this2.setThumbsRef(e, index);\n },\n className: itemClass,\n onClick: _this2.handleClickItem.bind(_this2, index, _this2.props.children[index]),\n onKeyDown: _this2.handleClickItem.bind(_this2, index, _this2.props.children[index]),\n 'aria-label': \"\".concat(_this2.props.labels.item, \" \").concat(index + 1),\n style: {\n width: _this2.props.thumbWidth\n }\n };\n return /*#__PURE__*/_react.default.createElement(\"li\", _extends({}, thumbProps, {\n role: \"button\",\n tabIndex: 0\n }), img);\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this3 = this;\n\n if (!this.props.children) {\n return null;\n }\n\n var isSwipeable = _react.Children.count(this.props.children) > 1; // show left arrow?\n\n var hasPrev = this.state.showArrows && this.state.firstItem > 0; // show right arrow\n\n var hasNext = this.state.showArrows && this.state.firstItem < this.state.lastPosition; // obj to hold the transformations and styles\n\n var itemListStyles = {};\n var currentPosition = -this.state.firstItem * (this.state.itemSize || 0);\n var transformProp = (0, _CSSTranslate.default)(currentPosition, 'px', this.props.axis);\n var transitionTime = this.props.transitionTime + 'ms';\n itemListStyles = {\n WebkitTransform: transformProp,\n MozTransform: transformProp,\n MsTransform: transformProp,\n OTransform: transformProp,\n transform: transformProp,\n msTransform: transformProp,\n WebkitTransitionDuration: transitionTime,\n MozTransitionDuration: transitionTime,\n MsTransitionDuration: transitionTime,\n OTransitionDuration: transitionTime,\n transitionDuration: transitionTime,\n msTransitionDuration: transitionTime\n };\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: _cssClasses.default.CAROUSEL(false)\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: _cssClasses.default.WRAPPER(false),\n ref: this.setItemsWrapperRef\n }, /*#__PURE__*/_react.default.createElement(\"button\", {\n type: \"button\",\n className: _cssClasses.default.ARROW_PREV(!hasPrev),\n onClick: function onClick() {\n return _this3.slideRight();\n },\n \"aria-label\": this.props.labels.leftArrow\n }), isSwipeable ? /*#__PURE__*/_react.default.createElement(_reactEasySwipe.default, {\n tagName: \"ul\",\n className: _cssClasses.default.SLIDER(false, this.state.swiping),\n onSwipeLeft: this.slideLeft,\n onSwipeRight: this.slideRight,\n onSwipeMove: this.onSwipeMove,\n onSwipeStart: this.onSwipeStart,\n onSwipeEnd: this.onSwipeEnd,\n style: itemListStyles,\n innerRef: this.setItemsListRef,\n allowMouseEvents: this.props.emulateTouch\n }, this.renderItems()) : /*#__PURE__*/_react.default.createElement(\"ul\", {\n className: _cssClasses.default.SLIDER(false, this.state.swiping),\n ref: function ref(node) {\n return _this3.setItemsListRef(node);\n },\n style: itemListStyles\n }, this.renderItems()), /*#__PURE__*/_react.default.createElement(\"button\", {\n type: \"button\",\n className: _cssClasses.default.ARROW_NEXT(!hasNext),\n onClick: function onClick() {\n return _this3.slideLeft();\n },\n \"aria-label\": this.props.labels.rightArrow\n })));\n }\n }]);\n\n return Thumbs;\n}(_react.Component);\n\nexports.default = Thumbs;\n\n_defineProperty(Thumbs, \"displayName\", 'Thumbs');\n\n_defineProperty(Thumbs, \"defaultProps\", {\n axis: 'horizontal',\n labels: {\n leftArrow: 'previous slide / item',\n rightArrow: 'next slide / item',\n item: 'slide item'\n },\n selectedItem: 0,\n thumbWidth: 80,\n transitionTime: 350\n});","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _default = function _default() {\n return window;\n};\n\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _reactDom = _interopRequireDefault(require(\"react-dom\"));\n\nvar _reactEasySwipe = _interopRequireDefault(require(\"react-easy-swipe\"));\n\nvar _cssClasses = _interopRequireDefault(require(\"../cssClasses\"));\n\nvar _CSSTranslate = _interopRequireDefault(require(\"../CSSTranslate\"));\n\nvar _Thumbs = _interopRequireDefault(require(\"./Thumbs\"));\n\nvar _document = _interopRequireDefault(require(\"../shims/document\"));\n\nvar _window = _interopRequireDefault(require(\"../shims/window\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar noop = function noop() {};\n\nvar defaultStatusFormatter = function defaultStatusFormatter(current, total) {\n return \"\".concat(current, \" of \").concat(total);\n};\n\nvar isKeyboardEvent = function isKeyboardEvent(e) {\n return e ? e.hasOwnProperty('key') : false;\n};\n\nvar Carousel = /*#__PURE__*/function (_React$Component) {\n _inherits(Carousel, _React$Component);\n\n var _super = _createSuper(Carousel);\n\n function Carousel(props) {\n var _this;\n\n _classCallCheck(this, Carousel);\n\n _this = _super.call(this, props);\n\n _defineProperty(_assertThisInitialized(_this), \"thumbsRef\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"carouselWrapperRef\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"listRef\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"itemsRef\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"timer\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"setThumbsRef\", function (node) {\n _this.thumbsRef = node;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"setCarouselWrapperRef\", function (node) {\n _this.carouselWrapperRef = node;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"setListRef\", function (node) {\n _this.listRef = node;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"setItemsRef\", function (node, index) {\n if (!_this.itemsRef) {\n _this.itemsRef = [];\n }\n\n _this.itemsRef[index] = node;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"autoPlay\", function () {\n if (_react.Children.count(_this.props.children) <= 1) {\n return;\n }\n\n _this.clearAutoPlay();\n\n _this.timer = setTimeout(function () {\n _this.increment();\n }, _this.props.interval);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"clearAutoPlay\", function () {\n if (_this.timer) clearTimeout(_this.timer);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"resetAutoPlay\", function () {\n _this.clearAutoPlay();\n\n _this.autoPlay();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"stopOnHover\", function () {\n _this.setState({\n isMouseEntered: true\n }, _this.clearAutoPlay);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"startOnLeave\", function () {\n _this.setState({\n isMouseEntered: false\n }, _this.autoPlay);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"isFocusWithinTheCarousel\", function () {\n if (!_this.carouselWrapperRef) {\n return false;\n }\n\n if ((0, _document.default)().activeElement === _this.carouselWrapperRef || _this.carouselWrapperRef.contains((0, _document.default)().activeElement)) {\n return true;\n }\n\n return false;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"navigateWithKeyboard\", function (e) {\n if (!_this.isFocusWithinTheCarousel()) {\n return;\n }\n\n var axis = _this.props.axis;\n var isHorizontal = axis === 'horizontal';\n var keyNames = {\n ArrowUp: 38,\n ArrowRight: 39,\n ArrowDown: 40,\n ArrowLeft: 37\n };\n var nextKey = isHorizontal ? keyNames.ArrowRight : keyNames.ArrowDown;\n var prevKey = isHorizontal ? keyNames.ArrowLeft : keyNames.ArrowUp;\n\n if (nextKey === e.keyCode) {\n _this.increment();\n } else if (prevKey === e.keyCode) {\n _this.decrement();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"updateSizes\", function () {\n if (!_this.state.initialized || !_this.itemsRef || _this.itemsRef.length === 0) {\n return;\n }\n\n var isHorizontal = _this.props.axis === 'horizontal';\n var firstItem = _this.itemsRef[0];\n\n if (!firstItem) {\n return;\n }\n\n var itemSize = isHorizontal ? firstItem.clientWidth : firstItem.clientHeight;\n\n _this.setState({\n itemSize: itemSize\n });\n\n if (_this.thumbsRef) {\n _this.thumbsRef.updateSizes();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"setMountState\", function () {\n _this.setState({\n hasMount: true\n });\n\n _this.updateSizes();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleClickItem\", function (index, item) {\n if (_react.Children.count(_this.props.children) === 0) {\n return;\n }\n\n if (_this.state.cancelClick) {\n _this.setState({\n cancelClick: false\n });\n\n return;\n }\n\n _this.props.onClickItem(index, item);\n\n if (index !== _this.state.selectedItem) {\n _this.setState({\n selectedItem: index\n });\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleOnChange\", function (index, item) {\n if (_react.Children.count(_this.props.children) <= 1) {\n return;\n }\n\n _this.props.onChange(index, item);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleClickThumb\", function (index, item) {\n _this.props.onClickThumb(index, item);\n\n _this.moveTo(index);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onSwipeStart\", function (event) {\n _this.setState({\n swiping: true\n });\n\n _this.props.onSwipeStart(event);\n\n _this.clearAutoPlay();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onSwipeEnd\", function (event) {\n _this.setState({\n swiping: false,\n cancelClick: false,\n swipeMovementStarted: false\n });\n\n _this.props.onSwipeEnd(event);\n\n _this.autoPlay();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onSwipeMove\", function (delta, event) {\n _this.props.onSwipeMove(event);\n\n var isHorizontal = _this.props.axis === 'horizontal';\n\n var childrenLength = _react.Children.count(_this.props.children);\n\n var initialBoundry = 0;\n\n var currentPosition = _this.getPosition(_this.state.selectedItem);\n\n var finalBoundry = _this.props.infiniteLoop ? _this.getPosition(childrenLength - 1) - 100 : _this.getPosition(childrenLength - 1);\n var axisDelta = isHorizontal ? delta.x : delta.y;\n var handledDelta = axisDelta; // prevent user from swiping left out of boundaries\n\n if (currentPosition === initialBoundry && axisDelta > 0) {\n handledDelta = 0;\n } // prevent user from swiping right out of boundaries\n\n\n if (currentPosition === finalBoundry && axisDelta < 0) {\n handledDelta = 0;\n }\n\n var position = currentPosition + 100 / (_this.state.itemSize / handledDelta);\n\n var hasMoved = Math.abs(axisDelta) > _this.props.swipeScrollTolerance;\n\n if (_this.props.infiniteLoop && hasMoved) {\n // When allowing infinite loop, if we slide left from position 0 we reveal the cloned last slide that appears before it\n // if we slide even further we need to jump to other side so it can continue - and vice versa for the last slide\n if (_this.state.selectedItem === 0 && position > -100) {\n position -= childrenLength * 100;\n } else if (_this.state.selectedItem === childrenLength - 1 && position < -childrenLength * 100) {\n position += childrenLength * 100;\n }\n }\n\n if (!_this.props.preventMovementUntilSwipeScrollTolerance || hasMoved || _this.state.swipeMovementStarted) {\n if (!_this.state.swipeMovementStarted) {\n _this.setState({\n swipeMovementStarted: true\n });\n }\n\n _this.setPosition(position);\n } // allows scroll if the swipe was within the tolerance\n\n\n if (hasMoved && !_this.state.cancelClick) {\n _this.setState({\n cancelClick: true\n });\n }\n\n return hasMoved;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"setPosition\", function (position, forceReflow) {\n var list = _reactDom.default.findDOMNode(_this.listRef);\n\n if (list instanceof HTMLElement) {\n ['WebkitTransform', 'MozTransform', 'MsTransform', 'OTransform', 'transform', 'msTransform'].forEach(function (prop) {\n list.style[prop] = (0, _CSSTranslate.default)(position, '%', _this.props.axis);\n });\n\n if (forceReflow) {\n list.offsetLeft;\n }\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"resetPosition\", function () {\n var currentPosition = _this.getPosition(_this.state.selectedItem);\n\n _this.setPosition(currentPosition);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"decrement\", function () {\n var positions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n var fromSwipe = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n _this.moveTo(_this.state.selectedItem - (typeof positions === 'number' ? positions : 1), fromSwipe);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"increment\", function () {\n var positions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n var fromSwipe = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n _this.moveTo(_this.state.selectedItem + (typeof positions === 'number' ? positions : 1), fromSwipe);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"moveTo\", function (position, fromSwipe) {\n if (typeof position !== 'number') {\n return;\n }\n\n var lastPosition = _react.Children.count(_this.props.children) - 1;\n var needClonedSlide = _this.props.infiniteLoop && !fromSwipe && (position < 0 || position > lastPosition);\n var oldPosition = position;\n\n if (position < 0) {\n position = _this.props.infiniteLoop ? lastPosition : 0;\n }\n\n if (position > lastPosition) {\n position = _this.props.infiniteLoop ? 0 : lastPosition;\n }\n\n if (needClonedSlide) {\n // set swiping true would disable transition time, then we set slider to cloned position and force a reflow\n // this is only needed for non-swiping situation\n _this.setState({\n swiping: true\n }, function () {\n if (oldPosition < 0) {\n if (_this.props.centerMode && _this.props.centerSlidePercentage && _this.props.axis === 'horizontal') {\n _this.setPosition(-(lastPosition + 2) * _this.props.centerSlidePercentage - (100 - _this.props.centerSlidePercentage) / 2, true);\n } else {\n _this.setPosition(-(lastPosition + 2) * 100, true);\n }\n } else if (oldPosition > lastPosition) {\n _this.setPosition(0, true);\n }\n\n _this.selectItem({\n selectedItem: position,\n swiping: false\n });\n });\n } else {\n _this.selectItem({\n // if it's not a slider, we don't need to set position here\n selectedItem: position\n });\n } // don't reset auto play when stop on hover is enabled, doing so will trigger a call to auto play more than once\n // and will result in the interval function not being cleared correctly.\n\n\n if (_this.state.autoPlay && _this.state.isMouseEntered === false) {\n _this.resetAutoPlay();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onClickNext\", function () {\n _this.increment(1, false);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onClickPrev\", function () {\n _this.decrement(1, false);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onSwipeForward\", function () {\n _this.increment(1, true);\n\n if (_this.props.emulateTouch) {\n _this.setState({\n cancelClick: true\n });\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onSwipeBackwards\", function () {\n _this.decrement(1, true);\n\n if (_this.props.emulateTouch) {\n _this.setState({\n cancelClick: true\n });\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"changeItem\", function (newIndex) {\n return function (e) {\n if (!isKeyboardEvent(e) || e.key === 'Enter') {\n _this.moveTo(newIndex);\n }\n };\n });\n\n _defineProperty(_assertThisInitialized(_this), \"selectItem\", function (state, cb) {\n _this.setState(state, cb);\n\n _this.handleOnChange(state.selectedItem, _react.Children.toArray(_this.props.children)[state.selectedItem]);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getInitialImage\", function () {\n var selectedItem = _this.props.selectedItem;\n var item = _this.itemsRef && _this.itemsRef[selectedItem];\n var images = item && item.getElementsByTagName('img') || [];\n return images[0];\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getVariableItemHeight\", function (position) {\n var item = _this.itemsRef && _this.itemsRef[position];\n\n if (_this.state.hasMount && item && item.children.length) {\n var slideImages = item.children[0].getElementsByTagName('img') || [];\n\n if (slideImages.length > 0) {\n var image = slideImages[0];\n\n if (!image.complete) {\n // if the image is still loading, the size won't be available so we trigger a new render after it's done\n var onImageLoad = function onImageLoad() {\n _this.forceUpdate();\n\n image.removeEventListener('load', onImageLoad);\n };\n\n image.addEventListener('load', onImageLoad);\n }\n } // try to get img first, if img not there find first display tag\n\n\n var displayItem = slideImages[0] || item.children[0];\n var height = displayItem.clientHeight;\n return height > 0 ? height : null;\n }\n\n return null;\n });\n\n _this.state = {\n initialized: false,\n selectedItem: props.selectedItem,\n hasMount: false,\n isMouseEntered: false,\n autoPlay: props.autoPlay,\n swiping: false,\n swipeMovementStarted: false,\n cancelClick: false,\n itemSize: 1\n };\n return _this;\n }\n\n _createClass(Carousel, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (!this.props.children) {\n return;\n }\n\n this.setupCarousel();\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, prevState) {\n if (!prevProps.children && this.props.children && !this.state.initialized) {\n this.setupCarousel();\n }\n\n if (!prevProps.autoFocus && this.props.autoFocus) {\n this.forceFocus();\n }\n\n if (prevState.swiping && !this.state.swiping) {\n // We stopped swiping, ensure we are heading to the new/current slide and not stuck\n this.resetPosition();\n }\n\n if (prevProps.selectedItem !== this.props.selectedItem || prevProps.centerMode !== this.props.centerMode) {\n this.updateSizes();\n this.moveTo(this.props.selectedItem);\n }\n\n if (prevProps.autoPlay !== this.props.autoPlay) {\n if (this.props.autoPlay) {\n this.setupAutoPlay();\n } else {\n this.destroyAutoPlay();\n }\n\n this.setState({\n autoPlay: this.props.autoPlay\n });\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.destroyCarousel();\n }\n }, {\n key: \"setupCarousel\",\n value: function setupCarousel() {\n var _this2 = this;\n\n this.bindEvents();\n\n if (this.state.autoPlay && _react.Children.count(this.props.children) > 1) {\n this.setupAutoPlay();\n }\n\n if (this.props.autoFocus) {\n this.forceFocus();\n }\n\n this.setState({\n initialized: true\n }, function () {\n var initialImage = _this2.getInitialImage();\n\n if (initialImage && !initialImage.complete) {\n // if it's a carousel of images, we set the mount state after the first image is loaded\n initialImage.addEventListener('load', _this2.setMountState);\n } else {\n _this2.setMountState();\n }\n });\n }\n }, {\n key: \"destroyCarousel\",\n value: function destroyCarousel() {\n if (this.state.initialized) {\n this.unbindEvents();\n this.destroyAutoPlay();\n }\n }\n }, {\n key: \"setupAutoPlay\",\n value: function setupAutoPlay() {\n this.autoPlay();\n var carouselWrapper = this.carouselWrapperRef;\n\n if (this.props.stopOnHover && carouselWrapper) {\n carouselWrapper.addEventListener('mouseenter', this.stopOnHover);\n carouselWrapper.addEventListener('mouseleave', this.startOnLeave);\n }\n }\n }, {\n key: \"destroyAutoPlay\",\n value: function destroyAutoPlay() {\n this.clearAutoPlay();\n var carouselWrapper = this.carouselWrapperRef;\n\n if (this.props.stopOnHover && carouselWrapper) {\n carouselWrapper.removeEventListener('mouseenter', this.stopOnHover);\n carouselWrapper.removeEventListener('mouseleave', this.startOnLeave);\n }\n }\n }, {\n key: \"bindEvents\",\n value: function bindEvents() {\n // as the widths are calculated, we need to resize\n // the carousel when the window is resized\n (0, _window.default)().addEventListener('resize', this.updateSizes); // issue #2 - image loading smaller\n\n (0, _window.default)().addEventListener('DOMContentLoaded', this.updateSizes);\n\n if (this.props.useKeyboardArrows) {\n (0, _document.default)().addEventListener('keydown', this.navigateWithKeyboard);\n }\n }\n }, {\n key: \"unbindEvents\",\n value: function unbindEvents() {\n // removing listeners\n (0, _window.default)().removeEventListener('resize', this.updateSizes);\n (0, _window.default)().removeEventListener('DOMContentLoaded', this.updateSizes);\n var initialImage = this.getInitialImage();\n\n if (initialImage) {\n initialImage.removeEventListener('load', this.setMountState);\n }\n\n if (this.props.useKeyboardArrows) {\n (0, _document.default)().removeEventListener('keydown', this.navigateWithKeyboard);\n }\n }\n }, {\n key: \"forceFocus\",\n value: function forceFocus() {\n var _this$carouselWrapper;\n\n (_this$carouselWrapper = this.carouselWrapperRef) === null || _this$carouselWrapper === void 0 ? void 0 : _this$carouselWrapper.focus();\n }\n }, {\n key: \"getPosition\",\n value: function getPosition(index) {\n if (this.props.infiniteLoop) {\n // index has to be added by 1 because of the first cloned slide\n ++index;\n }\n\n if (index === 0) {\n return 0;\n }\n\n var childrenLength = _react.Children.count(this.props.children);\n\n if (this.props.centerMode && this.props.axis === 'horizontal') {\n var currentPosition = -index * this.props.centerSlidePercentage;\n var lastPosition = childrenLength - 1;\n\n if (index && (index !== lastPosition || this.props.infiniteLoop)) {\n currentPosition += (100 - this.props.centerSlidePercentage) / 2;\n } else if (index === lastPosition) {\n currentPosition += 100 - this.props.centerSlidePercentage;\n }\n\n return currentPosition;\n }\n\n return -index * 100;\n }\n }, {\n key: \"renderItems\",\n value: function renderItems(isClone) {\n var _this3 = this;\n\n if (!this.props.children) {\n return [];\n }\n\n return _react.Children.map(this.props.children, function (item, index) {\n var slideProps = {\n ref: function ref(e) {\n return _this3.setItemsRef(e, index);\n },\n key: 'itemKey' + index + (isClone ? 'clone' : ''),\n className: _cssClasses.default.ITEM(true, index === _this3.state.selectedItem),\n onClick: _this3.handleClickItem.bind(_this3, index, item)\n };\n var extraProps = {};\n\n if (_this3.props.centerMode && _this3.props.axis === 'horizontal') {\n extraProps.style = {\n minWidth: _this3.props.centerSlidePercentage + '%'\n };\n }\n\n return /*#__PURE__*/_react.default.createElement(\"li\", _extends({}, slideProps, extraProps), _this3.props.renderItem(item, {\n isSelected: index === _this3.state.selectedItem\n }));\n });\n }\n }, {\n key: \"renderControls\",\n value: function renderControls() {\n var _this4 = this;\n\n var _this$props = this.props,\n showIndicators = _this$props.showIndicators,\n labels = _this$props.labels,\n renderIndicator = _this$props.renderIndicator,\n children = _this$props.children;\n\n if (!showIndicators) {\n return null;\n }\n\n return /*#__PURE__*/_react.default.createElement(\"ul\", {\n className: \"control-dots\"\n }, _react.Children.map(children, function (_, index) {\n return renderIndicator && renderIndicator(_this4.changeItem(index), index === _this4.state.selectedItem, index, labels.item);\n }));\n }\n }, {\n key: \"renderStatus\",\n value: function renderStatus() {\n if (!this.props.showStatus) {\n return null;\n }\n\n return /*#__PURE__*/_react.default.createElement(\"p\", {\n className: \"carousel-status\"\n }, this.props.statusFormatter(this.state.selectedItem + 1, _react.Children.count(this.props.children)));\n }\n }, {\n key: \"renderThumbs\",\n value: function renderThumbs() {\n if (!this.props.showThumbs || !this.props.children || _react.Children.count(this.props.children) === 0) {\n return null;\n }\n\n return /*#__PURE__*/_react.default.createElement(_Thumbs.default, {\n ref: this.setThumbsRef,\n onSelectItem: this.handleClickThumb,\n selectedItem: this.state.selectedItem,\n transitionTime: this.props.transitionTime,\n thumbWidth: this.props.thumbWidth,\n labels: this.props.labels\n }, this.props.renderThumbs(this.props.children));\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this5 = this;\n\n if (!this.props.children || _react.Children.count(this.props.children) === 0) {\n return null;\n }\n\n var isSwipeable = this.props.swipeable && _react.Children.count(this.props.children) > 1;\n var isHorizontal = this.props.axis === 'horizontal';\n var canShowArrows = this.props.showArrows && _react.Children.count(this.props.children) > 1; // show left arrow?\n\n var hasPrev = canShowArrows && (this.state.selectedItem > 0 || this.props.infiniteLoop) || false; // show right arrow\n\n var hasNext = canShowArrows && (this.state.selectedItem < _react.Children.count(this.props.children) - 1 || this.props.infiniteLoop) || false; // obj to hold the transformations and styles\n\n var itemListStyles = {};\n var currentPosition = this.getPosition(this.state.selectedItem); // if 3d is available, let's take advantage of the performance of transform\n\n var transformProp = (0, _CSSTranslate.default)(currentPosition, '%', this.props.axis);\n var transitionTime = this.props.transitionTime + 'ms';\n itemListStyles = {\n WebkitTransform: transformProp,\n MozTransform: transformProp,\n MsTransform: transformProp,\n OTransform: transformProp,\n transform: transformProp,\n msTransform: transformProp\n };\n\n if (!this.state.swiping) {\n itemListStyles = _objectSpread(_objectSpread({}, itemListStyles), {}, {\n WebkitTransitionDuration: transitionTime,\n MozTransitionDuration: transitionTime,\n MsTransitionDuration: transitionTime,\n OTransitionDuration: transitionTime,\n transitionDuration: transitionTime,\n msTransitionDuration: transitionTime\n });\n }\n\n var itemsClone = this.renderItems(true);\n var firstClone = itemsClone.shift();\n var lastClone = itemsClone.pop();\n var swiperProps = {\n className: _cssClasses.default.SLIDER(true, this.state.swiping),\n onSwipeMove: this.onSwipeMove,\n onSwipeStart: this.onSwipeStart,\n onSwipeEnd: this.onSwipeEnd,\n style: itemListStyles,\n tolerance: this.props.swipeScrollTolerance\n };\n var containerStyles = {};\n\n if (isHorizontal) {\n swiperProps.onSwipeLeft = this.onSwipeForward;\n swiperProps.onSwipeRight = this.onSwipeBackwards;\n\n if (this.props.dynamicHeight) {\n var itemHeight = this.getVariableItemHeight(this.state.selectedItem);\n swiperProps.style.height = itemHeight || 'auto';\n containerStyles.height = itemHeight || 'auto';\n }\n } else {\n swiperProps.onSwipeUp = this.props.verticalSwipe === 'natural' ? this.onSwipeBackwards : this.onSwipeForward;\n swiperProps.onSwipeDown = this.props.verticalSwipe === 'natural' ? this.onSwipeForward : this.onSwipeBackwards;\n swiperProps.style.height = this.state.itemSize;\n containerStyles.height = this.state.itemSize;\n }\n\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: _cssClasses.default.ROOT(this.props.className),\n ref: this.setCarouselWrapperRef,\n tabIndex: 0\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: _cssClasses.default.CAROUSEL(true),\n style: {\n width: this.props.width\n }\n }, this.renderControls(), this.props.renderArrowPrev(this.onClickPrev, hasPrev, this.props.labels.leftArrow), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: _cssClasses.default.WRAPPER(true, this.props.axis),\n style: containerStyles\n }, isSwipeable ? /*#__PURE__*/_react.default.createElement(_reactEasySwipe.default, _extends({\n tagName: \"ul\",\n innerRef: this.setListRef\n }, swiperProps, {\n allowMouseEvents: this.props.emulateTouch\n }), this.props.infiniteLoop && lastClone, this.renderItems(), this.props.infiniteLoop && firstClone) : /*#__PURE__*/_react.default.createElement(\"ul\", {\n className: _cssClasses.default.SLIDER(true, this.state.swiping),\n ref: function ref(node) {\n return _this5.setListRef(node);\n },\n style: itemListStyles\n }, this.props.infiniteLoop && lastClone, this.renderItems(), this.props.infiniteLoop && firstClone)), this.props.renderArrowNext(this.onClickNext, hasNext, this.props.labels.rightArrow), this.renderStatus()), this.renderThumbs());\n }\n }]);\n\n return Carousel;\n}(_react.default.Component);\n\nexports.default = Carousel;\n\n_defineProperty(Carousel, \"displayName\", 'Carousel');\n\n_defineProperty(Carousel, \"defaultProps\", {\n axis: 'horizontal',\n centerSlidePercentage: 80,\n interval: 3000,\n labels: {\n leftArrow: 'previous slide / item',\n rightArrow: 'next slide / item',\n item: 'slide item'\n },\n onClickItem: noop,\n onClickThumb: noop,\n onChange: noop,\n onSwipeStart: function onSwipeStart() {},\n onSwipeEnd: function onSwipeEnd() {},\n onSwipeMove: function onSwipeMove() {\n return false;\n },\n preventMovementUntilSwipeScrollTolerance: false,\n renderArrowPrev: function renderArrowPrev(onClickHandler, hasPrev, label) {\n return /*#__PURE__*/_react.default.createElement(\"button\", {\n type: \"button\",\n \"aria-label\": label,\n className: _cssClasses.default.ARROW_PREV(!hasPrev),\n onClick: onClickHandler\n });\n },\n renderArrowNext: function renderArrowNext(onClickHandler, hasNext, label) {\n return /*#__PURE__*/_react.default.createElement(\"button\", {\n type: \"button\",\n \"aria-label\": label,\n className: _cssClasses.default.ARROW_NEXT(!hasNext),\n onClick: onClickHandler\n });\n },\n renderIndicator: function renderIndicator(onClickHandler, isSelected, index, label) {\n return /*#__PURE__*/_react.default.createElement(\"li\", {\n className: _cssClasses.default.DOT(isSelected),\n onClick: onClickHandler,\n onKeyDown: onClickHandler,\n value: index,\n key: index,\n role: \"button\",\n tabIndex: 0,\n \"aria-label\": \"\".concat(label, \" \").concat(index + 1)\n });\n },\n renderItem: function renderItem(item) {\n return item;\n },\n renderThumbs: function renderThumbs(children) {\n var images = _react.Children.map(children, function (item) {\n var img = item; // if the item is not an image, try to find the first image in the item's children.\n\n if (item.type !== 'img') {\n img = _react.Children.toArray(item.props.children).find(function (children) {\n return children.type === 'img';\n });\n }\n\n if (!img) {\n return undefined;\n }\n\n return img;\n });\n\n if (images.filter(function (image) {\n return image;\n }).length === 0) {\n console.warn(\"No images found! Can't build the thumb list without images. If you don't need thumbs, set showThumbs={false} in the Carousel. Note that it's not possible to get images rendered inside custom components. More info at https://github.com/leandrowd/react-responsive-carousel/blob/master/TROUBLESHOOTING.md\");\n return [];\n }\n\n return images;\n },\n statusFormatter: defaultStatusFormatter,\n selectedItem: 0,\n showArrows: true,\n showIndicators: true,\n showStatus: true,\n showThumbs: true,\n stopOnHover: true,\n swipeScrollTolerance: 5,\n swipeable: true,\n transitionTime: 350,\n verticalSwipe: 'standard',\n width: '100%'\n});","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports', 'react', 'prop-types'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports, require('react'), require('prop-types'));\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports, global.react, global.propTypes);\n global.reactSwipe = mod.exports;\n }\n})(this, function (exports, _react, _propTypes) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.setHasSupportToCaptureOption = setHasSupportToCaptureOption;\n\n var _react2 = _interopRequireDefault(_react);\n\n var _propTypes2 = _interopRequireDefault(_propTypes);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n var _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n function _objectWithoutProperties(obj, keys) {\n var target = {};\n\n for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;\n if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;\n target[i] = obj[i];\n }\n\n return target;\n }\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n var _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n }();\n\n function _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n }\n\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n }\n\n var supportsCaptureOption = false;\n function setHasSupportToCaptureOption(hasSupport) {\n supportsCaptureOption = hasSupport;\n }\n\n try {\n addEventListener('test', null, Object.defineProperty({}, 'capture', { get: function get() {\n setHasSupportToCaptureOption(true);\n } }));\n } catch (e) {} // eslint-disable-line no-empty\n\n function getSafeEventHandlerOpts() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : { capture: true };\n\n return supportsCaptureOption ? options : options.capture;\n }\n\n /**\n * [getPosition returns a position element that works for mouse or touch events]\n * @param {[Event]} event [the received event]\n * @return {[Object]} [x and y coords]\n */\n function getPosition(event) {\n if ('touches' in event) {\n var _event$touches$ = event.touches[0],\n pageX = _event$touches$.pageX,\n pageY = _event$touches$.pageY;\n\n return { x: pageX, y: pageY };\n }\n\n var screenX = event.screenX,\n screenY = event.screenY;\n\n return { x: screenX, y: screenY };\n }\n\n var ReactSwipe = function (_Component) {\n _inherits(ReactSwipe, _Component);\n\n function ReactSwipe() {\n var _ref;\n\n _classCallCheck(this, ReactSwipe);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var _this = _possibleConstructorReturn(this, (_ref = ReactSwipe.__proto__ || Object.getPrototypeOf(ReactSwipe)).call.apply(_ref, [this].concat(args)));\n\n _this._handleSwipeStart = _this._handleSwipeStart.bind(_this);\n _this._handleSwipeMove = _this._handleSwipeMove.bind(_this);\n _this._handleSwipeEnd = _this._handleSwipeEnd.bind(_this);\n\n _this._onMouseDown = _this._onMouseDown.bind(_this);\n _this._onMouseMove = _this._onMouseMove.bind(_this);\n _this._onMouseUp = _this._onMouseUp.bind(_this);\n\n _this._setSwiperRef = _this._setSwiperRef.bind(_this);\n return _this;\n }\n\n _createClass(ReactSwipe, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (this.swiper) {\n this.swiper.addEventListener('touchmove', this._handleSwipeMove, getSafeEventHandlerOpts({\n capture: true,\n passive: false\n }));\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if (this.swiper) {\n this.swiper.removeEventListener('touchmove', this._handleSwipeMove, getSafeEventHandlerOpts({\n capture: true,\n passive: false\n }));\n }\n }\n }, {\n key: '_onMouseDown',\n value: function _onMouseDown(event) {\n if (!this.props.allowMouseEvents) {\n return;\n }\n\n this.mouseDown = true;\n\n document.addEventListener('mouseup', this._onMouseUp);\n document.addEventListener('mousemove', this._onMouseMove);\n\n this._handleSwipeStart(event);\n }\n }, {\n key: '_onMouseMove',\n value: function _onMouseMove(event) {\n if (!this.mouseDown) {\n return;\n }\n\n this._handleSwipeMove(event);\n }\n }, {\n key: '_onMouseUp',\n value: function _onMouseUp(event) {\n this.mouseDown = false;\n\n document.removeEventListener('mouseup', this._onMouseUp);\n document.removeEventListener('mousemove', this._onMouseMove);\n\n this._handleSwipeEnd(event);\n }\n }, {\n key: '_handleSwipeStart',\n value: function _handleSwipeStart(event) {\n var _getPosition = getPosition(event),\n x = _getPosition.x,\n y = _getPosition.y;\n\n this.moveStart = { x: x, y: y };\n this.props.onSwipeStart(event);\n }\n }, {\n key: '_handleSwipeMove',\n value: function _handleSwipeMove(event) {\n if (!this.moveStart) {\n return;\n }\n\n var _getPosition2 = getPosition(event),\n x = _getPosition2.x,\n y = _getPosition2.y;\n\n var deltaX = x - this.moveStart.x;\n var deltaY = y - this.moveStart.y;\n this.moving = true;\n\n // handling the responsability of cancelling the scroll to\n // the component handling the event\n var shouldPreventDefault = this.props.onSwipeMove({\n x: deltaX,\n y: deltaY\n }, event);\n\n if (shouldPreventDefault && event.cancelable) {\n event.preventDefault();\n }\n\n this.movePosition = { deltaX: deltaX, deltaY: deltaY };\n }\n }, {\n key: '_handleSwipeEnd',\n value: function _handleSwipeEnd(event) {\n this.props.onSwipeEnd(event);\n\n var tolerance = this.props.tolerance;\n\n\n if (this.moving && this.movePosition) {\n if (this.movePosition.deltaX < -tolerance) {\n this.props.onSwipeLeft(1, event);\n } else if (this.movePosition.deltaX > tolerance) {\n this.props.onSwipeRight(1, event);\n }\n if (this.movePosition.deltaY < -tolerance) {\n this.props.onSwipeUp(1, event);\n } else if (this.movePosition.deltaY > tolerance) {\n this.props.onSwipeDown(1, event);\n }\n }\n\n this.moveStart = null;\n this.moving = false;\n this.movePosition = null;\n }\n }, {\n key: '_setSwiperRef',\n value: function _setSwiperRef(node) {\n this.swiper = node;\n this.props.innerRef(node);\n }\n }, {\n key: 'render',\n value: function render() {\n var _props = this.props,\n tagName = _props.tagName,\n className = _props.className,\n style = _props.style,\n children = _props.children,\n allowMouseEvents = _props.allowMouseEvents,\n onSwipeUp = _props.onSwipeUp,\n onSwipeDown = _props.onSwipeDown,\n onSwipeLeft = _props.onSwipeLeft,\n onSwipeRight = _props.onSwipeRight,\n onSwipeStart = _props.onSwipeStart,\n onSwipeMove = _props.onSwipeMove,\n onSwipeEnd = _props.onSwipeEnd,\n innerRef = _props.innerRef,\n tolerance = _props.tolerance,\n props = _objectWithoutProperties(_props, ['tagName', 'className', 'style', 'children', 'allowMouseEvents', 'onSwipeUp', 'onSwipeDown', 'onSwipeLeft', 'onSwipeRight', 'onSwipeStart', 'onSwipeMove', 'onSwipeEnd', 'innerRef', 'tolerance']);\n\n return _react2.default.createElement(\n this.props.tagName,\n _extends({\n ref: this._setSwiperRef,\n onMouseDown: this._onMouseDown,\n onTouchStart: this._handleSwipeStart,\n onTouchEnd: this._handleSwipeEnd,\n className: className,\n style: style\n }, props),\n children\n );\n }\n }]);\n\n return ReactSwipe;\n }(_react.Component);\n\n ReactSwipe.displayName = 'ReactSwipe';\n ReactSwipe.propTypes = {\n tagName: _propTypes2.default.string,\n className: _propTypes2.default.string,\n style: _propTypes2.default.object,\n children: _propTypes2.default.node,\n allowMouseEvents: _propTypes2.default.bool,\n onSwipeUp: _propTypes2.default.func,\n onSwipeDown: _propTypes2.default.func,\n onSwipeLeft: _propTypes2.default.func,\n onSwipeRight: _propTypes2.default.func,\n onSwipeStart: _propTypes2.default.func,\n onSwipeMove: _propTypes2.default.func,\n onSwipeEnd: _propTypes2.default.func,\n innerRef: _propTypes2.default.func,\n tolerance: _propTypes2.default.number.isRequired\n };\n ReactSwipe.defaultProps = {\n tagName: 'div',\n allowMouseEvents: false,\n onSwipeUp: function onSwipeUp() {},\n onSwipeDown: function onSwipeDown() {},\n onSwipeLeft: function onSwipeLeft() {},\n onSwipeRight: function onSwipeRight() {},\n onSwipeStart: function onSwipeStart() {},\n onSwipeMove: function onSwipeMove() {},\n onSwipeEnd: function onSwipeEnd() {},\n innerRef: function innerRef() {},\n\n tolerance: 0\n };\n exports.default = ReactSwipe;\n});","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.outerWidth = void 0;\n\nvar outerWidth = function outerWidth(el) {\n var width = el.offsetWidth;\n var style = getComputedStyle(el);\n width += parseInt(style.marginLeft) + parseInt(style.marginRight);\n return width;\n};\n\nexports.outerWidth = outerWidth;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _default = function _default() {\n return document;\n};\n\nexports.default = _default;"],"sourceRoot":""}