(function webpackUniversalModuleDefinition(root, factory) {
	if(typeof exports === 'object' && typeof module === 'object')
		module.exports = factory(require("react"), require("prop-types"));
	else if(typeof define === 'function' && define.amd)
		define(["react", "prop-types"], factory);
	else {
		var a = typeof exports === 'object' ? factory(require("react"), require("prop-types")) : factory(root["react"], root["prop-types"]);
		for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
	}
})(typeof self !== 'undefined' ? self : this, function(__WEBPACK_EXTERNAL_MODULE_0__, __WEBPACK_EXTERNAL_MODULE_1__) {
return /******/ (function(modules) { // webpackBootstrap
/******/ 	// The module cache
/******/ 	var installedModules = {};
/******/
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/
/******/ 		// Check if module is in cache
/******/ 		if(installedModules[moduleId]) {
/******/ 			return installedModules[moduleId].exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = installedModules[moduleId] = {
/******/ 			i: moduleId,
/******/ 			l: false,
/******/ 			exports: {}
/******/ 		};
/******/
/******/ 		// Execute the module function
/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ 		// Flag the module as loaded
/******/ 		module.l = true;
/******/
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/
/******/
/******/ 	// expose the modules object (__webpack_modules__)
/******/ 	__webpack_require__.m = modules;
/******/
/******/ 	// expose the module cache
/******/ 	__webpack_require__.c = installedModules;
/******/
/******/ 	// define getter function for harmony exports
/******/ 	__webpack_require__.d = function(exports, name, getter) {
/******/ 		if(!__webpack_require__.o(exports, name)) {
/******/ 			Object.defineProperty(exports, name, {
/******/ 				configurable: false,
/******/ 				enumerable: true,
/******/ 				get: getter
/******/ 			});
/******/ 		}
/******/ 	};
/******/
/******/ 	// getDefaultExport function for compatibility with non-harmony modules
/******/ 	__webpack_require__.n = function(module) {
/******/ 		var getter = module && module.__esModule ?
/******/ 			function getDefault() { return module['default']; } :
/******/ 			function getModuleExports() { return module; };
/******/ 		__webpack_require__.d(getter, 'a', getter);
/******/ 		return getter;
/******/ 	};
/******/
/******/ 	// Object.prototype.hasOwnProperty.call
/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ 	// __webpack_public_path__
/******/ 	__webpack_require__.p = "/dest/";
/******/
/******/ 	// Load entry module and return exports
/******/ 	return __webpack_require__(__webpack_require__.s = 452);
/******/ })
/************************************************************************/
/******/ ({

/***/ 0:
/***/ (function(module, exports) {

module.exports = __WEBPACK_EXTERNAL_MODULE_0__;

/***/ }),

/***/ 1:
/***/ (function(module, exports) {

module.exports = __WEBPACK_EXTERNAL_MODULE_1__;

/***/ }),

/***/ 160:
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.DOT_POSITION = undefined;

var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); /* eslint-disable react/no-array-index-key */
/* eslint-disable no-unused-expressions */

/**
 * https://www.cnblogs.com/slongs/p/10189439.html
 */


var _react = __webpack_require__(0);

var _react2 = _interopRequireDefault(_react);

var _propTypes = __webpack_require__(1);

var _propTypes2 = _interopRequireDefault(_propTypes);

var _bind = __webpack_require__(2);

var _bind2 = _interopRequireDefault(_bind);

var _iconSliderArrowLeft = __webpack_require__(70);

var _iconSliderArrowLeft2 = _interopRequireDefault(_iconSliderArrowLeft);

var _iconSliderArrowRight = __webpack_require__(71);

var _iconSliderArrowRight2 = _interopRequireDefault(_iconSliderArrowRight);

var _Carousel = __webpack_require__(72);

var _Carousel2 = _interopRequireDefault(_Carousel);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var cx = _bind2.default.bind(_Carousel2.default);

var DOT_POSITION = exports.DOT_POSITION = {
  FLOAT: 'float',
  FIXED: 'fixed'
};
var DELAY_TIME = 10000;
var LEFT = 'left';
var RIGHT = 'right';

/**
 * @param {number} [width = 300] - 顯示寬度
 * @param {number} [height = 193] - 顯示高度
 * @param {boolean} [hasArrow = false] - 是否需要顯示左右箭頭
 * @param {boolean} [autoPlay = true] - 是否自動播放
 * @param {number} [selected = 0] - 指定從第幾個 Slide 開始播
 * @param {number}} [speed = 10000] - 切換速度(ms),預設是 10 秒
 * @param {string}} [dotPosition = fixed] - 分頁按鈕對齊方式,共有二種 float | fixed
 */

var Carousel = function Carousel(_ref) {
  var width = _ref.width,
      height = _ref.height,
      hasArrow = _ref.hasArrow,
      autoPlay = _ref.autoPlay,
      selected = _ref.selected,
      speed = _ref.speed,
      dotPosition = _ref.dotPosition,
      children = _ref.children;

  var timerRef = (0, _react.useRef)();

  var _useState = (0, _react.useState)(0),
      _useState2 = _slicedToArray(_useState, 2),
      currentCarousel = _useState2[0],
      setCurrentCarousel = _useState2[1];

  var _useState3 = (0, _react.useState)(0),
      _useState4 = _slicedToArray(_useState3, 2),
      animationStep = _useState4[0],
      setAnimationStep = _useState4[1];

  var _useState5 = (0, _react.useState)(false),
      _useState6 = _slicedToArray(_useState5, 2),
      isShowArrow = _useState6[0],
      setIsShowArrow = _useState6[1];

  // 取得目前輪播物件個數


  var childrenCount = _react2.default.Children.count(children) || 0;

  /**
   * @description 更改目前循環播放的下一個座標
   * @param {string} direction 輪播方向 (left | right)
   */
  var handlerCarousel = function handlerCarousel() {
    var direction = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : RIGHT;

    var directionValue = direction === LEFT ? -1 : 1;

    // 座標不為 -1 或是目前不是最後一個的情況下,進行遞增或遞減
    if (currentCarousel % (childrenCount + 1) !== childrenCount && currentCarousel >= 0) {
      setAnimationStep(selected);
      // 當座標在邊界時,會取消動畫過場的秒數,當目前座標不是邊界時,要恢復動畫過場秒數,不然無法正確播放動畫
      setCurrentCarousel(function (prevState) {
        var current = prevState + directionValue;

        return current % (childrenCount + 1);
      });
    }
  };

  /**
   * @description 停止輪播
   */
  var stopCarousel = function stopCarousel() {
    timerRef.current && clearInterval(timerRef.current);
  };

  /**
   * @description 開始輪播
   */
  var startCarousel = function startCarousel() {
    stopCarousel();

    timerRef.current = setInterval(function () {
      handlerCarousel();
    }, speed);
  };

  /**
   * @description 顯示/隱藏箭頭
   */
  var handleMouseEnter = function handleMouseEnter() {
    hasArrow && setIsShowArrow(true);
  };

  var handleMouseLeave = function handleMouseLeave() {
    hasArrow && setIsShowArrow(false);
  };

  /**
   * @description 監聽動畫結束
   */
  var handleTransitionEnd = function handleTransitionEnd() {
    // 當輪播最後一個時,取消過場動畫,並將座標位置重設為 0
    if (currentCarousel % (childrenCount + 1) === childrenCount) {
      setAnimationStep(0);
      setCurrentCarousel(0);
      // 當輪播第一個時,取消過場動畫,並將座標位置設為最後一個
    } else if (currentCarousel < 0) {
      setAnimationStep(0);
      setCurrentCarousel(childrenCount - 1);
    }
  };

  /**
   * @description 設定點擊箭頭後,切換顯示對應方向的 Slide 內容
   *
   * @param {string} direction - 移動方向 (left | right)
   */
  var handleArrowClick = function handleArrowClick(direction) {
    if (autoPlay) {
      startCarousel();
    }

    handlerCarousel(direction);
  };

  /**
   * @description 判斷導航小點點的 active 狀態
   */
  var getIndicatorsActive = function getIndicatorsActive(index) {
    return currentCarousel === index || currentCarousel === index + childrenCount || currentCarousel < 0 && index === childrenCount - 1;
  };

  /**
   * @description 點擊指定輪播項目切換
   */
  var onGoToCarousel = function onGoToCarousel(index) {
    setCurrentCarousel(index);
  };

  /**
   * @description 開始執行
   */
  (0, _react.useEffect)(function () {
    setAnimationStep(selected);
    autoPlay && startCarousel();

    if (!autoPlay) {
      stopCarousel();
    } else {
      startCarousel();
    }

    return function () {
      stopCarousel();
    };
  }, [autoPlay]);

  var totalCount = childrenCount + 2;
  var containerWidth = width.toString().includes('%') ? width : width + 'px';
  var containerHeight = height.toString().includes('%') ? height : height + 'px';
  var carouselStyle = { width: containerWidth, height: containerHeight };
  var transitionStyle = {
    transition: 'transform ' + animationStep + 's',
    width: totalCount * 100 + '%',
    height: containerHeight,
    transform: 'translateX(' + -100 / totalCount * (currentCarousel + 1) + '%)'
  };
  var firstChild = children ? children[0] : null;
  var lastChild = children ? children[childrenCount - 1] : null;

  /**
   * @description 繪制箭頭
   *
   * @param {string} direction - 移動方向 (left | right)
   */
  var renderCarouselArrow = function renderCarouselArrow() {
    var direction = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : LEFT;

    var arrowIcon = direction === LEFT ? _iconSliderArrowLeft2.default : _iconSliderArrowRight2.default;

    return _react2.default.createElement(
      'div',
      {
        className: cx('carousel__arrows__arrow', { 'carousel__arrows__arrow--active': isShowArrow }),
        onClick: function onClick() {
          return handleArrowClick(direction);
        }
      },
      _react2.default.createElement('img', { src: arrowIcon, alt: direction + ' arrow' })
    );
  };

  /**
   * @description 繪製輪播項目
   *
   * @param {ReactNode} child - 輪播項目
   * @param {number} index - 索引值
   */
  var renderCarouselItem = function renderCarouselItem(child) {
    var index = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;

    if (!child) return null;

    var carouselItemStyle = {
      width: 100 / totalCount + '%'
    };

    return _react2.default.createElement(
      'div',
      { className: cx('carousel__body__item'), style: carouselItemStyle, key: 'carousel_item_' + index },
      child
    );
  };

  var renderIndicators = function renderIndicators() {
    if (!children) return null;

    return _react2.default.createElement(
      'div',
      { className: cx('footer', { float: dotPosition === DOT_POSITION.FLOAT }) },
      _react2.default.createElement(
        'ul',
        { className: cx('footer__indicators') },
        children.map(function (_, index) {
          var isActive = getIndicatorsActive(index);

          return _react2.default.createElement('li', {
            key: 'carousel_indicator_' + index,
            onClick: function onClick() {
              return onGoToCarousel(index);
            },
            className: cx('footer__indicators__indicator', { 'footer__indicators__indicator--active': isActive })
          });
        })
      )
    );
  };

  return _react2.default.createElement(
    'div',
    { className: cx('carousel-container'), style: carouselStyle },
    _react2.default.createElement(
      'div',
      { className: cx('carousel'), onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave },
      _react2.default.createElement(
        'div',
        { className: cx('carousel__body'), onTransitionEnd: handleTransitionEnd, style: transitionStyle },
        renderCarouselItem(lastChild, 0),
        children && children.map(function (item, index) {
          return renderCarouselItem(item, index + 1);
        }),
        renderCarouselItem(firstChild, totalCount)
      ),
      _react2.default.createElement(
        'div',
        { className: cx('carousel__arrows') },
        hasArrow && renderCarouselArrow(LEFT),
        hasArrow && renderCarouselArrow(RIGHT)
      )
    ),
    renderIndicators()
  );
};

Carousel.defaultProps = {
  width: 300,
  height: 193,
  hasArrow: true,
  autoPlay: true,
  selected: 1,
  speed: DELAY_TIME,
  dotPosition: DOT_POSITION.FLOAT
};

exports.default = Carousel;

/***/ }),

/***/ 161:
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.DOT_POSITION = undefined;

var _createClass = function () { function 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); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();

var _react = __webpack_require__(0);

var _react2 = _interopRequireDefault(_react);

var _propTypes = __webpack_require__(1);

var _propTypes2 = _interopRequireDefault(_propTypes);

var _bind = __webpack_require__(2);

var _bind2 = _interopRequireDefault(_bind);

var _iconSliderArrowLeft = __webpack_require__(70);

var _iconSliderArrowLeft2 = _interopRequireDefault(_iconSliderArrowLeft);

var _iconSliderArrowRight = __webpack_require__(71);

var _iconSliderArrowRight2 = _interopRequireDefault(_iconSliderArrowRight);

var _Carousel = __webpack_require__(72);

var _Carousel2 = _interopRequireDefault(_Carousel);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /* eslint-disable react/no-array-index-key */
/* eslint-disable no-unused-expressions */

/**
 * https://www.cnblogs.com/slongs/p/10189439.html
 */


var cx = _bind2.default.bind(_Carousel2.default);

var DOT_POSITION = exports.DOT_POSITION = {
  FLOAT: 'float',
  FIXED: 'fixed'
};
var DELAY_TIME = 10000;
var LEFT = 'left';
var RIGHT = 'right';

/**
 * @param {number} [width = 300] - 顯示寬度
 * @param {number} [height = 193] - 顯示高度
 * @param {boolean} [hasArrow = false] - 是否需要顯示左右箭頭
 * @param {boolean} [autoPlay = true] - 是否自動播放
 * @param {number} [selected = 0] - 指定從第幾個 Slide 開始播
 * @param {number}} [speed = 10000] - 切換速度(ms),預設是 10 秒
 * @param {string}} [dotPosition = fixed] - 分頁按鈕對齊方式,共有二種 float | fixed
 */

var CarouselOld = function (_React$Component) {
  _inherits(CarouselOld, _React$Component);

  function CarouselOld(props) {
    _classCallCheck(this, CarouselOld);

    var _this = _possibleConstructorReturn(this, (CarouselOld.__proto__ || Object.getPrototypeOf(CarouselOld)).call(this, props));

    _this.onGoToCarousel = function (index) {
      _this.setState({
        currentCarousel: index
      });
    };

    _this.getIndicatorsActive = function (index) {
      var currentCarousel = _this.state.currentCarousel;


      return currentCarousel === index || currentCarousel === index + _this.childrenCount || currentCarousel < 0 && index === _this.childrenCount - 1;
    };

    _this.stopCarousel = function () {
      _this.timerID && clearInterval(_this.timerID);
    };

    _this.startCarousel = function () {
      var speed = _this.props.speed;


      _this.stopCarousel();
      _this.timerID = setInterval(function () {
        _this.handlerCarousel();
      }, speed);
    };

    _this.handleMouseEnter = function () {
      _this.props.hasArrow && _this.setState({ isShowArrow: true });
    };

    _this.handleMouseLeave = function () {
      _this.props.hasArrow && _this.setState({ isShowArrow: false });
    };

    _this.handleTransitionEnd = function () {
      var currentCarousel = _this.state.currentCarousel;

      // 當輪播最後一個時,取消過場動畫,並將座標位置重設為 0

      if (currentCarousel % (_this.childrenCount + 1) === _this.childrenCount) {
        _this.setState({
          animationStep: 0,
          currentCarousel: 0
        });
        // 當輪播第一個時,取消過場動畫,並將座標位置設為最後一個
      } else if (currentCarousel < 0) {
        _this.setState({
          animationStep: 0,
          currentCarousel: _this.childrenCount - 1
        });
      }
    };

    _this.handleArrowClick = function (direction) {
      if (_this.props.autoPlay) {
        _this.startCarousel();
      }

      _this.handlerCarousel(direction);
    };

    _this.handlerCarousel = function () {
      var direction = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : RIGHT;
      var selected = _this.props.selected;
      var currentCarousel = _this.state.currentCarousel;

      var directionValue = direction === LEFT ? -1 : 1;

      // 座標不為 -1 或是目前不是最後一個的情況下,進行遞增或遞減
      if (currentCarousel % (_this.childrenCount + 1) !== _this.childrenCount && currentCarousel >= 0) {
        // 當座標在邊界時,會取消動畫過場的秒數,當目前座標不是邊界時,要恢復動畫過場秒數,不然無法正確播放動畫
        _this.setState(function (prevState) {
          var current = prevState.currentCarousel + directionValue;

          return {
            animationStep: selected,
            currentCarousel: current % (_this.childrenCount + 1)
          };
        });
      }
    };

    _this.renderCarouselArrow = function () {
      var direction = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : LEFT;
      var isShowArrow = _this.state.isShowArrow;

      var arrowIcon = direction === LEFT ? _iconSliderArrowLeft2.default : _iconSliderArrowRight2.default;

      return _react2.default.createElement(
        'div',
        {
          className: cx('carousel__arrows__arrow', { 'carousel__arrows__arrow--active': isShowArrow }),
          onClick: function onClick() {
            return _this.handleArrowClick(direction);
          }
        },
        _react2.default.createElement('img', { src: arrowIcon, alt: direction + ' arrow' })
      );
    };

    _this.renderCarouselItem = function (child) {
      var index = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;

      if (!child) return null;

      var totalCount = _this.childrenCount + 2;
      var carouselItemStyle = {
        width: 100 / totalCount + '%'
      };

      return _react2.default.createElement(
        'div',
        { className: cx('carousel__body__item'), style: carouselItemStyle, key: 'carousel_item_' + index },
        child
      );
    };

    _this.renderIndicators = function () {
      var _this$props = _this.props,
          dotPosition = _this$props.dotPosition,
          children = _this$props.children;


      if (!children) return null;

      return _react2.default.createElement(
        'div',
        { className: cx('footer', { float: dotPosition === DOT_POSITION.FLOAT }) },
        _react2.default.createElement(
          'ul',
          { className: cx('footer__indicators') },
          children.map(function (_, index) {
            var isActive = _this.getIndicatorsActive(index);

            return _react2.default.createElement('li', {
              key: 'carousel_indicator_' + index,
              onClick: function onClick() {
                return _this.onGoToCarousel(index);
              },
              className: cx('footer__indicators__indicator', { 'footer__indicators__indicator--active': isActive })
            });
          })
        )
      );
    };

    _this.state = {
      currentCarousel: 0,
      animationStep: props.selected || 0,
      isShowArrow: false
    };

    // 取得目前輪播物件個數
    _this.childrenCount = _react2.default.Children.count(props.children) || 0;
    return _this;
  }

  /**
   * @description 開始執行
   */


  _createClass(CarouselOld, [{
    key: 'componentDidMount',
    value: function componentDidMount() {
      var autoPlay = this.props.autoPlay;


      autoPlay && this.startCarousel();
    }
  }, {
    key: 'componentDidUpdate',
    value: function componentDidUpdate(prevProps) {
      if (prevProps.autoPlay !== this.props.autoPlay) {
        if (!this.props.autoPlay) {
          this.stopCarousel();
        } else {
          this.startCarousel();
        }
      }
    }
  }, {
    key: 'componentWillUnmount',
    value: function componentWillUnmount() {
      this.stopCarousel();
    }

    /**
     * @description 點擊指定輪播項目切換
     */


    /**
     * @description 判斷導航小點點的 active 狀態
     */


    /**
     * @description 停止輪播
     */


    /**
     * @description 開始輪播
     */


    /**
     * @description 顯示/隱藏箭頭
     */


    /**
     * @description 監聽動畫結束
     */


    /**
     * @description 設定點擊箭頭後,切換顯示對應方向的 Slide 內容
     *
     * @param {string} direction - 移動方向 (left | right)
     */


    /**
     * @description 更改目前循環播放的下一個座標
     * @param {string} direction 輪播方向 (left | right)
     */


    /**
     * @description 繪制箭頭
     *
     * @param {string} direction - 移動方向 (left | right)
     */


    /**
     * @description 繪製輪播項目
     *
     * @param {ReactNode} child - 輪播項目
     * @param {number} index - 索引值
     */

  }, {
    key: 'render',
    value: function render() {
      var _this2 = this;

      var _props = this.props,
          width = _props.width,
          height = _props.height,
          hasArrow = _props.hasArrow,
          children = _props.children;
      var _state = this.state,
          animationStep = _state.animationStep,
          currentCarousel = _state.currentCarousel;


      var totalCount = this.childrenCount + 2;
      var containerWidth = width.toString().includes('%') ? width : width + 'px';
      var containerHeight = height.toString().includes('%') ? height : height + 'px';
      var carouselStyle = { width: containerWidth, height: containerHeight };
      var transitionStyle = {
        transition: 'transform ' + animationStep + 's',
        width: totalCount * 100 + '%',
        height: containerHeight,
        transform: 'translateX(' + -100 / totalCount * (currentCarousel + 1) + '%)'
      };
      var firstChild = children ? children[0] : null;
      var lastChild = children ? children[this.childrenCount - 1] : null;

      return _react2.default.createElement(
        'div',
        { className: cx('carousel-container'), style: carouselStyle },
        _react2.default.createElement(
          'div',
          { className: cx('carousel'), onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave },
          _react2.default.createElement(
            'div',
            { className: cx('carousel__body'), onTransitionEnd: this.handleTransitionEnd, style: transitionStyle },
            this.renderCarouselItem(lastChild, 0),
            children && children.map(function (item, index) {
              return _this2.renderCarouselItem(item, index + 1);
            }),
            this.renderCarouselItem(firstChild, totalCount)
          ),
          _react2.default.createElement(
            'div',
            { className: cx('carousel__arrows') },
            hasArrow && this.renderCarouselArrow(LEFT),
            hasArrow && this.renderCarouselArrow(RIGHT)
          )
        ),
        this.renderIndicators()
      );
    }
  }]);

  return CarouselOld;
}(_react2.default.Component);

CarouselOld.defaultProps = {
  width: 300,
  height: 193,
  hasArrow: true,
  autoPlay: true,
  selected: 1,
  speed: DELAY_TIME,
  dotPosition: DOT_POSITION.FLOAT
};
exports.default = CarouselOld;

/***/ }),

