@ant-design/pro-components 3.1.12-0 → 3.1.13-0
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/README.es-PR.md +12 -0
- package/README.md +12 -0
- package/README.zh-CN.md +12 -0
- package/dist/pro-components.min.js +1 -1
- package/es/card/ProCard.d.ts +2 -2
- package/es/card/ProCard.js +7 -2
- package/es/card/components/Card/index.js +33 -25
- package/es/card/components/Card/style.js +44 -14
- package/es/card/components/CheckCard/Group.d.ts +22 -42
- package/es/card/components/CheckCard/Group.js +57 -47
- package/es/card/components/CheckCard/index.d.ts +3 -4
- package/es/card/components/CheckCard/index.js +19 -7
- package/es/card/components/CheckCard/style.d.ts +1 -1
- package/es/card/components/CheckCard/style.js +28 -27
- package/es/card/components/Loading/style.js +4 -3
- package/es/card/components/Operation/index.d.ts +1 -1
- package/es/card/components/Operation/style.js +4 -3
- package/es/card/components/Statistic/index.d.ts +1 -1
- package/es/card/components/Statistic/style.d.ts +1 -1
- package/es/card/components/Statistic/style.js +9 -6
- package/es/card/components/StatisticCard/style.d.ts +1 -1
- package/es/card/components/StatisticCard/style.js +5 -5
- package/es/card/typing.d.ts +1 -1
- package/es/descriptions/FieldRender.d.ts +16 -0
- package/es/descriptions/FieldRender.js +134 -0
- package/es/descriptions/ProDescriptions.d.ts +5 -0
- package/es/descriptions/ProDescriptions.js +139 -0
- package/es/descriptions/getDataFromConfig.d.ts +5 -0
- package/es/descriptions/getDataFromConfig.js +16 -0
- package/es/descriptions/index.d.ts +6 -98
- package/es/descriptions/index.js +4 -430
- package/es/descriptions/resolveValueType.d.ts +6 -0
- package/es/descriptions/resolveValueType.js +9 -0
- package/es/descriptions/schemaToDescriptionsItem.d.ts +8 -0
- package/es/descriptions/schemaToDescriptionsItem.js +90 -0
- package/es/descriptions/typing.d.ts +70 -0
- package/es/descriptions/typing.js +27 -0
- package/es/descriptions/useFetchData.d.ts +13 -12
- package/es/descriptions/useFetchData.js +23 -13
- package/es/field/AllProField.d.ts +8 -34
- package/es/field/AllProField.js +172 -274
- package/es/field/ProFieldCore.d.ts +23 -0
- package/es/field/ProFieldCore.js +74 -0
- package/es/field/PureProField.d.ts +9 -39
- package/es/field/PureProField.js +56 -110
- package/es/field/ValueTypeToComponent.d.ts +4 -1
- package/es/field/ValueTypeToComponent.js +257 -673
- package/es/field/components/Cascader/FieldCascaderEdit.d.ts +17 -0
- package/es/field/components/Cascader/FieldCascaderEdit.js +45 -0
- package/es/field/components/Cascader/FieldCascaderLightEdit.d.ts +17 -0
- package/es/field/components/Cascader/FieldCascaderLightEdit.js +68 -0
- package/es/field/components/Cascader/FieldCascaderRead.d.ts +6 -0
- package/es/field/components/Cascader/FieldCascaderRead.js +21 -0
- package/es/field/components/Cascader/index.d.ts +7 -13
- package/es/field/components/Cascader/index.js +40 -76
- package/es/field/components/Cascader/types.d.ts +8 -0
- package/es/field/components/Cascader/types.js +1 -0
- package/es/field/components/Checkbox/FieldCheckboxEdit.d.ts +16 -0
- package/es/field/components/Checkbox/FieldCheckboxEdit.js +41 -0
- package/es/field/components/Checkbox/FieldCheckboxRead.d.ts +6 -0
- package/es/field/components/Checkbox/FieldCheckboxRead.js +37 -0
- package/es/field/components/Checkbox/index.d.ts +5 -9
- package/es/field/components/Checkbox/index.js +33 -66
- package/es/field/components/Checkbox/types.d.ts +6 -0
- package/es/field/components/Checkbox/types.js +1 -0
- package/es/field/components/Code/FieldCodeEdit.d.ts +10 -0
- package/es/field/components/Code/FieldCodeEdit.js +28 -0
- package/es/field/components/Code/FieldCodeRead.d.ts +14 -0
- package/es/field/components/Code/FieldCodeRead.js +38 -0
- package/es/field/components/Code/index.js +22 -63
- package/es/field/components/Code/utils.d.ts +1 -0
- package/es/field/components/Code/utils.js +13 -0
- package/es/field/components/ColorPicker/FieldColorPickerEdit.d.ts +9 -0
- package/es/field/components/ColorPicker/FieldColorPickerEdit.js +41 -0
- package/es/field/components/ColorPicker/FieldColorPickerRead.d.ts +9 -0
- package/es/field/components/ColorPicker/FieldColorPickerRead.js +30 -0
- package/es/field/components/ColorPicker/index.d.ts +1 -1
- package/es/field/components/ColorPicker/index.js +11 -61
- package/es/field/components/DatePicker/FieldDatePickerEdit.d.ts +15 -0
- package/es/field/components/DatePicker/FieldDatePickerEdit.js +40 -0
- package/es/field/components/DatePicker/FieldDatePickerLightEdit.d.ts +17 -0
- package/es/field/components/DatePicker/FieldDatePickerLightEdit.js +63 -0
- package/es/field/components/DatePicker/FieldDatePickerRead.d.ts +13 -0
- package/es/field/components/DatePicker/FieldDatePickerRead.js +26 -0
- package/es/field/components/DatePicker/datePickerUtils.d.ts +3 -0
- package/es/field/components/DatePicker/datePickerUtils.js +32 -0
- package/es/field/components/DatePicker/index.d.ts +3 -3
- package/es/field/components/DatePicker/index.js +39 -91
- package/es/field/components/Digit/FieldDigitEdit.d.ts +8 -0
- package/es/field/components/Digit/FieldDigitEdit.js +25 -0
- package/es/field/components/Digit/FieldDigitRead.d.ts +4 -0
- package/es/field/components/Digit/FieldDigitRead.js +34 -0
- package/es/field/components/Digit/index.d.ts +2 -4
- package/es/field/components/Digit/index.js +23 -101
- package/es/field/components/Digit/types.d.ts +4 -0
- package/es/field/components/Digit/types.js +1 -0
- package/es/field/components/DigitRange/FieldDigitRangeEdit.d.ts +16 -0
- package/es/field/components/DigitRange/FieldDigitRangeEdit.js +87 -0
- package/es/field/components/DigitRange/FieldDigitRangeRead.d.ts +4 -0
- package/es/field/components/DigitRange/FieldDigitRangeRead.js +29 -0
- package/es/field/components/DigitRange/index.d.ts +2 -8
- package/es/field/components/DigitRange/index.js +30 -90
- package/es/field/components/DigitRange/types.d.ts +8 -0
- package/es/field/components/DigitRange/types.js +1 -0
- package/es/field/components/FromNow/FieldFromNowEdit.d.ts +12 -0
- package/es/field/components/FromNow/FieldFromNowEdit.js +32 -0
- package/es/field/components/FromNow/FieldFromNowRead.d.ts +9 -0
- package/es/field/components/FromNow/FieldFromNowRead.js +28 -0
- package/es/field/components/FromNow/index.d.ts +1 -1
- package/es/field/components/FromNow/index.js +15 -49
- package/es/field/components/Image/FieldImageEdit.d.ts +8 -0
- package/es/field/components/Image/FieldImageEdit.js +24 -0
- package/es/field/components/Image/FieldImageRead.d.ts +4 -0
- package/es/field/components/Image/FieldImageRead.js +25 -0
- package/es/field/components/Image/index.d.ts +3 -6
- package/es/field/components/Image/index.js +25 -34
- package/es/field/components/Image/types.d.ts +5 -0
- package/es/field/components/Image/types.js +1 -0
- package/es/field/components/Money/FieldMoneyEdit.d.ts +13 -0
- package/es/field/components/Money/FieldMoneyEdit.js +64 -0
- package/es/field/components/Money/FieldMoneyRead.d.ts +9 -0
- package/es/field/components/Money/FieldMoneyRead.js +26 -0
- package/es/field/components/Money/InputNumberPopover.d.ts +11 -0
- package/es/field/components/Money/InputNumberPopover.js +92 -0
- package/es/field/components/Money/index.d.ts +2 -69
- package/es/field/components/Money/index.js +43 -286
- package/es/field/components/Money/moneyFormat.d.ts +13 -0
- package/es/field/components/Money/moneyFormat.js +102 -0
- package/es/field/components/Money/types.d.ts +37 -0
- package/es/field/components/Money/types.js +1 -0
- package/es/field/components/Password/FieldPasswordEdit.d.ts +12 -0
- package/es/field/components/Password/FieldPasswordEdit.js +24 -0
- package/es/field/components/Password/FieldPasswordRead.d.ts +12 -0
- package/es/field/components/Password/FieldPasswordRead.js +37 -0
- package/es/field/components/Password/index.js +23 -43
- package/es/field/components/Percent/FieldPercentEdit.d.ts +8 -0
- package/es/field/components/Percent/FieldPercentEdit.js +32 -0
- package/es/field/components/Percent/FieldPercentRead.d.ts +9 -0
- package/es/field/components/Percent/FieldPercentRead.js +41 -0
- package/es/field/components/Percent/index.d.ts +2 -10
- package/es/field/components/Percent/index.js +26 -65
- package/es/field/components/Percent/types.d.ts +10 -0
- package/es/field/components/Percent/types.js +1 -0
- package/es/field/components/Percent/util.d.ts +1 -1
- package/es/field/components/Progress/FieldProgressEdit.d.ts +10 -0
- package/es/field/components/Progress/FieldProgressEdit.js +24 -0
- package/es/field/components/Progress/FieldProgressRead.d.ts +10 -0
- package/es/field/components/Progress/FieldProgressRead.js +31 -0
- package/es/field/components/Progress/index.d.ts +2 -1
- package/es/field/components/Progress/index.js +21 -57
- package/es/field/components/Progress/utils.d.ts +1 -0
- package/es/field/components/Progress/utils.js +12 -0
- package/es/field/components/Radio/FieldRadioEdit.d.ts +16 -0
- package/es/field/components/Radio/FieldRadioEdit.js +38 -0
- package/es/field/components/Radio/FieldRadioRead.d.ts +6 -0
- package/es/field/components/Radio/FieldRadioRead.js +21 -0
- package/es/field/components/Radio/index.d.ts +4 -8
- package/es/field/components/Radio/index.js +34 -49
- package/es/field/components/Radio/types.d.ts +6 -0
- package/es/field/components/Radio/types.js +1 -0
- package/es/field/components/RangePicker/FieldRangePickerEdit.d.ts +15 -0
- package/es/field/components/RangePicker/FieldRangePickerEdit.js +35 -0
- package/es/field/components/RangePicker/FieldRangePickerLightEdit.d.ts +17 -0
- package/es/field/components/RangePicker/FieldRangePickerLightEdit.js +67 -0
- package/es/field/components/RangePicker/FieldRangePickerRead.d.ts +14 -0
- package/es/field/components/RangePicker/FieldRangePickerRead.js +28 -0
- package/es/field/components/RangePicker/index.d.ts +3 -3
- package/es/field/components/RangePicker/index.js +47 -94
- package/es/field/components/Rate/FieldRateEdit.d.ts +5 -0
- package/es/field/components/Rate/FieldRateEdit.js +23 -0
- package/es/field/components/Rate/FieldRateRead.d.ts +5 -0
- package/es/field/components/Rate/FieldRateRead.js +28 -0
- package/es/field/components/Rate/index.js +12 -42
- package/es/field/components/Second/FieldSecondEdit.d.ts +8 -0
- package/es/field/components/Second/FieldSecondEdit.js +28 -0
- package/es/field/components/Second/FieldSecondRead.d.ts +4 -0
- package/es/field/components/Second/FieldSecondRead.js +23 -0
- package/es/field/components/Second/index.d.ts +4 -11
- package/es/field/components/Second/index.js +17 -77
- package/es/field/components/Second/types.d.ts +6 -0
- package/es/field/components/Second/types.js +1 -0
- package/es/field/components/Second/utils.d.ts +4 -0
- package/es/field/components/Second/utils.js +30 -0
- package/es/field/components/Segmented/FieldSegmentedEdit.d.ts +13 -0
- package/es/field/components/Segmented/FieldSegmentedEdit.js +29 -0
- package/es/field/components/Segmented/FieldSegmentedRead.d.ts +12 -0
- package/es/field/components/Segmented/FieldSegmentedRead.js +27 -0
- package/es/field/components/Segmented/index.d.ts +4 -4
- package/es/field/components/Segmented/index.js +22 -40
- package/es/field/components/Select/FieldSelectEdit.d.ts +2 -0
- package/es/field/components/Select/FieldSelectEdit.js +1 -0
- package/es/field/components/Select/FieldSelectLightEdit.d.ts +17 -0
- package/es/field/components/Select/FieldSelectLightEdit.js +46 -0
- package/es/field/components/Select/FieldSelectRead.d.ts +10 -0
- package/es/field/components/Select/FieldSelectRead.js +23 -0
- package/es/field/components/Select/FieldSelectSearchEdit.d.ts +17 -0
- package/es/field/components/Select/FieldSelectSearchEdit.js +50 -0
- package/es/field/components/Select/LightSelect/index.d.ts +3 -3
- package/es/field/components/Select/SearchSelect/index.d.ts +0 -8
- package/es/field/components/Select/SearchSelect/index.js +8 -22
- package/es/field/components/Select/index.d.ts +6 -28
- package/es/field/components/Select/index.js +49 -142
- package/es/field/components/Select/types.d.ts +19 -0
- package/es/field/components/Select/types.js +1 -0
- package/es/field/components/Slider/FieldSliderEdit.d.ts +5 -0
- package/es/field/components/Slider/FieldSliderEdit.js +26 -0
- package/es/field/components/Slider/FieldSliderRead.d.ts +5 -0
- package/es/field/components/Slider/FieldSliderRead.js +22 -0
- package/es/field/components/Slider/index.js +12 -41
- package/es/field/components/Switch/FieldSwitchEdit.d.ts +12 -0
- package/es/field/components/Switch/FieldSwitchEdit.js +24 -0
- package/es/field/components/Switch/FieldSwitchLightEdit.d.ts +12 -0
- package/es/field/components/Switch/FieldSwitchLightEdit.js +41 -0
- package/es/field/components/Switch/FieldSwitchRead.d.ts +10 -0
- package/es/field/components/Switch/FieldSwitchRead.js +21 -0
- package/es/field/components/Switch/index.d.ts +1 -1
- package/es/field/components/Switch/index.js +30 -56
- package/es/field/components/Text/FieldTextEdit.d.ts +12 -0
- package/es/field/components/Text/FieldTextEdit.js +27 -0
- package/es/field/components/Text/FieldTextRead.d.ts +10 -0
- package/es/field/components/Text/FieldTextRead.js +26 -0
- package/es/field/components/Text/index.js +25 -41
- package/es/field/components/TextArea/FieldTextAreaEdit.d.ts +10 -0
- package/es/field/components/TextArea/FieldTextAreaEdit.js +30 -0
- package/es/field/components/TextArea/FieldTextAreaRead.d.ts +7 -0
- package/es/field/components/TextArea/FieldTextAreaRead.js +24 -0
- package/es/field/components/TextArea/index.js +11 -43
- package/es/field/components/TimePicker/FieldTimePickerEdit.d.ts +12 -0
- package/es/field/components/TimePicker/FieldTimePickerEdit.js +33 -0
- package/es/field/components/TimePicker/FieldTimePickerLightEdit.d.ts +16 -0
- package/es/field/components/TimePicker/FieldTimePickerLightEdit.js +62 -0
- package/es/field/components/TimePicker/FieldTimePickerRead.d.ts +11 -0
- package/es/field/components/TimePicker/FieldTimePickerRead.js +26 -0
- package/es/field/components/TimePicker/FieldTimeRangePickerEdit.d.ts +12 -0
- package/es/field/components/TimePicker/FieldTimeRangePickerEdit.js +30 -0
- package/es/field/components/TimePicker/FieldTimeRangePickerLightEdit.d.ts +16 -0
- package/es/field/components/TimePicker/FieldTimeRangePickerLightEdit.js +63 -0
- package/es/field/components/TimePicker/FieldTimeRangePickerRead.d.ts +12 -0
- package/es/field/components/TimePicker/FieldTimeRangePickerRead.js +28 -0
- package/es/field/components/TimePicker/index.d.ts +3 -3
- package/es/field/components/TimePicker/index.js +77 -151
- package/es/field/components/TreeSelect/FieldTreeSelectEdit.d.ts +38 -0
- package/es/field/components/TreeSelect/FieldTreeSelectEdit.js +86 -0
- package/es/field/components/TreeSelect/FieldTreeSelectLightEdit.d.ts +35 -0
- package/es/field/components/TreeSelect/FieldTreeSelectLightEdit.js +121 -0
- package/es/field/components/TreeSelect/FieldTreeSelectRead.d.ts +7 -0
- package/es/field/components/TreeSelect/FieldTreeSelectRead.js +24 -0
- package/es/field/components/TreeSelect/index.d.ts +6 -13
- package/es/field/components/TreeSelect/index.js +50 -106
- package/es/field/components/TreeSelect/types.d.ts +9 -0
- package/es/field/components/TreeSelect/types.js +1 -0
- package/es/field/initDayjs.d.ts +1 -0
- package/es/field/initDayjs.js +13 -0
- package/es/field/internal/ProFieldLightWrapper.d.ts +16 -0
- package/es/field/{FieldHOC/index.js → internal/ProFieldLightWrapper.js} +20 -5
- package/es/field/internal/fieldMode.d.ts +14 -0
- package/es/field/internal/fieldMode.js +21 -0
- package/es/field/types.d.ts +30 -0
- package/es/field/types.js +1 -0
- package/es/form/BaseForm/BaseForm.d.ts +2 -2
- package/es/form/BaseForm/BaseForm.js +116 -257
- package/es/form/BaseForm/Submitter/index.d.ts +5 -6
- package/es/form/BaseForm/Submitter/index.js +27 -29
- package/es/form/BaseForm/index.d.ts +0 -1
- package/es/form/BaseForm/index.js +1 -2
- package/es/form/BaseForm/useUrlSync.d.ts +42 -0
- package/es/form/BaseForm/useUrlSync.js +92 -0
- package/es/form/FieldContext.d.ts +4 -3
- package/es/form/components/Checkbox/index.js +0 -20
- package/es/form/components/ColorPicker/index.d.ts +3 -22
- package/es/form/components/ColorPicker/index.js +2 -1
- package/es/form/components/DatePicker/BaseDatePicker.js +29 -1
- package/es/form/components/DateRangePicker/BaseDateRanger.js +30 -2
- package/es/form/components/DateRangePicker/DateMonthRangePicker.js +0 -6
- package/es/form/components/DateRangePicker/DateQuarterRangePicker.js +0 -6
- package/es/form/components/DateRangePicker/DateTimeRangePicker.js +0 -6
- package/es/form/components/DateRangePicker/DateWeekRangePicker.js +0 -6
- package/es/form/components/DateRangePicker/DateYearRangePicker.d.ts +1 -1
- package/es/form/components/DateRangePicker/DateYearRangePicker.js +1 -7
- package/es/form/components/DateRangePicker/index.js +0 -6
- package/es/form/components/Dependency/index.d.ts +1 -1
- package/es/form/components/Digit/DigitRange.d.ts +1 -1
- package/es/form/components/Field/index.js +1 -1
- package/es/form/components/FieldSet/index.d.ts +0 -2
- package/es/form/components/FieldSet/index.js +0 -1
- package/es/form/components/FormItem/FormItemRender/index.d.ts +1 -2
- package/es/form/components/FormItem/index.d.ts +4 -5
- package/es/form/components/FormItem/index.js +83 -100
- package/es/form/components/FormItem/warpField.js +38 -24
- package/es/form/components/List/ListContainer.js +18 -35
- package/es/form/components/List/ListItem.d.ts +2 -2
- package/es/form/components/List/ListItem.js +90 -90
- package/es/form/components/List/index.js +8 -8
- package/es/form/components/SchemaForm/index.d.ts +2 -1
- package/es/form/components/SchemaForm/index.js +1 -1
- package/es/form/components/SchemaForm/layoutType/StepsForm.d.ts +1 -1
- package/es/form/components/SchemaForm/valueType/dependency.d.ts +2 -1
- package/es/form/components/SchemaForm/valueType/divider.d.ts +2 -1
- package/es/form/components/Select/index.d.ts +0 -2
- package/es/form/components/UploadButton/index.d.ts +1 -1
- package/es/form/index.d.ts +5 -3
- package/es/form/index.js +2 -1
- package/es/form/layouts/DrawerForm/index.js +57 -173
- package/{lib/form/BaseForm → es/form/layouts/LightFilter}/LightWrapper/index.d.ts +1 -1
- package/es/form/{BaseForm → layouts/LightFilter}/LightWrapper/index.js +39 -21
- package/es/form/{BaseForm → layouts/LightFilter}/LightWrapper/style.d.ts +1 -1
- package/es/form/{BaseForm → layouts/LightFilter}/LightWrapper/style.js +1 -1
- package/es/form/layouts/LightFilter/index.d.ts +7 -33
- package/es/form/layouts/LightFilter/index.js +15 -14
- package/es/form/layouts/LightFilter/lightFilterFieldComponents.d.ts +104 -0
- package/es/form/layouts/LightFilter/lightFilterFieldComponents.js +69 -0
- package/es/form/layouts/LightFilter/style.js +2 -3
- package/es/form/layouts/LoginForm/index.js +8 -28
- package/es/form/layouts/LoginFormPage/index.js +8 -28
- package/es/form/layouts/ModalForm/index.d.ts +1 -1
- package/es/form/layouts/ModalForm/index.js +36 -142
- package/es/form/layouts/ProForm/index.d.ts +3 -3
- package/es/form/layouts/ProForm/index.js +5 -6
- package/es/form/layouts/QueryFilter/Actions.js +1 -12
- package/es/form/layouts/QueryFilter/index.js +26 -99
- package/es/form/layouts/QueryFilter/processQueryFilterItems.d.ts +63 -0
- package/es/form/layouts/QueryFilter/processQueryFilterItems.js +123 -0
- package/es/form/layouts/StepsForm/StepForm.d.ts +2 -1
- package/es/form/layouts/StepsForm/index.d.ts +60 -1
- package/es/form/layouts/StepsForm/index.js +97 -37
- package/es/form/layouts/_shared/LoginFormHeader.d.ts +16 -0
- package/es/form/layouts/_shared/LoginFormHeader.js +45 -0
- package/es/form/layouts/_shared/useOverlayForm.d.ts +60 -0
- package/es/form/layouts/_shared/useOverlayForm.js +155 -0
- package/es/form/layouts/index.d.ts +3 -2
- package/es/form/layouts/index.js +2 -1
- package/es/form/typing.d.ts +4 -1
- package/es/form/typing.js +7 -1
- package/es/layout/assert/Logo.d.ts +2 -1
- package/es/layout/components/AppsLogoComponents/AppsLogo.d.ts +2 -1
- package/es/layout/components/Help/index.d.ts +1 -1
- package/es/layout/components/PageContainer/index.d.ts +1 -1
- package/es/layout/components/PageHeader/style/index.d.ts +1 -1
- package/es/layout/components/SettingDrawer/LayoutChange.d.ts +1 -1
- package/es/layout/components/SettingDrawer/icon/group.d.ts +2 -1
- package/es/layout/components/SettingDrawer/icon/sub.d.ts +2 -1
- package/es/layout/components/SettingDrawer/index.js +1 -2
- package/es/layout/components/SiderMenu/Arrow.d.ts +2 -1
- package/es/list/Item.d.ts +3 -2
- package/es/list/Item.js +7 -5
- package/es/list/ListView.d.ts +2 -3
- package/es/list/ListView.js +79 -67
- package/es/list/ProListBase.d.ts +4 -0
- package/es/list/ProListBase.js +6 -2
- package/es/list/index.d.ts +4 -5
- package/es/list/index.js +35 -35
- package/es/provider/index.d.ts +7 -5
- package/es/provider/index.js +53 -15
- package/es/provider/intl.d.ts +47 -69
- package/es/provider/intl.js +128 -84
- package/es/provider/locale/ar_EG.d.ts +3 -72
- package/es/provider/locale/ar_EG.js +8 -3
- package/es/provider/locale/ca_ES.d.ts +3 -72
- package/es/provider/locale/ca_ES.js +7 -2
- package/es/provider/locale/cs_CZ.d.ts +3 -75
- package/es/provider/locale/cs_CZ.js +4 -2
- package/es/provider/locale/de_DE.d.ts +3 -72
- package/es/provider/locale/de_DE.js +8 -3
- package/es/provider/locale/en_GB.d.ts +3 -74
- package/es/provider/locale/en_GB.js +5 -2
- package/es/provider/locale/en_US.d.ts +3 -76
- package/es/provider/locale/en_US.js +3 -2
- package/es/provider/locale/es_ES.d.ts +3 -72
- package/es/provider/locale/es_ES.js +7 -2
- package/es/provider/locale/fa_IR.d.ts +3 -72
- package/es/provider/locale/fa_IR.js +8 -3
- package/es/provider/locale/fr_FR.d.ts +3 -72
- package/es/provider/locale/fr_FR.js +11 -6
- package/es/provider/locale/he_IL.d.ts +3 -75
- package/es/provider/locale/he_IL.js +4 -2
- package/es/provider/locale/hr_HR.d.ts +3 -72
- package/es/provider/locale/hr_HR.js +7 -2
- package/es/provider/locale/id_ID.d.ts +3 -72
- package/es/provider/locale/id_ID.js +7 -2
- package/es/provider/locale/it_IT.d.ts +3 -72
- package/es/provider/locale/it_IT.js +13 -8
- package/es/provider/locale/ja_JP.d.ts +3 -72
- package/es/provider/locale/ja_JP.js +8 -3
- package/es/provider/locale/ko_KR.d.ts +3 -72
- package/es/provider/locale/ko_KR.js +9 -4
- package/es/provider/locale/mn_MN.d.ts +3 -72
- package/es/provider/locale/mn_MN.js +7 -2
- package/es/provider/locale/ms_MY.d.ts +3 -72
- package/es/provider/locale/ms_MY.js +10 -5
- package/es/provider/locale/nl_NL.d.ts +3 -75
- package/es/provider/locale/nl_NL.js +4 -2
- package/es/provider/locale/pl_PL.d.ts +3 -72
- package/es/provider/locale/pl_PL.js +12 -7
- package/es/provider/locale/pt_BR.d.ts +3 -72
- package/es/provider/locale/pt_BR.js +7 -2
- package/es/provider/locale/ro_RO.d.ts +3 -75
- package/es/provider/locale/ro_RO.js +4 -2
- package/es/provider/locale/ru_RU.d.ts +3 -72
- package/es/provider/locale/ru_RU.js +9 -4
- package/es/provider/locale/sk_SK.d.ts +3 -75
- package/es/provider/locale/sk_SK.js +4 -2
- package/es/provider/locale/sr_RS.d.ts +3 -72
- package/es/provider/locale/sr_RS.js +9 -4
- package/es/provider/locale/sv_SE.d.ts +3 -75
- package/es/provider/locale/sv_SE.js +4 -2
- package/es/provider/locale/th_TH.d.ts +3 -75
- package/es/provider/locale/th_TH.js +4 -2
- package/es/provider/locale/tr_TR.d.ts +3 -72
- package/es/provider/locale/tr_TR.js +9 -4
- package/es/provider/locale/uk_UA.d.ts +3 -75
- package/es/provider/locale/uk_UA.js +6 -4
- package/es/provider/locale/uz_UZ.d.ts +3 -72
- package/es/provider/locale/uz_UZ.js +7 -2
- package/es/provider/locale/vi_VN.d.ts +3 -72
- package/es/provider/locale/vi_VN.js +10 -5
- package/es/provider/locale/zh_CN.d.ts +76 -62
- package/es/provider/locale/zh_CN.js +14 -2
- package/es/provider/locale/zh_HK.d.ts +3 -75
- package/es/provider/locale/zh_HK.js +4 -2
- package/es/provider/locale/zh_TW.d.ts +3 -75
- package/es/provider/locale/zh_TW.js +4 -2
- package/es/provider/typing/layoutToken.js +0 -1
- package/es/provider/useStyle/index.d.ts +5 -0
- package/es/provider/useStyle/index.js +30 -10
- package/es/provider/utils/merge.d.ts +22 -1
- package/es/provider/utils/merge.js +38 -19
- package/es/skeleton/components/Descriptions/index.d.ts +2 -2
- package/es/skeleton/components/List/index.d.ts +3 -3
- package/es/table/Store/Provide.d.ts +19 -12
- package/es/table/Store/Provide.js +90 -44
- package/es/table/Table.d.ts +1 -1
- package/es/table/Table.js +101 -75
- package/es/table/TableSearch.js +26 -28
- package/es/table/TableToolbar.d.ts +4 -1
- package/es/table/TableToolbar.js +24 -26
- package/es/table/components/Alert/index.js +9 -5
- package/es/table/components/ColumnSetting/index.d.ts +3 -1
- package/es/table/components/ColumnSetting/index.js +58 -21
- package/es/table/components/DragSortTable/index.js +27 -20
- package/es/table/components/Dropdown/index.d.ts +3 -6
- package/es/table/components/Dropdown/index.js +27 -26
- package/es/table/components/EditableTable/CellEditorTable.d.ts +2 -1
- package/es/table/components/EditableTable/CellEditorTable.js +60 -35
- package/es/table/components/EditableTable/RowEditorTable.d.ts +2 -1
- package/es/table/components/EditableTable/RowEditorTable.js +47 -33
- package/es/table/components/EditableTable/index.d.ts +1 -1
- package/es/table/components/EditableTable/index.js +130 -121
- package/es/table/components/Form/FormRender.d.ts +1 -1
- package/es/table/components/Form/FormRender.js +14 -23
- package/es/table/components/Form/index.d.ts +1 -1
- package/es/table/components/Form/index.js +20 -42
- package/es/table/components/ListToolBar/HeaderMenu.js +7 -8
- package/es/table/components/ListToolBar/index.js +79 -105
- package/es/table/components/ToolBar/DensityIcon.d.ts +3 -3
- package/es/table/components/ToolBar/DensityIcon.js +5 -7
- package/es/table/components/ToolBar/FullscreenIcon.d.ts +2 -2
- package/es/table/components/ToolBar/FullscreenIcon.js +18 -17
- package/es/table/components/ToolBar/index.d.ts +4 -2
- package/es/table/components/ToolBar/index.js +34 -40
- package/es/table/index.d.ts +3 -8
- package/es/table/index.js +2 -3
- package/es/table/typing.d.ts +5 -5
- package/es/table/useFetchData.js +72 -26
- package/es/table/utils/cellRenderToFromItem.d.ts +6 -0
- package/es/table/utils/cellRenderToFromItem.js +52 -27
- package/es/table/utils/columnRender.d.ts +1 -1
- package/es/table/utils/genProColumnToColumn.js +1 -1
- package/es/table/utils/index.d.ts +23 -1
- package/es/table/utils/index.js +59 -1
- package/es/table/utils/useDragSort.d.ts +1 -1
- package/es/table/utils/usePageInfo.js +2 -3
- package/es/utils/components/DropdownFooter/index.d.ts +1 -1
- package/es/utils/components/ErrorBoundary/index.d.ts +1 -1
- package/es/utils/components/InlineErrorFormItem/index.d.ts +2 -1
- package/es/utils/conversionMomentValue/index.d.ts +9 -4
- package/es/utils/conversionMomentValue/index.js +56 -21
- package/es/utils/dateArrayFormatter/index.js +12 -2
- package/es/utils/genCopyable/index.d.ts +1 -1
- package/es/utils/hooks/useUrlSearchParams/index.d.ts +6 -0
- package/es/utils/hooks/useUrlSearchParams/index.js +146 -0
- package/es/utils/index.d.ts +3 -2
- package/es/utils/index.js +4 -3
- package/es/utils/nanoid/index.js +3 -2
- package/es/utils/parseValueToMoment/index.d.ts +6 -1
- package/es/utils/parseValueToMoment/index.js +73 -6
- package/es/utils/proFieldParsingText/index.d.ts +7 -1
- package/es/utils/proFieldParsingText/index.js +8 -5
- package/es/utils/transformKeySubmitValue/index.d.ts +3 -1
- package/es/utils/transformKeySubmitValue/index.js +109 -81
- package/es/utils/typing.d.ts +29 -62
- package/es/utils/typing.js +88 -1
- package/es/utils/useEditableArray/index.d.ts +21 -5
- package/es/utils/useEditableArray/index.js +187 -106
- package/es/utils/useEditableMap/index.d.ts +10 -3
- package/es/utils/useEditableMap/index.js +133 -72
- package/es/utils/useMediaQuery/index.d.ts +29 -36
- package/es/utils/useMediaQuery/index.js +106 -91
- package/es/utils/useMediaQuery/query.d.ts +7 -0
- package/es/utils/useMediaQuery/query.js +33 -15
- package/lib/card/ProCard.d.ts +2 -2
- package/lib/card/ProCard.js +7 -2
- package/lib/card/components/Card/index.js +33 -25
- package/lib/card/components/Card/style.js +44 -14
- package/lib/card/components/CheckCard/Group.d.ts +22 -42
- package/lib/card/components/CheckCard/Group.js +57 -48
- package/lib/card/components/CheckCard/index.d.ts +3 -4
- package/lib/card/components/CheckCard/index.js +18 -6
- package/lib/card/components/CheckCard/style.d.ts +1 -1
- package/lib/card/components/CheckCard/style.js +28 -27
- package/lib/card/components/Loading/style.js +4 -3
- package/lib/card/components/Operation/index.d.ts +1 -1
- package/lib/card/components/Operation/style.js +4 -3
- package/lib/card/components/Statistic/index.d.ts +1 -1
- package/lib/card/components/Statistic/style.d.ts +1 -1
- package/lib/card/components/Statistic/style.js +9 -6
- package/lib/card/components/StatisticCard/style.d.ts +1 -1
- package/lib/card/components/StatisticCard/style.js +5 -5
- package/lib/card/typing.d.ts +1 -1
- package/lib/descriptions/FieldRender.d.ts +16 -0
- package/lib/descriptions/FieldRender.js +142 -0
- package/lib/descriptions/ProDescriptions.d.ts +5 -0
- package/lib/descriptions/ProDescriptions.js +146 -0
- package/lib/descriptions/getDataFromConfig.d.ts +5 -0
- package/lib/descriptions/getDataFromConfig.js +22 -0
- package/lib/descriptions/index.d.ts +6 -98
- package/lib/descriptions/index.js +23 -427
- package/lib/descriptions/resolveValueType.d.ts +6 -0
- package/lib/descriptions/resolveValueType.js +15 -0
- package/lib/descriptions/schemaToDescriptionsItem.d.ts +8 -0
- package/lib/descriptions/schemaToDescriptionsItem.js +95 -0
- package/lib/descriptions/typing.d.ts +70 -0
- package/lib/descriptions/typing.js +12 -0
- package/lib/descriptions/useFetchData.d.ts +13 -12
- package/lib/descriptions/useFetchData.js +21 -12
- package/lib/field/AllProField.d.ts +8 -34
- package/lib/field/AllProField.js +175 -275
- package/lib/field/ProFieldCore.d.ts +23 -0
- package/lib/field/ProFieldCore.js +83 -0
- package/lib/field/PureProField.d.ts +9 -39
- package/lib/field/PureProField.js +60 -112
- package/lib/field/ValueTypeToComponent.d.ts +4 -1
- package/lib/field/ValueTypeToComponent.js +255 -673
- package/lib/field/components/Cascader/FieldCascaderEdit.d.ts +17 -0
- package/lib/field/components/Cascader/FieldCascaderEdit.js +52 -0
- package/lib/field/components/Cascader/FieldCascaderLightEdit.d.ts +17 -0
- package/lib/field/components/Cascader/FieldCascaderLightEdit.js +75 -0
- package/lib/field/components/Cascader/FieldCascaderRead.d.ts +6 -0
- package/lib/field/components/Cascader/FieldCascaderRead.js +26 -0
- package/lib/field/components/Cascader/index.d.ts +7 -13
- package/lib/field/components/Cascader/index.js +39 -74
- package/lib/field/components/Cascader/types.d.ts +8 -0
- package/lib/field/components/Cascader/types.js +5 -0
- package/lib/field/components/Checkbox/FieldCheckboxEdit.d.ts +16 -0
- package/lib/field/components/Checkbox/FieldCheckboxEdit.js +48 -0
- package/lib/field/components/Checkbox/FieldCheckboxRead.d.ts +6 -0
- package/lib/field/components/Checkbox/FieldCheckboxRead.js +42 -0
- package/lib/field/components/Checkbox/index.d.ts +5 -9
- package/lib/field/components/Checkbox/index.js +31 -63
- package/lib/field/components/Checkbox/types.d.ts +6 -0
- package/lib/field/components/Checkbox/types.js +5 -0
- package/lib/field/components/Code/FieldCodeEdit.d.ts +10 -0
- package/lib/field/components/Code/FieldCodeEdit.js +35 -0
- package/lib/field/components/Code/FieldCodeRead.d.ts +14 -0
- package/lib/field/components/Code/FieldCodeRead.js +45 -0
- package/lib/field/components/Code/index.js +23 -65
- package/lib/field/components/Code/utils.d.ts +1 -0
- package/lib/field/components/Code/utils.js +19 -0
- package/lib/field/components/ColorPicker/FieldColorPickerEdit.d.ts +9 -0
- package/lib/field/components/ColorPicker/FieldColorPickerEdit.js +47 -0
- package/lib/field/components/ColorPicker/FieldColorPickerRead.d.ts +9 -0
- package/lib/field/components/ColorPicker/FieldColorPickerRead.js +36 -0
- package/lib/field/components/ColorPicker/index.d.ts +1 -1
- package/lib/field/components/ColorPicker/index.js +12 -63
- package/lib/field/components/DatePicker/FieldDatePickerEdit.d.ts +15 -0
- package/lib/field/components/DatePicker/FieldDatePickerEdit.js +47 -0
- package/lib/field/components/DatePicker/FieldDatePickerLightEdit.d.ts +17 -0
- package/lib/field/components/DatePicker/FieldDatePickerLightEdit.js +70 -0
- package/lib/field/components/DatePicker/FieldDatePickerRead.d.ts +13 -0
- package/lib/field/components/DatePicker/FieldDatePickerRead.js +31 -0
- package/lib/field/components/DatePicker/datePickerUtils.d.ts +3 -0
- package/lib/field/components/DatePicker/datePickerUtils.js +39 -0
- package/lib/field/components/DatePicker/index.d.ts +3 -3
- package/lib/field/components/DatePicker/index.js +39 -90
- package/lib/field/components/Digit/FieldDigitEdit.d.ts +8 -0
- package/lib/field/components/Digit/FieldDigitEdit.js +32 -0
- package/lib/field/components/Digit/FieldDigitRead.d.ts +4 -0
- package/lib/field/components/Digit/FieldDigitRead.js +41 -0
- package/lib/field/components/Digit/index.d.ts +2 -4
- package/lib/field/components/Digit/index.js +24 -102
- package/lib/field/components/Digit/types.d.ts +4 -0
- package/lib/field/components/Digit/types.js +5 -0
- package/lib/field/components/DigitRange/FieldDigitRangeEdit.d.ts +16 -0
- package/lib/field/components/DigitRange/FieldDigitRangeEdit.js +93 -0
- package/lib/field/components/DigitRange/FieldDigitRangeRead.d.ts +4 -0
- package/lib/field/components/DigitRange/FieldDigitRangeRead.js +36 -0
- package/lib/field/components/DigitRange/index.d.ts +2 -8
- package/lib/field/components/DigitRange/index.js +30 -89
- package/lib/field/components/DigitRange/types.d.ts +8 -0
- package/lib/field/components/DigitRange/types.js +5 -0
- package/lib/field/components/FromNow/FieldFromNowEdit.d.ts +12 -0
- package/lib/field/components/FromNow/FieldFromNowEdit.js +39 -0
- package/lib/field/components/FromNow/FieldFromNowRead.d.ts +9 -0
- package/lib/field/components/FromNow/FieldFromNowRead.js +34 -0
- package/lib/field/components/FromNow/index.d.ts +1 -1
- package/lib/field/components/FromNow/index.js +15 -48
- package/lib/field/components/Image/FieldImageEdit.d.ts +8 -0
- package/lib/field/components/Image/FieldImageEdit.js +31 -0
- package/lib/field/components/Image/FieldImageRead.d.ts +4 -0
- package/lib/field/components/Image/FieldImageRead.js +32 -0
- package/lib/field/components/Image/index.d.ts +3 -6
- package/lib/field/components/Image/index.js +25 -34
- package/lib/field/components/Image/types.d.ts +5 -0
- package/lib/field/components/Image/types.js +5 -0
- package/lib/field/components/Money/FieldMoneyEdit.d.ts +13 -0
- package/lib/field/components/Money/FieldMoneyEdit.js +71 -0
- package/lib/field/components/Money/FieldMoneyRead.d.ts +9 -0
- package/lib/field/components/Money/FieldMoneyRead.js +33 -0
- package/lib/field/components/Money/InputNumberPopover.d.ts +11 -0
- package/lib/field/components/Money/InputNumberPopover.js +99 -0
- package/lib/field/components/Money/index.d.ts +2 -69
- package/lib/field/components/Money/index.js +45 -288
- package/lib/field/components/Money/moneyFormat.d.ts +13 -0
- package/lib/field/components/Money/moneyFormat.js +109 -0
- package/lib/field/components/Money/types.d.ts +37 -0
- package/lib/field/components/Money/types.js +5 -0
- package/lib/field/components/Password/FieldPasswordEdit.d.ts +12 -0
- package/lib/field/components/Password/FieldPasswordEdit.js +31 -0
- package/lib/field/components/Password/FieldPasswordRead.d.ts +12 -0
- package/lib/field/components/Password/FieldPasswordRead.js +42 -0
- package/lib/field/components/Password/index.js +22 -41
- package/lib/field/components/Percent/FieldPercentEdit.d.ts +8 -0
- package/lib/field/components/Percent/FieldPercentEdit.js +39 -0
- package/lib/field/components/Percent/FieldPercentRead.d.ts +9 -0
- package/lib/field/components/Percent/FieldPercentRead.js +47 -0
- package/lib/field/components/Percent/index.d.ts +2 -10
- package/lib/field/components/Percent/index.js +24 -62
- package/lib/field/components/Percent/types.d.ts +10 -0
- package/lib/field/components/Percent/types.js +5 -0
- package/lib/field/components/Percent/util.d.ts +1 -1
- package/lib/field/components/Progress/FieldProgressEdit.d.ts +10 -0
- package/lib/field/components/Progress/FieldProgressEdit.js +31 -0
- package/lib/field/components/Progress/FieldProgressRead.d.ts +10 -0
- package/lib/field/components/Progress/FieldProgressRead.js +38 -0
- package/lib/field/components/Progress/index.d.ts +2 -1
- package/lib/field/components/Progress/index.js +26 -59
- package/lib/field/components/Progress/utils.d.ts +1 -0
- package/lib/field/components/Progress/utils.js +18 -0
- package/lib/field/components/Radio/FieldRadioEdit.d.ts +16 -0
- package/lib/field/components/Radio/FieldRadioEdit.js +45 -0
- package/lib/field/components/Radio/FieldRadioRead.d.ts +6 -0
- package/lib/field/components/Radio/FieldRadioRead.js +26 -0
- package/lib/field/components/Radio/index.d.ts +4 -8
- package/lib/field/components/Radio/index.js +32 -46
- package/lib/field/components/Radio/types.d.ts +6 -0
- package/lib/field/components/Radio/types.js +5 -0
- package/lib/field/components/RangePicker/FieldRangePickerEdit.d.ts +15 -0
- package/lib/field/components/RangePicker/FieldRangePickerEdit.js +42 -0
- package/lib/field/components/RangePicker/FieldRangePickerLightEdit.d.ts +17 -0
- package/lib/field/components/RangePicker/FieldRangePickerLightEdit.js +74 -0
- package/lib/field/components/RangePicker/FieldRangePickerRead.d.ts +14 -0
- package/lib/field/components/RangePicker/FieldRangePickerRead.js +35 -0
- package/lib/field/components/RangePicker/index.d.ts +3 -3
- package/lib/field/components/RangePicker/index.js +46 -94
- package/lib/field/components/Rate/FieldRateEdit.d.ts +5 -0
- package/lib/field/components/Rate/FieldRateEdit.js +30 -0
- package/lib/field/components/Rate/FieldRateRead.d.ts +5 -0
- package/lib/field/components/Rate/FieldRateRead.js +34 -0
- package/lib/field/components/Rate/index.js +11 -41
- package/lib/field/components/Second/FieldSecondEdit.d.ts +8 -0
- package/lib/field/components/Second/FieldSecondEdit.js +35 -0
- package/lib/field/components/Second/FieldSecondRead.d.ts +4 -0
- package/lib/field/components/Second/FieldSecondRead.js +30 -0
- package/lib/field/components/Second/index.d.ts +4 -11
- package/lib/field/components/Second/index.js +22 -78
- package/lib/field/components/Second/types.d.ts +6 -0
- package/lib/field/components/Second/types.js +5 -0
- package/lib/field/components/Second/utils.d.ts +4 -0
- package/lib/field/components/Second/utils.js +36 -0
- package/lib/field/components/Segmented/FieldSegmentedEdit.d.ts +13 -0
- package/lib/field/components/Segmented/FieldSegmentedEdit.js +36 -0
- package/lib/field/components/Segmented/FieldSegmentedRead.d.ts +12 -0
- package/lib/field/components/Segmented/FieldSegmentedRead.js +33 -0
- package/lib/field/components/Segmented/index.d.ts +4 -4
- package/lib/field/components/Segmented/index.js +21 -38
- package/lib/field/components/Select/FieldSelectEdit.d.ts +2 -0
- package/lib/field/components/Select/FieldSelectEdit.js +12 -0
- package/lib/field/components/Select/FieldSelectLightEdit.d.ts +17 -0
- package/lib/field/components/Select/FieldSelectLightEdit.js +53 -0
- package/lib/field/components/Select/FieldSelectRead.d.ts +10 -0
- package/lib/field/components/Select/FieldSelectRead.js +28 -0
- package/lib/field/components/Select/FieldSelectSearchEdit.d.ts +17 -0
- package/lib/field/components/Select/FieldSelectSearchEdit.js +57 -0
- package/lib/field/components/Select/LightSelect/index.d.ts +3 -3
- package/lib/field/components/Select/SearchSelect/index.d.ts +0 -8
- package/lib/field/components/Select/SearchSelect/index.js +8 -22
- package/lib/field/components/Select/index.d.ts +6 -28
- package/lib/field/components/Select/index.js +46 -138
- package/lib/field/components/Select/types.d.ts +19 -0
- package/lib/field/components/Select/types.js +5 -0
- package/lib/field/components/Slider/FieldSliderEdit.d.ts +5 -0
- package/lib/field/components/Slider/FieldSliderEdit.js +33 -0
- package/lib/field/components/Slider/FieldSliderRead.d.ts +5 -0
- package/lib/field/components/Slider/FieldSliderRead.js +27 -0
- package/lib/field/components/Slider/index.js +11 -40
- package/lib/field/components/Switch/FieldSwitchEdit.d.ts +12 -0
- package/lib/field/components/Switch/FieldSwitchEdit.js +31 -0
- package/lib/field/components/Switch/FieldSwitchLightEdit.d.ts +12 -0
- package/lib/field/components/Switch/FieldSwitchLightEdit.js +48 -0
- package/lib/field/components/Switch/FieldSwitchRead.d.ts +10 -0
- package/lib/field/components/Switch/FieldSwitchRead.js +27 -0
- package/lib/field/components/Switch/index.d.ts +1 -1
- package/lib/field/components/Switch/index.js +29 -56
- package/lib/field/components/Text/FieldTextEdit.d.ts +12 -0
- package/lib/field/components/Text/FieldTextEdit.js +34 -0
- package/lib/field/components/Text/FieldTextRead.d.ts +10 -0
- package/lib/field/components/Text/FieldTextRead.js +32 -0
- package/lib/field/components/Text/index.js +24 -40
- package/lib/field/components/TextArea/FieldTextAreaEdit.d.ts +10 -0
- package/lib/field/components/TextArea/FieldTextAreaEdit.js +37 -0
- package/lib/field/components/TextArea/FieldTextAreaRead.d.ts +7 -0
- package/lib/field/components/TextArea/FieldTextAreaRead.js +31 -0
- package/lib/field/components/TextArea/index.js +13 -44
- package/lib/field/components/TimePicker/FieldTimePickerEdit.d.ts +12 -0
- package/lib/field/components/TimePicker/FieldTimePickerEdit.js +40 -0
- package/lib/field/components/TimePicker/FieldTimePickerLightEdit.d.ts +16 -0
- package/lib/field/components/TimePicker/FieldTimePickerLightEdit.js +69 -0
- package/lib/field/components/TimePicker/FieldTimePickerRead.d.ts +11 -0
- package/lib/field/components/TimePicker/FieldTimePickerRead.js +33 -0
- package/lib/field/components/TimePicker/FieldTimeRangePickerEdit.d.ts +12 -0
- package/lib/field/components/TimePicker/FieldTimeRangePickerEdit.js +37 -0
- package/lib/field/components/TimePicker/FieldTimeRangePickerLightEdit.d.ts +16 -0
- package/lib/field/components/TimePicker/FieldTimeRangePickerLightEdit.js +70 -0
- package/lib/field/components/TimePicker/FieldTimeRangePickerRead.d.ts +12 -0
- package/lib/field/components/TimePicker/FieldTimeRangePickerRead.js +35 -0
- package/lib/field/components/TimePicker/index.d.ts +3 -3
- package/lib/field/components/TimePicker/index.js +76 -150
- package/lib/field/components/TreeSelect/FieldTreeSelectEdit.d.ts +38 -0
- package/lib/field/components/TreeSelect/FieldTreeSelectEdit.js +93 -0
- package/lib/field/components/TreeSelect/FieldTreeSelectLightEdit.d.ts +35 -0
- package/lib/field/components/TreeSelect/FieldTreeSelectLightEdit.js +126 -0
- package/lib/field/components/TreeSelect/FieldTreeSelectRead.d.ts +7 -0
- package/lib/field/components/TreeSelect/FieldTreeSelectRead.js +29 -0
- package/lib/field/components/TreeSelect/index.d.ts +6 -13
- package/lib/field/components/TreeSelect/index.js +49 -103
- package/lib/field/components/TreeSelect/types.d.ts +9 -0
- package/lib/field/components/TreeSelect/types.js +5 -0
- package/lib/field/initDayjs.d.ts +1 -0
- package/lib/field/initDayjs.js +16 -0
- package/lib/field/internal/ProFieldLightWrapper.d.ts +16 -0
- package/lib/field/{FieldHOC/index.js → internal/ProFieldLightWrapper.js} +21 -5
- package/lib/field/internal/fieldMode.d.ts +14 -0
- package/lib/field/internal/fieldMode.js +29 -0
- package/lib/field/types.d.ts +30 -0
- package/lib/field/types.js +5 -0
- package/lib/form/BaseForm/BaseForm.d.ts +2 -2
- package/lib/form/BaseForm/BaseForm.js +114 -255
- package/lib/form/BaseForm/Submitter/index.d.ts +5 -6
- package/lib/form/BaseForm/Submitter/index.js +27 -29
- package/lib/form/BaseForm/index.d.ts +0 -1
- package/lib/form/BaseForm/index.js +0 -11
- package/lib/form/BaseForm/useUrlSync.d.ts +42 -0
- package/lib/form/BaseForm/useUrlSync.js +100 -0
- package/lib/form/FieldContext.d.ts +4 -3
- package/lib/form/components/Checkbox/index.js +0 -20
- package/lib/form/components/ColorPicker/index.d.ts +3 -22
- package/lib/form/components/ColorPicker/index.js +2 -1
- package/lib/form/components/DatePicker/BaseDatePicker.js +29 -1
- package/lib/form/components/DateRangePicker/BaseDateRanger.js +30 -2
- package/lib/form/components/DateRangePicker/DateMonthRangePicker.js +0 -6
- package/lib/form/components/DateRangePicker/DateQuarterRangePicker.js +0 -6
- package/lib/form/components/DateRangePicker/DateTimeRangePicker.js +0 -6
- package/lib/form/components/DateRangePicker/DateWeekRangePicker.js +0 -6
- package/lib/form/components/DateRangePicker/DateYearRangePicker.d.ts +1 -1
- package/lib/form/components/DateRangePicker/DateYearRangePicker.js +1 -7
- package/lib/form/components/DateRangePicker/index.js +0 -6
- package/lib/form/components/Dependency/index.d.ts +1 -1
- package/lib/form/components/Digit/DigitRange.d.ts +1 -1
- package/lib/form/components/Field/index.js +1 -1
- package/lib/form/components/FieldSet/index.d.ts +0 -2
- package/lib/form/components/FieldSet/index.js +0 -1
- package/lib/form/components/FormItem/FormItemRender/index.d.ts +1 -2
- package/lib/form/components/FormItem/index.d.ts +4 -5
- package/lib/form/components/FormItem/index.js +81 -98
- package/lib/form/components/FormItem/warpField.js +37 -23
- package/lib/form/components/List/ListContainer.js +16 -35
- package/lib/form/components/List/ListItem.d.ts +2 -2
- package/lib/form/components/List/ListItem.js +90 -90
- package/lib/form/components/List/index.js +8 -8
- package/lib/form/components/SchemaForm/index.d.ts +2 -1
- package/lib/form/components/SchemaForm/index.js +2 -2
- package/lib/form/components/SchemaForm/layoutType/StepsForm.d.ts +1 -1
- package/lib/form/components/SchemaForm/valueType/dependency.d.ts +2 -1
- package/lib/form/components/SchemaForm/valueType/divider.d.ts +2 -1
- package/lib/form/components/Select/index.d.ts +0 -2
- package/lib/form/components/UploadButton/index.d.ts +1 -1
- package/lib/form/index.d.ts +5 -3
- package/lib/form/index.js +11 -3
- package/lib/form/layouts/DrawerForm/index.js +53 -169
- package/{es/form/BaseForm → lib/form/layouts/LightFilter}/LightWrapper/index.d.ts +1 -1
- package/lib/form/{BaseForm → layouts/LightFilter}/LightWrapper/index.js +38 -20
- package/lib/form/{BaseForm → layouts/LightFilter}/LightWrapper/style.d.ts +1 -1
- package/lib/form/{BaseForm → layouts/LightFilter}/LightWrapper/style.js +1 -1
- package/lib/form/layouts/LightFilter/index.d.ts +7 -33
- package/lib/form/layouts/LightFilter/index.js +16 -15
- package/lib/form/layouts/LightFilter/lightFilterFieldComponents.d.ts +104 -0
- package/lib/form/layouts/LightFilter/lightFilterFieldComponents.js +76 -0
- package/lib/form/layouts/LightFilter/style.js +2 -3
- package/lib/form/layouts/LoginForm/index.js +7 -27
- package/lib/form/layouts/LoginFormPage/index.js +7 -27
- package/lib/form/layouts/ModalForm/index.d.ts +1 -1
- package/lib/form/layouts/ModalForm/index.js +34 -140
- package/lib/form/layouts/ProForm/index.d.ts +3 -3
- package/lib/form/layouts/ProForm/index.js +6 -7
- package/lib/form/layouts/QueryFilter/Actions.js +1 -12
- package/lib/form/layouts/QueryFilter/index.js +26 -99
- package/lib/form/layouts/QueryFilter/processQueryFilterItems.d.ts +63 -0
- package/lib/form/layouts/QueryFilter/processQueryFilterItems.js +133 -0
- package/lib/form/layouts/StepsForm/StepForm.d.ts +2 -1
- package/lib/form/layouts/StepsForm/index.d.ts +60 -1
- package/lib/form/layouts/StepsForm/index.js +99 -38
- package/lib/form/layouts/_shared/LoginFormHeader.d.ts +16 -0
- package/lib/form/layouts/_shared/LoginFormHeader.js +52 -0
- package/lib/form/layouts/_shared/useOverlayForm.d.ts +60 -0
- package/lib/form/layouts/_shared/useOverlayForm.js +160 -0
- package/lib/form/layouts/index.d.ts +3 -2
- package/lib/form/layouts/index.js +9 -2
- package/lib/form/typing.d.ts +4 -1
- package/lib/form/typing.js +8 -1
- package/lib/layout/assert/Logo.d.ts +2 -1
- package/lib/layout/components/AppsLogoComponents/AppsLogo.d.ts +2 -1
- package/lib/layout/components/Help/index.d.ts +1 -1
- package/lib/layout/components/PageContainer/index.d.ts +1 -1
- package/lib/layout/components/PageHeader/style/index.d.ts +1 -1
- package/lib/layout/components/SettingDrawer/LayoutChange.d.ts +1 -1
- package/lib/layout/components/SettingDrawer/icon/group.d.ts +2 -1
- package/lib/layout/components/SettingDrawer/icon/sub.d.ts +2 -1
- package/lib/layout/components/SettingDrawer/index.js +1 -2
- package/lib/layout/components/SiderMenu/Arrow.d.ts +2 -1
- package/lib/list/Item.d.ts +3 -2
- package/lib/list/Item.js +6 -4
- package/lib/list/ListView.d.ts +2 -3
- package/lib/list/ListView.js +79 -67
- package/lib/list/ProListBase.d.ts +4 -0
- package/lib/list/ProListBase.js +6 -2
- package/lib/list/index.d.ts +4 -5
- package/lib/list/index.js +35 -35
- package/lib/provider/index.d.ts +7 -5
- package/lib/provider/index.js +55 -15
- package/lib/provider/intl.d.ts +47 -69
- package/lib/provider/intl.js +129 -85
- package/lib/provider/locale/ar_EG.d.ts +3 -72
- package/lib/provider/locale/ar_EG.js +8 -3
- package/lib/provider/locale/ca_ES.d.ts +3 -72
- package/lib/provider/locale/ca_ES.js +7 -2
- package/lib/provider/locale/cs_CZ.d.ts +3 -75
- package/lib/provider/locale/cs_CZ.js +4 -2
- package/lib/provider/locale/de_DE.d.ts +3 -72
- package/lib/provider/locale/de_DE.js +8 -3
- package/lib/provider/locale/en_GB.d.ts +3 -74
- package/lib/provider/locale/en_GB.js +5 -2
- package/lib/provider/locale/en_US.d.ts +3 -76
- package/lib/provider/locale/en_US.js +3 -2
- package/lib/provider/locale/es_ES.d.ts +3 -72
- package/lib/provider/locale/es_ES.js +7 -2
- package/lib/provider/locale/fa_IR.d.ts +3 -72
- package/lib/provider/locale/fa_IR.js +8 -3
- package/lib/provider/locale/fr_FR.d.ts +3 -72
- package/lib/provider/locale/fr_FR.js +11 -6
- package/lib/provider/locale/he_IL.d.ts +3 -75
- package/lib/provider/locale/he_IL.js +4 -2
- package/lib/provider/locale/hr_HR.d.ts +3 -72
- package/lib/provider/locale/hr_HR.js +7 -2
- package/lib/provider/locale/id_ID.d.ts +3 -72
- package/lib/provider/locale/id_ID.js +7 -2
- package/lib/provider/locale/it_IT.d.ts +3 -72
- package/lib/provider/locale/it_IT.js +13 -8
- package/lib/provider/locale/ja_JP.d.ts +3 -72
- package/lib/provider/locale/ja_JP.js +8 -3
- package/lib/provider/locale/ko_KR.d.ts +3 -72
- package/lib/provider/locale/ko_KR.js +9 -4
- package/lib/provider/locale/mn_MN.d.ts +3 -72
- package/lib/provider/locale/mn_MN.js +7 -2
- package/lib/provider/locale/ms_MY.d.ts +3 -72
- package/lib/provider/locale/ms_MY.js +10 -5
- package/lib/provider/locale/nl_NL.d.ts +3 -75
- package/lib/provider/locale/nl_NL.js +4 -2
- package/lib/provider/locale/pl_PL.d.ts +3 -72
- package/lib/provider/locale/pl_PL.js +12 -7
- package/lib/provider/locale/pt_BR.d.ts +3 -72
- package/lib/provider/locale/pt_BR.js +7 -2
- package/lib/provider/locale/ro_RO.d.ts +3 -75
- package/lib/provider/locale/ro_RO.js +4 -2
- package/lib/provider/locale/ru_RU.d.ts +3 -72
- package/lib/provider/locale/ru_RU.js +9 -4
- package/lib/provider/locale/sk_SK.d.ts +3 -75
- package/lib/provider/locale/sk_SK.js +4 -2
- package/lib/provider/locale/sr_RS.d.ts +3 -72
- package/lib/provider/locale/sr_RS.js +9 -4
- package/lib/provider/locale/sv_SE.d.ts +3 -75
- package/lib/provider/locale/sv_SE.js +4 -2
- package/lib/provider/locale/th_TH.d.ts +3 -75
- package/lib/provider/locale/th_TH.js +4 -2
- package/lib/provider/locale/tr_TR.d.ts +3 -72
- package/lib/provider/locale/tr_TR.js +9 -4
- package/lib/provider/locale/uk_UA.d.ts +3 -75
- package/lib/provider/locale/uk_UA.js +6 -4
- package/lib/provider/locale/uz_UZ.d.ts +3 -72
- package/lib/provider/locale/uz_UZ.js +7 -2
- package/lib/provider/locale/vi_VN.d.ts +3 -72
- package/lib/provider/locale/vi_VN.js +10 -5
- package/lib/provider/locale/zh_CN.d.ts +76 -62
- package/lib/provider/locale/zh_CN.js +13 -2
- package/lib/provider/locale/zh_HK.d.ts +3 -75
- package/lib/provider/locale/zh_HK.js +4 -2
- package/lib/provider/locale/zh_TW.d.ts +3 -75
- package/lib/provider/locale/zh_TW.js +4 -2
- package/lib/provider/typing/layoutToken.js +0 -1
- package/lib/provider/useStyle/index.d.ts +5 -0
- package/lib/provider/useStyle/index.js +29 -9
- package/lib/provider/utils/merge.d.ts +22 -1
- package/lib/provider/utils/merge.js +39 -20
- package/lib/skeleton/components/Descriptions/index.d.ts +2 -2
- package/lib/skeleton/components/List/index.d.ts +3 -3
- package/lib/table/Store/Provide.d.ts +19 -12
- package/lib/table/Store/Provide.js +90 -44
- package/lib/table/Table.d.ts +1 -1
- package/lib/table/Table.js +100 -74
- package/lib/table/TableSearch.js +26 -29
- package/lib/table/TableToolbar.d.ts +4 -1
- package/lib/table/TableToolbar.js +24 -27
- package/lib/table/components/Alert/index.js +9 -5
- package/lib/table/components/ColumnSetting/index.d.ts +3 -1
- package/lib/table/components/ColumnSetting/index.js +57 -20
- package/lib/table/components/DragSortTable/index.js +26 -19
- package/lib/table/components/Dropdown/index.d.ts +3 -6
- package/lib/table/components/Dropdown/index.js +27 -26
- package/lib/table/components/EditableTable/CellEditorTable.d.ts +2 -1
- package/lib/table/components/EditableTable/CellEditorTable.js +59 -35
- package/lib/table/components/EditableTable/RowEditorTable.d.ts +2 -1
- package/lib/table/components/EditableTable/RowEditorTable.js +48 -33
- package/lib/table/components/EditableTable/index.d.ts +1 -1
- package/lib/table/components/EditableTable/index.js +129 -120
- package/lib/table/components/Form/FormRender.d.ts +1 -1
- package/lib/table/components/Form/FormRender.js +14 -23
- package/lib/table/components/Form/index.d.ts +1 -1
- package/lib/table/components/Form/index.js +20 -42
- package/lib/table/components/ListToolBar/HeaderMenu.js +6 -7
- package/lib/table/components/ListToolBar/index.js +78 -104
- package/lib/table/components/ToolBar/DensityIcon.d.ts +3 -3
- package/lib/table/components/ToolBar/DensityIcon.js +5 -7
- package/lib/table/components/ToolBar/FullscreenIcon.d.ts +2 -2
- package/lib/table/components/ToolBar/FullscreenIcon.js +18 -17
- package/lib/table/components/ToolBar/index.d.ts +4 -2
- package/lib/table/components/ToolBar/index.js +33 -39
- package/lib/table/index.d.ts +3 -8
- package/lib/table/index.js +3 -112
- package/lib/table/typing.d.ts +5 -5
- package/lib/table/useFetchData.js +71 -25
- package/lib/table/utils/cellRenderToFromItem.d.ts +6 -0
- package/lib/table/utils/cellRenderToFromItem.js +54 -28
- package/lib/table/utils/columnRender.d.ts +1 -1
- package/lib/table/utils/genProColumnToColumn.js +1 -1
- package/lib/table/utils/index.d.ts +23 -1
- package/lib/table/utils/index.js +62 -1
- package/lib/table/utils/useDragSort.d.ts +1 -1
- package/lib/table/utils/usePageInfo.js +2 -3
- package/lib/utils/components/DropdownFooter/index.d.ts +1 -1
- package/lib/utils/components/ErrorBoundary/index.d.ts +1 -1
- package/lib/utils/components/InlineErrorFormItem/index.d.ts +2 -1
- package/lib/utils/conversionMomentValue/index.d.ts +9 -4
- package/lib/utils/conversionMomentValue/index.js +57 -21
- package/lib/utils/dateArrayFormatter/index.js +12 -2
- package/lib/utils/genCopyable/index.d.ts +1 -1
- package/lib/utils/hooks/useUrlSearchParams/index.d.ts +6 -0
- package/lib/utils/hooks/useUrlSearchParams/index.js +151 -0
- package/lib/utils/index.d.ts +3 -2
- package/lib/utils/index.js +15 -0
- package/lib/utils/nanoid/index.js +3 -2
- package/lib/utils/parseValueToMoment/index.d.ts +6 -1
- package/lib/utils/parseValueToMoment/index.js +74 -6
- package/lib/utils/proFieldParsingText/index.d.ts +7 -1
- package/lib/utils/proFieldParsingText/index.js +8 -5
- package/lib/utils/transformKeySubmitValue/index.d.ts +3 -1
- package/lib/utils/transformKeySubmitValue/index.js +108 -80
- package/lib/utils/typing.d.ts +29 -62
- package/lib/utils/typing.js +90 -1
- package/lib/utils/useEditableArray/index.d.ts +21 -5
- package/lib/utils/useEditableArray/index.js +189 -107
- package/lib/utils/useEditableMap/index.d.ts +10 -3
- package/lib/utils/useEditableMap/index.js +133 -71
- package/lib/utils/useMediaQuery/index.d.ts +29 -36
- package/lib/utils/useMediaQuery/index.js +104 -90
- package/lib/utils/useMediaQuery/query.d.ts +7 -0
- package/lib/utils/useMediaQuery/query.js +32 -15
- package/package.json +45 -54
- package/es/field/FieldHOC/index.d.ts +0 -7
- package/lib/field/FieldHOC/index.d.ts +0 -7
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { get, set as namePathSet, omit, set, useControlledState, warning } from '@rc-component/util';
|
|
2
|
-
import { useUrlSearchParams } from '@umijs/use-params';
|
|
3
2
|
import { ConfigProvider, Form, Spin } from 'antd';
|
|
4
3
|
import { clsx } from 'clsx';
|
|
5
|
-
import React, {
|
|
4
|
+
import React, { useContext, useEffect, useImperativeHandle, useMemo, useRef } from 'react';
|
|
6
5
|
import { ProConfigProvider } from "../../provider";
|
|
7
|
-
import { autoFocusToFirstChild, conversionMomentValue, isDeepEqualReact, nanoid, ProFormContext,
|
|
6
|
+
import { autoFocusToFirstChild, conversionMomentValue, isDeepEqualReact, nanoid, ProFormContext, transformKeySubmitValue, useFetchData, usePrevious, useRefFunction, useStyle } from "../../utils";
|
|
7
|
+
import { useUrlSync } from "./useUrlSync";
|
|
8
8
|
import { FormListContext } from "../components/List";
|
|
9
9
|
import FieldContext from "../FieldContext";
|
|
10
10
|
import { GridContext, useGridHelpers } from "../helpers";
|
|
@@ -18,13 +18,6 @@ const {
|
|
|
18
18
|
|
|
19
19
|
// Define ProFormInstance and ProFormRef
|
|
20
20
|
|
|
21
|
-
const genParams = (syncUrl, params, type) => {
|
|
22
|
-
if (syncUrl === true) {
|
|
23
|
-
return params;
|
|
24
|
-
}
|
|
25
|
-
return runFunction(syncUrl, params, type);
|
|
26
|
-
};
|
|
27
|
-
|
|
28
21
|
/**
|
|
29
22
|
* It takes a name path and converts it to an array.
|
|
30
23
|
* @param {NamePath} name - The name of the form.
|
|
@@ -39,6 +32,61 @@ const covertFormName = name => {
|
|
|
39
32
|
return [name];
|
|
40
33
|
};
|
|
41
34
|
const defaultExtraUrlParams = {};
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* 构建 ProForm 格式化方法集合,供 formatValues useMemo 与 useImperativeHandle 共用,
|
|
38
|
+
* 消除两处完全相同的 ~80 行重复实现。
|
|
39
|
+
*/
|
|
40
|
+
function buildFormatValues(getFormInstance, transformKey, omitNil) {
|
|
41
|
+
return {
|
|
42
|
+
getFieldsFormatValue: (allData, omitNilParam) => {
|
|
43
|
+
const instance = getFormInstance();
|
|
44
|
+
if (!instance) return {};
|
|
45
|
+
const values = instance.getFieldsValue(allData);
|
|
46
|
+
return transformKey(values, omitNilParam !== undefined ? omitNilParam : omitNil);
|
|
47
|
+
},
|
|
48
|
+
getFieldFormatValue: (paramsNameList = [], omitNilParam) => {
|
|
49
|
+
const instance = getFormInstance();
|
|
50
|
+
if (!instance) return undefined;
|
|
51
|
+
const nameList = covertFormName(paramsNameList);
|
|
52
|
+
if (!nameList) throw new Error('nameList is require');
|
|
53
|
+
const value = instance.getFieldValue(nameList);
|
|
54
|
+
const obj = nameList ? set({}, nameList, value) : value;
|
|
55
|
+
// transformKey 会将 keys 重新和 nameList 拼接,所以要将 nameList 的首个元素弹出
|
|
56
|
+
const newNameList = [...nameList];
|
|
57
|
+
newNameList.shift();
|
|
58
|
+
const transformed = transformKey(obj, omitNilParam !== undefined ? omitNilParam : omitNil, newNameList);
|
|
59
|
+
const result = get(transformed, nameList);
|
|
60
|
+
// 如果结果是对象,返回对象的值
|
|
61
|
+
if (result && typeof result === 'object' && !Array.isArray(result)) {
|
|
62
|
+
const objValue = Object.values(result)[0];
|
|
63
|
+
return objValue;
|
|
64
|
+
}
|
|
65
|
+
return result;
|
|
66
|
+
},
|
|
67
|
+
getFieldFormatValueObject: (paramsNameList, omitNilParam) => {
|
|
68
|
+
const instance = getFormInstance();
|
|
69
|
+
if (!instance) return {};
|
|
70
|
+
const nameList = covertFormName(paramsNameList);
|
|
71
|
+
const value = instance.getFieldValue(nameList);
|
|
72
|
+
const obj = nameList ? set({}, nameList, value) : value;
|
|
73
|
+
// 与 getFieldFormatValue 一致:弹出 nameList 首段再交给 transformKey,
|
|
74
|
+
// 否则 conversionMomentValue 会得到重复的 parentPath(如可编辑表格行 key),
|
|
75
|
+
// fieldsValueType 匹配失败且极端情况下日期字段无法格式化为 string/number。
|
|
76
|
+
const newNameList = nameList ? [...nameList] : [];
|
|
77
|
+
newNameList.shift();
|
|
78
|
+
return transformKey(obj, omitNilParam !== undefined ? omitNilParam : omitNil, newNameList);
|
|
79
|
+
},
|
|
80
|
+
validateFieldsReturnFormatValue: async (nameList, omitNilParam) => {
|
|
81
|
+
const instance = getFormInstance();
|
|
82
|
+
if (!instance) return {};
|
|
83
|
+
if (!Array.isArray(nameList) && nameList) throw new Error('nameList must be array');
|
|
84
|
+
const values = await instance.validateFields(nameList);
|
|
85
|
+
const transformedKey = transformKey(values, omitNilParam !== undefined ? omitNilParam : omitNil);
|
|
86
|
+
return transformedKey ?? {};
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
}
|
|
42
90
|
function BaseFormComponents(props) {
|
|
43
91
|
const {
|
|
44
92
|
children,
|
|
@@ -55,7 +103,7 @@ function BaseFormComponents(props) {
|
|
|
55
103
|
formComponentType,
|
|
56
104
|
extraUrlParams = defaultExtraUrlParams,
|
|
57
105
|
syncToUrl,
|
|
58
|
-
|
|
106
|
+
onUrlSyncReset,
|
|
59
107
|
onReset,
|
|
60
108
|
omitNil = true,
|
|
61
109
|
isKeyPressSubmit,
|
|
@@ -76,8 +124,8 @@ function BaseFormComponents(props) {
|
|
|
76
124
|
componentSize: 'middle'
|
|
77
125
|
};
|
|
78
126
|
|
|
79
|
-
/**
|
|
80
|
-
const
|
|
127
|
+
/** 内部持有当前 FormInstance,供 useImperativeHandle 和 submitter 使用 */
|
|
128
|
+
const formInstanceRef = useRef(form || formInstance);
|
|
81
129
|
|
|
82
130
|
/**
|
|
83
131
|
* 获取布局
|
|
@@ -89,146 +137,38 @@ function BaseFormComponents(props) {
|
|
|
89
137
|
rowProps
|
|
90
138
|
});
|
|
91
139
|
const getFormInstance = useRefFunction(() => formInstance);
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
*
|
|
99
|
-
* @example getFieldsFormatValue(true) ->返回所有数据,即使没有被 form 托管的
|
|
100
|
-
*/
|
|
101
|
-
getFieldsFormatValue: (allData, omitNilParam) => {
|
|
102
|
-
const formInstance = getFormInstance();
|
|
103
|
-
if (!formInstance) {
|
|
104
|
-
return {};
|
|
105
|
-
}
|
|
106
|
-
const values = formInstance.getFieldsValue(allData);
|
|
107
|
-
return transformKey(values, omitNilParam !== undefined ? omitNilParam : omitNil);
|
|
108
|
-
},
|
|
109
|
-
/**
|
|
110
|
-
* 获取被 ProForm 格式化后的单个数据
|
|
111
|
-
* @param nameList (string|number)[]
|
|
112
|
-
* @param omitNilParam boolean
|
|
113
|
-
* @returns T
|
|
114
|
-
*
|
|
115
|
-
* @example {a:{b:value}} -> getFieldFormatValue(['a', 'b']) -> value
|
|
116
|
-
*/
|
|
117
|
-
/** 获取格式化之后的单个数据 */
|
|
118
|
-
getFieldFormatValue: (paramsNameList = [], omitNilParam) => {
|
|
119
|
-
const formInstance = getFormInstance();
|
|
120
|
-
if (!formInstance) {
|
|
121
|
-
return undefined;
|
|
122
|
-
}
|
|
123
|
-
const nameList = covertFormName(paramsNameList);
|
|
124
|
-
if (!nameList) throw new Error('nameList is require');
|
|
125
|
-
const value = formInstance.getFieldValue(nameList);
|
|
126
|
-
const obj = nameList ? set({}, nameList, value) : value;
|
|
127
|
-
//transformKey会将keys重新和nameList拼接,所以这里要将nameList的首个元素弹出
|
|
128
|
-
const newNameList = [...nameList];
|
|
129
|
-
newNameList.shift();
|
|
130
|
-
const transformed = transformKey(obj, omitNilParam !== undefined ? omitNilParam : omitNil, newNameList);
|
|
131
|
-
const result = get(transformed, nameList);
|
|
132
|
-
// 如果结果是对象,返回对象的值
|
|
133
|
-
if (result && typeof result === 'object' && !Array.isArray(result)) {
|
|
134
|
-
const objValue = Object.values(result)[0];
|
|
135
|
-
// 如果对象的值是数组,返回数组
|
|
136
|
-
if (Array.isArray(objValue)) {
|
|
137
|
-
return objValue;
|
|
138
|
-
}
|
|
139
|
-
return objValue;
|
|
140
|
-
}
|
|
141
|
-
return result;
|
|
142
|
-
},
|
|
143
|
-
/**
|
|
144
|
-
* 获取被 ProForm 格式化后的单个数据, 包含他的 name
|
|
145
|
-
* @param nameList (string|number)[]
|
|
146
|
-
* @param omitNilParam boolean
|
|
147
|
-
* @returns T
|
|
148
|
-
*
|
|
149
|
-
* @example {a:{b:value}} -> getFieldFormatValueObject(['a', 'b']) -> {a:{b:value}}
|
|
150
|
-
*/
|
|
151
|
-
/** 获取格式化之后的单个数据 */
|
|
152
|
-
getFieldFormatValueObject: (paramsNameList, omitNilParam) => {
|
|
153
|
-
const formInstance = getFormInstance();
|
|
154
|
-
if (!formInstance) {
|
|
155
|
-
return {};
|
|
156
|
-
}
|
|
157
|
-
const nameList = covertFormName(paramsNameList);
|
|
158
|
-
const value = formInstance.getFieldValue(nameList);
|
|
159
|
-
const obj = nameList ? set({}, nameList, value) : value;
|
|
160
|
-
return transformKey(obj, omitNilParam !== undefined ? omitNilParam : omitNil, nameList);
|
|
161
|
-
},
|
|
162
|
-
/**
|
|
163
|
-
/**
|
|
164
|
-
*验字段后返回格式化之后的所有数据
|
|
165
|
-
* @param nameList (string|number)[]
|
|
166
|
-
* @param omitNilParam boolean
|
|
167
|
-
* @returns T
|
|
168
|
-
*
|
|
169
|
-
* @example validateFieldsReturnFormatValue -> {a:{b:value}}
|
|
170
|
-
*/
|
|
171
|
-
validateFieldsReturnFormatValue: async (nameList, omitNilParam) => {
|
|
172
|
-
const formInstance = getFormInstance();
|
|
173
|
-
if (!formInstance) {
|
|
174
|
-
return {};
|
|
175
|
-
}
|
|
176
|
-
if (!Array.isArray(nameList) && nameList) throw new Error('nameList must be array');
|
|
177
|
-
const values = await formInstance.validateFields(nameList);
|
|
178
|
-
const transformedKey = transformKey(values, omitNilParam !== undefined ? omitNilParam : omitNil);
|
|
179
|
-
return transformedKey ? transformedKey : {};
|
|
140
|
+
|
|
141
|
+
// 消除 formatValues useMemo 与 useImperativeHandle 里的重复实现,统一由 buildFormatValues 生成
|
|
142
|
+
const formatValues = useMemo(() => buildFormatValues(getFormInstance, transformKey, omitNil), [omitNil, transformKey, getFormInstance]);
|
|
143
|
+
const items = React.Children.toArray(children).map((item, index) => {
|
|
144
|
+
if (index === 0 && /*#__PURE__*/React.isValidElement(item) && autoFocusFirstInput) {
|
|
145
|
+
return autoFocusToFirstChild(item, autoFocusFirstInput);
|
|
180
146
|
}
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
return React.Children.toArray(children).map((item, index) => {
|
|
184
|
-
if (index === 0 && /*#__PURE__*/React.isValidElement(item) && autoFocusFirstInput) {
|
|
185
|
-
return autoFocusToFirstChild(item, autoFocusFirstInput);
|
|
186
|
-
}
|
|
187
|
-
return item;
|
|
188
|
-
});
|
|
189
|
-
}, [autoFocusFirstInput, children]);
|
|
147
|
+
return item;
|
|
148
|
+
});
|
|
190
149
|
|
|
191
150
|
/** 计算 props 的对象 */
|
|
192
|
-
const submitterProps =
|
|
151
|
+
const submitterProps = typeof submitter === 'boolean' || !submitter ? {} : submitter;
|
|
193
152
|
|
|
194
153
|
/** 渲染提交按钮与重置按钮 */
|
|
195
|
-
const submitterNode =
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
onReset
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
return {
|
|
208
|
-
...pre,
|
|
209
|
-
[next]: finalValues[next] || undefined
|
|
210
|
-
};
|
|
211
|
-
}, extraUrlParams);
|
|
212
|
-
|
|
213
|
-
/** 在同步到 url 上时对参数进行转化 */
|
|
214
|
-
onUrlSearchChange(genParams(syncToUrl, params || {}, 'set'));
|
|
215
|
-
}
|
|
216
|
-
},
|
|
217
|
-
submitButtonProps: {
|
|
218
|
-
loading,
|
|
219
|
-
...submitterProps.submitButtonProps
|
|
220
|
-
}
|
|
221
|
-
}, "submitter");
|
|
222
|
-
}, [submitter, submitterProps, loading, transformKey, omitNil, onReset, syncToUrl, extraUrlParams, onUrlSearchChange]);
|
|
223
|
-
const content = useMemo(() => {
|
|
224
|
-
const wrapItems = grid ? /*#__PURE__*/_jsx(RowWrapper, {
|
|
225
|
-
children: items
|
|
226
|
-
}) : items;
|
|
227
|
-
if (contentRender) {
|
|
228
|
-
return contentRender(wrapItems, submitterNode, formRef.current);
|
|
154
|
+
const submitterNode = submitter === false ? undefined : /*#__PURE__*/_jsx(Submitter, {
|
|
155
|
+
...submitterProps,
|
|
156
|
+
onReset: () => {
|
|
157
|
+
const finalValues = transformKey(formInstanceRef.current?.getFieldsValue(), omitNil);
|
|
158
|
+
submitterProps?.onReset?.(finalValues);
|
|
159
|
+
onReset?.(finalValues);
|
|
160
|
+
// 如果 syncToUrl,清空 URL 上对应的参数
|
|
161
|
+
onUrlSyncReset(finalValues, extraUrlParams);
|
|
162
|
+
},
|
|
163
|
+
submitButtonProps: {
|
|
164
|
+
loading,
|
|
165
|
+
...submitterProps.submitButtonProps
|
|
229
166
|
}
|
|
230
|
-
|
|
231
|
-
|
|
167
|
+
}, "submitter");
|
|
168
|
+
const wrapItems = grid ? /*#__PURE__*/_jsx(RowWrapper, {
|
|
169
|
+
children: items
|
|
170
|
+
}) : items;
|
|
171
|
+
const content = contentRender ? contentRender(wrapItems, submitterNode, formInstanceRef.current) : wrapItems;
|
|
232
172
|
const preInitialValues = usePrevious(props.initialValues);
|
|
233
173
|
|
|
234
174
|
// 提示一个 initialValues ,问的人实在是太多了
|
|
@@ -239,76 +179,22 @@ function BaseFormComponents(props) {
|
|
|
239
179
|
noteOnce(isEqual, `The initialValues only take effect when the form is initialized, if you need to load asynchronously recommended request, or the initialValues ? <Form/> : null `);
|
|
240
180
|
}, [props.initialValues]);
|
|
241
181
|
|
|
242
|
-
// 初始化给一个默认的 form
|
|
243
|
-
useImperativeHandle(propsFormRef, () => {
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
const formInstance = formRef.current;
|
|
248
|
-
if (!formInstance) {
|
|
249
|
-
return {};
|
|
250
|
-
}
|
|
251
|
-
const values = formInstance.getFieldsValue(allData);
|
|
252
|
-
return transformKey(values, omitNilParam !== undefined ? omitNilParam : omitNil);
|
|
253
|
-
},
|
|
254
|
-
getFieldFormatValue: (paramsNameList = [], omitNilParam) => {
|
|
255
|
-
const formInstance = formRef.current;
|
|
256
|
-
if (!formInstance) {
|
|
257
|
-
return undefined;
|
|
258
|
-
}
|
|
259
|
-
const nameList = covertFormName(paramsNameList);
|
|
260
|
-
if (!nameList) throw new Error('nameList is require');
|
|
261
|
-
const value = formInstance.getFieldValue(nameList);
|
|
262
|
-
const obj = nameList ? set({}, nameList, value) : value;
|
|
263
|
-
//transformKey会将keys重新和nameList拼接,所以这里要将nameList的首个元素弹出
|
|
264
|
-
const newNameList = [...nameList];
|
|
265
|
-
newNameList.shift();
|
|
266
|
-
const transformed = transformKey(obj, omitNilParam !== undefined ? omitNilParam : omitNil, newNameList);
|
|
267
|
-
const result = get(transformed, nameList);
|
|
268
|
-
// 如果结果是对象,返回对象的值
|
|
269
|
-
if (result && typeof result === 'object' && !Array.isArray(result)) {
|
|
270
|
-
const objValue = Object.values(result)[0];
|
|
271
|
-
// 如果对象的值是数组,返回数组
|
|
272
|
-
if (Array.isArray(objValue)) {
|
|
273
|
-
return objValue;
|
|
274
|
-
}
|
|
275
|
-
return objValue;
|
|
276
|
-
}
|
|
277
|
-
return result;
|
|
278
|
-
},
|
|
279
|
-
getFieldFormatValueObject: (paramsNameList, omitNilParam) => {
|
|
280
|
-
const formInstance = formRef.current;
|
|
281
|
-
if (!formInstance) {
|
|
282
|
-
return {};
|
|
283
|
-
}
|
|
284
|
-
const nameList = covertFormName(paramsNameList);
|
|
285
|
-
const value = formInstance.getFieldValue(nameList);
|
|
286
|
-
const obj = nameList ? set({}, nameList, value) : value;
|
|
287
|
-
return transformKey(obj, omitNilParam !== undefined ? omitNilParam : omitNil, nameList);
|
|
288
|
-
},
|
|
289
|
-
validateFieldsReturnFormatValue: async (nameList, omitNilParam) => {
|
|
290
|
-
const formInstance = formRef.current;
|
|
291
|
-
if (!formInstance) {
|
|
292
|
-
return {};
|
|
293
|
-
}
|
|
294
|
-
if (!Array.isArray(nameList) && nameList) throw new Error('nameList must be array');
|
|
295
|
-
const values = await formInstance.validateFields(nameList);
|
|
296
|
-
const transformedKey = transformKey(values, omitNilParam !== undefined ? omitNilParam : omitNil);
|
|
297
|
-
return transformedKey ? transformedKey : {};
|
|
298
|
-
}
|
|
299
|
-
};
|
|
300
|
-
}, [omitNil, transformKey, formRef.current]);
|
|
182
|
+
// 初始化给一个默认的 form;直接复用 buildFormatValues,消除重复实现
|
|
183
|
+
useImperativeHandle(propsFormRef, () => ({
|
|
184
|
+
...formInstanceRef.current,
|
|
185
|
+
...buildFormatValues(() => formInstanceRef.current, transformKey, omitNil)
|
|
186
|
+
}), [omitNil, transformKey, propsFormRef]);
|
|
301
187
|
useEffect(() => {
|
|
302
|
-
const finalValues = transformKey(
|
|
188
|
+
const finalValues = transformKey(formInstanceRef.current?.getFieldsValue?.(true), omitNil);
|
|
303
189
|
onInit?.(finalValues, {
|
|
304
|
-
...
|
|
190
|
+
...formInstanceRef.current,
|
|
305
191
|
...formatValues
|
|
306
192
|
});
|
|
307
193
|
}, []);
|
|
308
194
|
return /*#__PURE__*/_jsx(ProFormContext.Provider, {
|
|
309
195
|
value: {
|
|
310
196
|
...formatValues,
|
|
311
|
-
formRef
|
|
197
|
+
formRef: formInstanceRef
|
|
312
198
|
},
|
|
313
199
|
children: /*#__PURE__*/_jsx(ConfigProvider, {
|
|
314
200
|
componentSize: rest.size || componentSize,
|
|
@@ -377,7 +263,7 @@ export function BaseForm(props) {
|
|
|
377
263
|
* 包装 setLoading,使用 queueMicrotask 延迟回调调用
|
|
378
264
|
* 避免在渲染阶段调用外部回调导致的 React 警告
|
|
379
265
|
*/
|
|
380
|
-
const setLoading =
|
|
266
|
+
const setLoading = useRefFunction(updater => {
|
|
381
267
|
setLoadingInner(prev => {
|
|
382
268
|
const next = typeof updater === 'function' ? updater(prev) : updater;
|
|
383
269
|
queueMicrotask(() => {
|
|
@@ -385,13 +271,19 @@ export function BaseForm(props) {
|
|
|
385
271
|
});
|
|
386
272
|
return next;
|
|
387
273
|
});
|
|
388
|
-
}
|
|
389
|
-
const
|
|
390
|
-
|
|
274
|
+
});
|
|
275
|
+
const {
|
|
276
|
+
urlParamsMergeInitialValues,
|
|
277
|
+
onUrlSyncReset,
|
|
278
|
+
onUrlSyncFinish
|
|
279
|
+
} = useUrlSync({
|
|
280
|
+
syncToUrl,
|
|
281
|
+
syncToInitialValues,
|
|
282
|
+
extraUrlParams
|
|
391
283
|
});
|
|
392
284
|
const curFormKey = useRef(nanoid());
|
|
393
285
|
useEffect(() => {
|
|
394
|
-
requestFormCacheId +=
|
|
286
|
+
requestFormCacheId += 1;
|
|
395
287
|
}, []);
|
|
396
288
|
const [initialData, initialDataLoading] = useFetchData({
|
|
397
289
|
request,
|
|
@@ -451,14 +343,6 @@ export function BaseForm(props) {
|
|
|
451
343
|
};
|
|
452
344
|
});
|
|
453
345
|
|
|
454
|
-
// 如果为 false,不需要触发设置进去
|
|
455
|
-
const [urlParamsMergeInitialValues, setUrlParamsMergeInitialValues] = useState(() => {
|
|
456
|
-
if (!syncToUrl) {
|
|
457
|
-
return {};
|
|
458
|
-
}
|
|
459
|
-
return genParams(syncToUrl, urlSearch, 'get');
|
|
460
|
-
});
|
|
461
|
-
|
|
462
346
|
/** 保存 transformKeyRef,用于对表单key transform */
|
|
463
347
|
const transformKeyRef = useRef({});
|
|
464
348
|
const fieldsValueType = useRef({});
|
|
@@ -470,20 +354,6 @@ export function BaseForm(props) {
|
|
|
470
354
|
}
|
|
471
355
|
return transformKeySubmitValue(conversionMomentValue(values, dateFormatter, fieldsValueType.current, paramsOmitNil, parentKey), transformKeyRef.current);
|
|
472
356
|
});
|
|
473
|
-
useEffect(() => {
|
|
474
|
-
if (syncToInitialValues) return;
|
|
475
|
-
setUrlParamsMergeInitialValues({});
|
|
476
|
-
}, [syncToInitialValues]);
|
|
477
|
-
const getGenParams = useRefFunction(() => {
|
|
478
|
-
return {
|
|
479
|
-
...urlSearch,
|
|
480
|
-
...extraUrlParams
|
|
481
|
-
};
|
|
482
|
-
});
|
|
483
|
-
useEffect(() => {
|
|
484
|
-
if (!syncToUrl) return;
|
|
485
|
-
setUrlSearch(genParams(syncToUrl, getGenParams(), 'set'));
|
|
486
|
-
}, [extraUrlParams, getGenParams, syncToUrl]);
|
|
487
357
|
const getPopupContainer = useMemo(() => {
|
|
488
358
|
if (typeof window === 'undefined') return undefined;
|
|
489
359
|
// 如果在 drawerForm 和 modalForm 里就渲染dom到父节点里
|
|
@@ -502,35 +372,24 @@ export function BaseForm(props) {
|
|
|
502
372
|
setLoading(true);
|
|
503
373
|
const finalValues = formRef?.current?.getFieldsFormatValue?.() || {};
|
|
504
374
|
const response = propRest.onFinish(finalValues);
|
|
375
|
+
let responseResult;
|
|
505
376
|
if (response && typeof response === 'object' && typeof response.then === 'function') {
|
|
506
377
|
try {
|
|
507
|
-
await response;
|
|
378
|
+
responseResult = await response;
|
|
508
379
|
} catch (error) {
|
|
509
|
-
//
|
|
380
|
+
// Promise 被拒绝时重置 loading 并向上抛出,不同步 URL
|
|
510
381
|
setLoading(false);
|
|
511
382
|
throw error;
|
|
512
383
|
}
|
|
513
|
-
// 只有在 Promise 成功完成时才重置 loading 状态
|
|
514
384
|
setLoading(false);
|
|
515
385
|
} else {
|
|
386
|
+
responseResult = response;
|
|
516
387
|
setLoading(false);
|
|
517
388
|
}
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
const
|
|
521
|
-
|
|
522
|
-
...pre,
|
|
523
|
-
[next]: finalValues[next] ?? undefined
|
|
524
|
-
};
|
|
525
|
-
}, extraUrlParams);
|
|
526
|
-
// fix #3547: 当原先在url中存在的字段被删除时,应该将 params 中的该字段设置为 undefined,以便触发url同步删除
|
|
527
|
-
Object.keys(urlSearch).forEach(key => {
|
|
528
|
-
if (syncToUrlParams[key] !== false && syncToUrlParams[key] !== 0 && !syncToUrlParams[key]) {
|
|
529
|
-
syncToUrlParams[key] = undefined;
|
|
530
|
-
}
|
|
531
|
-
});
|
|
532
|
-
/** 在同步到 url 上时对参数进行转化 */
|
|
533
|
-
setUrlSearch(genParams(syncToUrl, syncToUrlParams, 'set'));
|
|
389
|
+
// 仅在 onFinish 返回 truthy 时才同步 URL,失败时不更新
|
|
390
|
+
if (responseResult) {
|
|
391
|
+
const allFieldKeys = Object.keys(formRef?.current?.getFieldsFormatValue?.(true, false) || {});
|
|
392
|
+
onUrlSyncFinish(finalValues, allFieldKeys, extraUrlParams);
|
|
534
393
|
}
|
|
535
394
|
} catch (error) {
|
|
536
395
|
setLoading(false);
|
|
@@ -605,7 +464,7 @@ export function BaseForm(props) {
|
|
|
605
464
|
firstInput?.focus();
|
|
606
465
|
};
|
|
607
466
|
}
|
|
608
|
-
// 组合
|
|
467
|
+
// 组合 urlParamsMergeInitialValues 和 initialValues
|
|
609
468
|
,
|
|
610
469
|
initialValues: syncToUrlAsImportant ? {
|
|
611
470
|
...initialValues,
|
|
@@ -626,7 +485,7 @@ export function BaseForm(props) {
|
|
|
626
485
|
transformKey: transformKey,
|
|
627
486
|
autoComplete: "off",
|
|
628
487
|
loading: loading || !!(request && !initialData && initialDataLoading),
|
|
629
|
-
|
|
488
|
+
onUrlSyncReset: onUrlSyncReset,
|
|
630
489
|
...props,
|
|
631
490
|
formRef: formRef,
|
|
632
491
|
initialValues: {
|
|
@@ -7,6 +7,9 @@ export type SearchConfig = {
|
|
|
7
7
|
/** @name 提交按钮的文本 */
|
|
8
8
|
submitText?: React.ReactNode;
|
|
9
9
|
};
|
|
10
|
+
type ActionButtonProps = ButtonProps & {
|
|
11
|
+
preventDefault?: boolean;
|
|
12
|
+
};
|
|
10
13
|
export type SubmitterProps<T = Record<string, any>> = {
|
|
11
14
|
/** @name 提交方法 */
|
|
12
15
|
onSubmit?: (value?: T) => void;
|
|
@@ -15,13 +18,9 @@ export type SubmitterProps<T = Record<string, any>> = {
|
|
|
15
18
|
/** @name 搜索的配置,一般用来配置文本 */
|
|
16
19
|
searchConfig?: SearchConfig;
|
|
17
20
|
/** @name 提交按钮的 props */
|
|
18
|
-
submitButtonProps?: false |
|
|
19
|
-
preventDefault?: boolean;
|
|
20
|
-
});
|
|
21
|
+
submitButtonProps?: false | ActionButtonProps;
|
|
21
22
|
/** @name 重置按钮的 props */
|
|
22
|
-
resetButtonProps?: false |
|
|
23
|
-
preventDefault?: boolean;
|
|
24
|
-
});
|
|
23
|
+
resetButtonProps?: false | ActionButtonProps;
|
|
25
24
|
/** @name 自定义操作的渲染 */
|
|
26
25
|
render?: ((props: SubmitterProps & T & {
|
|
27
26
|
submit: () => void;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { omit } from '@rc-component/util';
|
|
2
1
|
import { Button, Form } from 'antd';
|
|
3
2
|
import React from 'react';
|
|
4
3
|
import { proTheme, useIntl } from "../../../provider";
|
|
@@ -6,12 +5,31 @@ import { proTheme, useIntl } from "../../../provider";
|
|
|
6
5
|
/** @name 用于配置操作栏 */
|
|
7
6
|
import { createElement as _createElement } from "react";
|
|
8
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
+
/** 渲染单个操作按钮,消除 reset/submit 两个按钮 90% 的重复 */
|
|
9
|
+
function renderActionButton(buttonProps, key, text, onAction, extraProps) {
|
|
10
|
+
// 剥离非原生 ButtonProps 的扩展字段,避免透传给 antd Button 导致警告
|
|
11
|
+
const {
|
|
12
|
+
preventDefault,
|
|
13
|
+
onClick,
|
|
14
|
+
fieldProps: _fieldProps,
|
|
15
|
+
...restButtonProps
|
|
16
|
+
} = buttonProps;
|
|
17
|
+
return /*#__PURE__*/_createElement(Button, {
|
|
18
|
+
...extraProps,
|
|
19
|
+
...restButtonProps,
|
|
20
|
+
key: key,
|
|
21
|
+
onClick: e => {
|
|
22
|
+
if (!preventDefault) onAction();
|
|
23
|
+
onClick?.(e);
|
|
24
|
+
}
|
|
25
|
+
}, text);
|
|
26
|
+
}
|
|
27
|
+
|
|
9
28
|
/**
|
|
10
29
|
* FormFooter 的组件,可以自动进行一些配置
|
|
11
30
|
*
|
|
12
31
|
* @param props
|
|
13
32
|
*/
|
|
14
|
-
|
|
15
33
|
const Submitter = props => {
|
|
16
34
|
const intl = useIntl();
|
|
17
35
|
const form = Form.useFormInstance();
|
|
@@ -41,28 +59,14 @@ const Submitter = props => {
|
|
|
41
59
|
submitText = intl.getMessage('tableForm.submit', '提交'),
|
|
42
60
|
resetText = intl.getMessage('tableForm.reset', '重置')
|
|
43
61
|
} = searchConfig;
|
|
44
|
-
/** 默认的操作的逻辑 */
|
|
45
62
|
const dom = [];
|
|
46
63
|
if (resetButtonProps !== false) {
|
|
47
|
-
dom.push(
|
|
48
|
-
...omit(resetButtonProps ?? {}, ['preventDefault', 'fieldProps']),
|
|
49
|
-
key: "rest",
|
|
50
|
-
onClick: e => {
|
|
51
|
-
if (!resetButtonProps?.preventDefault) reset();
|
|
52
|
-
resetButtonProps?.onClick?.(e);
|
|
53
|
-
}
|
|
54
|
-
}, resetText));
|
|
64
|
+
dom.push(renderActionButton(resetButtonProps ?? {}, 'rest', resetText, reset));
|
|
55
65
|
}
|
|
56
66
|
if (submitButtonProps !== false) {
|
|
57
|
-
dom.push(
|
|
58
|
-
type:
|
|
59
|
-
|
|
60
|
-
key: "submit",
|
|
61
|
-
onClick: e => {
|
|
62
|
-
if (!submitButtonProps?.preventDefault) submit();
|
|
63
|
-
submitButtonProps?.onClick?.(e);
|
|
64
|
-
}
|
|
65
|
-
}, submitText));
|
|
67
|
+
dom.push(renderActionButton(submitButtonProps ?? {}, 'submit', submitText, submit, {
|
|
68
|
+
type: 'primary'
|
|
69
|
+
}));
|
|
66
70
|
}
|
|
67
71
|
const renderDom = render ? render({
|
|
68
72
|
...props,
|
|
@@ -70,16 +74,10 @@ const Submitter = props => {
|
|
|
70
74
|
submit,
|
|
71
75
|
reset
|
|
72
76
|
}, dom) : dom;
|
|
73
|
-
if (!renderDom)
|
|
74
|
-
return null;
|
|
75
|
-
}
|
|
77
|
+
if (!renderDom) return null;
|
|
76
78
|
if (Array.isArray(renderDom)) {
|
|
77
|
-
if (renderDom
|
|
78
|
-
|
|
79
|
-
}
|
|
80
|
-
if (renderDom?.length === 1) {
|
|
81
|
-
return renderDom[0];
|
|
82
|
-
}
|
|
79
|
+
if (renderDom.length < 1) return null;
|
|
80
|
+
if (renderDom.length === 1) return renderDom[0];
|
|
83
81
|
return /*#__PURE__*/_jsx("div", {
|
|
84
82
|
style: {
|
|
85
83
|
display: 'flex',
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { BaseFormProps } from './BaseForm';
|
|
2
|
+
/**
|
|
3
|
+
* 将 syncToUrl 的 boolean | function 形式统一转为实际参数对象。
|
|
4
|
+
* 纯函数,方便单独测试。
|
|
5
|
+
*/
|
|
6
|
+
export declare const genUrlSyncParams: (syncUrl: BaseFormProps<any>['syncToUrl'], params: Record<string, any>, type: 'get' | 'set') => Record<string, any>;
|
|
7
|
+
export type UseUrlSyncOptions<T> = {
|
|
8
|
+
syncToUrl?: boolean | ((values: T, type: 'get' | 'set') => T);
|
|
9
|
+
syncToInitialValues?: boolean;
|
|
10
|
+
extraUrlParams?: Record<string, any>;
|
|
11
|
+
};
|
|
12
|
+
export type UseUrlSyncResult = {
|
|
13
|
+
/** URL 参数解析后要合并到 initialValues 的值 */
|
|
14
|
+
urlParamsMergeInitialValues: Record<string, any>;
|
|
15
|
+
/**
|
|
16
|
+
* 在 Submitter.onReset 中调用,清空 URL 上的参数
|
|
17
|
+
* @param finalValues 已经经过 transformKey 处理的当前表单值
|
|
18
|
+
* @param extraUrlParams 当前的 extraUrlParams(需透传,避免闭包过期)
|
|
19
|
+
*/
|
|
20
|
+
onUrlSyncReset: (finalValues: Record<string, any>, extraUrlParams?: Record<string, any>) => void;
|
|
21
|
+
/**
|
|
22
|
+
* 在 onFinish 中调用,将提交值同步写入 URL
|
|
23
|
+
* @param finalValues 已经经过 transformKey 处理的最终提交值
|
|
24
|
+
* @param allFieldKeys 表单所有字段的 key(用于补全需要置空的 key)
|
|
25
|
+
* @param extraUrlParams 当前的 extraUrlParams
|
|
26
|
+
*/
|
|
27
|
+
onUrlSyncFinish: (finalValues: Record<string, any>, allFieldKeys: string[], extraUrlParams?: Record<string, any>) => void;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* 管理 QueryFilter 等场景下 URL 参数与表单值之间的双向同步。
|
|
31
|
+
*
|
|
32
|
+
* 提取自 BaseForm,让 BaseForm 本身不需要关心 URL 同步细节。
|
|
33
|
+
*
|
|
34
|
+
* 职责:
|
|
35
|
+
* - 管理 `urlSearch` 状态(通过 `useUrlSearchParams`)
|
|
36
|
+
* - 初始化时从 URL 读取参数合并到 `initialValues`
|
|
37
|
+
* - 重置时清空 URL 参数
|
|
38
|
+
* - 提交时将表单值写入 URL
|
|
39
|
+
* - `syncToInitialValues=false` 时清空已合并的 URL 参数
|
|
40
|
+
* - `extraUrlParams` 变化时同步更新 URL
|
|
41
|
+
*/
|
|
42
|
+
export declare function useUrlSync<T = Record<string, any>>({ syncToUrl, syncToInitialValues, extraUrlParams, }: UseUrlSyncOptions<T>): UseUrlSyncResult;
|