@zat-design/sisyphus-react 4.0.0-beta.2 → 4.0.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/babel.config.js +7 -30
- package/dist/esm/index.d.ts +5 -0
- package/dist/esm/index.js +5 -0
- package/dist/esm/regExp/index.d.ts +19 -0
- package/dist/esm/regExp/index.js +73 -0
- package/dist/esm/tools/calc/index.d.ts +4 -0
- package/dist/esm/tools/calc/index.js +67 -0
- package/dist/esm/tools/dateUtils.d.ts +7 -0
- package/dist/esm/tools/dateUtils.js +23 -0
- package/dist/esm/tools/disableDate/index.d.ts +9 -0
- package/dist/esm/tools/disableDate/index.js +43 -0
- package/dist/esm/tools/disableTimeRange/index.d.ts +9 -0
- package/dist/esm/tools/disableTimeRange/index.js +121 -0
- package/dist/esm/tools/formatAmount/index.d.ts +7 -0
- package/dist/esm/tools/formatAmount/index.js +14 -0
- package/dist/esm/tools/formatPerMill/index.d.ts +7 -0
- package/dist/esm/tools/formatPerMill/index.js +11 -0
- package/dist/esm/tools/formatPercent/index.d.ts +7 -0
- package/dist/esm/tools/formatPercent/index.js +11 -0
- package/dist/esm/tools/getDataByIdCard/index.d.ts +16 -0
- package/dist/esm/tools/getDataByIdCard/index.js +65 -0
- package/dist/esm/tools/index.d.ts +12 -0
- package/dist/esm/tools/index.js +14 -0
- package/dist/esm/tools/sumAmount/index.d.ts +16 -0
- package/dist/esm/tools/sumAmount/index.js +40 -0
- package/dist/esm/tools/toChineseNum/index.d.ts +7 -0
- package/dist/esm/tools/toChineseNum/index.js +103 -0
- package/dist/esm/tools/toFixed/index.d.ts +2 -0
- package/dist/esm/tools/toFixed/index.js +5 -0
- package/dist/esm/tools/transformDataName/index.d.ts +12 -0
- package/dist/esm/tools/transformDataName/index.js +37 -0
- package/dist/esm/transforms/dateTransformer/index.d.ts +24 -0
- package/dist/esm/transforms/dateTransformer/index.js +67 -0
- package/dist/esm/transforms/index.d.ts +6 -0
- package/dist/esm/transforms/index.js +6 -0
- package/dist/esm/transforms/propTypes.d.ts +7 -0
- package/dist/esm/transforms/propTypes.js +1 -0
- package/dist/esm/transforms/transformDate/index.d.ts +21 -0
- package/dist/esm/transforms/transformDate/index.js +141 -0
- package/dist/esm/transforms/transformDatePicker/index.d.ts +12 -0
- package/dist/esm/transforms/transformDatePicker/index.js +24 -0
- package/dist/esm/transforms/transformRangePicker/index.d.ts +29 -0
- package/dist/esm/transforms/transformRangePicker/index.js +61 -0
- package/dist/esm/transforms/transformSwitch/index.d.ts +13 -0
- package/dist/esm/transforms/transformSwitch/index.js +35 -0
- package/dist/esm/transforms/utils.d.ts +2 -0
- package/dist/esm/transforms/utils.js +8 -0
- package/dist/esm/validate/index.d.ts +107 -0
- package/dist/esm/validate/index.js +284 -0
- package/es/FormsProvider/index.js +4 -2
- package/es/ProAction/components/CheckModalContent/index.js +9 -8
- package/es/ProAction/index.js +77 -75
- package/es/ProAction/index.less +0 -2
- package/es/ProConfigProvider/index.d.ts +1 -0
- package/es/ProConfigProvider/index.js +20 -16
- package/es/ProDownload/index.js +89 -94
- package/es/ProDownload/style/index.less +0 -2
- package/es/ProDownload/utils.js +59 -50
- package/es/ProDrawerForm/components/ProDrawer/index.js +79 -72
- package/es/ProDrawerForm/components/ProModal/index.js +62 -60
- package/es/ProDrawerForm/components/index.js +2 -2
- package/es/ProDrawerForm/index.js +43 -37
- package/es/ProDrawerForm/style/index.less +0 -2
- package/es/ProEditLabel/components/RenderProForm.js +25 -21
- package/es/ProEditLabel/index.js +54 -46
- package/es/ProEditLabel/style/index.less +0 -2
- package/es/ProEditTable/components/ActionButton/index.js +31 -23
- package/es/ProEditTable/components/RcTable/BaseTable.js +16 -15
- package/es/ProEditTable/components/RcTable/DraggableTable.js +20 -19
- package/es/ProEditTable/components/RcTable/index.js +2 -2
- package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +41 -19
- package/es/ProEditTable/components/RenderField/index.js +176 -145
- package/es/ProEditTable/components/RenderToolbar/index.js +26 -24
- package/es/ProEditTable/components/Summary/index.js +13 -11
- package/es/ProEditTable/components/Validator/index.js +6 -5
- package/es/ProEditTable/components/index.js +5 -5
- package/es/ProEditTable/index.d.ts +1 -1
- package/es/ProEditTable/index.js +96 -80
- package/es/ProEditTable/propsType.d.ts +1 -1
- package/es/ProEditTable/style/index.less +2 -4
- package/es/ProEditTable/utils/config.js +44 -37
- package/es/ProEditTable/utils/diffOriginal.d.ts +1 -0
- package/es/ProEditTable/utils/diffOriginal.js +76 -7
- package/es/ProEditTable/utils/getDefaultProps.js +8 -8
- package/es/ProEditTable/utils/index.js +86 -73
- package/es/ProEditTable/utils/tools.js +166 -157
- package/es/ProEditTable/utils/useEditTableError.js +17 -6
- package/es/ProEnum/components/Group.js +6 -6
- package/es/ProEnum/components/Tag.js +8 -6
- package/es/ProEnum/hooks/useEnum.js +31 -4
- package/es/ProEnum/hooks/useEnumRequest.js +59 -54
- package/es/ProEnum/index.js +48 -49
- package/es/ProEnum/style/index.less +0 -2
- package/es/ProEnum/utils/eventCenter.js +6 -4
- package/es/ProEnum/utils/getEnumLabel.js +9 -10
- package/es/ProEnum/utils/index.js +10 -5
- package/es/ProForm/components/Container.js +7 -5
- package/es/ProForm/components/FormFooter/index.js +16 -14
- package/es/ProForm/components/base/Checkbox/index.js +11 -8
- package/es/ProForm/components/base/DatePicker/index.js +33 -46
- package/es/ProForm/components/base/Input/index.js +17 -15
- package/es/ProForm/components/base/InputNumber/index.js +42 -38
- package/es/ProForm/components/base/Radio/index.js +10 -8
- package/es/ProForm/components/base/RangePicker/index.js +20 -20
- package/es/ProForm/components/base/Select/index.js +12 -10
- package/es/ProForm/components/base/Switch/index.js +12 -11
- package/es/ProForm/components/base/SwitchCheckbox/index.js +15 -14
- package/es/ProForm/components/base/SwitchCheckbox/style/index.less +0 -2
- package/es/ProForm/components/base/TextArea/index.js +12 -11
- package/es/ProForm/components/base/TextArea/index.less +0 -2
- package/es/ProForm/components/base/TimePicker/index.js +7 -6
- package/es/ProForm/components/base/TimePicker/style/index.less +0 -2
- package/es/ProForm/components/combination/Container/index.js +14 -12
- package/es/ProForm/components/combination/Container/style/index.less +0 -2
- package/es/ProForm/components/combination/FormList/components/ActionButton.js +45 -42
- package/es/ProForm/components/combination/FormList/components/BlockFields.js +14 -13
- package/es/ProForm/components/combination/FormList/components/BlockTitle.js +6 -6
- package/es/ProForm/components/combination/FormList/components/Empty.js +30 -27
- package/es/ProForm/components/combination/FormList/components/LineFields.js +12 -11
- package/es/ProForm/components/combination/FormList/components/ToolbarButton.js +31 -29
- package/es/ProForm/components/combination/FormList/index.js +22 -21
- package/es/ProForm/components/combination/FormList/style/index.less +0 -2
- package/es/ProForm/components/combination/FormList/utils.js +5 -3
- package/es/ProForm/components/combination/Group/component/AddonWrapper/index.js +7 -5
- package/es/ProForm/components/combination/Group/component/ComRender.js +27 -22
- package/es/ProForm/components/combination/Group/hooks/index.js +35 -19
- package/es/ProForm/components/combination/Group/index.d.ts +8 -2
- package/es/ProForm/components/combination/Group/index.js +27 -32
- package/es/ProForm/components/combination/Group/utils.js +22 -14
- package/es/ProForm/components/combination/ProCascader/index.js +144 -88
- package/es/ProForm/components/combination/ProCascader/propsType.d.ts +12 -4
- package/es/ProForm/components/combination/ProCascader/style/index.less +1 -3
- package/es/ProForm/components/combination/ProCascader/utils/index.js +3 -3
- package/es/ProForm/components/combination/ProModalSelect/hooks/useRequestList.js +24 -18
- package/es/ProForm/components/combination/ProModalSelect/index.js +185 -193
- package/es/ProForm/components/combination/ProModalSelect/propsType.d.ts +7 -3
- package/es/ProForm/components/combination/ProModalSelect/style/index.less +1 -4
- package/es/ProForm/components/combination/ProNumberRange/index.js +23 -20
- package/es/ProForm/components/combination/ProNumberRange/style/index.less +4 -3
- package/es/ProForm/components/combination/ProRangeLimit/index.js +33 -29
- package/es/ProForm/components/combination/ProTimeLimit/index.js +34 -28
- package/es/ProForm/components/combination/ProTimeLimit/style/index.less +0 -2
- package/es/ProForm/components/index.d.ts +2 -0
- package/es/ProForm/components/index.js +31 -27
- package/es/ProForm/components/render/ChangedWrapper.js +21 -15
- package/es/ProForm/components/render/ConfirmWrapper.js +35 -35
- package/es/ProForm/components/render/Render.js +109 -75
- package/es/ProForm/components/render/RenderFields.d.ts +1 -0
- package/es/ProForm/components/render/RenderFields.js +46 -29
- package/es/ProForm/components/render/propsType.d.ts +1 -0
- package/es/ProForm/components/render/propsType.js +25 -0
- package/es/ProForm/index.d.ts +2 -2
- package/es/ProForm/index.js +58 -38
- package/es/ProForm/propsType.d.ts +3 -1
- package/es/ProForm/propsType.js +5 -1
- package/es/ProForm/style/index.less +0 -2
- package/es/ProForm/utils/diffOriginal.d.ts +1 -0
- package/es/ProForm/utils/diffOriginal.js +75 -8
- package/es/ProForm/utils/getDefaultProps.js +7 -7
- package/es/ProForm/utils/index.js +64 -39
- package/es/ProForm/utils/processDependencies.js +11 -0
- package/es/ProForm/utils/rulesCreator.js +12 -13
- package/es/ProForm/utils/transformNames.js +5 -4
- package/es/ProForm/utils/transformValue.js +11 -6
- package/es/ProForm/utils/useDeepCompareMemo.js +6 -4
- package/es/ProForm/utils/useForm.js +71 -71
- package/es/ProForm/utils/useRules.js +11 -9
- package/es/ProForm/utils/useShouldUpdate.d.ts +1 -0
- package/es/ProForm/utils/useShouldUpdate.js +117 -29
- package/es/ProForm/utils/useWatch.js +25 -3
- package/es/ProForm/utils/valueType.js +14 -11
- package/es/ProIcon/config/index.js +2 -0
- package/es/ProIcon/index.js +33 -23
- package/es/ProIcon/style/index.less +0 -2
- package/es/ProIcon/utils/index.js +4 -5
- package/es/ProLayout/components/Layout/Header/index.js +12 -10
- package/es/ProLayout/components/Layout/Icon/Icon.js +3 -3
- package/es/ProLayout/components/Layout/Icon/index.js +1 -1
- package/es/ProLayout/components/Layout/Menu/FoldMenu/index.js +82 -25
- package/es/ProLayout/components/Layout/Menu/FoldMenu/style/index.less +0 -2
- package/es/ProLayout/components/Layout/Menu/OpenMenu/index.js +54 -27
- package/es/ProLayout/components/Layout/Menu/SideMenu/index.js +10 -7
- package/es/ProLayout/components/Layout/Menu/SideMenu/style/index.less +0 -2
- package/es/ProLayout/components/Layout/Menu/index.js +16 -11
- package/es/ProLayout/components/Layout/Menu/style/index.less +0 -2
- package/es/ProLayout/components/Layout/Notice/index.js +9 -8
- package/es/ProLayout/components/Layout/Notice/style/index.less +0 -2
- package/es/ProLayout/components/Layout/index.js +4 -4
- package/es/ProLayout/components/ProCollapse/PropTypes.d.ts +8 -3
- package/es/ProLayout/components/ProCollapse/index.js +44 -16
- package/es/ProLayout/components/ProCollapse/style/index.less +148 -4
- package/es/ProLayout/components/ProFooter/index.js +3 -3
- package/es/ProLayout/components/ProFooter/style/index.less +0 -2
- package/es/ProLayout/components/ProHeader/components/Copy/index.js +6 -6
- package/es/ProLayout/components/ProHeader/components/ProBackBtn/index.js +5 -4
- package/es/ProLayout/components/ProHeader/components/ProBackBtn/style/index.less +0 -2
- package/es/ProLayout/components/ProHeader/components/index.js +2 -2
- package/es/ProLayout/components/ProHeader/index.js +87 -75
- package/es/ProLayout/components/ProHeader/style/index.less +0 -2
- package/es/ProLayout/components/index.js +3 -3
- package/es/ProLayout/index.d.ts +1 -12
- package/es/ProLayout/index.js +73 -41
- package/es/ProLayout/propTypes.d.ts +9 -0
- package/es/ProLayout/style/index.less +0 -2
- package/es/ProLayout/utils/index.d.ts +7 -0
- package/es/ProLayout/utils/index.js +51 -18
- package/es/ProSelect/components/AdaptiveTooltip.js +5 -4
- package/es/ProSelect/index.js +44 -43
- package/es/ProSelect/index.less +0 -2
- package/es/ProSelect/utils/index.js +67 -5
- package/es/ProStep/components/Anchor/index.d.ts +1 -0
- package/es/ProStep/components/Anchor/index.js +19 -18
- package/es/ProStep/components/Item/index.d.ts +1 -0
- package/es/ProStep/components/Item/index.js +15 -12
- package/es/ProStep/components/Listener/index.js +18 -16
- package/es/ProStep/components/Step/index.js +15 -14
- package/es/ProStep/index.js +74 -62
- package/es/ProStep/style/index.less +0 -2
- package/es/ProStep/utils/index.js +6 -5
- package/es/ProStepTab/index.js +111 -77
- package/es/ProTable/components/FormatColumn/index.js +69 -66
- package/es/ProTable/components/RcTable/components/BaseTable/index.js +3 -3
- package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/index.js +40 -36
- package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/utils/index.js +10 -9
- package/es/ProTable/components/RcTable/components/DraggableTable/index.js +5 -5
- package/es/ProTable/components/RcTable/index.js +2 -2
- package/es/ProTable/components/RenderColumn/index.js +30 -26
- package/es/ProTable/components/RenderEmptyText/index.js +7 -6
- package/es/ProTable/components/RenderFooter/index.js +2 -2
- package/es/ProTable/components/RenderSummary/index.js +11 -10
- package/es/ProTable/components/RenderTableHeader/index.js +15 -13
- package/es/ProTable/components/RenderTabs/index.js +7 -6
- package/es/ProTable/components/TableResizable/index.js +9 -8
- package/es/ProTable/components/TooltipTitle/index.js +6 -5
- package/es/ProTable/components/index.js +11 -6
- package/es/ProTable/hooks/useAntdTable.d.ts +3 -0
- package/es/ProTable/hooks/useAntdTable.js +133 -98
- package/es/ProTable/index.d.ts +3 -7
- package/es/ProTable/index.js +83 -77
- package/es/ProTable/propsType.d.ts +3 -2
- package/es/ProTable/style/index.less +4 -6
- package/es/ProTable/utils/index.js +12 -5
- package/es/ProTabs/components/Card/index.js +12 -11
- package/es/ProTabs/components/index.js +1 -1
- package/es/ProTabs/index.js +9 -8
- package/es/ProTabs/style/index.less +0 -2
- package/es/ProThemeTools/component/ProTools/index.js +42 -41
- package/es/ProThemeTools/component/index.js +1 -1
- package/es/ProThemeTools/context/ThemeContext.js +18 -2
- package/es/ProThemeTools/index.d.ts +0 -7
- package/es/ProThemeTools/index.js +50 -26
- package/es/ProThemeTools/style/index.less +0 -2
- package/es/ProThemeTools/utils/index.js +9 -0
- package/es/ProTooltip/index.js +24 -22
- package/es/ProTooltip/style/index.less +0 -2
- package/es/ProTree/components/AdaptiveTooltip.js +4 -4
- package/es/ProTree/components/CloseIcon.js +5 -5
- package/es/ProTree/components/List.js +15 -13
- package/es/ProTree/components/ProTree.js +62 -56
- package/es/ProTree/components/ProTreeSelect/index.js +88 -73
- package/es/ProTree/components/ProTreeSelect/style/index.less +0 -2
- package/es/ProTree/components/SearchTitle.js +10 -9
- package/es/ProTree/components/Tree.js +53 -52
- package/es/ProTree/components/index.js +4 -4
- package/es/ProTree/index.js +4 -4
- package/es/ProTree/style/index.less +0 -2
- package/es/ProTree/utils.js +21 -14
- package/es/ProTreeModal/components/Cascader.js +23 -21
- package/es/ProTreeModal/components/CloseIcon.js +5 -5
- package/es/ProTreeModal/components/List.js +40 -33
- package/es/ProTreeModal/components/SearchTitle.js +5 -4
- package/es/ProTreeModal/components/SortableItem.js +10 -8
- package/es/ProTreeModal/components/Tree.js +37 -35
- package/es/ProTreeModal/components/Trigger.js +23 -22
- package/es/ProTreeModal/components/index.js +6 -6
- package/es/ProTreeModal/index.js +85 -65
- package/es/ProTreeModal/style/index.less +0 -2
- package/es/ProTreeModal/utils.js +22 -18
- package/es/ProUpload/components/ButtonRender.js +38 -37
- package/es/ProUpload/components/DragRender.js +41 -34
- package/es/ProUpload/components/DraggableUploadListItem.js +3 -2
- package/es/ProUpload/components/Example.js +10 -9
- package/es/ProUpload/components/FileItem.js +47 -42
- package/es/ProUpload/components/ImageRender.js +85 -85
- package/es/ProUpload/index.js +24 -19
- package/es/ProUpload/style/index.less +0 -2
- package/es/ProUpload/uitls.js +1 -1
- package/es/ProViewer/index.js +25 -19
- package/es/ProViewer/propsType.js +3 -1
- package/es/ProViewer/style/index.less +0 -2
- package/es/ProWaterMark/index.js +4 -3
- package/es/index.d.ts +1 -1
- package/es/index.js +38 -29
- package/es/locale/index.js +7 -2
- package/es/style/theme/antd.less +0 -2
- package/es/tokens.js +1 -0
- package/es/utils/index.js +7 -3
- package/jest.config.js +46 -4
- package/lib/FormsProvider/index.js +53 -29
- package/lib/ProAction/components/CheckModalContent/index.js +27 -33
- package/lib/ProAction/index.js +155 -198
- package/lib/ProAction/index.less +0 -2
- package/lib/ProAction/propsType.js +16 -4
- package/lib/ProConfigProvider/index.d.ts +1 -0
- package/lib/ProConfigProvider/index.js +141 -122
- package/lib/ProDownload/index.js +123 -194
- package/lib/ProDownload/propsType.js +16 -4
- package/lib/ProDownload/style/index.less +0 -2
- package/lib/ProDownload/utils.js +145 -179
- package/lib/ProDrawerForm/components/ProDrawer/index.js +169 -236
- package/lib/ProDrawerForm/components/ProModal/index.js +134 -188
- package/lib/ProDrawerForm/components/index.js +39 -17
- package/lib/ProDrawerForm/index.js +93 -80
- package/lib/ProDrawerForm/propsType.js +16 -4
- package/lib/ProDrawerForm/style/index.less +0 -2
- package/lib/ProDrawerForm/utils/index.js +31 -13
- package/lib/ProEditLabel/components/RenderProForm.js +60 -58
- package/lib/ProEditLabel/index.js +182 -237
- package/lib/ProEditLabel/propsType.js +16 -4
- package/lib/ProEditLabel/style/index.less +0 -2
- package/lib/ProEditLabel/utils/index.js +31 -15
- package/lib/ProEditTable/components/ActionButton/index.js +172 -153
- package/lib/ProEditTable/components/RcTable/BaseTable.js +103 -104
- package/lib/ProEditTable/components/RcTable/DraggableTable.js +159 -187
- package/lib/ProEditTable/components/RcTable/index.js +39 -17
- package/lib/ProEditTable/components/RenderField/ListChangedWrapper.js +192 -178
- package/lib/ProEditTable/components/RenderField/index.js +564 -646
- package/lib/ProEditTable/components/RenderToolbar/index.js +105 -125
- package/lib/ProEditTable/components/Summary/index.js +61 -67
- package/lib/ProEditTable/components/Validator/index.js +48 -27
- package/lib/ProEditTable/components/index.js +48 -38
- package/lib/ProEditTable/index.d.ts +1 -1
- package/lib/ProEditTable/index.js +372 -430
- package/lib/ProEditTable/propsType.d.ts +1 -1
- package/lib/ProEditTable/propsType.js +16 -4
- package/lib/ProEditTable/style/index.less +2 -4
- package/lib/ProEditTable/utils/config.js +180 -235
- package/lib/ProEditTable/utils/diffOriginal.d.ts +1 -0
- package/lib/ProEditTable/utils/diffOriginal.js +106 -50
- package/lib/ProEditTable/utils/getDefaultProps.js +44 -29
- package/lib/ProEditTable/utils/index.js +255 -325
- package/lib/ProEditTable/utils/tools.js +252 -436
- package/lib/ProEditTable/utils/transform.js +28 -19
- package/lib/ProEditTable/utils/useEditTableError.js +58 -60
- package/lib/ProEnum/components/Group.js +78 -54
- package/lib/ProEnum/components/Tag.js +55 -40
- package/lib/ProEnum/hooks/useEnum.js +56 -53
- package/lib/ProEnum/hooks/useEnumRequest.js +198 -268
- package/lib/ProEnum/index.js +235 -244
- package/lib/ProEnum/propsType.js +16 -4
- package/lib/ProEnum/style/index.less +0 -2
- package/lib/ProEnum/utils/eventCenter.js +25 -37
- package/lib/ProEnum/utils/getEnumLabel.js +65 -63
- package/lib/ProEnum/utils/index.js +67 -92
- package/lib/ProForm/components/Container.js +45 -32
- package/lib/ProForm/components/FormFooter/index.js +82 -64
- package/lib/ProForm/components/FormFooter/propsType.js +16 -4
- package/lib/ProForm/components/base/Checkbox/index.js +62 -65
- package/lib/ProForm/components/base/DatePicker/index.js +77 -78
- package/lib/ProForm/components/base/DatePicker/useDateLimit.js +31 -16
- package/lib/ProForm/components/base/Input/index.js +73 -61
- package/lib/ProForm/components/base/Input/propsType.js +16 -4
- package/lib/ProForm/components/base/InputNumber/index.js +177 -225
- package/lib/ProForm/components/base/Radio/index.js +69 -59
- package/lib/ProForm/components/base/RangePicker/index.js +90 -77
- package/lib/ProForm/components/base/RangePicker/useDateRange.js +46 -28
- package/lib/ProForm/components/base/Select/index.js +69 -60
- package/lib/ProForm/components/base/Switch/index.js +59 -42
- package/lib/ProForm/components/base/SwitchCheckbox/index.js +63 -62
- package/lib/ProForm/components/base/SwitchCheckbox/style/index.less +0 -2
- package/lib/ProForm/components/base/TextArea/index.js +67 -52
- package/lib/ProForm/components/base/TextArea/index.less +0 -2
- package/lib/ProForm/components/base/TimePicker/index.js +59 -43
- package/lib/ProForm/components/base/TimePicker/style/index.less +0 -2
- package/lib/ProForm/components/combination/Container/index.js +77 -62
- package/lib/ProForm/components/combination/Container/propsType.js +16 -4
- package/lib/ProForm/components/combination/Container/style/index.less +0 -2
- package/lib/ProForm/components/combination/FormList/components/ActionButton.js +195 -247
- package/lib/ProForm/components/combination/FormList/components/BlockFields.js +108 -81
- package/lib/ProForm/components/combination/FormList/components/BlockTitle.js +44 -25
- package/lib/ProForm/components/combination/FormList/components/Empty.js +55 -92
- package/lib/ProForm/components/combination/FormList/components/LineFields.js +120 -94
- package/lib/ProForm/components/combination/FormList/components/ToolbarButton.js +103 -136
- package/lib/ProForm/components/combination/FormList/index.js +168 -142
- package/lib/ProForm/components/combination/FormList/propsType.js +16 -4
- package/lib/ProForm/components/combination/FormList/style/index.less +0 -2
- package/lib/ProForm/components/combination/FormList/utils.js +54 -33
- package/lib/ProForm/components/combination/Group/component/AddonWrapper/index.js +38 -21
- package/lib/ProForm/components/combination/Group/component/ComRender.js +76 -77
- package/lib/ProForm/components/combination/Group/hooks/index.js +142 -130
- package/lib/ProForm/components/combination/Group/index.d.ts +8 -2
- package/lib/ProForm/components/combination/Group/index.js +113 -110
- package/lib/ProForm/components/combination/Group/propsType.js +16 -4
- package/lib/ProForm/components/combination/Group/utils.js +113 -128
- package/lib/ProForm/components/combination/ProCascader/index.js +255 -254
- package/lib/ProForm/components/combination/ProCascader/propsType.d.ts +12 -4
- package/lib/ProForm/components/combination/ProCascader/propsType.js +16 -4
- package/lib/ProForm/components/combination/ProCascader/style/index.less +1 -3
- package/lib/ProForm/components/combination/ProCascader/utils/index.js +35 -24
- package/lib/ProForm/components/combination/ProModalSelect/hooks/useRequestList.js +122 -115
- package/lib/ProForm/components/combination/ProModalSelect/index.js +494 -689
- package/lib/ProForm/components/combination/ProModalSelect/propsType.d.ts +7 -3
- package/lib/ProForm/components/combination/ProModalSelect/propsType.js +16 -4
- package/lib/ProForm/components/combination/ProModalSelect/style/index.less +1 -4
- package/lib/ProForm/components/combination/ProModalSelect/utils/index.js +45 -22
- package/lib/ProForm/components/combination/ProNumberRange/index.js +163 -182
- package/lib/ProForm/components/combination/ProNumberRange/propsType.js +16 -4
- package/lib/ProForm/components/combination/ProNumberRange/style/index.less +4 -3
- package/lib/ProForm/components/combination/ProRangeLimit/index.js +140 -164
- package/lib/ProForm/components/combination/ProRangeLimit/propsType.js +16 -4
- package/lib/ProForm/components/combination/ProTimeLimit/hooks/useControlled.js +49 -28
- package/lib/ProForm/components/combination/ProTimeLimit/index.js +128 -143
- package/lib/ProForm/components/combination/ProTimeLimit/style/index.less +0 -2
- package/lib/ProForm/components/index.d.ts +2 -0
- package/lib/ProForm/components/index.js +115 -192
- package/lib/ProForm/components/render/ChangedWrapper.js +147 -133
- package/lib/ProForm/components/render/ConfirmWrapper.js +78 -122
- package/lib/ProForm/components/render/Render.js +356 -419
- package/lib/ProForm/components/render/RenderFields.d.ts +1 -0
- package/lib/ProForm/components/render/RenderFields.js +188 -188
- package/lib/ProForm/components/render/propsType.d.ts +1 -0
- package/lib/ProForm/components/render/propsType.js +16 -5
- package/lib/ProForm/index.d.ts +2 -2
- package/lib/ProForm/index.js +241 -270
- package/lib/ProForm/propsType.d.ts +3 -1
- package/lib/ProForm/propsType.js +38 -5
- package/lib/ProForm/style/index.less +0 -2
- package/lib/ProForm/utils/diffOriginal.d.ts +1 -0
- package/lib/ProForm/utils/diffOriginal.js +103 -44
- package/lib/ProForm/utils/getDefaultProps.js +44 -28
- package/lib/ProForm/utils/index.js +270 -321
- package/lib/ProForm/utils/processDependencies.js +44 -52
- package/lib/ProForm/utils/rulesCreator.js +84 -61
- package/lib/ProForm/utils/transformNames.js +38 -27
- package/lib/ProForm/utils/transformValue.js +51 -48
- package/lib/ProForm/utils/useDeepCompareMemo.js +36 -16
- package/lib/ProForm/utils/useFieldProps.js +42 -11
- package/lib/ProForm/utils/useForm.js +118 -228
- package/lib/ProForm/utils/useRules.js +67 -60
- package/lib/ProForm/utils/useShouldUpdate.d.ts +1 -0
- package/lib/ProForm/utils/useShouldUpdate.js +153 -176
- package/lib/ProForm/utils/useWatch.js +93 -100
- package/lib/ProForm/utils/valueType.js +157 -224
- package/lib/ProIcon/config/index.js +365 -276
- package/lib/ProIcon/index.js +189 -214
- package/lib/ProIcon/propsTypes.js +16 -4
- package/lib/ProIcon/style/index.less +0 -2
- package/lib/ProIcon/symbolIcon.js +23 -30
- package/lib/ProIcon/utils/index.js +66 -57
- package/lib/ProLayout/components/Layout/Header/index.js +59 -42
- package/lib/ProLayout/components/Layout/Icon/Icon.js +49 -30
- package/lib/ProLayout/components/Layout/Icon/index.js +34 -7
- package/lib/ProLayout/components/Layout/Menu/FoldMenu/index.js +141 -119
- package/lib/ProLayout/components/Layout/Menu/FoldMenu/style/index.less +0 -2
- package/lib/ProLayout/components/Layout/Menu/OpenMenu/index.js +123 -123
- package/lib/ProLayout/components/Layout/Menu/OpenMenu/propsType.js +16 -4
- package/lib/ProLayout/components/Layout/Menu/SideMenu/index.js +60 -42
- package/lib/ProLayout/components/Layout/Menu/SideMenu/style/index.less +0 -2
- package/lib/ProLayout/components/Layout/Menu/index.js +79 -56
- package/lib/ProLayout/components/Layout/Menu/style/index.less +0 -2
- package/lib/ProLayout/components/Layout/Notice/index.js +39 -31
- package/lib/ProLayout/components/Layout/Notice/style/index.less +0 -2
- package/lib/ProLayout/components/Layout/index.js +45 -31
- package/lib/ProLayout/components/ProCollapse/PropTypes.d.ts +8 -3
- package/lib/ProLayout/components/ProCollapse/PropTypes.js +16 -4
- package/lib/ProLayout/components/ProCollapse/index.js +156 -135
- package/lib/ProLayout/components/ProCollapse/style/index.less +148 -4
- package/lib/ProLayout/components/ProFooter/PropTypes.js +16 -4
- package/lib/ProLayout/components/ProFooter/index.js +58 -44
- package/lib/ProLayout/components/ProFooter/style/index.less +0 -2
- package/lib/ProLayout/components/ProHeader/PropTypes.js +16 -4
- package/lib/ProLayout/components/ProHeader/components/Copy/index.js +53 -25
- package/lib/ProLayout/components/ProHeader/components/ProBackBtn/index.js +48 -27
- package/lib/ProLayout/components/ProHeader/components/ProBackBtn/propsType.js +16 -4
- package/lib/ProLayout/components/ProHeader/components/ProBackBtn/style/index.less +0 -2
- package/lib/ProLayout/components/ProHeader/components/index.js +39 -17
- package/lib/ProLayout/components/ProHeader/index.js +274 -452
- package/lib/ProLayout/components/ProHeader/style/index.less +0 -2
- package/lib/ProLayout/components/ProHeader/utils/index.js +32 -14
- package/lib/ProLayout/components/index.js +42 -24
- package/lib/ProLayout/index.d.ts +1 -12
- package/lib/ProLayout/index.js +158 -136
- package/lib/ProLayout/propTypes.d.ts +9 -0
- package/lib/ProLayout/propTypes.js +16 -4
- package/lib/ProLayout/style/index.less +0 -2
- package/lib/ProLayout/utils/index.d.ts +7 -0
- package/lib/ProLayout/utils/index.js +107 -103
- package/lib/ProSelect/components/AdaptiveTooltip.js +46 -40
- package/lib/ProSelect/index.js +218 -250
- package/lib/ProSelect/index.less +0 -2
- package/lib/ProSelect/propsType.js +16 -4
- package/lib/ProSelect/utils/index.js +110 -79
- package/lib/ProStep/components/Anchor/index.d.ts +1 -0
- package/lib/ProStep/components/Anchor/index.js +108 -101
- package/lib/ProStep/components/Item/index.d.ts +1 -0
- package/lib/ProStep/components/Item/index.js +82 -75
- package/lib/ProStep/components/Listener/index.js +62 -71
- package/lib/ProStep/components/Step/index.js +76 -67
- package/lib/ProStep/index.js +167 -225
- package/lib/ProStep/propsType.js +16 -4
- package/lib/ProStep/style/index.less +0 -2
- package/lib/ProStep/utils/index.js +59 -52
- package/lib/ProStepTab/index.js +179 -287
- package/lib/ProStepTab/propsType.js +16 -4
- package/lib/ProTable/components/FormatColumn/index.js +446 -495
- package/lib/ProTable/components/RcTable/components/BaseTable/index.js +53 -40
- package/lib/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/index.js +139 -200
- package/lib/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/utils/index.js +116 -95
- package/lib/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/utils/propsType.js +16 -4
- package/lib/ProTable/components/RcTable/components/DraggableTable/index.js +80 -59
- package/lib/ProTable/components/RcTable/index.js +39 -17
- package/lib/ProTable/components/RenderColumn/index.js +194 -200
- package/lib/ProTable/components/RenderEmptyText/index.js +27 -25
- package/lib/ProTable/components/RenderFooter/index.js +33 -17
- package/lib/ProTable/components/RenderSummary/index.js +46 -56
- package/lib/ProTable/components/RenderTableHeader/index.js +68 -59
- package/lib/ProTable/components/RenderTabs/index.js +89 -78
- package/lib/ProTable/components/TableResizable/index.js +88 -87
- package/lib/ProTable/components/TooltipTitle/index.js +40 -26
- package/lib/ProTable/components/index.js +51 -45
- package/lib/ProTable/hooks/useAntdTable.d.ts +3 -0
- package/lib/ProTable/hooks/useAntdTable.js +349 -376
- package/lib/ProTable/index.d.ts +3 -7
- package/lib/ProTable/index.js +353 -392
- package/lib/ProTable/propsType.d.ts +3 -2
- package/lib/ProTable/propsType.js +16 -4
- package/lib/ProTable/style/index.less +4 -6
- package/lib/ProTable/utils/index.js +84 -84
- package/lib/ProTabs/components/Card/index.js +30 -50
- package/lib/ProTabs/components/index.js +36 -10
- package/lib/ProTabs/index.js +92 -85
- package/lib/ProTabs/propType.js +16 -4
- package/lib/ProTabs/style/index.less +0 -2
- package/lib/ProThemeTools/component/ProTools/index.js +198 -238
- package/lib/ProThemeTools/component/index.js +36 -10
- package/lib/ProThemeTools/context/ThemeContext.js +96 -87
- package/lib/ProThemeTools/index.d.ts +0 -7
- package/lib/ProThemeTools/index.js +181 -195
- package/lib/ProThemeTools/propsType.js +16 -4
- package/lib/ProThemeTools/style/index.less +0 -2
- package/lib/ProThemeTools/utils/index.js +85 -79
- package/lib/ProTooltip/index.js +217 -221
- package/lib/ProTooltip/propsType.js +16 -4
- package/lib/ProTooltip/style/index.less +0 -2
- package/lib/ProTree/components/AdaptiveTooltip.js +33 -22
- package/lib/ProTree/components/CloseIcon.js +36 -31
- package/lib/ProTree/components/List.js +68 -72
- package/lib/ProTree/components/ProTree.js +262 -362
- package/lib/ProTree/components/ProTreeSelect/index.js +367 -474
- package/lib/ProTree/components/ProTreeSelect/propsType.js +16 -4
- package/lib/ProTree/components/ProTreeSelect/style/index.less +0 -2
- package/lib/ProTree/components/SearchTitle.js +47 -50
- package/lib/ProTree/components/Tree.js +230 -302
- package/lib/ProTree/components/index.js +45 -31
- package/lib/ProTree/index.js +45 -22
- package/lib/ProTree/propsType.js +16 -4
- package/lib/ProTree/style/index.less +0 -2
- package/lib/ProTree/utils.js +83 -135
- package/lib/ProTreeModal/components/Cascader.js +97 -93
- package/lib/ProTreeModal/components/CloseIcon.js +36 -31
- package/lib/ProTreeModal/components/List.js +194 -263
- package/lib/ProTreeModal/components/SearchTitle.js +30 -22
- package/lib/ProTreeModal/components/SortableItem.js +60 -59
- package/lib/ProTreeModal/components/Tree.js +162 -180
- package/lib/ProTreeModal/components/Trigger.js +108 -126
- package/lib/ProTreeModal/components/index.js +51 -45
- package/lib/ProTreeModal/index.js +464 -574
- package/lib/ProTreeModal/propsType.js +16 -4
- package/lib/ProTreeModal/style/index.less +0 -2
- package/lib/ProTreeModal/utils.js +105 -158
- package/lib/ProUpload/components/ButtonRender.js +86 -108
- package/lib/ProUpload/components/DragRender.js +120 -167
- package/lib/ProUpload/components/DraggableUploadListItem.js +50 -32
- package/lib/ProUpload/components/Example.js +56 -38
- package/lib/ProUpload/components/FileItem.js +114 -203
- package/lib/ProUpload/components/ImageRender.js +176 -246
- package/lib/ProUpload/index.js +204 -215
- package/lib/ProUpload/propsType.js +16 -4
- package/lib/ProUpload/style/index.less +0 -2
- package/lib/ProUpload/uitls.js +34 -10
- package/lib/ProUtils/utils/index.js +38 -26
- package/lib/ProViewer/index.js +173 -199
- package/lib/ProViewer/propsType.js +16 -4
- package/lib/ProViewer/style/index.less +0 -2
- package/lib/ProWaterMark/index.js +38 -18
- package/lib/ProWaterMark/propsType.js +16 -4
- package/lib/index.d.ts +1 -1
- package/lib/index.js +123 -272
- package/lib/locale/en_US.js +145 -127
- package/lib/locale/index.js +58 -38
- package/lib/locale/zh_CN.js +146 -128
- package/lib/style/theme/antd.less +0 -2
- package/lib/tokens.js +103 -86
- package/lib/utils/index.js +91 -63
- package/package.json +13 -12
- package/tests/__mocks__/fileMock.js +1 -0
- package/tests/__mocks__/zatUtils.js +27 -0
- package/tests/setup.ts +484 -0
- package/tests/test-utils.tsx +81 -0
- package/dist/index.esm.css +0 -6445
- package/dist/index.esm.js +0 -3
- package/dist/less.esm.css +0 -5871
- package/dist/less.esm.js +0 -3
@@ -1,9 +1,7 @@
|
|
1
1
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
2
|
-
import
|
3
|
-
import
|
4
|
-
import
|
5
|
-
import { useRef, useState } from 'react';
|
6
|
-
import { customEqualForFunction } from '../../utils';
|
2
|
+
import { useRef, useState, useEffect } from 'react';
|
3
|
+
import { isFunction, isEqualWith, get, debounce } from 'lodash';
|
4
|
+
import { customEqualForFunction } from "../../utils";
|
7
5
|
/** FormList中被删除的行也会再触发一次响应式函数 排除这种场景 */
|
8
6
|
var isDeleteLine = function isDeleteLine(form, namePath) {
|
9
7
|
if (namePath) {
|
@@ -12,6 +10,7 @@ var isDeleteLine = function isDeleteLine(form, namePath) {
|
|
12
10
|
}
|
13
11
|
return false;
|
14
12
|
};
|
13
|
+
|
15
14
|
// 代理shouldUpdate事件, 执行函数值的[show, disabled], 当[show, disabled]与上一次值不相同时更新状态
|
16
15
|
var useShouldUpdate = function useShouldUpdate(props) {
|
17
16
|
var show = props.show,
|
@@ -24,7 +23,9 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
24
23
|
component = props.component,
|
25
24
|
originComponent = props.originComponent,
|
26
25
|
type = props.type,
|
27
|
-
desensitization = props.desensitization
|
26
|
+
desensitization = props.desensitization,
|
27
|
+
_props$shouldUpdateDe = props.shouldUpdateDebounce,
|
28
|
+
shouldUpdateDebounce = _props$shouldUpdateDe === void 0 ? 500 : _props$shouldUpdateDe;
|
28
29
|
var _shouldUpdate = formItemProps.shouldUpdate,
|
29
30
|
name = formItemProps.name,
|
30
31
|
clearNotShow = formItemProps.clearNotShow,
|
@@ -33,6 +34,9 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
33
34
|
names = formItemProps.names,
|
34
35
|
dependNames = formItemProps.dependNames;
|
35
36
|
var timerRef = useRef(null); // 清值防抖
|
37
|
+
var debouncedShouldUpdateRef = useRef(null); // shouldUpdate防抖函数
|
38
|
+
var pendingValuesRef = useRef(null); // 待处理的表单值
|
39
|
+
|
36
40
|
var needClear = useRef(false); // 是否需要执行清值操作
|
37
41
|
var showRef = useRef(false);
|
38
42
|
var disabledRef = useRef(false);
|
@@ -47,8 +51,80 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
47
51
|
_useState2 = _slicedToArray(_useState, 2),
|
48
52
|
reRender = _useState2[1];
|
49
53
|
var values = {};
|
54
|
+
|
55
|
+
// 处理表单值更新的函数
|
56
|
+
var processValuesUpdate = function processValuesUpdate(currentValues) {
|
57
|
+
var _currentValues;
|
58
|
+
if (namePath) {
|
59
|
+
_currentValues = form.getFieldValue(namePath) || {};
|
60
|
+
} else {
|
61
|
+
_currentValues = currentValues;
|
62
|
+
}
|
63
|
+
var _show = isFunction(show) ? Boolean(show(_currentValues, {
|
64
|
+
form: form,
|
65
|
+
index: index,
|
66
|
+
namePath: namePath
|
67
|
+
})) : show;
|
68
|
+
var _disabled = isFunction(disabled) ? disabled(_currentValues, {
|
69
|
+
form: form,
|
70
|
+
index: index,
|
71
|
+
namePath: namePath
|
72
|
+
}) : disabled;
|
73
|
+
var _required = isFunction(required) ? required(_currentValues, {
|
74
|
+
form: form,
|
75
|
+
index: index,
|
76
|
+
namePath: namePath
|
77
|
+
}) : required;
|
78
|
+
var _rules = isFunction(rules) ? rules(_currentValues, {
|
79
|
+
form: form,
|
80
|
+
index: index,
|
81
|
+
namePath: namePath
|
82
|
+
}) : rules;
|
83
|
+
var _fieldProps = isFunction(fieldProps) ? fieldProps(_currentValues, {
|
84
|
+
form: form,
|
85
|
+
index: index,
|
86
|
+
namePath: namePath
|
87
|
+
}) : fieldProps;
|
88
|
+
var _desensitization = isFunction(desensitization) ? desensitization(_currentValues, {
|
89
|
+
form: form,
|
90
|
+
index: index,
|
91
|
+
namePath: namePath
|
92
|
+
}) : desensitization;
|
93
|
+
var equalRes = isEqualWith(rulesRef.current, _rules, customEqualForFunction);
|
94
|
+
var proEqualRes = isEqualWith(fieldPropsRef.current, _fieldProps, customEqualForFunction);
|
95
|
+
var desensitizationRes = isEqualWith(desensitizationRef.current, _desensitization);
|
96
|
+
if (_show !== showRef.current || !isEqualWith(disabledRef.current, _disabled, customEqualForFunction) || _required !== requiredRef.current || !equalRes || !proEqualRes || !desensitizationRes || _fieldProps !== null && _fieldProps !== void 0 && _fieldProps.transformResponse) {
|
97
|
+
showRef.current = _show;
|
98
|
+
disabledRef.current = _disabled;
|
99
|
+
requiredRef.current = _required;
|
100
|
+
rulesRef.current = _rules;
|
101
|
+
fieldPropsRef.current = _fieldProps;
|
102
|
+
desensitizationRef.current = _desensitization;
|
103
|
+
reRender({});
|
104
|
+
}
|
105
|
+
};
|
106
|
+
|
107
|
+
// 创建防抖函数
|
108
|
+
useEffect(function () {
|
109
|
+
if (shouldUpdateDebounce > 0 && (dependNames !== null && dependNames !== void 0 && dependNames.length || isFunction(show) || isFunction(disabled) || isFunction(required) || isFunction(rules) || isFunction(fieldProps) || isFunction(originComponent) || isFunction(desensitization))) {
|
110
|
+
debouncedShouldUpdateRef.current = debounce(function () {
|
111
|
+
if (pendingValuesRef.current) {
|
112
|
+
var currentValues = pendingValuesRef.current;
|
113
|
+
pendingValuesRef.current = null;
|
114
|
+
|
115
|
+
// 使用最新的values重新计算状态
|
116
|
+
processValuesUpdate(currentValues);
|
117
|
+
}
|
118
|
+
}, shouldUpdateDebounce);
|
119
|
+
}
|
120
|
+
return function () {
|
121
|
+
var _debouncedShouldUpdat;
|
122
|
+
(_debouncedShouldUpdat = debouncedShouldUpdateRef.current) === null || _debouncedShouldUpdat === void 0 || _debouncedShouldUpdat.cancel();
|
123
|
+
};
|
124
|
+
}, [shouldUpdateDebounce, dependNames === null || dependNames === void 0 ? void 0 : dependNames.length, show, disabled, required, rules, fieldProps, originComponent, desensitization]);
|
125
|
+
|
50
126
|
// 不是动态函数直接返回
|
51
|
-
if (!(dependNames
|
127
|
+
if (!(dependNames !== null && dependNames !== void 0 && dependNames.length) && !isFunction(show) && !isFunction(disabled) && !isFunction(required) && !isFunction(rules) && !isFunction(fieldProps) && !isFunction(originComponent) && !isFunction(desensitization)) {
|
52
128
|
return {
|
53
129
|
shouldUpdate: _shouldUpdate,
|
54
130
|
show: show,
|
@@ -66,7 +142,7 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
66
142
|
} else {
|
67
143
|
values = form.getFieldsValue(true);
|
68
144
|
}
|
69
|
-
if (
|
145
|
+
if (isFunction(show)) {
|
70
146
|
showRef.current = Boolean(show(values, {
|
71
147
|
form: form,
|
72
148
|
index: index,
|
@@ -75,7 +151,7 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
75
151
|
} else {
|
76
152
|
showRef.current = show;
|
77
153
|
}
|
78
|
-
if (
|
154
|
+
if (isFunction(desensitization)) {
|
79
155
|
desensitizationRef.current = desensitization(values, {
|
80
156
|
form: form,
|
81
157
|
index: index,
|
@@ -84,7 +160,7 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
84
160
|
} else {
|
85
161
|
desensitizationRef.current = desensitization;
|
86
162
|
}
|
87
|
-
if (
|
163
|
+
if (isFunction(disabled)) {
|
88
164
|
// RangePicker返回数组时,特殊处理
|
89
165
|
if (['Group', 'RangePicker', 'ProCascader'].includes(type) && Array.isArray(disabled(values, {
|
90
166
|
form: form,
|
@@ -106,7 +182,7 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
106
182
|
} else {
|
107
183
|
disabledRef.current = disabled;
|
108
184
|
}
|
109
|
-
if (
|
185
|
+
if (isFunction(required)) {
|
110
186
|
requiredRef.current = required(values, {
|
111
187
|
form: form,
|
112
188
|
index: index,
|
@@ -115,7 +191,7 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
115
191
|
} else {
|
116
192
|
requiredRef.current = required;
|
117
193
|
}
|
118
|
-
if (
|
194
|
+
if (isFunction(rules)) {
|
119
195
|
rulesRef.current = rules(values, {
|
120
196
|
form: form,
|
121
197
|
index: index,
|
@@ -124,7 +200,7 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
124
200
|
} else {
|
125
201
|
rulesRef.current = rules;
|
126
202
|
}
|
127
|
-
if (
|
203
|
+
if (isFunction(originComponent)) {
|
128
204
|
originComponentRef.current = originComponent(values, {
|
129
205
|
form: form,
|
130
206
|
index: index,
|
@@ -133,7 +209,7 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
133
209
|
} else {
|
134
210
|
originComponentRef.current = newComponent;
|
135
211
|
}
|
136
|
-
if (
|
212
|
+
if (isFunction(fieldProps)) {
|
137
213
|
fieldPropsRef.current = fieldProps(values, {
|
138
214
|
form: form,
|
139
215
|
index: index,
|
@@ -142,22 +218,33 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
142
218
|
} else {
|
143
219
|
fieldPropsRef.current = fieldProps;
|
144
220
|
}
|
145
|
-
if (dependNames
|
221
|
+
if (dependNames !== null && dependNames !== void 0 && dependNames.length) {
|
146
222
|
dependNamesRef.current = dependNames.map(function (name) {
|
147
|
-
return
|
223
|
+
return get(values, name);
|
148
224
|
});
|
149
225
|
}
|
150
226
|
return {
|
151
227
|
shouldUpdate: function shouldUpdate(prevValues, currentValues) {
|
152
228
|
// @ts-ignore formList场景取当前行数据,不取shouldUpdate变更后值
|
153
|
-
if (dependNames
|
229
|
+
if (dependNames !== null && dependNames !== void 0 && dependNames.length) {
|
154
230
|
var curDependNamesValue = dependNames.map(function (name) {
|
155
|
-
return
|
231
|
+
return get(currentValues, name);
|
156
232
|
});
|
157
|
-
var dependNamesChanged = !
|
233
|
+
var dependNamesChanged = !isEqualWith(dependNamesRef.current, curDependNamesValue, customEqualForFunction);
|
158
234
|
dependNamesRef.current = curDependNamesValue;
|
159
235
|
if (!dependNamesChanged) return false;
|
160
236
|
}
|
237
|
+
|
238
|
+
// 如果启用了防抖且存在防抖函数
|
239
|
+
if (shouldUpdateDebounce > 0 && debouncedShouldUpdateRef.current) {
|
240
|
+
// 缓存最新的表单值
|
241
|
+
pendingValuesRef.current = currentValues;
|
242
|
+
// 触发防抖函数
|
243
|
+
debouncedShouldUpdateRef.current();
|
244
|
+
return false; // 暂时不更新,由防抖函数控制
|
245
|
+
}
|
246
|
+
|
247
|
+
// 原有的非防抖逻辑
|
161
248
|
var _currentValues;
|
162
249
|
if (namePath) {
|
163
250
|
// formList场景values取当前行数据
|
@@ -165,36 +252,37 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
165
252
|
} else {
|
166
253
|
_currentValues = form.getFieldsValue(true);
|
167
254
|
}
|
168
|
-
var _show =
|
255
|
+
var _show = isFunction(show) ? Boolean(show(_currentValues, {
|
169
256
|
form: form,
|
170
257
|
index: index,
|
171
258
|
namePath: namePath
|
172
259
|
})) : show;
|
173
|
-
var _disabled =
|
260
|
+
var _disabled = isFunction(disabled) ? Boolean(disabled(_currentValues, {
|
174
261
|
form: form,
|
175
262
|
index: index,
|
176
263
|
namePath: namePath
|
177
264
|
})) : disabled;
|
178
|
-
var _required =
|
265
|
+
var _required = isFunction(required) ? required(_currentValues, {
|
179
266
|
form: form,
|
180
267
|
index: index,
|
181
268
|
namePath: namePath
|
182
269
|
}) : required;
|
183
|
-
var _rules =
|
270
|
+
var _rules = isFunction(rules) ? rules(_currentValues, {
|
184
271
|
form: form,
|
185
272
|
index: index,
|
186
273
|
namePath: namePath
|
187
274
|
}) : rules;
|
188
|
-
var _fieldProps =
|
275
|
+
var _fieldProps = isFunction(fieldProps) ? fieldProps(_currentValues, {
|
189
276
|
form: form,
|
190
277
|
index: index,
|
191
278
|
namePath: namePath
|
192
279
|
}) : fieldProps;
|
193
|
-
var _desensitization =
|
280
|
+
var _desensitization = isFunction(desensitization) ? desensitization(_currentValues, {
|
194
281
|
form: form,
|
195
282
|
index: index,
|
196
283
|
namePath: namePath
|
197
284
|
}) : desensitization;
|
285
|
+
|
198
286
|
// 清值防抖 多次刷新时以最后一次为准
|
199
287
|
if (clearNotShow !== false && (name || names) && !isDeleteLine(form, namePath)) {
|
200
288
|
// 当show为其他变为false的时候记录一次需要清值
|
@@ -218,10 +306,10 @@ var useShouldUpdate = function useShouldUpdate(props) {
|
|
218
306
|
clearTimeout(timerRef.current);
|
219
307
|
}
|
220
308
|
}
|
221
|
-
var equalRes =
|
222
|
-
var proEqualRes =
|
223
|
-
var desensitizationRes =
|
224
|
-
if (_show !== showRef.current || _disabled !== disabledRef.current || _required !== requiredRef.current || !equalRes || !proEqualRes || !desensitizationRes ||
|
309
|
+
var equalRes = isEqualWith(rulesRef.current, _rules, customEqualForFunction);
|
310
|
+
var proEqualRes = isEqualWith(fieldPropsRef.current, _fieldProps, customEqualForFunction);
|
311
|
+
var desensitizationRes = isEqualWith(desensitizationRef.current, _desensitization);
|
312
|
+
if (_show !== showRef.current || _disabled !== disabledRef.current || _required !== requiredRef.current || !equalRes || !proEqualRes || !desensitizationRes || _fieldProps !== null && _fieldProps !== void 0 && _fieldProps.transformResponse // 防止fieldProps变更时,transformResponse根据fieldProps新值无法触发更新
|
225
313
|
) {
|
226
314
|
showRef.current = _show;
|
227
315
|
disabledRef.current = _disabled;
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
2
2
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
3
|
-
import
|
3
|
+
import { debounce } from 'lodash';
|
4
4
|
import warning from 'rc-util/lib/warning';
|
5
5
|
import { useState, useEffect, useRef, useMemo } from 'react';
|
6
6
|
import isEqual from 'lodash/isEqual';
|
@@ -10,6 +10,7 @@ export function toArray(value) {
|
|
10
10
|
}
|
11
11
|
return Array.isArray(value) ? value : [value];
|
12
12
|
}
|
13
|
+
|
13
14
|
// 从一个对象或Form值中获取特定路径的值
|
14
15
|
function get(source, path) {
|
15
16
|
if (!source || path.length === 0) {
|
@@ -24,6 +25,7 @@ function get(source, path) {
|
|
24
25
|
}
|
25
26
|
return current;
|
26
27
|
}
|
28
|
+
|
27
29
|
/**
|
28
30
|
* 将值设置到指定路径的嵌套对象中
|
29
31
|
* @param obj 目标对象
|
@@ -32,11 +34,13 @@ function get(source, path) {
|
|
32
34
|
*/
|
33
35
|
function setValueByPath(obj, path, value) {
|
34
36
|
if (path.length === 0) return;
|
37
|
+
|
35
38
|
// 处理单层路径
|
36
39
|
if (path.length === 1) {
|
37
40
|
obj[path[0]] = value;
|
38
41
|
return;
|
39
42
|
}
|
43
|
+
|
40
44
|
// 处理多层嵌套路径
|
41
45
|
var current = obj;
|
42
46
|
for (var i = 0; i < path.length - 1; i++) {
|
@@ -48,12 +52,14 @@ function setValueByPath(obj, path, value) {
|
|
48
52
|
}
|
49
53
|
current[path[path.length - 1]] = value;
|
50
54
|
}
|
55
|
+
|
51
56
|
// 创建之后namepath就不可变的警告
|
52
57
|
var useWatchWarning = process.env.NODE_ENV !== 'production' ? function (dependencies) {
|
53
58
|
var depsStr = JSON.stringify(dependencies);
|
54
59
|
var depsStrRef = useRef(depsStr);
|
55
60
|
warning(depsStrRef.current === depsStr, '`useWatch` is not support dynamic `namePath`. Please provide static instead.');
|
56
61
|
} : function () {};
|
62
|
+
|
57
63
|
/**
|
58
64
|
* ProForm的useWatch hook,用于监听表单字段变化
|
59
65
|
* @param dependencies 监听的字段路径
|
@@ -64,20 +70,25 @@ var useWatchWarning = process.env.NODE_ENV !== 'production' ? function (dependen
|
|
64
70
|
function useWatch(dependencies, form, wait) {
|
65
71
|
// 处理开发环境警告
|
66
72
|
useWatchWarning(dependencies);
|
73
|
+
|
67
74
|
// 获取表单实例
|
68
75
|
var formInstance = form;
|
76
|
+
|
69
77
|
// 用于存储最终结果
|
70
78
|
var _useState = useState({}),
|
71
79
|
_useState2 = _slicedToArray(_useState, 2),
|
72
80
|
state = _useState2[0],
|
73
81
|
setState = _useState2[1];
|
82
|
+
|
74
83
|
// 使用ref存储中间状态,避免不必要的渲染
|
75
84
|
var valueRef = useRef({});
|
76
85
|
var prevStateRef = useRef({});
|
86
|
+
|
77
87
|
// 标准化依赖为路径数组的数组
|
78
88
|
var namePaths = useMemo(function () {
|
79
89
|
// 将依赖标准化为数组的数组形式
|
80
90
|
var paths = [];
|
91
|
+
|
81
92
|
// 字符串形式: 'fieldName'
|
82
93
|
if (typeof dependencies === 'string') {
|
83
94
|
paths.push(dependencies);
|
@@ -97,10 +108,11 @@ function useWatch(dependencies, form, wait) {
|
|
97
108
|
}
|
98
109
|
return paths;
|
99
110
|
}, [/* dependencies 故意忽略,与原实现一致 */]);
|
111
|
+
|
100
112
|
// 保存防抖函数引用,避免重复创建
|
101
113
|
var debouncedFn = useMemo(function () {
|
102
114
|
if (wait) {
|
103
|
-
return
|
115
|
+
return debounce(function (value) {
|
104
116
|
// 只在值真正变化时才更新状态
|
105
117
|
if (!isEqual(prevStateRef.current, value)) {
|
106
118
|
prevStateRef.current = _objectSpread({}, value);
|
@@ -108,6 +120,7 @@ function useWatch(dependencies, form, wait) {
|
|
108
120
|
}
|
109
121
|
}, wait);
|
110
122
|
}
|
123
|
+
|
111
124
|
// 非防抖版本
|
112
125
|
return function (value) {
|
113
126
|
if (!isEqual(prevStateRef.current, value)) {
|
@@ -118,27 +131,35 @@ function useWatch(dependencies, form, wait) {
|
|
118
131
|
}, [wait]);
|
119
132
|
useEffect(function () {
|
120
133
|
if (!formInstance) return undefined;
|
134
|
+
|
121
135
|
// 创建更新状态的函数
|
122
136
|
var updateState = function updateState() {
|
123
137
|
var values = formInstance.getFieldsValue(true);
|
124
138
|
var newState = {};
|
139
|
+
|
125
140
|
// 处理每个监听路径
|
126
141
|
namePaths.forEach(function (path) {
|
127
142
|
// 将路径转换为数组形式
|
128
143
|
var namePath = toArray(path);
|
144
|
+
|
129
145
|
// 获取路径对应的值
|
130
146
|
var value = get(values, namePath);
|
147
|
+
|
131
148
|
// 将值设置到正确的嵌套结构中
|
132
149
|
setValueByPath(newState, namePath, value);
|
133
150
|
});
|
151
|
+
|
134
152
|
// 存储并更新状态
|
135
153
|
valueRef.current = newState;
|
136
154
|
debouncedFn(newState);
|
137
155
|
};
|
156
|
+
|
138
157
|
// 初始调用一次
|
139
158
|
updateState();
|
159
|
+
|
140
160
|
// 注册表单变化监听
|
141
|
-
var
|
161
|
+
var _ref = formInstance,
|
162
|
+
getInternalHooks = _ref.getInternalHooks;
|
142
163
|
var _getInternalHooks = getInternalHooks('RC_FORM_INTERNAL_HOOKS'),
|
143
164
|
registerWatch = _getInternalHooks.registerWatch;
|
144
165
|
var cancelWatch = registerWatch(function (values) {
|
@@ -146,6 +167,7 @@ function useWatch(dependencies, form, wait) {
|
|
146
167
|
updateState();
|
147
168
|
}
|
148
169
|
});
|
170
|
+
|
149
171
|
// 清理订阅
|
150
172
|
return function () {
|
151
173
|
if (wait) {
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
2
2
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
3
|
-
import _isEqual from "lodash/isEqual";
|
4
3
|
import Big from 'big.js';
|
4
|
+
import { isEqual } from 'lodash';
|
5
5
|
import { transforms } from '@zat-design/utils';
|
6
6
|
var transformDate = transforms.transformDate,
|
7
7
|
transformSwitch = transforms.transformSwitch;
|
@@ -33,7 +33,7 @@ var transformRatio = function transformRatio(_ref) {
|
|
33
33
|
value: []
|
34
34
|
};
|
35
35
|
}
|
36
|
-
if (
|
36
|
+
if (isEqual(ref, value)) {
|
37
37
|
return {
|
38
38
|
value: [(value[0] || value[0] === 0) && Number.isFinite(value[0] - 0) ? Big(value[0] - 0).times(Math.pow(10, precision)).toNumber() : null, (value[1] || value[1] === 0) && Number.isFinite(value[1] - 0) ? Big(value[1] - 0).times(Math.pow(10, precision)).toNumber() : null]
|
39
39
|
};
|
@@ -56,6 +56,7 @@ var transformRatio = function transformRatio(_ref) {
|
|
56
56
|
}
|
57
57
|
};
|
58
58
|
};
|
59
|
+
|
59
60
|
/**
|
60
61
|
* switch转换
|
61
62
|
*/
|
@@ -85,6 +86,7 @@ var formatMap = {
|
|
85
86
|
timeType: 'startEndTime'
|
86
87
|
}
|
87
88
|
};
|
89
|
+
|
88
90
|
/**
|
89
91
|
* 日期转换
|
90
92
|
*/
|
@@ -189,6 +191,7 @@ var dateTransform = function dateTransform(_ref2) {
|
|
189
191
|
}
|
190
192
|
return result;
|
191
193
|
};
|
194
|
+
|
192
195
|
/** 脱敏处理函数 */
|
193
196
|
export var maskStringRangeWithRegex = function maskStringRangeWithRegex(input, range) {
|
194
197
|
var _input$replace;
|
@@ -205,7 +208,7 @@ export var maskStringRangeWithRegex = function maskStringRangeWithRegex(input, r
|
|
205
208
|
}
|
206
209
|
var regexPattern = "^(.{".concat(start, "})(.{").concat(adjustedEnd - start + 1, "})(.*)$");
|
207
210
|
var regex = new RegExp(regexPattern);
|
208
|
-
var maskedValue = input === null || input === void 0
|
211
|
+
var maskedValue = input === null || input === void 0 || (_input$replace = input.replace) === null || _input$replace === void 0 ? void 0 : _input$replace.call(input, regex, "$1".concat('*'.repeat(adjustedEnd - start + 1), "$3"));
|
209
212
|
return maskedValue;
|
210
213
|
};
|
211
214
|
export default {
|
@@ -280,9 +283,9 @@ export default {
|
|
280
283
|
});
|
281
284
|
},
|
282
285
|
/** 百分比 */
|
283
|
-
percentage: function percentage(
|
284
|
-
var type =
|
285
|
-
valueType =
|
286
|
+
percentage: function percentage(_ref10) {
|
287
|
+
var type = _ref10.type,
|
288
|
+
valueType = _ref10.valueType;
|
286
289
|
return transformRatio({
|
287
290
|
type: type,
|
288
291
|
valueType: valueType,
|
@@ -290,9 +293,9 @@ export default {
|
|
290
293
|
});
|
291
294
|
},
|
292
295
|
/** 千分比 */
|
293
|
-
permillage: function permillage(
|
294
|
-
var type =
|
295
|
-
valueType =
|
296
|
+
permillage: function permillage(_ref11) {
|
297
|
+
var type = _ref11.type,
|
298
|
+
valueType = _ref11.valueType;
|
296
299
|
return transformRatio({
|
297
300
|
type: type,
|
298
301
|
valueType: valueType,
|
@@ -300,8 +303,8 @@ export default {
|
|
300
303
|
});
|
301
304
|
},
|
302
305
|
/** 开关 YN转换 */
|
303
|
-
switch: function _switch(
|
304
|
-
var switchValue =
|
306
|
+
switch: function _switch(_ref12) {
|
307
|
+
var switchValue = _ref12.switchValue;
|
305
308
|
return switchTransform(switchValue);
|
306
309
|
}
|
307
310
|
};
|
@@ -255,6 +255,7 @@ export var iconMap = [{
|
|
255
255
|
'text-cn': '调整序号',
|
256
256
|
'text-en': 'adjust order'
|
257
257
|
}];
|
258
|
+
|
258
259
|
// 渐变色icon预设
|
259
260
|
export var themeMap = {
|
260
261
|
'#006AFF': ['#ADDDFF', '#5FB3D8', '#4181FF'],
|
@@ -263,6 +264,7 @@ export var themeMap = {
|
|
263
264
|
'#A00F20': ['#FFFFFF', '#E47B7B', '#A00E20'],
|
264
265
|
'#31AF96': ['#5FD8C7', '#5FD8C7', '#31AF96']
|
265
266
|
};
|
267
|
+
|
266
268
|
// 双色icon预设
|
267
269
|
export var themeFillMap = {
|
268
270
|
'#006AFF': ['none', '#87F1FC', 'black', '#4181FF'],
|