mr-component
Version:
A library for Mr components
77 lines (71 loc) • 3.93 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports["default"] = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
var _react = _interopRequireWildcard(require("react"));
var React = _react;
var _reactVant = require("react-vant");
var _excluded = ["type", "variant", "text", "fontSize", "isAmount", "size", "color", "disabled", "loading", "round", "square", "block", "icon", "iconPosition", "onClick", "className", "style"],
_excluded2 = ["forwardRef"];
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
// Mr Button 变体类型
// 成功操作按钮 - 绿色
var MrButton = function MrButton(props, ref) {
var _props$type = props.type,
type = _props$type === void 0 ? 'default' : _props$type,
_props$variant = props.variant,
variant = _props$variant === void 0 ? 'payment-primary' : _props$variant,
_props$text = props.text,
text = _props$text === void 0 ? '按钮' : _props$text,
_props$fontSize = props.fontSize,
fontSize = _props$fontSize === void 0 ? 'h5' : _props$fontSize,
_props$isAmount = props.isAmount,
isAmount = _props$isAmount === void 0 ? false : _props$isAmount,
_props$size = props.size,
size = _props$size === void 0 ? 'normal' : _props$size,
color = props.color,
_props$disabled = props.disabled,
disabled = _props$disabled === void 0 ? false : _props$disabled,
_props$loading = props.loading,
loading = _props$loading === void 0 ? false : _props$loading,
_props$round = props.round,
round = _props$round === void 0 ? false : _props$round,
_props$square = props.square,
square = _props$square === void 0 ? false : _props$square,
_props$block = props.block,
block = _props$block === void 0 ? false : _props$block,
icon = props.icon,
_props$iconPosition = props.iconPosition,
iconPosition = _props$iconPosition === void 0 ? 'left' : _props$iconPosition,
onClick = props.onClick,
className = props.className,
style = props.style,
others = (0, _objectWithoutPropertiesLoose2["default"])(props, _excluded);
// 手动构建CSS类名
var classNames = ['mr-button', variant && "mr-button--" + variant, fontSize && "mr-button--font-" + fontSize, isAmount && 'mr-button--amount', className].filter(Boolean).join(' ');
// 如果有variant,优先使用variant样式,否则使用原生type
var buttonType = variant ? 'default' : type;
// 过滤掉可能被错误传递的forwardRef属性
var _ = others.forwardRef,
restProps = (0, _objectWithoutPropertiesLoose2["default"])(others, _excluded2);
return /*#__PURE__*/React.createElement(_reactVant.Button, (0, _extends2["default"])({
type: buttonType,
size: size,
color: color,
disabled: disabled,
loading: loading,
round: round,
square: square,
block: block,
icon: icon,
iconPosition: iconPosition,
className: classNames,
style: style,
onClick: onClick
}, restProps), text);
};
var RefMrButton = /*#__PURE__*/(0, _react.forwardRef)(MrButton);
RefMrButton.displayName = 'MrButton';
var _default = exports["default"] = RefMrButton;