UNPKG

mobile-more

Version:

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

58 lines 2.51 kB
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2"; import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties"; var _excluded = ["upload", "comfirmDelete", "maxCount", "maxSize", "type", "block", "multiple", "accept", "fileSizeMessage", "fileTypeMessage", "preview", "onPreview", "imageUploaderProps", "required", "children", "noStyle"]; import * as React from 'react'; import { isArray } from 'ut2'; import BizImageUploader from '../BizImageUploader'; import BizFormItem from './FormItem'; import { useConfig } from '../BizConfigProvider'; var BizFormItemImageUploader = function BizFormItemImageUploader(_ref) { var upload = _ref.upload, comfirmDelete = _ref.comfirmDelete, maxCount = _ref.maxCount, maxSize = _ref.maxSize, type = _ref.type, block = _ref.block, multiple = _ref.multiple, accept = _ref.accept, fileSizeMessage = _ref.fileSizeMessage, fileTypeMessage = _ref.fileTypeMessage, preview = _ref.preview, onPreview = _ref.onPreview, imageUploaderProps = _ref.imageUploaderProps, required = _ref.required, children = _ref.children, noStyle = _ref.noStyle, restProps = _objectWithoutProperties(_ref, _excluded); var _useConfig = useConfig(), locale = _useConfig.locale; var realNoStyle = React.useMemo(function () { return typeof noStyle !== 'undefined' ? noStyle : !!(imageUploaderProps === null || imageUploaderProps === void 0 ? void 0 : imageUploaderProps.type) || !!type; }, [imageUploaderProps === null || imageUploaderProps === void 0 ? void 0 : imageUploaderProps.type, noStyle, type]); return /*#__PURE__*/React.createElement(BizFormItem, _objectSpread({ noStyle: realNoStyle, rules: [{ validator: function validator(rule, value) { if (required && (isArray(value) && value.length <= 0 || typeof value === 'undefined')) { return Promise.reject(locale.form.common.uploadRequired); } return Promise.resolve(); } }], required: required }, restProps), /*#__PURE__*/React.createElement(BizImageUploader, _objectSpread({ upload: upload, comfirmDelete: comfirmDelete, maxCount: maxCount, maxSize: maxSize, type: type, multiple: multiple, block: block, accept: accept, fileSizeMessage: fileSizeMessage, fileTypeMessage: fileTypeMessage, preview: preview, onPreview: onPreview }, imageUploaderProps), children)); }; export default BizFormItemImageUploader;