UNPKG

mobile-more

Version:

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

79 lines (78 loc) 4.69 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _react = _interopRequireDefault(require("react")); var _ut = require("ut2"); var _classnames = _interopRequireDefault(require("classnames")); var _antdMobile = require("antd-mobile"); var _config = require("../../../config"); require("./index.css"); var _BizConfigProvider = require("../../BizConfigProvider"); var _excluded = ["current", "total", "prevText", "nextText", "submitText", "onPrev", "onNext", "onSubmit", "prevButtonProps", "nextButtonProps", "submitButtonProps", "className"]; var prefixCls = "".concat(_config.prefixClass, "-steps-form-submitter"); var Submitter = function Submitter(props) { var _useConfig = (0, _BizConfigProvider.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 = (0, _objectWithoutProperties2.default)(props, _excluded); var current = (0, _ut.toInteger)(outCurrent < 1 ? 1 : outCurrent); var total = (0, _ut.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.default.createElement("div", (0, _objectSpread2.default)({ className: (0, _classnames.default)(prefixCls, className) }, restProps), !isFirst && (/*#__PURE__*/_react.default.createElement(_antdMobile.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)({ size: "large" }, prevButtonProps), {}, { className: (0, _classnames.default)("".concat(prefixCls, "-prev"), prevButtonProps === null || prevButtonProps === void 0 ? void 0 : prevButtonProps.className), onClick: handlePrev }), prevText)), !isLast ? (/*#__PURE__*/_react.default.createElement(_antdMobile.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)({ size: "large", color: "primary" }, nextButtonProps), {}, { className: (0, _classnames.default)("".concat(prefixCls, "-next"), nextButtonProps === null || nextButtonProps === void 0 ? void 0 : nextButtonProps.className), onClick: handleNext }), nextText)) : (/*#__PURE__*/_react.default.createElement(_antdMobile.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)({ size: "large", color: "primary" }, submitButtonProps), {}, { className: (0, _classnames.default)("".concat(prefixCls, "-submit"), submitButtonProps === null || submitButtonProps === void 0 ? void 0 : submitButtonProps.className), onClick: handleSubmit }), submitText))); }; var _default = exports.default = Submitter;