@doopage/react-ui-kit
Version:
UI-kit for DooPage project
72 lines (52 loc) • 2.61 kB
JavaScript
;
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports["default"] = exports.isCustomColor = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
var _react = _interopRequireWildcard(require("react"));
var _Chip = _interopRequireDefault(require("@material-ui/core/Chip"));
var _Tooltip = _interopRequireDefault(require("@material-ui/core/Tooltip"));
var _Zoom = _interopRequireDefault(require("@material-ui/core/Zoom"));
var _classnames = _interopRequireDefault(require("classnames"));
var _styles = _interopRequireDefault(require("./styles"));
var _constants = require("../utils/constants");
var isCustomColor = function (color) {
if (!color) return false;
return !(0, _constants.isThemeColor)(color);
};
exports.isCustomColor = isCustomColor;
var Chip = function (props) {
var _classNames;
var classes = (0, _styles["default"])(props);
var helperText = props.helperText,
hide = props.hide,
label = props.label,
_props$color = props.color,
color = _props$color === void 0 ? 'gray' : _props$color,
children = props.children,
className = props.className,
_props$size = props.size,
size = _props$size === void 0 ? 'small' : _props$size,
outlined = props.outlined,
square = props.square,
rest = (0, _objectWithoutPropertiesLoose2["default"])(props, ["helperText", "hide", "label", "color", "children", "className", "size", "outlined", "square"]);
if (hide) return null;
var customClass = (0, _classnames["default"])(className, classes.root, (_classNames = {}, _classNames[classes[isCustomColor(color) ? 'customColor' : color]] = true, _classNames[classes.outlined] = outlined, _classNames[classes.square] = square, _classNames));
var chipCom = /*#__PURE__*/_react["default"].createElement(_Chip["default"], (0, _extends2["default"])({
variant: outlined ? 'outlined' : 'default'
}, rest, {
label: label || children,
className: customClass,
size: size
}));
if (helperText) chipCom = /*#__PURE__*/_react["default"].createElement(_Tooltip["default"], {
TransitionComponent: _Zoom["default"],
title: helperText,
placement: 'bottom'
}, chipCom);
return chipCom;
};
var _default = /*#__PURE__*/(0, _react.memo)(Chip);
exports["default"] = _default;