/***/ 2:
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
  Copyright (c) 2016 Jed Watson.
  Licensed under the MIT License (MIT), see
  http://jedwatson.github.io/classnames
*/
/* global define */

(function () {
	'use strict';

	var hasOwn = {}.hasOwnProperty;

	function classNames () {
		var classes = [];

		for (var i = 0; i < arguments.length; i++) {
			var arg = arguments[i];
			if (!arg) continue;

			var argType = typeof arg;

			if (argType === 'string' || argType === 'number') {
				classes.push(this && this[arg] || arg);
			} else if (Array.isArray(arg)) {
				classes.push(classNames.apply(this, arg));
			} else if (argType === 'object') {
				for (var key in arg) {
					if (hasOwn.call(arg, key) && arg[key]) {
						classes.push(this && this[key] || key);
					}
				}
			}
		}

		return classes.join(' ');
	}

	if (typeof module !== 'undefined' && module.exports) {
		module.exports = classNames;
	} else if (true) {
		// register as 'classnames', consistent with npm package name
		!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () {
			return classNames;
		}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
	} else {
		window.classNames = classNames;
	}
}());


/***/ }),

/***/ 452:
/***/ (function(module, exports, __webpack_require__) {

module.exports = __webpack_require__(453);


/***/ }),

/***/ 453:
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.DOT_POSITION = undefined;

