var _excluded = ["hasHover", "isDisabled", "isOpen"];
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 _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
import React from 'react';
import { IconExpandLess, IconExpandMore } from '@defencedigital/icon-library';
import { COMPONENT_SIZE } from '../Forms';
import { InlineButton } from '../InlineButtons/InlineButton';
var ICON_VIEW_BOX = '4 4 16 16';
export var ArrowButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
  var hasHover = _ref.hasHover,
    isDisabled = _ref.isDisabled,
    isOpen = _ref.isOpen,
    rest = _objectWithoutProperties(_ref, _excluded);
  return /*#__PURE__*/React.createElement(InlineButton, _extends({
    hasHover: hasHover,
    isDisabled: isDisabled,
    "aria-label": "".concat(isOpen ? 'Hide' : 'Show', " options"),
    ref: ref,
    size: COMPONENT_SIZE.FORMS
  }, rest), isOpen ? /*#__PURE__*/React.createElement(IconExpandLess, {
    size: 18,
    viewBox: ICON_VIEW_BOX
  }) : /*#__PURE__*/React.createElement(IconExpandMore, {
    size: 18,
    viewBox: ICON_VIEW_BOX
  }));
});
ArrowButton.displayName = 'ArrowButton';