@alifd/meet-react
Version:
Fusion Mobile React UI System Component
67 lines • 4.27 kB
JavaScript
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
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 _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
import { __rest } from "tslib";
import React, { createElement } from "react";
import classNames from 'classnames';
import View from '../view';
import Button from '../button';
import { isValidArray } from '../utils';
var BottomButton = function BottomButton(props) {
var _props$prefix = props.prefix,
prefix = _props$prefix === void 0 ? 'mt-' : _props$prefix,
_props$actions = props.actions,
actions = _props$actions === void 0 ? ['cancel', 'ok'] : _props$actions,
_props$size = props.size,
size = _props$size === void 0 ? 'large' : _props$size,
okText = props.okText,
cancelText = props.cancelText,
className = props.className,
okProps = props.okProps,
cancelProps = props.cancelProps,
_props$enableSafeArea = props.enableSafeArea,
enableSafeArea = _props$enableSafeArea === void 0 ? false : _props$enableSafeArea,
_props$showDividingLi = props.showDividingLine,
showDividingLine = _props$showDividingLi === void 0 ? true : _props$showDividingLi,
children = props.children,
onOk = props.onOk,
onCancel = props.onCancel,
others = __rest(props, ["prefix", "actions", "size", "okText", "cancelText", "className", "okProps", "cancelProps", "enableSafeArea", "showDividingLine", "children", "onOk", "onCancel"]);
var clsPrefix = "".concat(prefix, "bottom-btn");
var clses = {
bottomBtn: classNames(clsPrefix, className, _defineProperty(_defineProperty({}, "".concat(clsPrefix, "--dividing"), showDividingLine), "".concat(clsPrefix, "--safe"), enableSafeArea)),
extra: "".concat(clsPrefix, "-extra"),
container: classNames("".concat(clsPrefix, "-container"), _defineProperty({}, "".concat(clsPrefix, "-container--col-2"), isValidArray(actions) && actions.length === 2))
};
var _a = okProps || {},
okBtnText = _a.text,
otherOkBtnProps = __rest(_a, ["text"]);
var _b = cancelProps || {},
cancelBtnText = _b.text,
otherCancelBtnProps = __rest(_b, ["text"]);
var newOkBtnText = okText || okBtnText || '确定';
var newCancelBtnText = cancelText || cancelBtnText || '取消';
return /*#__PURE__*/React.createElement(View, _extends({}, others, {
className: clses.bottomBtn
}), children ? /*#__PURE__*/React.createElement(View, {
className: clses.extra
}, children) : null, /*#__PURE__*/React.createElement(View, {
className: clses.container
}, actions.map(function (act) {
var isCancel = act === 'cancel';
var text = isCancel ? newCancelBtnText : newOkBtnText;
var btnProps = Object.assign({
onClick: isCancel ? onCancel : onOk,
size: size
}, isCancel ? otherCancelBtnProps : otherOkBtnProps);
return /*#__PURE__*/React.createElement(Button, _extends({
key: "bottom-btn-".concat(act),
type: isCancel ? 'normal' : 'primary',
model: isCancel ? 'outline' : 'solid'
}, btnProps), text);
})));
};
BottomButton.displayName = 'BottomButton';
export default BottomButton;