UNPKG

mobile-more

Version:

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

73 lines (72 loc) 3.5 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _antdMobile = require("antd-mobile"); var _classnames2 = _interopRequireDefault(require("classnames")); var _set = _interopRequireDefault(require("rc-util/es/utils/set")); var React = _interopRequireWildcard(require("react")); var _ut = require("ut2"); var _config = require("../../config"); require("./Form.css"); var _FormArray = _interopRequireDefault(require("./FormArray")); var _FormContext = _interopRequireDefault(require("./FormContext")); var _FormItem = _interopRequireDefault(require("./FormItem")); var _getNamePaths = _interopRequireDefault(require("./utils/getNamePaths")); var _transform = require("./utils/transform"); var _excluded = ["onFinish", "className", "justify", "visible", "layout"]; var prefixCls = "".concat(_config.prefixClass, "-form"); var BizForm = function BizForm(_ref) { var _onFinish = _ref.onFinish, className = _ref.className, _ref$justify = _ref.justify, justify = _ref$justify === void 0 ? 'start' : _ref$justify, _ref$visible = _ref.visible, visible = _ref$visible === void 0 ? true : _ref$visible, _ref$layout = _ref.layout, layout = _ref$layout === void 0 ? 'horizontal' : _ref$layout, restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded); var transformRecordRef = React.useRef({}); var setFieldTransform = function setFieldTransform(name, transform, parentListNames) { if (name && transform) { if ((0, _ut.isArray)(parentListNames) && parentListNames.length > 0) { var paths = (0, _getNamePaths.default)(name, parentListNames); transformRecordRef.current = (0, _set.default)(transformRecordRef.current, paths, transform); } else if ((0, _ut.isArray)(name)) { transformRecordRef.current = (0, _set.default)(transformRecordRef.current, name, transform); } else { transformRecordRef.current[String(name)] = transform; } } }; return /*#__PURE__*/React.createElement(_FormContext.default.Provider, { value: { setFieldTransform: setFieldTransform, justify: justify } }, /*#__PURE__*/React.createElement(_antdMobile.Form, (0, _objectSpread2.default)({ className: (0, _classnames2.default)(prefixCls, (0, _defineProperty2.default)({}, "".concat(prefixCls, "-visible"), visible), className), layout: layout, onFinish: function onFinish(values) { if (typeof _onFinish !== 'function') { return; } var transValues = (0, _transform.transformFormValues)(values, transformRecordRef.current); // console.log(values, transValues); _onFinish(transValues); } }, restProps))); }; BizForm.Item = _FormItem.default; BizForm.Array = _FormArray.default; BizForm.Subscribe = _antdMobile.Form.Subscribe; BizForm.Header = _antdMobile.Form.Header; BizForm.useForm = _antdMobile.Form.useForm; BizForm.useWatch = _antdMobile.Form.useWatch; var _default = exports.default = BizForm;