function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
import React from 'react';
import { FloatButton } from 'antd';
import IconFont from "../../../iconfont";
import classNames from 'classnames';
import "./index.less";
var ActionsContainer = function ActionsContainer(_ref) {
  var containerRef = _ref.containerRef,
    scrollState = _ref.scrollState,
    overflow = _ref.overflow,
    _ref$scrollActionsCon = _ref.scrollActionsConfig,
    scrollActionsConfig = _ref$scrollActionsCon === void 0 ? {
      type: 'backTop'
    } : _ref$scrollActionsCon,
    _onClick = _ref.onClick;
  if (overflow !== 'x' && overflow !== 'y') {
    return null;
  }
  if (!scrollState.isOverflows) {
    return null;
  }
  if (!(scrollActionsConfig !== null && scrollActionsConfig !== void 0 && scrollActionsConfig.show) || !scrollActionsConfig) {
    return null;
  }
  if (overflow === 'y' && scrollActionsConfig.type === 'backTop') {
    return /*#__PURE__*/React.createElement(FloatButton.BackTop, _extends({
      target: function target() {
        return containerRef.current || window;
      },
      visibilityHeight: 300,
      icon: /*#__PURE__*/React.createElement(IconFont, {
        type: "pisell2-chevron-up"
      })
    }, scrollActionsConfig.config, {
      style: _objectSpread({
        position: 'absolute'
      }, scrollActionsConfig.style)
    }));
  }
  if (overflow === 'x' && scrollActionsConfig.type === 'rArrows') {
    return /*#__PURE__*/React.createElement("div", {
      className: "pisell-scroll-view-actions-rArrows-container",
      style: scrollActionsConfig.style
    }, /*#__PURE__*/React.createElement("div", _extends({
      className: classNames('pisell-scroll-view-actions-rArrows', 'pisell-scroll-view-actions-rArrows-left', {
        'pisell-scroll-view-actions-rArrows-hidden': scrollState.isScrollToLeft,
        'pisell-scroll-view-actions-rArrows-show': !scrollState.isScrollToLeft
      }),
      onClick: function onClick() {
        return _onClick('left');
      }
    }, scrollActionsConfig.config), /*#__PURE__*/React.createElement(IconFont, {
      type: "pisell2-chevron-left",
      className: classNames('pisell-scroll-view-actions-rArrows-icon', {
        'pisell-scroll-view-actions-rArrows-icon-hidden': scrollState.isScrollToLeft
      })
    })), /*#__PURE__*/React.createElement("div", _extends({
      className: classNames('pisell-scroll-view-actions-rArrows', 'pisell-scroll-view-actions-rArrows-right', {
        'pisell-scroll-view-actions-rArrows-hidden': scrollState.isScrollToRight,
        'pisell-scroll-view-actions-rArrows-show': !scrollState.isScrollToRight
      }),
      onClick: function onClick() {
        return _onClick('right');
      }
    }, scrollActionsConfig.config), /*#__PURE__*/React.createElement(IconFont, {
      type: "pisell2-chevron-right",
      className: classNames('pisell-scroll-view-actions-rArrows-icon', {
        'pisell-scroll-view-actions-rArrows-icon-hidden': scrollState.isScrollToRight
      })
    })));
  }
  if (overflow === 'x' && scrollActionsConfig.type === 'lrArrows') {
    return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", _extends({
      className: classNames('pisell-scroll-view-actions-lrArrows', 'pisell-scroll-view-actions-lrArrows-left', {
        'pisell-scroll-view-actions-lrArrows-hidden': scrollState.isScrollToLeft,
        'pisell-scroll-view-actions-lrArrows-show': !scrollState.isScrollToLeft
      }),
      onClick: function onClick() {
        return _onClick('left');
      }
    }, scrollActionsConfig.config), /*#__PURE__*/React.createElement(IconFont, {
      type: "pisell2-chevron-left",
      className: "pisell-scroll-view-actions-lrArrows-icon"
    })), /*#__PURE__*/React.createElement("div", _extends({
      className: classNames('pisell-scroll-view-actions-lrArrows', 'pisell-scroll-view-actions-lrArrows-right', {
        'pisell-scroll-view-actions-lrArrows-hidden': scrollState.isScrollToRight,
        'pisell-scroll-view-actions-lrArrows-show': !scrollState.isScrollToRight
      }),
      onClick: function onClick() {
        return _onClick('right');
      }
    }, scrollActionsConfig.config), /*#__PURE__*/React.createElement(IconFont, {
      type: "pisell2-chevron-right",
      className: "pisell-scroll-view-actions-lrArrows-icon"
    })));
  }
  if (overflow === 'y' && scrollActionsConfig.type === 'tbArrows') {
    return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", _extends({
      className: classNames('pisell-scroll-view-actions-tbArrows', 'pisell-scroll-view-actions-tbArrows-top', {
        'pisell-scroll-view-actions-tbArrows-hidden': scrollState.isScrollToTop,
        'pisell-scroll-view-actions-tbArrows-show': !scrollState.isScrollToTop
      }),
      onClick: function onClick() {
        return _onClick('top');
      }
    }, scrollActionsConfig.config), /*#__PURE__*/React.createElement(IconFont, {
      type: "pisell2-chevron-up",
      className: "pisell-scroll-view-actions-tbArrows-icon"
    })), /*#__PURE__*/React.createElement("div", _extends({
      className: classNames('pisell-scroll-view-actions-tbArrows', 'pisell-scroll-view-actions-tbArrows-bottom', {
        'pisell-scroll-view-actions-tbArrows-hidden': scrollState.isScrollToBottom,
        'pisell-scroll-view-actions-tbArrows-show': !scrollState.isScrollToBottom
      }),
      onClick: function onClick() {
        return _onClick('bottom');
      }
    }, scrollActionsConfig.config), /*#__PURE__*/React.createElement(IconFont, {
      type: "pisell2-chevron-down",
      className: "pisell-scroll-view-actions-tbArrows-icon"
    })));
  }
  return null;
};
export default ActionsContainer;