UNPKG

tdesign-react

Version:
867 lines (859 loc) 38.2 kB
/** * tdesign v1.11.6 * (c) 2025 tdesign * @license MIT */ 'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var toConsumableArray = require('../_chunks/dep-f500d2b7.js'); var _typeof = require('../_chunks/dep-5b35215f.js'); var index = require('../_chunks/dep-e9660f30.js'); var defineProperty = require('../_chunks/dep-56a79f9c.js'); var slicedToArray = require('../_chunks/dep-48e1db8c.js'); var React = require('react'); var tdesignIconsReact = require('tdesign-icons-react'); var form_utils_index = require('./utils/index.js'); var hooks_useConfig = require('../hooks/useConfig.js'); var hooks_useGlobalIcon = require('../hooks/useGlobalIcon.js'); var form_hooks_useForm = require('./hooks/useForm.js'); var form_formModel = require('./formModel.js'); var form_FormContext = require('./FormContext.js'); var form_hooks_useFormItemStyle = require('./hooks/useFormItemStyle.js'); var form_hooks_useFormItemInitialData = require('./hooks/useFormItemInitialData.js'); var form_defaultProps = require('./defaultProps.js'); var form_const = require('./const.js'); var hooks_useDefaultProps = require('../hooks/useDefaultProps.js'); var locale_LocalReceiver = require('../locale/LocalReceiver.js'); var get = require('../_chunks/dep-32cacffb.js'); var isFunction = require('../_chunks/dep-8d4e8f1c.js'); var merge = require('../_chunks/dep-59bb0827.js'); var isString = require('../_chunks/dep-3c8023f1.js'); var isObject = require('../_chunks/dep-1d022321.js'); require('../_chunks/dep-6b4846c3.js'); require('../_chunks/dep-6dccca61.js'); require('../_chunks/dep-476b268c.js'); require('../_chunks/dep-ec3beb8d.js'); require('../_chunks/dep-02a1b59c.js'); require('../_chunks/dep-6e34d7d7.js'); require('../_chunks/dep-d45b3350.js'); require('../_chunks/dep-af16359b.js'); require('../_chunks/dep-e11afe29.js'); require('../_chunks/dep-346ac5f4.js'); require('../_chunks/dep-dc26f226.js'); require('../_chunks/dep-a8d0483a.js'); require('../_chunks/dep-9df70348.js'); require('../_chunks/dep-73937edb.js'); require('../_chunks/dep-7c59bcf4.js'); require('../_chunks/dep-d8727aa2.js'); require('../_chunks/dep-b7e21379.js'); require('../_chunks/dep-ab08e148.js'); require('../_chunks/dep-440a0ba0.js'); require('../config-provider/ConfigContext.js'); require('../_chunks/dep-fa2097c1.js'); require('../_chunks/dep-f6f16bd8.js'); require('dayjs'); require('../_chunks/dep-68f8743f.js'); require('../_chunks/dep-612ec5c9.js'); require('../_chunks/dep-4d25d6c0.js'); require('../_chunks/dep-496c0353.js'); require('../_chunks/dep-1f530d81.js'); require('../_chunks/dep-a4bc3144.js'); require('../_chunks/dep-535a3b69.js'); require('../_chunks/dep-d11b328f.js'); require('../_chunks/dep-2c69dce8.js'); require('../_chunks/dep-fca46a1f.js'); require('../_chunks/dep-9ecc1939.js'); require('../_chunks/dep-82a8b824.js'); require('classnames'); require('../_util/parseTNode.js'); require('../tree/Tree.js'); require('react-transition-group'); require('../tree/TreeItem.js'); require('../_chunks/dep-da07bc8c.js'); require('../loading/index.js'); require('../loading/Loading.js'); require('../_util/dom.js'); require('raf'); require('../_util/easing.js'); require('../common/Portal.js'); require('react-dom'); require('../hooks/useLayoutEffect.js'); require('../_chunks/dep-c43c91af.js'); require('../hooks/useDomRefCallback.js'); require('../loading/defaultProps.js'); require('../loading/plugin.js'); require('../_util/react-render.js'); require('../common/PluginContainer.js'); require('../config-provider/ConfigProvider.js'); require('../_chunks/dep-48ac011e.js'); require('../_chunks/dep-c4eb94d2.js'); require('../_chunks/dep-d5a77c7c.js'); require('../_chunks/dep-b7847924.js'); require('../_chunks/dep-0d35f53a.js'); require('../hooks/useRipple.js'); require('../hooks/useAnimation.js'); require('../_util/setStyle.js'); require('../checkbox/index.js'); require('../_chunks/dep-3609604e.js'); require('../_util/forwardRefWithStatics.js'); require('hoist-non-react-statics'); require('../common/Check.js'); require('../_util/helper.js'); require('../_chunks/dep-3b342ce7.js'); require('../_chunks/dep-35df84a1.js'); require('../_chunks/dep-fe42fca8.js'); require('../_chunks/dep-4546f1ae.js'); require('../hooks/useControlled.js'); require('../_util/noop.js'); require('../_chunks/dep-a7854794.js'); require('../checkbox/defaultProps.js'); require('../tree/hooks/useTreeConfig.js'); require('../tree/hooks/useDraggable.js'); require('../tree/hooks/TreeDraggableContext.js'); require('../_util/createHookContext.js'); require('../hooks/usePersistFn.js'); require('../_chunks/dep-9a71333f.js'); require('../_chunks/dep-30d1d019.js'); require('../_chunks/dep-a817745a.js'); require('../_util/composeRefs.js'); require('../tree/hooks/useControllable.js'); require('../tree/hooks/useStore.js'); require('../_chunks/dep-48575584.js'); require('mitt'); require('../_chunks/dep-b3a25246.js'); require('../_chunks/dep-42a29965.js'); require('../_chunks/dep-1edabb9f.js'); require('../_chunks/dep-345a6333.js'); require('../_chunks/dep-53a1df7e.js'); require('../_chunks/dep-fec02fc8.js'); require('../_chunks/dep-775c9851.js'); require('../_chunks/dep-8b01d649.js'); require('../_chunks/dep-9addac50.js'); require('../_chunks/dep-6830f3a8.js'); require('../_chunks/dep-59c085df.js'); require('../_chunks/dep-f3b11994.js'); require('../_chunks/dep-3d31346e.js'); require('../_chunks/dep-f0d80bbb.js'); require('../hooks/useUpdateLayoutEffect.js'); require('../hooks/useIsFirstRender.js'); require('../hooks/usePrevious.js'); require('../tree/hooks/useTreeVirtualScroll.js'); require('../hooks/useVirtualScroll.js'); require('../hooks/useResizeObserver.js'); require('../hooks/useEventCallback.js'); require('../upload/upload.js'); require('../upload/themes/NormalFile.js'); require('../_chunks/dep-3744c5c1.js'); require('../link/index.js'); require('../link/Link.js'); require('../link/defaultProps.js'); require('../upload/themes/DraggerFile.js'); require('../hooks/useCommonClassName.js'); require('../upload/hooks/useDrag.js'); require('../image-viewer/index.js'); require('../image-viewer/ImageViewer.js'); require('../_chunks/dep-78118b85.js'); require('../hooks/useImagePreviewUrl.js'); require('../tooltip/index.js'); require('../tooltip/Tooltip.js'); require('../popup/index.js'); require('../popup/Popup.js'); require('react-popper'); require('../popup/hooks/useTrigger.js'); require('react-is'); require('../popup/utils/ref.js'); require('../popup/utils/transition.js'); require('../hooks/useMutationObserver.js'); require('../hooks/useLatest.js'); require('../_chunks/dep-4dcb7805.js'); require('../_chunks/dep-bf176c49.js'); require('../hooks/useWindowSize.js'); require('../popup/defaultProps.js'); require('../hooks/useAttach.js'); require('../popup/PopupPlugin.js'); require('@popperjs/core'); require('../tooltip/defaultProps.js'); require('../tooltip/TooltipLite.js'); require('../hooks/useSwitch.js'); require('../image-viewer/utils.js'); require('../dialog/index.js'); require('../dialog/Dialog.js'); require('../hooks/useSetState.js'); require('../dialog/defaultProps.js'); require('../dialog/DialogCard.js'); require('../button/index.js'); require('../button/Button.js'); require('../button/defaultProps.js'); require('../dialog/hooks/useDialogEsc.js'); require('../dialog/hooks/useLockStyle.js'); require('../_chunks/dep-6663de5a.js'); require('../dialog/hooks/useDialogPosition.js'); require('../dialog/hooks/useDialogDrag.js'); require('../dialog/utils.js'); require('../dialog/plugin.js'); require('../image-viewer/hooks/useMirror.js'); require('../image-viewer/hooks/usePosition.js'); require('../image-viewer/hooks/useIndex.js'); require('../image-viewer/hooks/useRotate.js'); require('../image-viewer/hooks/useScale.js'); require('../image-viewer/hooks/useIconMap.js'); require('../image/index.js'); require('../image/Image.js'); require('../_chunks/dep-ffd7c700.js'); require('../image/defaultProps.js'); require('../space/index.js'); require('../space/Space.js'); require('../space/defaultProps.js'); require('../image-viewer/defaultProps.js'); require('../image-viewer/hooks/useImageScale.js'); require('../image-viewer/hooks/useList.js'); require('../image-viewer/hooks/useViewerScale.js'); require('../upload/themes/ImageCard.js'); require('../upload/themes/MultipleFlowList.js'); require('../upload/hooks/useUpload.js'); require('../_chunks/dep-88281ddd.js'); require('../upload/defaultProps.js'); require('../upload/themes/CustomFile.js'); require('../tag/CheckTag.js'); require('../_chunks/dep-90f4ef78.js'); require('../tag/defaultProps.js'); require('../tag/Tag.js'); require('tinycolor2'); require('../tag-input/TagInput.js'); require('../hooks/useDragSorter.js'); require('../input/index.js'); require('../input/Input.js'); require('../input/InputGroup.js'); require('../input/defaultProps.js'); require('../input/useLengthLimit.js'); require('../tag-input/useTagScroll.js'); require('../tag-input/useTagList.js'); require('../tag/index.js'); require('../tag/CheckTagGroup.js'); require('../tag-input/useHover.js'); require('../tag-input/defaultProps.js'); require('../range-input/RangeInput.js'); require('../range-input/defaultProps.js'); require('../transfer/Transfer.js'); require('../transfer/TransferList.js'); require('../transfer/utils.js'); require('../pagination/index.js'); require('../pagination/Pagination.js'); require('../select/index.js'); require('../select/base/Select.js'); require('../select/util/helper.js'); require('../select/base/OptionGroup.js'); require('../select/defaultProps.js'); require('../select/base/Option.js'); require('../common/FakeArrow.js'); require('../select-input/index.js'); require('../select-input/SelectInput.js'); require('../select-input/useSingle.js'); require('../select-input/useMultiple.js'); require('../tag-input/index.js'); require('../select-input/useOverlayInnerStyle.js'); require('../select-input/defaultProps.js'); require('../select/base/PopupContent.js'); require('../select/hooks/usePanelVirtualScroll.js'); require('../select/hooks/useOptions.js'); require('../input-number/index.js'); require('../input-number/InputNumber.js'); require('../input-number/useInputNumber.js'); require('../input-number/defaultProps.js'); require('../input-adornment/InputAdornment.js'); require('../pagination/hooks/useBoundaryJumper.js'); require('../pagination/hooks/usePrevNextJumper.js'); require('../pagination/hooks/usePageNumber.js'); require('../pagination/hooks/useTotal.js'); require('../pagination/validators.js'); require('../pagination/defaultProps.js'); require('../pagination/PaginationMini.js'); require('../transfer/defaultProps.js'); require('../date-picker/DateRangePicker.js'); require('../_chunks/dep-bcbfaefb.js'); require('../_chunks/dep-e1b3724f.js'); require('../_chunks/dep-3c040a0c.js'); require('../range-input/index.js'); require('../range-input/RangeInputPopup.js'); require('../date-picker/panel/RangePanel.js'); require('../date-picker/panel/PanelContent.js'); require('../date-picker/base/Header.js'); require('../date-picker/base/Table.js'); require('../date-picker/base/Cell.js'); require('../time-picker/index.js'); require('../time-picker/TimePicker.js'); require('../_chunks/dep-df84738c.js'); require('../time-picker/hooks/useTimePickerTextConfig.js'); require('../hooks/useDebounce.js'); require('../hooks/usePropsRef.js'); require('../time-picker/TimeRangePicker.js'); require('../time-picker/panel/TimePickerPanel.js'); require('../time-picker/defaultProps.js'); require('../date-picker/panel/ExtraContent.js'); require('../date-picker/base/Footer.js'); require('../date-picker/hooks/useTableData.js'); require('../date-picker/hooks/useDisableDate.js'); require('../date-picker/utils.js'); require('../date-picker/hooks/useRange.js'); require('../date-picker/hooks/useRangeValue.js'); require('../date-picker/defaultProps.js'); function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } var React__default = /*#__PURE__*/_interopDefaultLegacy(React); function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { defineProperty._defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } var FormItem = /*#__PURE__*/React.forwardRef(function (originalProps, ref) { var _useLocaleReceiver = locale_LocalReceiver.useLocaleReceiver("form"), _useLocaleReceiver2 = slicedToArray._slicedToArray(_useLocaleReceiver, 2), locale = _useLocaleReceiver2[0], t = _useLocaleReceiver2[1]; var _useConfig = hooks_useConfig["default"](), classPrefix = _useConfig.classPrefix, globalFormConfig = _useConfig.form; var _useGlobalIcon = hooks_useGlobalIcon["default"]({ CheckCircleFilledIcon: tdesignIconsReact.CheckCircleFilledIcon, CloseCircleFilledIcon: tdesignIconsReact.CloseCircleFilledIcon, ErrorCircleFilledIcon: tdesignIconsReact.ErrorCircleFilledIcon }), CheckCircleFilledIcon = _useGlobalIcon.CheckCircleFilledIcon, CloseCircleFilledIcon = _useGlobalIcon.CloseCircleFilledIcon, ErrorCircleFilledIcon = _useGlobalIcon.ErrorCircleFilledIcon; var _useFormContext = form_FormContext.useFormContext(), form = _useFormContext.form, colon = _useFormContext.colon, layout = _useFormContext.layout, requiredMarkFromContext = _useFormContext.requiredMark, labelAlignFromContext = _useFormContext.labelAlign, labelWidthFromContext = _useFormContext.labelWidth, showErrorMessageFromContext = _useFormContext.showErrorMessage, disabledFromContext = _useFormContext.disabled, resetTypeFromContext = _useFormContext.resetType, rulesFromContext = _useFormContext.rules, statusIconFromContext = _useFormContext.statusIcon, errorMessage = _useFormContext.errorMessage, formMapRef = _useFormContext.formMapRef, onFormItemValueChange = _useFormContext.onFormItemValueChange; var _useFormListContext = form_FormContext.useFormListContext(), formListName = _useFormListContext.name, formListRules = _useFormListContext.rules, formListMapRef = _useFormListContext.formListMapRef; var props = hooks_useDefaultProps["default"](originalProps, form_defaultProps.formItemDefaultProps); var children = props.children, style = props.style, label = props.label, name = props.name, status = props.status, tips = props.tips, help = props.help, valueFormat = props.valueFormat, initialData = props.initialData, className = props.className, shouldUpdate = props.shouldUpdate, successBorder = props.successBorder, _props$statusIcon = props.statusIcon, statusIcon = _props$statusIcon === void 0 ? statusIconFromContext : _props$statusIcon, _props$rules = props.rules, innerRules = _props$rules === void 0 ? getInnerRules(name, rulesFromContext, formListName, formListRules) : _props$rules, _props$labelWidth = props.labelWidth, labelWidth = _props$labelWidth === void 0 ? labelWidthFromContext : _props$labelWidth, _props$labelAlign = props.labelAlign, labelAlign = _props$labelAlign === void 0 ? labelAlignFromContext : _props$labelAlign, _props$requiredMark = props.requiredMark, requiredMark = _props$requiredMark === void 0 ? requiredMarkFromContext : _props$requiredMark; var _useFormItemInitialDa = form_hooks_useFormItemInitialData["default"](name), getDefaultInitialData = _useFormItemInitialDa.getDefaultInitialData; var _useState = React.useState({}), _useState2 = slicedToArray._slicedToArray(_useState, 2), forceUpdate = _useState2[1]; var _useState3 = React.useState(void 0), _useState4 = slicedToArray._slicedToArray(_useState3, 2), freeShowErrorMessage = _useState4[0], setFreeShowErrorMessage = _useState4[1]; var _useState5 = React.useState([]), _useState6 = slicedToArray._slicedToArray(_useState5, 2), errorList = _useState6[0], setErrorList = _useState6[1]; var _useState7 = React.useState([]), _useState8 = slicedToArray._slicedToArray(_useState7, 2), successList = _useState8[0], setSuccessList = _useState8[1]; var _useState9 = React.useState("validating"), _useState10 = slicedToArray._slicedToArray(_useState9, 2), verifyStatus = _useState10[0], setVerifyStatus = _useState10[1]; var _useState11 = React.useState(false), _useState12 = slicedToArray._slicedToArray(_useState11, 2), resetValidating = _useState12[0], setResetValidating = _useState12[1]; var _useState13 = React.useState(false), _useState14 = slicedToArray._slicedToArray(_useState13, 2), needResetField = _useState14[0], setNeedResetField = _useState14[1]; var _useState15 = React.useState(function () { return getDefaultInitialData({ children: children, initialData: initialData }); }), _useState16 = slicedToArray._slicedToArray(_useState15, 2), formValue = _useState16[0], setFormValue = _useState16[1]; var formItemRef = React.useRef(); var innerFormItemsRef = React.useRef([]); var shouldEmitChangeRef = React.useRef(false); var isUpdatedRef = React.useRef(false); var shouldValidate = React.useRef(false); var valueRef = React.useRef(formValue); var errorListMapRef = React.useRef(/* @__PURE__ */new Map()); var snakeName = [].concat(formListName, name).filter(function (item) { return item !== void 0; }).toString(); var errorMessages = React.useMemo(function () { return errorMessage !== null && errorMessage !== void 0 ? errorMessage : globalFormConfig.errorMessage; }, [errorMessage, globalFormConfig]); var showErrorMessage = React.useMemo(function () { if (typeof freeShowErrorMessage === "boolean") return freeShowErrorMessage; if (typeof props.showErrorMessage === "boolean") return props.showErrorMessage; return showErrorMessageFromContext; }, [freeShowErrorMessage, props.showErrorMessage, showErrorMessageFromContext]); var _useFormItemStyle = form_hooks_useFormItemStyle["default"]({ className: className, help: help, tips: tips, snakeName: snakeName, status: status, successBorder: successBorder, errorList: errorList, successList: successList, layout: layout, verifyStatus: verifyStatus, label: label, labelWidth: labelWidth, labelAlign: labelAlign, requiredMark: requiredMark, showErrorMessage: showErrorMessage, innerRules: innerRules }), formItemClass = _useFormItemStyle.formItemClass, formItemLabelClass = _useFormItemStyle.formItemLabelClass, contentClass = _useFormItemStyle.contentClass, labelStyle = _useFormItemStyle.labelStyle, contentStyle = _useFormItemStyle.contentStyle, helpNode = _useFormItemStyle.helpNode, extraNode = _useFormItemStyle.extraNode; var updateFormValue = function updateFormValue(newVal) { var _form$getInternalHook, _form$getFieldsValue; var validate2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; var shouldEmitChange = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var _ref = (form === null || form === void 0 || (_form$getInternalHook = form.getInternalHooks) === null || _form$getInternalHook === void 0 ? void 0 : _form$getInternalHook.call(form, form_hooks_useForm.HOOK_MARK)) || {}, setPrevStore = _ref.setPrevStore; setPrevStore === null || setPrevStore === void 0 || setPrevStore(form === null || form === void 0 || (_form$getFieldsValue = form.getFieldsValue) === null || _form$getFieldsValue === void 0 ? void 0 : _form$getFieldsValue.call(form, true)); shouldEmitChangeRef.current = shouldEmitChange; isUpdatedRef.current = true; shouldValidate.current = validate2; valueRef.current = newVal; setFormValue(newVal); }; function getInnerRules(name2, formRules, formListName2, formListRules2) { if (Array.isArray(name2)) { return get.get(formRules === null || formRules === void 0 ? void 0 : formRules[formListName2], name2) || get.get(formListRules2, name2) || []; } return (formRules === null || formRules === void 0 ? void 0 : formRules[name2]) || formListRules2 || []; } var renderSuffixIcon = function renderSuffixIcon() { if (statusIcon === false) return null; var resultIcon = function resultIcon(iconSlot) { return /* @__PURE__ */React__default["default"].createElement("span", { className: "".concat(classPrefix, "-form__status") }, iconSlot); }; var getDefaultIcon = function getDefaultIcon() { var iconMap = { success: /* @__PURE__ */React__default["default"].createElement(CheckCircleFilledIcon, { size: "25px" }), error: /* @__PURE__ */React__default["default"].createElement(CloseCircleFilledIcon, { size: "25px" }), warning: /* @__PURE__ */React__default["default"].createElement(ErrorCircleFilledIcon, { size: "25px" }) }; if (verifyStatus === form_const.ValidateStatus.SUCCESS) { return resultIcon(iconMap[verifyStatus]); } if (errorList && errorList[0]) { var type = errorList[0].type || "error"; return resultIcon(iconMap[type]); } return null; }; if (/*#__PURE__*/React__default["default"].isValidElement(statusIcon)) { return resultIcon(/*#__PURE__*/React__default["default"].cloneElement(statusIcon, _objectSpread({ style: { color: "unset" } }, statusIcon.props))); } if (statusIcon === true) { return getDefaultIcon(); } return null; }; function analysisValidateResult(_x) { return _analysisValidateResult.apply(this, arguments); } function _analysisValidateResult() { _analysisValidateResult = index._asyncToGenerator(/*#__PURE__*/index.regenerator.mark(function _callee(trigger) { var _result$rules; var result; return index.regenerator.wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: result = { successList: [], errorList: [], rules: [], resultList: [], allowSetValue: false }; result.rules = trigger === "all" ? innerRules : innerRules.filter(function (item) { return (item.trigger || "change") === trigger; }); if ((_result$rules = result.rules) !== null && _result$rules !== void 0 && _result$rules.length) { _context.next = 5; break; } setResetValidating(false); return _context.abrupt("return", result); case 5: result.allowSetValue = true; _context.next = 8; return form_formModel.validate(formValue, result.rules); case 8: result.resultList = _context.sent; result.errorList = result.resultList.filter(function (item) { return item.result !== true; }).map(function (item) { Object.keys(item).forEach(function (key) { if (!item.message && errorMessages[key]) { item.message = form_formModel.parseMessage(errorMessages[key], { validate: item[key], name: isString.isString(label) ? label : String(name) }); } }); return item; }); result.successList = result.resultList.filter(function (item) { return item.result === true && item.message && item.type === "success"; }); return _context.abrupt("return", result); case 12: case "end": return _context.stop(); } }, _callee); })); return _analysisValidateResult.apply(this, arguments); } function validate() { return _validate.apply(this, arguments); } function _validate() { _validate = index._asyncToGenerator(/*#__PURE__*/index.regenerator.mark(function _callee2() { var trigger, showErrorMessage2, _yield$analysisValida, innerSuccessList, innerErrorList, validateRules, resultList, allowSetValue, cacheErrorList, status2, _innerErrorList$, _cacheErrorList$, _args2 = arguments; return index.regenerator.wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: trigger = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : "all"; showErrorMessage2 = _args2.length > 1 ? _args2[1] : undefined; if (!innerFormItemsRef.current.length) { _context2.next = 4; break; } return _context2.abrupt("return", innerFormItemsRef.current.map(function (innerFormItem) { return innerFormItem === null || innerFormItem === void 0 ? void 0 : innerFormItem.validate(trigger, showErrorMessage2); })); case 4: setResetValidating(true); setFreeShowErrorMessage(showErrorMessage2); _context2.next = 8; return analysisValidateResult(trigger); case 8: _yield$analysisValida = _context2.sent; innerSuccessList = _yield$analysisValida.successList; innerErrorList = _yield$analysisValida.errorList; validateRules = _yield$analysisValida.rules; resultList = _yield$analysisValida.resultList; allowSetValue = _yield$analysisValida.allowSetValue; if (innerErrorList.length && trigger !== "all") { errorListMapRef.current.set(trigger, innerErrorList); } else { errorListMapRef.current["delete"](trigger); } if (!innerErrorList.length && trigger === "all") { errorListMapRef.current.clear(); } cacheErrorList = toConsumableArray._toConsumableArray(errorListMapRef.current.values()).flat(); if (allowSetValue) { setSuccessList(innerSuccessList); setErrorList(cacheErrorList.length ? cacheErrorList : innerErrorList); } if (validateRules.length) { status2 = form_const.ValidateStatus.SUCCESS; if (innerErrorList.length || cacheErrorList.length) { status2 = (innerErrorList === null || innerErrorList === void 0 || (_innerErrorList$ = innerErrorList[0]) === null || _innerErrorList$ === void 0 ? void 0 : _innerErrorList$.type) || (cacheErrorList === null || cacheErrorList === void 0 || (_cacheErrorList$ = cacheErrorList[0]) === null || _cacheErrorList$ === void 0 ? void 0 : _cacheErrorList$.type) || form_const.ValidateStatus.ERROR; } setVerifyStatus(status2); } else { setVerifyStatus(form_const.ValidateStatus.VALIDATING); } if (needResetField) { resetHandler(); } setResetValidating(false); return _context2.abrupt("return", defineProperty._defineProperty({}, snakeName, innerErrorList.length === 0 ? true : resultList)); case 22: case "end": return _context2.stop(); } }, _callee2); })); return _validate.apply(this, arguments); } function validateOnly() { return _validateOnly.apply(this, arguments); } function _validateOnly() { _validateOnly = index._asyncToGenerator(/*#__PURE__*/index.regenerator.mark(function _callee3() { var trigger, _yield$analysisValida2, innerErrorList, resultList, _args3 = arguments; return index.regenerator.wrap(function _callee3$(_context3) { while (1) switch (_context3.prev = _context3.next) { case 0: trigger = _args3.length > 0 && _args3[0] !== undefined ? _args3[0] : "all"; _context3.next = 3; return analysisValidateResult(trigger); case 3: _yield$analysisValida2 = _context3.sent; innerErrorList = _yield$analysisValida2.errorList; resultList = _yield$analysisValida2.resultList; return _context3.abrupt("return", defineProperty._defineProperty({}, snakeName, innerErrorList.length === 0 ? true : resultList)); case 7: case "end": return _context3.stop(); } }, _callee3); })); return _validateOnly.apply(this, arguments); } function handleItemBlur() { var filterRules = innerRules.filter(function (item) { return item.trigger === "blur"; }); filterRules.length && validate("blur"); } function getResetValue(resetType) { if (resetType === "initial") { return getDefaultInitialData({ children: children, initialData: initialData }); } var emptyValue; if (Array.isArray(formValue)) { emptyValue = []; } else if (isObject.isObject(formValue)) { emptyValue = {}; } else if (isString.isString(formValue)) { emptyValue = ""; } return emptyValue; } function resetField(type) { if (typeof name === "undefined") return; var resetType = type || resetTypeFromContext; var resetValue = getResetValue(resetType); updateFormValue(resetValue, false); if (resetValidating) { setNeedResetField(true); } else { resetHandler(); } } function resetHandler() { setNeedResetField(false); setErrorList([]); setSuccessList([]); setVerifyStatus(form_const.ValidateStatus.VALIDATING); } function setField(field) { var value = field.value, status2 = field.status, validateMessage = field.validateMessage; if (typeof status2 !== "undefined") { setErrorList(validateMessage ? [validateMessage] : []); setSuccessList(validateMessage ? [validateMessage] : []); setNeedResetField(false); setVerifyStatus(status2); } if (typeof value !== "undefined") { updateFormValue(value, typeof status2 === "undefined" ? true : false, true); } } function setValidateMessage(validateMessage) { var _validateMessage$; if (!validateMessage || !Array.isArray(validateMessage)) return; if (validateMessage.length === 0) { setErrorList([]); setVerifyStatus(form_const.ValidateStatus.SUCCESS); return; } setErrorList(validateMessage); var status2 = (validateMessage === null || validateMessage === void 0 || (_validateMessage$ = validateMessage[0]) === null || _validateMessage$ === void 0 ? void 0 : _validateMessage$.type) || form_const.ValidateStatus.ERROR; setVerifyStatus(status2); } function getValidateMessage() { return errorList; } React.useEffect(function () { var _form$getInternalHook2; if (!shouldUpdate || !form) return; var _ref2 = (form === null || form === void 0 || (_form$getInternalHook2 = form.getInternalHooks) === null || _form$getInternalHook2 === void 0 ? void 0 : _form$getInternalHook2.call(form, form_hooks_useForm.HOOK_MARK)) || {}, getPrevStore = _ref2.getPrevStore, registerWatch = _ref2.registerWatch; var cancelRegister = registerWatch === null || registerWatch === void 0 ? void 0 : registerWatch(function () { var _form$getFieldsValue2; var currStore = (form === null || form === void 0 || (_form$getFieldsValue2 = form.getFieldsValue) === null || _form$getFieldsValue2 === void 0 ? void 0 : _form$getFieldsValue2.call(form, true)) || {}; var updateFlag = shouldUpdate; if (isFunction.isFunction(shouldUpdate)) updateFlag = shouldUpdate(getPrevStore === null || getPrevStore === void 0 ? void 0 : getPrevStore(), currStore); if (updateFlag) forceUpdate({}); }); return cancelRegister; }, [shouldUpdate, form]); React.useEffect(function () { if (typeof name === "undefined") return; if (formListName) { formListMapRef.current.set(name, formItemRef); return function () { formListMapRef.current["delete"](name); }; } if (!formMapRef) return; formMapRef.current.set(name, formItemRef); return function () { formMapRef.current["delete"](name); }; }, [snakeName, formListName]); React.useEffect(function () { var _form$getInternalHook3, _form$getInternalHook4; form === null || form === void 0 || (_form$getInternalHook3 = form.getInternalHooks) === null || _form$getInternalHook3 === void 0 || (_form$getInternalHook3 = _form$getInternalHook3.call(form, form_hooks_useForm.HOOK_MARK)) === null || _form$getInternalHook3 === void 0 || (_form$getInternalHook4 = _form$getInternalHook3.notifyWatch) === null || _form$getInternalHook4 === void 0 || _form$getInternalHook4.call(_form$getInternalHook3, name); if (!shouldValidate.current) return; if (typeof name !== "undefined" && shouldEmitChangeRef.current) { if (formListName) { var formListValue = merge.merge([], form_utils_index.calcFieldValue(name, formValue)); var fieldValue = form_utils_index.calcFieldValue(formListName, formListValue); onFormItemValueChange === null || onFormItemValueChange === void 0 || onFormItemValueChange(_objectSpread({}, fieldValue)); } else { var _fieldValue = form_utils_index.calcFieldValue(name, formValue); onFormItemValueChange === null || onFormItemValueChange === void 0 || onFormItemValueChange(_objectSpread({}, _fieldValue)); } } var filterRules = innerRules.filter(function (item) { return (item.trigger || "change") === "change"; }); filterRules.length && validate("change"); }, [formValue, snakeName]); var instance = { name: name, value: formValue, isUpdated: isUpdatedRef.current, getValue: function getValue() { return valueRef.current; }, setValue: function setValue(newVal) { return updateFormValue(newVal, true, true); }, setField: setField, validate: validate, validateOnly: validateOnly, resetField: resetField, setValidateMessage: setValidateMessage, getValidateMessage: getValidateMessage, resetValidate: resetHandler }; React.useImperativeHandle(ref, function () { return instance; }); React.useImperativeHandle(formItemRef, function () { return instance; }); if (isFunction.isFunction(children)) return children(form); return /* @__PURE__ */React__default["default"].createElement("div", { className: formItemClass, style: style }, label && /* @__PURE__ */React__default["default"].createElement("div", { className: formItemLabelClass, style: labelStyle }, /* @__PURE__ */React__default["default"].createElement("label", { htmlFor: props === null || props === void 0 ? void 0 : props["for"] }, label), colon && t(locale.colonText)), /* @__PURE__ */React__default["default"].createElement("div", { className: contentClass(), style: contentStyle }, /* @__PURE__ */React__default["default"].createElement("div", { className: "".concat(classPrefix, "-form__controls-content") }, React__default["default"].Children.map(children, function (child, index) { if (!child) return null; var ctrlKey = "value"; if (/*#__PURE__*/React__default["default"].isValidElement(child)) { if (child.type === FormItem) { return /*#__PURE__*/React__default["default"].cloneElement(child, { ref: function ref(el) { if (!el) return; innerFormItemsRef.current[index] = el; } }); } if (_typeof._typeof(child.type) === "object") { ctrlKey = form_hooks_useFormItemInitialData.ctrlKeyMap.get(child.type) || "value"; } return /*#__PURE__*/React__default["default"].cloneElement(child, _objectSpread(_objectSpread({ disabled: disabledFromContext }, child.props), {}, defineProperty._defineProperty(defineProperty._defineProperty(defineProperty._defineProperty({}, ctrlKey, formValue), "onChange", function onChange(value) { var _child$props$onChange, _child$props$onChange2; var newValue = valueFormat ? valueFormat(value) : value; updateFormValue(newValue, true, true); for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { args[_key - 1] = arguments[_key]; } (_child$props$onChange = child.props.onChange) === null || _child$props$onChange === void 0 || (_child$props$onChange2 = _child$props$onChange.call) === null || _child$props$onChange2 === void 0 || _child$props$onChange2.call.apply(_child$props$onChange2, [_child$props$onChange, null, value].concat(args)); }), "onBlur", function onBlur(value) { var _child$props$onBlur, _child$props$onBlur$c; handleItemBlur(); for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { args[_key2 - 1] = arguments[_key2]; } (_child$props$onBlur = child.props.onBlur) === null || _child$props$onBlur === void 0 || (_child$props$onBlur$c = _child$props$onBlur.call) === null || _child$props$onBlur$c === void 0 || _child$props$onBlur$c.call.apply(_child$props$onBlur$c, [_child$props$onBlur, null, value].concat(args)); }))); } return child; }), renderSuffixIcon()), helpNode, extraNode)); }); FormItem.displayName = "FormItem"; exports["default"] = FormItem; //# sourceMappingURL=FormItem.js.map