mobile-more
Version:
基于 antd-mobile v5 扩展移动端 UI 组件
57 lines • 2.31 kB
JavaScript
import _extends from "@babel/runtime/helpers/esm/extends";
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 React from 'react';
import { isArray, isUndefined } 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;
return /*#__PURE__*/React.createElement(BizFormItem, _extends({
noStyle: !isUndefined(noStyle) ? noStyle : !!(imageUploaderProps !== null && imageUploaderProps !== void 0 && imageUploaderProps.type) || !!type,
rules: [{
validator: function validator(rule, value) {
if (required) {
if (isUndefined(value) || isArray(value) && value.length <= 0) {
return Promise.reject(locale.form.common.uploadRequired);
}
}
return Promise.resolve();
}
}],
required: required
}, restProps), /*#__PURE__*/React.createElement(BizImageUploader, _extends({
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;