var _Carousel = __webpack_require__(160);

Object.defineProperty(exports, 'DOT_POSITION', {
  enumerable: true,
  get: function get() {
    return _Carousel.DOT_POSITION;
  }
});

var _react = __webpack_require__(0);

var _react2 = _interopRequireDefault(_react);

var _Carousel2 = _interopRequireDefault(_Carousel);

var _CarouselOld = __webpack_require__(161);

var _CarouselOld2 = _interopRequireDefault(_CarouselOld);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var Component = _react2.default.version < '16.8.0' ? _CarouselOld2.default : _Carousel2.default;

exports.default = Component;

/***/ }),

/***/ 70:
/***/ (function(module, exports) {

module.exports = "https://sfiles.cnyes.cool/fe-common/affb417b/d7ef2020299e5fa5c9be780071d430cf.svg";

/***/ }),

/***/ 71:
/***/ (function(module, exports) {

module.exports = "https://sfiles.cnyes.cool/fe-common/affb417b/5780bf99c65b9b9965db73c1354f1ae3.svg";

/***/ }),

/***/ 72:
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin
module.exports = {"wrapperWidth":"1200px","screenSizeSm":"321px","screenSizeMd":"768px","screenSizeMl":"990px","screenSizeLg":"1024px","screenSizeXl":"1200px","screenSizeXXl":"1360px","carousel-container":"_1Ga39","carousel":"_2R0nD","carousel__body":"_2yzm-","carousel__body__item":"_eo53a","carousel__arrows":"_2-qcL","carousel__arrows__arrow":"_1vHlK","carousel__arrows__arrow--active":"_2ScMz","footer":"_1f41a","footer__indicators":"_2SyBM","footer__indicators__indicator":"_24kDa","footer__indicators__indicator--active":"_2wrNR","float":"_2Oix4"};

/***/ })

/******/ });
});