UNPKG

mobile-more

Version:

基于 antd-mobile v5 扩展移动端 UI 组件

72 lines 4.08 kB
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2"; import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties"; var _excluded = ["current", "total", "prevText", "nextText", "submitText", "onPrev", "onNext", "onSubmit", "prevButtonProps", "nextButtonProps", "submitButtonProps", "className"]; import React from 'react'; import { toInteger } from 'ut2'; import classNames from 'classnames'; import { Button } from 'antd-mobile'; import { prefixClass } from '../../../config'; import "./index.css"; import { useConfig } from '../../BizConfigProvider'; var prefixCls = "".concat(prefixClass, "-steps-form-submitter"); var Submitter = function Submitter(props) { var _useConfig = useConfig(), locale = _useConfig.locale; var _props$current = props.current, outCurrent = _props$current === void 0 ? 1 : _props$current, outTotal = props.total, _props$prevText = props.prevText, prevText = _props$prevText === void 0 ? locale.form.common.prev : _props$prevText, _props$nextText = props.nextText, nextText = _props$nextText === void 0 ? locale.form.common.next : _props$nextText, _props$submitText = props.submitText, submitText = _props$submitText === void 0 ? locale.form.common.submit : _props$submitText, onPrev = props.onPrev, onNext = props.onNext, onSubmit = props.onSubmit, prevButtonProps = props.prevButtonProps, nextButtonProps = props.nextButtonProps, submitButtonProps = props.submitButtonProps, className = props.className, restProps = _objectWithoutProperties(props, _excluded); var current = toInteger(outCurrent < 1 ? 1 : outCurrent); var total = toInteger(outTotal < 1 ? 1 : outTotal); var isFirst = current === 1; var isLast = current === total; var handlePrev = function handlePrev(e) { var _prevButtonProps$onCl; onPrev === null || onPrev === void 0 ? void 0 : onPrev(); prevButtonProps === null || prevButtonProps === void 0 ? void 0 : (_prevButtonProps$onCl = prevButtonProps.onClick) === null || _prevButtonProps$onCl === void 0 ? void 0 : _prevButtonProps$onCl.call(prevButtonProps, e); }; var handleNext = function handleNext(e) { var _nextButtonProps$onCl; onNext === null || onNext === void 0 ? void 0 : onNext(); nextButtonProps === null || nextButtonProps === void 0 ? void 0 : (_nextButtonProps$onCl = nextButtonProps.onClick) === null || _nextButtonProps$onCl === void 0 ? void 0 : _nextButtonProps$onCl.call(nextButtonProps, e); }; var handleSubmit = function handleSubmit(e) { var _submitButtonProps$on; onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(); submitButtonProps === null || submitButtonProps === void 0 ? void 0 : (_submitButtonProps$on = submitButtonProps.onClick) === null || _submitButtonProps$on === void 0 ? void 0 : _submitButtonProps$on.call(submitButtonProps, e); }; return /*#__PURE__*/React.createElement("div", _objectSpread({ className: classNames(prefixCls, className) }, restProps), !isFirst && (/*#__PURE__*/React.createElement(Button, _objectSpread(_objectSpread({ size: "large" }, prevButtonProps), {}, { className: classNames("".concat(prefixCls, "-prev"), prevButtonProps === null || prevButtonProps === void 0 ? void 0 : prevButtonProps.className), onClick: handlePrev }), prevText)), !isLast ? (/*#__PURE__*/React.createElement(Button, _objectSpread(_objectSpread({ size: "large", color: "primary" }, nextButtonProps), {}, { className: classNames("".concat(prefixCls, "-next"), nextButtonProps === null || nextButtonProps === void 0 ? void 0 : nextButtonProps.className), onClick: handleNext }), nextText)) : (/*#__PURE__*/React.createElement(Button, _objectSpread(_objectSpread({ size: "large", color: "primary" }, submitButtonProps), {}, { className: classNames("".concat(prefixCls, "-submit"), submitButtonProps === null || submitButtonProps === void 0 ? void 0 : submitButtonProps.className), onClick: handleSubmit }), submitText))); }; export default Submitter;