"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports["default"] = exports.ConfigurationModeSwitch = void 0;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _i18n = require("../../../../../Framework/i18n");
var _styles = require("@material-ui/core/styles");
var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
var _AnalyticsWrapper = _interopRequireDefault(require("../../../../Shared/Components/Analytics/AnalyticsWrapper"));
var _excluded = ["configurationModeOptions", "onChange"];
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
var styles = function styles(theme) {
  return {
    root: {
      textTransform: 'none',
      fontSize: 15
    },
    outlined: {
      boxShadow: theme.shadows[2],
      '&:hover': {
        boxShadow: theme.shadows[4],
        // Reset on touch devices, it doesn't add specificity
        '@media (hover: none)': {
          boxShadow: theme.shadows[2]
        }
      }
    },
    label: {}
  };
};
var ConfigurationModeSwitch = exports.ConfigurationModeSwitch = function ConfigurationModeSwitch(_ref) {
  var configurationModeOptions = _ref.configurationModeOptions,
    onChange = _ref.onChange,
    props = _objectWithoutProperties(_ref, _excluded);
  var modeOption = configurationModeOptions[0];
  return configurationModeOptions.length && /*#__PURE__*/_react["default"].createElement(_AnalyticsWrapper["default"], {
    targetId: "configuration_mode_switch",
    data: modeOption
  }, /*#__PURE__*/_react["default"].createElement(_Button["default"], _extends({
    variant: "outlined",
    fullWidth: true,
    size: "medium",
    onClick: function onClick() {
      return onChange(modeOption);
    }
  }, props), (0, _i18n.t)("configurationModeSwitch.options.".concat(modeOption))));
};
ConfigurationModeSwitch.defaultProps = {
  configurationModeOptions: []
};
var _default = exports["default"] = (0, _styles.withStyles)(styles, {
  name: 'ConfigurationModeSwitch'
})(ConfigurationModeSwitch);