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); }

import React from "react";
import SwitchBehaviour from "./Switch.Behaviour";
import SwitchControlledByParent, { SwitchWithLocalState } from "./Switch.skeleton";
import switchPropTypes, { defaultProps, propsDescription } from "./Switch.propTypes";
import componentGroups from "../../docs-utils/componentGroups";
import componentCategories from "../../docs-utils/componentCategories";
import constantProps from "./Switch.constantProps";
export default function Switch(props) {
  return /*#__PURE__*/React.createElement(SwitchBehaviour, _extends({}, props, {
    renderComponent: SwitchControlledByParent
  }));
}
Switch.defaultProps = defaultProps;
Switch.propTypes = switchPropTypes;
Switch.propsDescription = propsDescription;
Switch.constantProps = constantProps;
export function SwitchControlled(props) {
  return /*#__PURE__*/React.createElement(SwitchBehaviour, _extends({}, props, {
    renderComponent: SwitchWithLocalState
  }));
}
SwitchControlled.defaultProps = defaultProps;
SwitchControlled.propTypes = switchPropTypes;
SwitchControlled.propsDescription = propsDescription;
SwitchControlled.constantProps = constantProps;

if (false) {
  Switch.docs = {
    componentGroup: componentGroups.Components,
    folderName: componentCategories.UCL
  };
}